歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

Linux作PPP接入服務器(2)

  當你覺得所有必要的功能被添加或按需做成模塊後,可以試著運行如下指令: #make dev;make clean;make zlmage; 若系統最後提示新的內核存在於/usr/src/Linux/arch/i386/boot中則表示編譯內核成功 若是提示“內核太大了”等內容時,可以接著鍵入 #make bzlmage 以生成一個壓縮的核,通常這樣做就行了。 隨後就是安裝模組了 make modules make modules_install #depmod -a     (為模塊建立正確的依賴關系 ) 通過察看/etc/lilo.conf 來知道你的Linux用哪個目錄的那個文件作為image目錄。 例如: image = /boot/vmlinuz 將 /usr/src/linux/System.map 復制到 /boot 目錄中。 將 /usr/src/linux/arch/i386/boot/zImage(或bzImage)新核心制到 /boot 目錄中, 執行Lilo後以新核心重啟你的計算機。 技巧提示:保留舊的核心 你在未能證實新核心可以穩定運行之前保留舊的核心是個好主意。推薦的做法是: 在解壓新核心之前將/usr/src下的linux 更名。(如改為linux.old),然後創建一新空目錄, 如linux2.2.14 然後用ln -s linux2.2.14 linux為其創建一個linux的符號鏈接。 之後再解壓原始代碼包,這樣做的好處是在你以後的核心更新中,只要簡單地更新符號鏈接就可以了,並且永遠是有效的/usr/src/linux目錄名。 在將新核心復制到/boot之前為其取一個代表性的可記憶的新核心名,如取成vmlinuz.ppp.2.2.14 然後編輯 /etc/lilo.conf,修改後的 lilo.conf 如下: boot=/dev/hda map=/boot/map install=/boot/boot.b prompt timeout=50 default=linux image=/boot/vmlinuz label=linux root=/dev/hda1 read-only image=/boot/vmlinuz-2.2.14 label=linux214 root=/dev/hda1 read-only other=/dev/hda2 label=dos table=/dev/hda 別忘了執行#lilo ,然後系統提示以下信息: Added linux * Added linux214 Added dos #reboot 當執行lilo命令時,系統將加入另一個新的可引導的核心,若你在系統引導(即出現lilo時)忘了新核心的名字,可以用按tab鍵來顯示所有可啟動的項,由Label定義. ok,現在你就已經多了一種選擇了,這樣當新核心不能引導或不正常時可以隨時用舊核心。 推薦您使用英文原版的Rad Hat6.2發行套件,因為用它來敲敲打打我的核心很是得力。但相對來說,那些標榜xx核心漢化技術,世界第一的所謂中文linux套件,在重編譯核心時都會或多或少的遇上麻煩。對於它們,我只取其可取之處,如獨立的中文處理包。 (關於核心的更多信息可以參見第6節中的相關文檔) 安裝、配置和啟動pppd軟件包 通常現行的linux發行版中都包含了pppd軟件包,如果你沒有這些包或你想用另一類的pppd工具包,推薦你下載和使用mgetty軟件包,該軟件支持數據和傳真功能。而Linux自帶的getty不支持傳真功能。它可以在freesoft.cei.gov.cn 上取得,現以mgetty為例,作具體說明。 注意:對於不同的PPP軟件包,其具體配置存在著一些差異,通常的做法是,查看相應的手冊頁或Readme文檔。 驗證mgetty軟件包: 如果你在相應目錄下找不到文件如/sbin/mgetty, /etc/mgetty+sendfax/login.config,則你需要安裝 mgetty RPM包。


