和我一起用LinuxLinux -电脑资料

电脑资料 时间:2019-01-01 我要投稿
【meiwen.anslib.com - 电脑资料】

    这是一个系列文章,简单地说就是纪录我每天作了些什么吧, 前面是过程和所感,后面是所使用到的资料 这是一个系列文章,简单地说就是纪录我每天作了些什么吧, 前面是过程和所感,后面是所使用到的资料 系统配置: k6 200 cpu VIA mainbord 32M SDram 3G HD P

这是一个系列文章,简单地说就是纪录我每天作了些什么吧,

    前面是过程和所感,后面是所使用到的资料

    这是一个系列文章,简单地说就是纪录我每天作了些什么吧,

    前面是过程和所感,后面是所使用到的资料

    系统配置:

    k6 200 cpu

    VIA mainbord

    32M SDram

    3G HD

    PCI 8029.network card

    Apr 1 装好rh8.0,

    Apr 2 对系统进行了初步的配置

    1:内核从2.4.18升级到 2.4.20,编译了3次,每次平均30分钟

    不加载任何模块,

和我一起用LinuxLinux

。前两次均是找不到8029的网卡,最后发现8029

    得用 another ISA 里的 ne2000 才行。想不通怎么跑到ISA里面去了。

    使用新内核后,内存使用量减少5M

    2,装了个pure-ftpd

    交大的ftp大多用它,可控制性很强,cpu占用率也较小,基本上还是IDE硬盘太耗cpu

    资源了,不是ftpd的错

    3,使用setup 关闭了不需要的服务。明天再把它们从系统彻底删除

    发现好多服务都是不需要的。

    内核编译的流程

    编译开始----- make mrproper;检查所需的连接

    配置核心

    编译核心

    编辑/etc/lilo.conf

    重新启动新核心

    重新启动机器

    #cd /usr/src

    tar xjvf linux-2.4.20.tar.bz2

    #rm -f linux

    #ln -s linux-2.4.20 linux

    确保/usr/include/目录下的asm、linux和scsi等链接是指向要升级的内核源代码的。它

    们分别链向源代码目录下的真正的、该计算机体系结构(对于PC机来说,使用的体系结

    构是i386)所需要的真正的include子目录。如:asm指向/usr/src/linux/include/asm

    -i386等。若没有这些链接,就需要手工创建,按照下面的步骤进行:

    # cd /usr/include

    # rm -r asm linux scsi

    # ln -s /usr/src/linux/include/asm-i386 asm

    # ln -s /usr/src/linux/include/linux linux

    # ln -s /usr/src/linux/include/scsi scsi

    配置内核可以根据需要与爱好使用下面命令中的一个:

    具体的配置比较麻烦,但常用的选项看看饮水思源的精华区还是很清楚的

    #make menuconfig(基于文本选单的配置界面,字符终端下推荐使用,必须安装ncurse

    s-dev和tk4-dev库)

    #make xconfig(基于图形窗口模式的配置界面,Xwindow下推荐使用)

    #make oldconfig(如果只想在原来内核配置的基础上修改一些小地方,会省去不少麻烦

    )

    编译有关的命令有如下几个:

    #make dep

    #make clean

    #make bzImage

    ______________________________

    编译模块才需要以下步骤

    #make modules

    #make modules_install

    #depmod -a

    ______________________________

    第一个命令make dep实际上读取配置过程生成的配置文件,来创建对应于配置的依赖关

    系树,从而决定哪些需要编译而那些不需要;

    第二命令make clean完成删除前面步骤留下的文件,以避免出现一些错误;

    第三个命令make zImage实现完全编译内核

    为了能够使用新版本的内核,还需要做一些改动:

    #cp /usr/src/linux/System.map /boot/System.map-2.2.16

    #cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.2.16

    以上这两个文件是刚才编译时新生成的。下面修改/boot下的两个链接System.map和vml

    inuz,使其指向新内核的文件:

    #cd /boot

    #rm -f System.map vmlinuz

    #ln -s vmlinuz-2.2.16 vmlinuz

    #ln -s System.map-2.2..16 System.map

    然后修改 /etc/lilo.conf, 照着原来的image = XXXXX来加上

    image = /bzImage

    root = /dev/hda1 (这里视你的LINUX安装而定, 照你原有的改)

    label = linux

    read-only

    把原来的 label = linux 改一下, 如 label = oldlinux.

    把image = /bzImage 这一节加在原来的前面, 这样会自动作为缺省的核心. 你也可以在

    LILO时打linux或oldlinux来启动不同的核心. 关于这一段, 也可以参考俺前面的"ALS00

    7

    发声经过".

    最后, 切记切记, 一定要打个lilo来重新生成LILO程序.

    #lilo

    安裝配置PureFTPD

    简单的就是 tar xzvf pure-ftpd-**.tar.gz

    #cd pure*/gui

    #./build.sh

    #/usr/local/sbin/pure-ftpd &

    具体的看下面这一篇

    我比較建議是去他的官方網站抓

    新版的(http://www.pureftpd.org/ .我用的是1.0.12版.用起來還不錯

    用.

    以往我都是懶人安裝法.到ports目錄下打make install clean.完成!!

    後來.發現用ports裝並不能將pure-ftpd的強大顯現出來.(其實是舊版

    fxp支援上有問題...:~~)所以...難得...這麼懶的我.就用source裝了.

    廢話了好多.:D

    A。把抓下來的source解開.(建議解在/tmp下)

    #tar zxvf pure-ftpd-1.0.12.tar.gz

    如果閒閒沒事做.可以看看裡面的README.* 很值得看.如果你有什

    麼特殊需求的話.也可以直接在裡面去找.應該是可以找到你要的東

    西.(Ex: LDAP.MySQL.Virtual.......)

    B。開始準備依妳的意願做出你想要的ftp-server.

    #./configure --with-paranoidmsg --with-sysquotas --with-puredb \

    --with-altlog --with-throttling --with-ratios--with-ftpwho \

    --with-welcomemsg --with-uploadscript. --with-largefile \

    --with-virtualhosts --with-virtualchroot --with-diraliases \

    --with-quotas --with-peruserlimits --with-language=traditional-chinese

    在README中[ADVANCED COMPILATION]的段落中有對於上面的使用有

    詳細說明.在這邊我只對常用做簡略的解釋.

    --without-standalone

    不能以standalone的方式執行ftpd.

    --without-inetd

    不能以inetd的方式執行ftpd.

    --without-iplogging

    做log時不將IP Adress給log下來.

    --without-shadow

    不做shadow.除非O用PAM, LDAP or SQL.不然極不建議拿掉.

    --without-usernames

    檔案列表只會列出UID & GID,不列出實際user or group name.

    --without-humor

    嘿嘿嘿....

    --without-ascii

    不支援7-bits transfers(ASCII).

    --with-paranoidmsg

    唔....不知該怎麼說.算是可以給特定人的訊息吧.

    --with-sysquotas

    吃系統的quota設定.

    --with-minimal

    最小化安裝...:Q

    --with-pam

    --with-puredb

    --with-ldap

    --with-mysql

    --with-pgsql

    以上五種都是存儲資料的格式?!(算吧?!).看你比較習慣什麼.

    我是比較喜歡用puredb.

    --with-altlog

    留log拉....

    --with-cookie

    使用者進站看到的東西.類似進站畫面.

    --with-ratios

    上下傳比.

    --with-throttling

    頻寬可設限.

    --with-ftpwho

    可用pure-ftpwho來看線上使用者.像是Serv-u的線上狀態.

    --with-uploadscript

    當一個檔案被完整上傳完後自動呼叫某一script去對這個檔案

    處理.當然.這個script得你自己寫.

    --with-largefile

    支援下載超過2G的file.

    --with-virtualhosts

    跟http的virtualhost有異曲同工之妙.

    --with-virtualchroot

    配合上面的chroot.

    --with-diraliases

    跟Serv-U上面的link功能一樣.

    --with-nonroot

    不需root權限.一般user即可啟動ftpd.

    --with-quotas

    使用quota.(非系統下的quota)

    --with-peruserlimits

    enable per-user concurrency limits.Avoid this on

    very loaded servers.(太難翻了)

    --with-everything

    所有功能全上.

    --with-language=traditional-chinese

    顯示出來的msg的語言.default=english.

    (意外的發現.在config.h中作者以為大陸用traditional-chinese

    台灣用simplified-chinese.Anyway..不影響)

    C.好了就準備安裝上去吧!!:DD

    #make ; make check ; make install

    D.把一些東西搬到該該放的位置.

    #chmod 755 configuration-file/pure-config.pl

    #cp configuration-file/pure-config.pl /usr/local/sbin/

    #cp configuration-file/pure-ftpd.conf /usr/local/etc/

    -------OK.PureFTPD就降裝完了

    <三>pure-ftpd.conf的設定

    *在上一次,我們有把PureFTPD的default設定檔(pure-ftpd.conf)cp一

    份在/usr/local/etc/下.(其實哪都可以,只是我習慣).比較建議再cp

    一份叫pure-ftpd.xxx.conf(如果你要跑多支ftpd的話.xxx部分可以自

    由替代成你要的名字.方便就好).開始編輯pure-ftpd.xxx.conf摟.

    #vim pure-ftpd.xxx.conf (看你喜歡用什麼編輯器.自己選用)

    ####pure-ftpd.xxx.conf#######

    ChrootEveryone                 yes

    TrustedGID                     50

    #以上兩者要一起用

    BrokenClientsCompatibility     no

    MaxClientsNumber               999

    #最大連線數

    Daemonize                      yes

    #Fork in background

    MaxClientsPerIP                5

    #每個ip最多連線數

    VerboseLog                     no

    #是否要把所有client端的指令都log下來

    DisplayDotFiles                no

    #顯示.開頭的檔案

    AnonymousOnly                  no

    #是否只讓匿名登入

    NoAnonymous                    yes

    #不開放匿名登入

    SyslogFacility                 ftp

    DontResolve                    yes

    #不反解client的ip

    MaxIdleTime                    5

    #最大閒置時間

    PureDB                         /ftp/etc/pureftpd.pdb

    #使用者資料的DB存放地點 [由於我是用PureFTPD的內建DB.固有此選項]

    UnixAuthentication             yes

    #如果你想要有簡單的Unix(/etc/passwd)的認證的話

    LimitRecursion                 1000 3

    #ls最多list出1000個檔案.最深3層

    MaxLoad                        4

    #當system load超過4時.使用者將不能再下載

    AntiWarez                      no

    #上傳的檔案不能被Download(owner is ftp).等到local admin確認

    Bind                           21

    #要Bind住哪個ip/port

    #格式-> 127.0.0.1,21 如果只寫port表All ip,port

    Umask                          133:022

    #上傳檔案的Umask.(:)

    MinUID                         1000

    # UID至少多少才能登入

    AllowUserFXPyes

    #支不支援FXP

    ProhibitDotFilesWrite          no

    ProhibitDotFilesRead           no

    #.開頭的檔案能不能被讀寫

    AutoRename                     no

    #上傳檔案若有相同檔名自動改名(file.1,file.2...)

    TrustedIP                      10.1.1.1

    #鎖IP拉.

    AltLog                         stats:/ftp/etc/log/pureftpd.log

    #log存放地點

    NoChmod                        yes

    #不給Chmod指令的權限

    KeepAllFiles                   yes

    #使用者可續傳.但不可刪除檔案

    CreateHomeDir                  no

    #如果user的home不存在自動建立

    PIDFile                        /ftp/etc/log/pure-ftpd.pid

    #紀錄pure-ftpd的PID檔

    Quota                          1000:10

    #<檔案數:Megabytes>

    CallUploadScript               yes

    #呼叫UploadScript

    MaxDiskUsage                   99

    #當硬碟使用率到多少時將停止上傳

    NoRename                       yes

    #不給改檔名

    PerUserLimits                  3:20

    #<每個aclearcase/" target="_blank" >ccount最多可登入幾隻:Anonymous最多可同時登入幾隻>

    #############################

    -----------------------------------------------------------

    <四>建立帳號

    有了ftp.理所當然得也要有帳號才行.

    #vipw

    ftpuser:$rEO39XEq$kRMKuch12ugYu3hCh/sPA.:9999:9999::0:0:ftp:/ftp:

    /sbin/nologin

    #vim /etc/group

    ftpgroup:*:9999:

    上面是ftp client以什麼身分登入.

    接下來我想要把pure-ftpd要吃的密碼檔選個地方放.我是選擇放在/ftp/etc/下

    #pure-pw far -f pureftpd.ps -u 9999 -g 9999 -d /ftp/far -y 2

    #pure-pw mkdb pureftpd.pdb -f pureftpd.ps

   

    useradd [-f <密碼檔>] -u [-g ]

    -D/-d <家目錄> [-c ]

    [-t <下載頻寬>] [-T <上傳頻寬>]

    [-n <最多下載檔案數>] [-N <最多下載Mb>]

    [-q ] [-Q ](上下傳比)

    [-r /] [-R

    ip>/]

    [-i /] [-I

    ip>/]

    [-y <同時最多連線數>]

    [-z -](可登入時間24hr制) [-m]

    pure-pw usermod -f -u [-g ]

    -D/-d -[c ]

    [-t ] [-T ]

    [-n ] [-N ]

    [-q ] [-Q ]

    [-r /] [-R

    ip>/]

    [-i /] [-I

    ip>/]

    [-y ]

    [-z -] [-m]

    pure-pw userdel [-f ] [-m]

    pure-pw passwd  [-f ] [-m]

    pure-pw show    [-f ]

    pure-pw mkdb   [ [-f ]]

    -d : chroot user (建議值)

    -D : don't chroot user

    -y 0 : 同時最多連線數不限

    -m : 同時更新/etc/pureftpd.pdb檔.(如果PureDB不放置在此的請不要加)

    For a 1:10 ratio, use -q 1 -Q 10

    To allow access only between 9 am and 6 pm, use -z 0900-1800

    ****************************************************************

    關於檔案權限部份.(需要將可Upload的使用者改成ftpuser:ftpgroup.可

    下載的檔案權限也要是644)

    #chown -R ftpuser:ftpgroup Upload/

    ------------------------------------------------------------------

    <五>啟動

    到/usr/local/bin/rc.d/下編輯一個pure-ftpd.sh

    #############################

    #!/bin/sh

    case "" in

    start)

    if [ -f /usr/local/etc/pure-ftpd.xxx.conf ]; then

    /usr/local/sbin/pure-config.pl /usr/local/etc/pure-

    ftpd.xxx.conf > /dev/null 2>&1 && echo -n 'pure-ftpd Begin!'

    fi

    ;;

    stop)

    /usr/bin/killall pure-ftpd > /dev/null 2>&1 && echo -n

    'pure-

    ftpd Stop!'

    ;;

    *)

    echo ""

    echo "Usage: `basename ` { start | stop }"

    echo ""

    exit 64

    ;;

    esac

    #############################

    #chmod +x pure-ftpd.sh

    #./pure-ftpd.sh start

    ok...開始測試看看吧

    ftp xxx.far2.net 21

    Connected to ftp.far2.net.

    220-=(<*>)=-.:. (( 歡迎來到 PureFTPd 1.0.12 )) .:.-=(<*>)=-

    220-您是第 48 個使用者,最多可達 999 個連線

    220-現在本地時間是 19:52 負載是 1.37,

