1、處理特殊的文件名
假設Linux系統中有一個文件名叫“-aaa”,如果我們想對它進行操作,例如現在要刪除它,如果我們按照一般的刪除方法在命令行中輸入rm -aaa命令,界面將會提示我們是無效選項(invalid option),原來由於文件名的第一個字符為 - ,Linux把文件名當作選項了,我們可以使用“--”符號來解決這個問題,例如我們可以輸入rm -- -aaa命令來刪除-aaa文件。如果是其他特殊字符的話可以在特殊字符前加一個“”符號,或者用雙引號把整個文件名括起來。
2、修復Linux下超級用戶的密碼
如果超級用戶將密碼忘記,就無法進入系統,也無法管理和使用系統。本來這種事不太可能發生,但是在一些Linux單機使用者,尤其是初學者中,卻是比較容易發生。一般的解決方法就是格式化硬盤來重新安裝系統,但這有點兒小題大作了。准備好bootdisk和rootdisk兩張軟盤,從軟驅啟動,啟動到root盤並出現shell提示符。將Linux根目錄分區mount至/mnt目錄,比如你的Linux在硬盤第一分區,就在命令行中輸入mount /dev/hda1 /mnt,然後進入mnt目錄,將其中的etc/passwd文件改名,輸入mv /mnt/etc/passwd /mnt/etc/passwd.bak就可以了;接著使用命令cp /etc/passwd /mnt/etc/passwd將軟盤上的/etc/passwd文件復制到硬盤中的etc目錄下,這樣重新由硬盤啟動,登錄時就不會詢問超級密碼;最後使用mv/etc/passwd.bak passwd命令將passwd文件改回,再運行passwd命令重新設定密碼就可以了。
3、直接進行Linux的安裝工作
通常我們在安裝某個操作系統軟件時,需要該系統的引導盤啟動才能安裝。但我們在安裝Linux操作系統時,可以利用該系統光盤中的一個名為loadlin.exe的DOS軟件,將Linux核心直接調入內存,並由Linux核心代替當前操作系統來接管計算機,並進入Linux的安裝界面。在安裝Linux時,我們只要在運行對話框中輸入loadlin E:imagesvmlinuz root=/dev/ram initrd=E:imagesinitrd.img這個命令就可以直接安裝Linux了;其中E是光驅盤符,E:imagesvmlinuz為Linux核心名。
4、快速啟動Linux系統
隨著個人計算機配置的日益提高,在自己的計算機上安裝Linux系統已經不是什麼新鮮的事了。假設我們的計算機上同時裝有windows和Linux兩個操作系統,應該如何啟動Linux呢?是否每次都需要重啟計算機,通過LiLo引導?其實如果我們在dos下,有一種簡單快速啟動Linux的方法,那就是load Linux。loadlin.exe是在dos下的可執行程序,它可以在純dos環境下迅速啟動Linux,而且無需重啟計算機,通常我們可以在光盤的/kernels目錄下可以找到這個程序。如果不知這個程序被放置於安裝盤的何處,可以使用“find -name loadlin*”命令來尋找。找到之後將其復制到dos分區中,同時還需要復制一份你所使用的Linux內核文件。可以通過windows直接從光盤復制,也可在Linux環境下使用mcopy命令將文件copy到dos分區;接著再編寫一個Linux.bat的批處理文件,文件內容如下:c:loadlin c:vmlinuz root=/dev/hda1 ro
其中我們假設loadlin.exe和vmlinuz這兩個內核文件都在c盤根目錄,而root為Linux根設備,而且Linux處於硬盤第一分區,所以設備名為/dev/hda1,ro意為readonly。以後在dos下要啟動Linux時,運行Linux.bat就可以了。這樣啟動Linux快速高效,大大的減少了系統自檢時等待的時間。
5、消除Xwindows下的死機現象
如果我們在Xwindows狀態下運行Linux時,由於硬件本身的問題或者自己操作上的不當,有時侯可能會導致系統突然失去響應,也就是我們常見到的一種死機現象,其實此時系統並沒有死機。我們可以用兩個常用的方法來消除這種現象:第一,用鍵盤上的復合鍵Ctrl+Alt+Backspace來關閉當前正在運行的任務;第二,首先按住鍵盤上的Ctrl+Alt+F2復合鍵,讓系統切換到另一個操作台,然後登陸到系統,再執行#ps -ax|grep startx命令,這將會列出你的Xserver的進程標識(PID),接著在命令行中輸入如下命令就能消除Xwindows下的死機現象:#kill -9 PID_Number,最後通過Alt+F1復合鍵返回原來的平台。
6、快速關閉Linux系統
舊版本的的Linux/UNIX系統必須先運行shutdown命令,然後才能關閉電源,但最新版本的Linux/UNIX系統已經在這個方面作了很大的改進,再也沒有必要象以前那樣關機了。因為新版本的系統借鑒了大型機的技術,采用了抗掉電的日志式文件系統,可以自動跟蹤保存用戶數據、自動同步刷新文件系統,用戶完全可以隨手關閉電源,從而達到快速關閉系統的目的了。
7、巧妙使用rm命令
我們知道在Linux字符界面中,要刪除一個文件的話可以使用rm命令,刪除一個目錄可以使用rmdir命令。但由於rmdir命令只能刪除空白的目錄,假使某個目錄下面有文件,就只能先用rm命令來把目錄中的文件刪除掉才可以,所以通常需要rmdir與rm這兩個命令配合使用才能徹底刪除一個完整的目錄。但用這種方法來對付幾級子目錄還能湊合,如果一個目錄中含有若干個子目錄,而且這若干子目錄中又包含了若干級子目錄,再使用這種方法不把你累死才怪。現在我們可以使用帶-r參數的rm命令來刪除一個非空目錄,例如我們在命令行中輸入rm -r bbb這樣的命令,表示系統將把bbb目錄中包含的所有文件和子目錄全部刪除掉。
8、善用虛擬操作台
當我們登錄進Linux系統後,如果再按一下鍵盤上的Alt+F2鍵,這時我們又可以看到一個Shell提示符,其實這個就是第二個虛擬操作台。通常,新安裝的Linux系統共有四個虛擬操作台,我們可以分別用復合鍵Alt+F1、Alt+F2、Alt+F3、Alt+F4來訪問它們。使用虛擬操作台頻率最多的地方就是,當某一個程序出錯鎖住輸入時或者Linux系統突然失去響應時,就可以切換到其他虛擬操作台登錄進入後殺掉這個出錯的進程任務。
9、增加虛擬緩存
如果計算機上的SWAP(交換空間)不夠了,只要我們的硬盤上還有空余的空間,我們就可以把這些剩余空間利用起來,我們可以直接使用命令:mkswap /dev/hda(假設Linux的驅動器是/dev/hda),swapon /dev/hda;要自動啟動Swap,可以把新的分區加入到etc/fstab中去,照著原來swap的寫就行了。用"free"檢查swap的大小,Linux支持最多16個交換分區,每個交換分區最大128M,沒有空閒分區的時候,可以用個大文件來建立。下面是執行的一系列命令:
#dd if=/dev/zero of=swapfile bs=1024 count=8192
#mkswap swapfile 8192
#sync
#swapon swapfile
10、巧妙使用Tab鍵
大家知道在Linux字符界面中輸入命令時,有時需要輸入很多字符,如果經常這樣逐個逐個地輸入字符,比較煩瑣。假設鍵入的字符足以確定目錄下一個唯一的文件時,我們只須按鍵盤上的 Tab 鍵就可以自動補齊該文件名的剩下部分,例如要把目錄 /ccc 下的文件 ddddddd-1.2.3.tar.gz 解包時,當我們在命令行中鍵入到tar xvfz /ccc/d時,如果該文件是該目錄下唯一以d起頭的文件的話就可以直接按下鍵盤上的Tab鍵,這時命令會被自動補齊為:tar xvfz /ccc/ddddddd-1.2.3.tar.gz ,從而提高了輸入效率。
11、多用拷貝與粘貼來提高操作速度
Linux系統安裝後,每次啟動到字符界面時都會自動運行一個叫gpm的程序, 該程序運行後就可以用鼠標來拷貝與粘貼了。 具體做法是按住鼠標左鍵拖動讓要拷貝的地方突出顯示, 這時突出顯示的區域已經被拷貝, 再按鼠標右鍵拷貝的內容就會被粘貼在光標所在位置了。如果我們在Xwindow下運行Linux系統,拷貝與粘貼的操作與在普通的Win9x系統下一樣。
12、加快Linux存取數據
如果我們想快速提高Linux下的硬盤讀取數據,可以在Linux下進行一些設置,讓Linux在32位輸入輸出方式和DMA通道方式下進行工作。設置時,在Linux命令界面中輸入命令/sbin/hdparm -cl /dev/hda來打開32bit傳輸方式,輸入命令/sbin/hdparm -dl /dev/hda來打開DMA傳輸方式,接著再輸入命令/sbin/hdparm -kl /dev/hda來使硬盤在Reset之後仍然保持上述的設置,通過這些設置,我們就能提高Linux的讀盤速度到1倍以上。
13、使用急救盤組進行維護
急救盤組(也稱為boot/root盤組),是系統管理員必不可少的工具。用它可以獨立地啟動和運行一個完整的Linux系統。實際上,急救盤組中的第2張盤上就有一個完整的Linux系統,包括root文件系統;而第1張盤則存放了可啟動的內核。
使用急救盤組維護系統很簡單。只需用這兩張盤啟動系統後,進入急救模式,這時使用的是root賬戶。為了能訪問硬盤上的文件,需要手工安裝硬盤文件系統。例如,用下面的命令可在/mnt目錄中安裝/dev/hda2盤上的ext2fs類型的Linux文件系統:
# monut -t ext2/dev/hda2/mnt
注:現在根目錄是急救盤上的根目錄。為了訪問硬盤文件系統中的文件,必須先把它安裝到某個目錄下。這樣,如果將硬盤上文件系統安裝在/mmt目錄下,則硬盤上原來的/etc/passwd文件的路徑就是/mnt/etc/passwd。
14、文件系統被破壞時的處理方法
當文件系統被破壞時,如果使用的是ext2fs類型的文件系統,就可從軟盤運e2fsck命令來修正文件系統中被損壞的數據。對於其他類型的文件系統,可以使用相應的fsck命令。
當從軟盤上檢查文件系統時,最好不要mount安裝。
注:文件系統被破壞的常見原因是超級塊被損壞,超級塊是文件系統的“頭部”。它包含文件系統的狀態、尺寸和空閒磁盤塊等信息。如果損壞了一個文件系統的超級塊(例如不小心直接將數據寫到了文件系統的超級塊分區中),那麼系統可能會完全不識別該文件系統,這樣也就不能安裝它了,即使采用e2fsck命令也不能處理這個問題。
不過,ext2fs類型的文件系統將超級塊的內容進行了備份,並存放於驅動程序的塊組(block group)邊界。可以用如下的命令通知e2fsck使用超級塊的備份
# e2fsck -b 8193
是指文件系統所在的分區,-b 8193選項用於顯示使用存放在文件系統中的8193塊的超級塊的備份數據。
15、恢復丟失的文件
如果不小心刪除了重要的文件,那麼沒有辦法直接恢復。但是還可以將相應的文件從急救盤復制到硬盤上。例如,如果刪除了文件/bin/login,此時系統無法正常進到登錄界面,可以用急救盤組啟動系統,將硬盤文件系統安裝到/mnt目錄下,然後使用下述命令:
#cp -a /bin/login /mnt/bin
“-a”選項用於告訴cp在拷貝時保持文件的訪問權限。 當然如果被刪除的基本文件不在“急救盤組”中,也就不能用這種方法了。如果以前做過系統備份的話,那麼也可以用以前的備份來恢復。
4.函數庫破壞時的處理方法
如果不小心將系統函數庫文件破壞了,或者破壞了/lib目錄下符號鏈接,那麼將導致依賴這些庫的命令無法執行。最簡單的解決辦法是用急救盤組啟動系統,在/mnt目錄中安裝硬盤文件系統,然後修復/mnt/lib目錄下的庫。
16、無法用root賬號登錄系統
由於系統管理員的疏忽,或者由於系統受到黑客的入侵,系統管理員可能無法用root帳號登錄系統。
對於第1種情況,可能是系統管理員忘記了root密碼,用急救盤組就可以解決問題。
對於第2種情況,由於很可能是密碼被黑客修改了,因此系統管理員無法進入系統,也就是說,Linux系統完全失去了控制,因此應盡快重新獲得系統的控制權。在取得 root權限後,還應檢查系統被破壞的情況,以防被黑客再次入侵。
需要做的最主要的工作就是重新設置root的密碼,獲得Linux操作系統的控制權。首先用急救盤組啟動系統,然後將硬盤的文件系統安裝到/mnt目錄下,編輯/mnt/etc/passwd文件,將其對應於root賬戶的一行加密口令域置空,如下所示:
root::0:0:root:/root:bin/bash
注:如果系統使用 shadow工具,就需要對文件/etc/shadow進行上述的操作,使root登錄系統不需要口令。
這樣,root賬戶就沒有口令了。當重新從硬盤啟動Linux系統時,就可以用root賬戶登錄(系統不會要求輸入密碼)。進入系統後,再用命令passwd設置新的口令。
17、Linux系統不能啟動
一般來說,如果系統管理員不能正常進入系統,就需要考慮使用急救盤組進入急救模式排除系統的故障。但在沒有制作急救盤組的情況下,Linux系統不能啟動,該怎麼辦?
在個人計算機使用 Linux系統時,通常都是Linux和MS Windows 9x或MS Windows NT並存的。
由於重新安裝其他的操作系統,經常會導致原有的Linux不能啟動。這主要是因為,這些操作系統默認為計算機中沒有其他的操作系統,因而改寫了硬盤的主引導記錄(MBR),沖掉了Linux的LILO系統引導程序。
如果有急救盤組,那麼很簡單,用第一張啟動盤啟動硬盤的Linux系統,重新運行LILO命令,就可以將LILO系統引導程序寫回硬盤的主引導記錄。再次開機即可。
如果沒有系統啟動盤,怎樣恢復硬盤上的Linux呢?在這種情況下,如果知道Linux在硬盤上的確切安裝分區,且有loadlin程序,就可以重新返回Linux。loadlin程序是DOS下的程序,運行它可以從DOS下直接啟動Linux,快速進入Linux環境。在 Red Hat Linux 6.0光盤的 dosutil/目錄下就有這個程序。除此之外,還需要一個 Linux啟動內核的映像文件。在 Red H
at linux 6.0光盤的 images/目錄下有這個文件——vmlinuz。
例如,在Windows 98系統下面,進入DOS的單用戶模式,然後運行下述的loadlin命令,即可重新進入Linux系統:
loadlin vmlinuz root=/dev/hda8
/dev/hda8是Linux的root文件系統所在的硬盤分區位置。命令執行後,就引導Linux系統。用root登錄後,運行LILO命令,則重新將LILO裝入MBR,回到以前多操作系統並存使用的狀態。