配置mgetty軟件包: 現假設你用COM1與COM2來接收外來的拔號,其上各外掛一只Acer 56 Surf Modem。對Modem的配置可以參見“小資料:LINUX下如何配置MODEM”。同樣假設現已將其設為自動駁接外線呼叫。 1、在/etc/inittab文件中加入以下二行: s0:345:respawn:/sbin/mgetty -a -m "" ATS0=1 OK -D -x 3 ttyS0 vt100  s1:345:respawn:/sbin/mgetty -a -m "" ATS0=1 OK -D -x 3 ttyS1 vt100 參數說明: id:runlevel:action:/sbin/mgetty [options] line [speed [term [lined]]] . 上句中各種參數以‘:'來分隔。各參數的具體意義為: 345:指明它是在哪一個runlevel下調用該行,一般23足夠了,也可以寫成2345. runlevel 2 : 不帶NFS支持的多用戶模式 runlevel 3 : 普通的多用戶模式 選項 -a: 波特率自動適配. -m: 傳送給串口設備/dev/ttyS0的初始化字符串,這裡的是AT命令,設置modem在震鈴一次後,接通. mgetty等待設備/dev/ttyS0返回的OK字符串,進入下一步處理. ttyS0: linux中對串口定義的設備文件名:/dev/ttyS0 對應COM1; /dev/ttyS1 對應COM2; vt100設置終端的類型 然後,運行 /sbin/init q 讓改動生效。    2、配置mgetty的配置文件: 在/etc/mgetty+sendfax/login.config文件中,去掉含有AutoPPP的一行的行頭的注釋. /AutoPPP/ - a_ppp /etc/ppp/ppplogin 其中: /AutoPPP/是登錄與/dev/ttyS0相連的mgetty生成終端的用戶的終端名, a_ppp 是基於/dev/ttyS0的物理連接上的PPP連接的連接名. 3、修改/etc/ppp/ppplogin 文件: /etc/ppp/ppplogin 是登錄以後自動運行的腳本(script)文件,例如: #!/bin/sh if [-f /etc/ppp/options.$TTY]; then exec /usr/sbin/pppd else exec /usr/sbin/ppd -detach fi 或者只需簡單的添加以下的行到/etc/ppp/ppplogin中: #!/bin/sh /usr/sbin/pppd auth -chap +pap login   注:參數login表示用/etc/passwd中的用戶名和密碼進行PAP認證.   而如果你不需要在撥入後做用戶名和密碼驗證,只要去掉參數auth即可。      然後保存文件,且給它執行權限 : chmod +x /etc/ppp/ppplogin 4、現在改動/etc/ppp/options 文件,象下面:    -detach    modem    lock    crtscts    asyncmap 0    netmask 255.255.255.0    proxyarp    mtu 296    mru 296    ms-dns 192.168.10.25 注:192.168.10.25 是我的LAN上的一台DNS服務器,192.168是通常的LAN設置,至於采用10.25而非0.1則是因為10.25是我的生日,這樣對我來說好記些且有自已的個性標志。如你沒有可不設,你可以給撥入用戶自動分配DNS。 附注:mtu/mru 兩行設定建立PPP連接後,傳輸的包的尺寸,這裡用296(256+40),也可以設為552(512+40),40代表空的沒有任何數據的包的大小,設為比較小的值是為了假如一個PPPD進程建立後要傳輸很大的文件,可降低每個包的尺寸,以防其它的進程速度變慢,盡管減少了傳輸的每個包的尺寸,但不影響總體傳輸的速度。你也可以不設這兩行。         5、創建另外兩個文件/etc/ppp/options.ttyS0 和 /etc/ppp/options.ttyS1 (後綴與相應的串口對應,為每一個串口定義不同的PPP連接參數): 剛開始可以在每個文件中各自加入以下的行, 其它的都注釋掉.等調試通過後,再根據需要加入相應的參數.

# more options.ttyS0    192.168.10.3:192.168.10.242    # more options.ttyS1    192.168.10.3:192.168.10.243   注:192.168.10.3是我這台Linux 服務器的IP地址, 而192.168.10.242和192.168.10.243是我指定給撥入用戶的兩個PPP地址。 現提供一個僅供參考的配置文件: # more options.ttyS0 asyncmap 0 netmask 255.255.255.0 #Local IP : Remote IP 192.168.1.100:192.168.1.101 lock noauth crtscts modem -detach debug proxyarp  6、至於/etc/ppp/pap-secrets,你可以加入下面的行:    * * "" 192.168.10.242   * * "" 192.168.10.243    到此為止, 設置完成。    濺了這麼多的口沫,聽起來似乎很煩,其實在實際操作中,只要三下五除二,一下子就搞定了。 呵呵,祝你好運。 啟動pppd軟件包 只要您成功地安裝與設置了PPP包後,要啟動PPPD只要在任意時刻鍵入pppd就行了。我通常是在機器啟動時就啟動它。 現以TurboLinux中文版4.0為例做個簡單說明: #turboservice 只要選中pppd一項,你就可以讓機器在下次啟動時自動運行pppd服務了。 對於RH及與其兼容的發行版本來說,這個命令就是使用setup,然後選用“系統服務”一項。 我不知道為什麼會使用不同的命令名! :-( 小結: 在mgetty中的一些重要的相關文件: /sbin/mgetty



而192.168.10.242和192.168.10.243是我指定給撥入用戶的兩個PPP地址。 現提供一個僅供參考的配置文件: # more options.ttyS0 asyncmap 0 netmask 255.255.255.0 #Local IP : Remote IP 192.168.1.100:192.168.1.101 lock noauth crtscts modem -detach debug proxyarp  6、至於/etc/ppp/pap-secrets,你可以加入下面的行:    * * "" 192.168.10.242   * * "" 192.168.10.243    到此為止, 設置完成。    濺了這麼多的口沫,聽起來似乎很煩,其實在實際操作中,只要三下五除二,一下子就搞定了。 呵呵,祝你好運。 啟動pppd軟件包 只要您成功地安裝與設置了PPP包後,要啟動PPPD只要在任意時刻鍵入pppd就行了。我通常是在機器啟動時就啟動它。 現以TurboLinux中文版4.0為例做個簡單說明: #turboservice 只要選中pppd一項,你就可以讓機器在下次啟動時自動運行pppd服務了。 對於RH及與其兼容的發行版本來說,這個命令就是使用setup,然後選用“系統服務”一項。 我不知道為什麼會使用不同的命令名! :-( 小結: 在mgetty中的一些重要的相關文件: /sbin/mgetty



Copyright © Linux教程網 All Rights Reserved