电脑资料

和我一起用LinuxLinux》(http://meiwen.anslib.com)。伺服器埠口: 21。

    220-這是私用系統 - 不開放匿名登入

    220 在 5 分鐘內沒有活動,您被會斷線。

    Name (xxx.far2.net:far):far

    331 使用者 far OK. 需要密碼.

    Password:

    230-使用者 far 有群組存取於: ftpgroup

    230-這個伺服器支援FXP傳輸

    230 OK. 目前限制的目錄是 /

    Remote system type isUNIX.

    Using binary mode to transfer files.

    ftp>

    當你看到以上訊息時.恭喜你.你已經成功的架起一個ftp了.:)

    --------------------------------------------------------------------

    是不是很簡單呢.現在你可以好好享用你的FTP Server了.:)

    --------------------------------------------------------------------

    ps.如果你是大型ftp站.PureFTPD下面有幾點建議.

    * Compile with :

    #env CFLAGS="-O2 -fomit-frame-pointer -fgcse -Os"

    #./configure --with-minimal --without-inetd --without-pam

    #make install-strip

    -=特殊功能都不要加.以減輕Server負擔=-

    *用standalone的模式去啟動.不要打開pure-ftpwho & pure-uploadscript

    & per-userlimits 的選項

    -=因為那幾個都是很吃系統資源的工具=-

   

    *編輯/etc/fstab, 對所有filesystems的options增加",noatime"

    *在/boot/loader.conf裡增加以下兩行

    hw.ata.wc="1"

    kern.ipc.nmbclusters="60000"

    *在/etc/sysctl.conf裡增加

    vfs.vmiodirenable=1

    kern.ipc.maxsockbuf=2097152

    kern.ipc.somaxconn=8192

    kern.ipc.maxsockets=16424

    kern.maxfiles=65536

    kern.maxfilesperproc=32768

    net.inet.tcp.rfc1323=1

    net.inet.tcp.delayed_ack=0

    net.inet.tcp.sendspace=65535

    net.inet.tcp.recvspace=65535

    net.inet.udp.recvspace=65535

    net.inet.udp.maxdgram=57344

    net.local.stream.recvspace=65535

    net.local.stream.sendspace=65535

    求一下土地公.讓你等一下不用跑機房.然後reboot.重開機後就大工告成.

    原文转自:http://www.ltesting.net

最新文章