在開始啟動系統之前,首先應該決定要採用何種級別的安全規範。在作出這項決定之前,不要將電腦與網絡連接。 電腦安全是極其重要的問題,但它不屬於這份 HOWTO 的討論範圍。不過,要了解電腦的安全問題可從兩方面著手:“ Linux 安全管理員手冊”( Linux Security Administrator's Guide) http://www.seifried.org/lasg 和“ Linux 安全手冊”( Linux Security Guide) http://nic.com/ (譯註:此處英文原文有漏) 下列步驟:使用Shadow password(Shadow Password HOWTO )限制網路進入機器(Section 限制網路進入Restricting Network Access)、 使用 Secure Shell ( http://www.cs.hut.fi/ssh/) 或使用 Secure Remote Password ( http://srp.stanford.edu/srp/)。祝您好運。
要保證安裝順利,必須確切知道機器裡安裝了什麼,何時作了修改,何時作了清除。因此,在動手之前,首先應該建立一本“工作日誌”,紀錄作為 root 的一切舉動;在我的工作日誌中,有一節專門紀錄所有改動的系統文檔、增加的 .rpms 和安裝的 .tar.gz。理論上,往回追溯以往的任何改變,應該可以回復到最初原始的安裝狀態。
千萬記住,在改動任何系統文件之前,製作備份。更理想的是用 RCS;這樣就能追蹤以往的所有改變。作為 root,決不可隨意改動系統而不加紀錄。
如在安裝時遺漏了這一步驟,或改用了他種鍵盤,則需要:
it.map
就代表義大利鍵盤;
KEYTABLE="it"
;
/sbin/kbdrate -s -r 16 -d 500 # or whatever you like --或其他設定的數值
要在開機時自動設定 NumLock,則在/etc/rc.d/rc.sysinit中加入以下內容:
for tty in /dev/tty[1-9]*; do
setleds -D +num < $tty
done
為剛安裝好的系統,應該製作兩、三張啟動軟片,以備不時之需。您使用的 Linux 版本可能已經包括了製作這種軟片的指令,否則可用下列指令:
#
#
(譯註:作者似乎忘了填入指令)
此外,至少也要製作几片援救軟片。在 ftp://metalab.unc.edu/pub/Linux/system/recovery可找到各種援救軟片; 如果您不知道選用哪一種,我建議您試試 Tomsbtrt。
IMHO,其次首先要做的工作是編制最適合您的系統的內核。編制工作並不困難,但無論如何都先看一看/usr/src/Linux/內的README
檔或內核 HOWTO (Kernel HOWTO )。注意事項:
SVGATextMode
(見
SVGATextMode一節)可能是最理想的解決辦法。不論採用何種辦法,在
http://www.Linuxhq.com/patch/20-p0239.html可以找到大型游標的內核修補軟件。
modprobe
的信息,指出不能確定某些模組的位置,這表示需要修改/etc/conf.modules。例如,如果不使用ipx和appletalk模組,則增加下列兩行:
alias net-pf-4 off
alias net-pf-5 off
有些系統的sendmail
會使機器在啟動時停頓兩、三分鐘。原因有二:
(1)機器沒有與網際網路直接連接;(2)直接連接網際網路,並有永久的IP地址。
立即解決第一種問題的辦法是確定/etc/hosts內有下列一行:
127.0.0.1 localhost
造成停頓的第二種原因是往往在/etc/hosts內有內容如下的一行:
127.0.0.1 localhost your_host_name
可將其分成以下兩行:
127.0.0.1 localhost
w.x.y.z your_host_name
同時請參考 Hostname一節
如果謹慎使用 hdparm
(8)就會大大提高 (E)IDE 硬盤的性能。假設使用的 Linux 中沒有包含這個軟件,可從
ftp://metalab.unc.edu/pub/Linux/system/hardware查找;設法在這個網址上找一個稱為hdparm-X.Y.tar.gz的軟件。
由于使用這個軟件的細節取決于硬盤的種類和控制程序,因此在此無法提出通則。使用不當, 可能會損及文檔系統,因此使用之前,務必詳細閱讀 man 說明。以最簡單的例子而言,在/etc/rc.d/rc.sysinit內可增加一行,內容如下:
/sbin/hdparm -c1 /dev/hda # -- 假定為第一個 IDE 硬盤
這行提供了 (E)IDE 32-bit I/O 的支持。關於 -m
選項,hdparm
的作者 Mark Lord 告訴我:
(...) 如果系統內的組件是前几年的產品 [< 1997],一般都沒有問題。如果是老舊的設備,可能不行(但也許沒問題)。真正發生問題的是 2 - 3 年前在 486 和 (早期)586 母板上廣泛使用的 CMD0646 和 RZ1000 這兩種晶片。
下列設置應可使用于最近的電腦:
/sbin/hdparm -c1 -A1 -m16 -d1 /dev/hda
利用最近內核(2.x.x)所帶的驅動程序就可使用并聯埠的 Zip 磁碟機。在設置內核時,務必加裝使用 SCSI 和 SCSI 磁盤的功能。注意:打印機和 Zip 磁碟機共用并聯埠時可能會發生衝突,因此最好使用內核模組設置。在
http://www.torque.net/ 上還有一個代用的 ppa
驅動程序。
Zip 磁片出售時已經格式化,其分割為 /dev/sda4。在設定 Zip 磁碟機時,在 /etc/rc.d/rc.sysinit 檔中加附下列內容:
# Enable the Zip drive -- 設定 Zip 磁碟機
/sbin/modprobe ppa
Zip 磁片可在/etc/fstab中加列以下內容或通過 Mtools 在/etc/mtools.conf中增加下列內容加載:
drive z: file="/dev/sda4" exclusive
此外,mzip
指令也可用于彈出、查詢機況、讀寫和附加密碼于 Zip 磁片;詳情請查閱man mzip
。 Mtools 的網址在
http:// Linux .wauug.org/pub/knaff/mtools。
列在/dev
中(或連接到實際設備驅動程序)的設備可能並不確切。檢查滑鼠、數據機和光碟驅動程序對應的設備為何,然後作出下列設定:
/dev# ln -s ttyS0 mouse; ln -s ttyS1 modem; ln -s hdb cdrom; ln -s sda4 zip
在多數筆記本電腦上,鼠標的設置是/dev/psaux:在設置 X11 時應將此列入考慮。
不妨將這些設置都通過 chmod 666
改變屬性,使所有使用者均可使用這些設備。
我只有一張舊聲卡 Sound Blaster 16;即使您的聲卡與我的不同,不過下列方法也可引導您如何設置聲卡。
我將聲卡的驅動程序作為模組(sb.o
)編入內核。然後將下列內容列入/etc/conf.modules:
options sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x330
alias sound sb
要啟動聲卡,首先運行modprobe sound
,或者使用 RedHat 的工具sndconfig
。
如要自設登錄信息,首先檢查/etc/rc.d/rc.local是否覆蓋/etc/issue和/etc/motd的內容。(RedHat 覆蓋內容)如屬肯定,請打開文本編輯器。
如要使登錄信息帶有顏色,可在rc.local
中列入下列內容:
# put a real escape character instead of ^[. To do this:
# emacs: ^Q ESC vi: ^V ESC joe: ` 0 2 7 jed: ` ESC
ESC="^[" # a real escape character
BLUE="$ESC[44;37m"
NORMAL="$ESC[40;37m"
CLEAR="$ESC[H$ESC[J"
> /etc/issue
echo "$CLEAR" >> /etc/issue
echo "$BLUE Welcome to MyServer (192.168.1.1) " >> /etc/issue
echo "$NORMAL " >> /etc/issue
echo "" >> /etc/issue
只運行hostname new_host_name
指令也許不夠。要解決sendmail
死機的問題,可採用下列步驟(只適用于單機):
new_host_name.localdomain
);
127.0.0.1 localhost new_host_name.locadomain
gpm
的滑鼠功能對在主控台進行剪貼至為有用,也可在一些應用中使用滑鼠。在 Red Hat 系統中,檢查有否一個稱為/etc/sysconfig/mouse
的文檔,內容如下:
MOUSETYPE="Microsoft"
XEMU3=yes
此外,還得有一個/etc/rc.d/init.d/gpm
檔,其中還可設定一些指令。我設定的指令如下:
...
daemon gpm -t $MOUSETYPE -d 2 -a 5 -B 132 # two-button mouse -- 雙按鈕滑鼠
...
顯而易見,其中設置當然得與滑鼠的類型相符。在多數筆記型型電腦中, MOUSETYPE
應設為 “PS/2”
。
在Caldera系統中,只要在/etc/rc.d/rc.boot中加入此行即可:
/usr/bin/gpm
在S.u.S.E.中,在/etc/rc.config中加入gpm
部分;在Debian系統中,則需修改
/etc/gpm.conf。
如果喜歡用Ctrl按鈕使用主控台的菜單,則需設置gpm-root
。修改
/etc/gpm-root.conf中的預設菜單,然後從/etc/rc.d/rc.local啟動
gpm-root
。
為方便使用,應對軟盤、其他設備和NFS的輸出目錄設定加載位置。例如,可採用下列辦法:
/mnt# mkdir floppy; mkdir cdrom; mkdir win; mkdir zip; mkdir server
此行設定了 DOS/Win 軟盤(ext2磁片)、CD-ROM、Windows 分割區、平行口 Zip 驅動器和 NFS 目錄的加載位置。
然後修改 /etc/fstab
檔,并增加下列內容:
/dev/fd0 /mnt/floppy auto user,noauto 0 1
/dev/cdrom /mnt/cdrom iso9660 ro,user,noauto 0 1
/dev/zip /mnt/zip vfat user,noauto,exec 0 1
/dev/hda1 /mnt/win vfat user,noauto 0 1
server:/export /mnt/server nfs defaults
顯而易見,第一欄必須使用正確的設備名稱。最近發表的內核已經支持 fat32;以前的內核需要修補。修補軟件可從
http://bmrc.berkeley.edu/people/chaffee/fat32.html取得。有關這方面的進一步資料,可查詢
man mount
。
注意第一行中的“auto”文檔系統格式;這表示可加載 ext2 和 vfat(DOS/Windows)兩種系統格式製作的磁片。mtools
也是相當好用的工具。
許多使用者在電腦上同時運行 Linux 和 DOS/Windows 兩套操作系統,並在開機時選用其中之一;這應在安裝時作出設定,如果當時沒有設定, 可採取下列辦法解決。首先假定 /dev/hda1中裝有 DOS/Windows, /dev/hda2 中裝有 Linux .
將 /dev/hda 作為默認設備!
Command (m for help):a
Partition number (1-4): 2
Command (m for help):w
經過這項設定, Linux 分割區成為啟動操作系統。然後在/etc/lilo.conf中作出設定:
boot = /dev/hda2
compact # may conflict with "linear" --可能與“linear”衝突
delay = 100 # 10 seconds --等待10秒
linear # gets rid of the "1024 cylinder" problem --解決1024磁圈的問題
# message = /boot/bootmesg.txt # write your own, if you will --自訂開機信息
root = current
image = /boot/vmlinuz # boot Linux by default as this entry comes first --默認的內核
label = Linux
read-only
# append="mem=128M" # to see more memory than 64M --如果記憶內存大於64M
other = /dev/hda1
table = /dev/hda
label = dos
運行/sbin/lilo后就大功告成。由于lilo
是安裝中極其重要的部分,
無論如何應該詳細閱讀有關這方面的資料。
如果不打算重作設定,而要從 DOS/Windows 內啟動 Linux ,可把 LOADLIN.EXE
放入一個屬於 DOS 路徑的子目錄(DOS 分割區);然後將內核拷貝到該子目錄,例如C:\TEMP\VMLINUZ
。利用下面簡單的
.BAT
檔就可啟動 Linux:
rem Linux .bat
smartdrv /C
loadlin c:\temp\vmlinuz root=/dev/hda2 ro
如使用 Windows 9X,則設定這個.BAT
檔的特性,使其從 MS-DOS 狀態啟動。
在安裝 Linux 之前,先製作一張 MBR 區的備份磁片,以防不測。先運行restorrb
(包括在FIPS
的軟件包內),
或以下面的指令製作 Linux 的死機解救磁片:
rescue:
然後至少製作兩片有MBR
檔的磁片。如果一旦故障停機,
可用下列指令恢復原先的 MBR:
rescue:
當然,這要在/mnt
已加載包含MBR
的磁片。否則,利用 DOS 的解救磁片運行FDISK /MBR
。
如何閱讀以 HTML 格式或含有其他各種文件格式的電子郵件呢?首先要有兩個文檔:/etc/mime.types 和/etc/mailcap。第一個文檔列出文件的格式及其擴展名:
application/postscript ps eps
image/jpeg jpe jpeg jpg
text/html html
而第二個文檔規定如何顯示這種文檔的格式。
有時有的電子郵件使用 Microsoft Outlook 發送,其內容含有多重 MIME 格式。閱讀這類電子郵件需要在etc/mailcap中加入下列兩行:
text/plain; less %s; needsterminal
text/html; lynx -force_html %s; needsterminal
就我所知,各種 Linux 版本均有設置打印機的工具(printtool
,yast
或magicfilter
);
否則可用基本的手動設定。
假定要用非 PostScript 打印機(也非“Windows-only”的打印機)來打印原始文件(例如 C 程序的原始碼文本)和利用 GhostScript 來打印 PostScript 文檔(此處假定已安裝了 GhostScript)。
設定打印機的步驟如下:
~# echo "hello, world" > /dev/lp0
~# echo "hello, world" > /dev/lp1
記下聯機的打印機和端口。
/var/spool/lpd/# mkdir raw; mkdir postscript
~# echo "first line" > /dev/lp1 ; echo "second line" > /dev/lp1
如果印出的結果如下:
first line
second line
將此文檔作為/var/spool/lpd/raw/filter
保存:
#!/bin/sh
# 這個過濾器可消除“台階”現象
awk '{print $0, "\r"}'
運行chmod 755 /var/spool/lpd/raw/filter
使其成為可執行文檔。
#!/bin/sh
DEVICE=djet500
RESOLUTION=300x300
PAPERSIZE=a4
SENDEOF=
nenscript -TUS -ZB -p- |
if [ "$DEVICE" = "PostScript" ]; then
cat -
else
gs -q -sDEVICE=$DEVICE \
-r$RESOLUTION \
-sPAPERSIZE=$PAPERSIZE \
-dNOPAUSE \
-dSAFER \
-sOutputFile=- -
fi
if [ "$SENDEOF" != "" ]; then
printf "\004"
fi
(上例使用 HP DeskJet 打印機。如為他種打印機,則作出相應修改。)
# /etc/printcap
lp|ps|PS|PostScript|djps:\
:sd=/var/spool/lpd/postscript:\
:mx#0:\
:lp=/dev/lp1:\
:if=/var/spool/lpd/postscript/filter:\
:sh:
raw:\
:sd=/var/spool/lpd/raw:\
:mx#0:\
:lp=/dev/lp1:\
:if=/var/spool/lpd/raw/filter:\
:sh:
其他更為複雜或少見的打印設置,請參考 Printing-HOWTO。
注意:如使用printtool
,Printtool選取的 GSDEVICE 可以用于打印,但不一定是最好的選擇。不妨對postscript.cfg
檔作些修改;例如,把 GSDEVICE 內cdj500
改為 djet500
,就可加快打印的速度。
放在 ftp://tsx-11.mit.edu/pub/ Linux /sources/sbin上的工具軟件對改變主控台的屏幕分辨率、字體和游標的形狀非常有用。 在主控台上工作時,需要使用重音字體的文字(譯註:如歐洲文字) 或需要改變筆記本電腦游標的大小都可使用這套軟件。
從默認的 VGA 參數開始,首先編輯/etc/TextConfig或/etc/TextMode。 使用歐洲文字的用戶應該對其中含有“LoadFont”一節感到慶幸。
Option "LoadFont"
FontProg "/usr/bin/setfont"
FontPath "/usr/lib/kbd/consolefonts"
FontSelect "lat1u-16.psf" 8x16 9x16 8x15 9x15
FontSelect "lat1u-14.psf" 8x14 9x14 8x13 9x13
FontSelect "lat1u-12.psf" 8x12 9x12 8x11 9x11
FontSelect "lat1u-08.psf" 8x8 9x8 8x7 9x7
完成這項設定之後,運行SVGATextMode "80x34x9"
。如果覺得一切運行順利,從/etc/TextMode中刪除警告,并將下行寫入
etc/rc.d/rc.sysinit:
# SVGATextMode
/usr/sbin/SVGATextMode "80x34x9"
注意:方塊游標只在有些模式下有效;在我的筆記本電腦上,其數值為“80x32x9”。