Download presentation
Presentation is loading. Please wait.
1
第 8 章 文字環境的操作 著作權所有 © 旗標出版股份有限公司
2
本章提要 如何進入文字模式 登入、登出、關機 檔案與目錄的操作 使用光碟及軟碟機 在背景執行程序 排程工作 打包、壓縮與解壓縮 其他常用指令
3
如何進入文字模式 在 X Window 中開啟文字模式視窗 切換虛擬主控台進入文字模式 開機直接進入文字模式
4
在 X Window 中 開啟文字模式視窗 以預設的 GNOME 桌面環境為例
5
在 X Window 中 開啟文字模式視窗
6
在 X Window 中 開啟文字模式視窗 在文字模式視窗中, 可以用 Shift+PageUp 與 Shift+PageDown 鍵來捲動視窗內容 除了用滑鼠右鈕開啟文字模式視窗外, 還可按左下角的主選鈕, 執行『系統工具/終端機』 命令開啟文字模式視窗
7
切換虛擬主控台進入文字模式 Linux 主機在主控台 (console) 下提供了 7 個虛擬主控台 在每一個虛擬主控台中可以執行各自的程式
登入 X Window 系統後的任何時間, 都可按下 Ctrl+Alt+Fn 來切換到其他的虛擬主控台 其中 Fn 是指 F1 到 F7 的功能鍵
8
切換虛擬主控台進入文字模式
9
切換虛擬主控台進入文字模式 文字模式虛擬主控台中的鍵盤操作方式與文字模式視窗相似, 甚至也可以使用滑鼠複製區塊
也可在 X Window登入畫面一出現的時候, 就按 Ctrl+Alt+F1, 直接登入文字模式的虛擬主控台 文字模式虛擬主控台中的鍵盤操作方式與文字模式視窗相似, 甚至也可以使用滑鼠複製區塊 如果要捲動螢幕內容, 請先按下 Scroll Lock 鍵, 接著再按 Shft+PageUp 或 Shift+PageDown 鍵, 即可捲動螢幕 如果要離開捲動模式, 只要再按一次 Scroll Lock 鍵即可
10
開機直接進入文字模式 要設定開機時直接進入文字模式, 可用文書編輯器,如下修改 /etc/inittab 檔:
11
開機直接進入文字模式 重新啟動電腦後, 就會進入純文字的登入畫面: 若要進入 X Window, 可於指令列執行 startx 指令
重新啟動電腦後, 就會進入純文字的登入畫面: 若要進入 X Window, 可於指令列執行 startx 指令 按下 Ctrl+Alt+Fn 鍵, 亦可切換到其他的虛擬主控台
12
/etc/inittab 設定錯誤, 導致無法開機
若修改 /etc/inittab 後無法正常開機, 則可以在開機時採用單人模式進入系統, 重新修改 inittab 設定檔以解決此問題 使用 GRUB 為開機管理程式時, 只要在開機顯示選單畫面時, 按 a 鍵, 並在指令列輸入以下參數以進入單人模式:
13
/etc/inittab 設定錯誤, 導致無法開機
使用 LILO 為開機管理程式時, 在開機顯示 LILO 提示字元處輸入以下參數即可:
14
登入、登出、關機 登入系統 登出系統的 logout 指令 關機或重新關機的 shutdown 指令 重新啟動電腦的 reboot 指令
15
登入系統 進入 Linux 系統的第一件事情是登入 (login) 系統 使用者必須先有該主機的帳號才能登入
一個帳號包括使用者名稱和密碼兩個部份, 使用者必須正確輸入才能進入系統, 登入系統的畫面如下:
16
登入系統
17
登出系統的 logout 指令 登入系統後, 若要離開系統, 只要直接下達 logout 指令即可 登出系統之後, 可不要立刻就關機
Linux 是個多人使用的作業系統, 登出系統只是結束自己的工作
18
如何查詢指令的用法 ? 使用 man 指令可查詢指令的線上說明: 大多數指令的語法, 還可以透過 -h 或 --help 參數查詢
例如 shutdown 指令的語法也可執行 shutdown -h 指令查得
19
關機或重新開機的 shutdown 指令 shutdown 指令可以關閉所有程序, 並依使用者的需要, 重新開機或關機
接著系統將依序關閉各項程序及服務, 最後則會出現 "Power down" 的訊息 若電腦支援軟體關機, 系統會直接關機;若不支援則必須自行關閉電源
20
關機或重新開機的 shutdown 指令 指定關機時間:time 參數可指定關機的時間; 或設定多久後執行 shutdown 指令
time 參數有兩種模式: "hh:mm" 或 "+m" 例如 shutdown 10:45 指令表示 10:45 執行 shutdown 指令;"+m" 表示 m 分鐘後關機
21
關機或重新開機的 shutdown 指令 設定關機前的通知訊息:warning-message 參數可指定送出給所有登入使用者的訊息
22
關機或重新開機的 shutdown 指令 f 參數:在重新啟動時不執行 fsck 指令 F 參數:在重新啟動時, 執行 fsck 指令
fsck (file system check) 指令可以檢查檔案系統是否正常 F 參數:在重新啟動時, 執行 fsck 指令 shutdown 指令不一定要在本機執行, 以 telnet 或 ssh 登入遠端機器時, 同樣可以執行 shutdown 指令關機或重新開機
23
重新啟動電腦的 reboot 指令 reboot 指令用來重新啟動系統 -f 參數:不依正常程序執行關機, 直接關閉系統並重新啟動電腦
-i 參數:在重新啟動前關閉所有網路介面 一般只需要單獨執行 reboot 指令即可
24
避免按 Ctrl+Alt+Del 重新開機 在 Linux 中直接按下 Ctrl + Alt + Del 鍵, 也會重新開機
若不希望任何人用這組組合鍵重新啟動電腦, 請用文書編輯器修改 /etc/inittab 檔: 存檔並重新啟動電腦後, 以後就無法用 Ctrl + Alt + Del 鍵重新開機了
25
檔案與目錄的操作 列出檔案清單的 ls 指令 切換目錄的 cd 指令 建立目錄的 mkdir 指令 刪除目錄的 rmdir 指令
複製檔案的 cp 指令 刪除檔案或目錄的 rm 指令 讓顯示畫面暫停的 more 指令
26
檔案與目錄的操作 顯示檔案內容的 cat 指令 搬移或更改檔案、目錄名稱的 mv 指令 顯示目前所在目錄的 pwd 指令
尋找檔案的 locate 指令 搜尋字串的 grep 指令 重導與管線
27
列出檔案清單的 ls 指令 ls (list) 指令用來顯示目前目錄中的檔案和子目錄清單 配合參數的使用, 能以不同的方式顯示目錄內容
顯示目前目錄的內容:
28
列出檔案清單的 ls 指令 列出以 "."開頭的檔案:加 -a 參數
29
列出檔案清單的 ls 指令 以較詳細的格式顯示檔案:
30
列出檔案清單的 ls 指令 以 "-s "參數顯示每個檔案所使用的空間 以 "-S" 參數指定依所佔用空間的大小排序
31
"." 、 ".." 、 "~" 和 "/" "." 表示目前目錄 ".." 表示上一層目錄 "/ " 表示系統根目錄
"~" 則為使用者家目錄, 或稱使用者專屬目錄 使用者家目錄, 即使用者登入時所在的目錄 例如 root 使用者的使用者家目錄為 /root, 而 tony 的使用者家目錄為 /home/tony
32
文字模式下的中文訊息 出現亂碼, 怎麼辦? 在此 Linux 發行版中, 若是在 X Window 下開啟下文字模式視窗, 以文字模式操作, 則所有中文檔名、月份, 甚至部份訊息都可以正常的以中文顯示 但在文字模式的虛擬主控台中, 這些中文訊息則會變成亂碼, 此時請如下操作, 可將訊息改成以英文顯示
33
文字模式下的中文訊息 出現亂碼, 怎麼辦?
34
文字模式下的中文訊息 出現亂碼, 怎麼辦? 若想改回原來的設定, 則只要再執行 LANG=zh_TW.UTF-8 指令即可:
35
切換目錄的 cd 指令 cd (change directory) 指令可讓使用者切換目前所在的目錄:
36
建立目錄的 mkdir 指令 mkdir (make directory) 指令可用來建立子目錄
以下範例會於所在目錄下建立 source 子目錄:
37
快速輸入指令的方法 在文字模式下操作指令時, 如果需要輸入與之前重複或類似的指令, 可以按 "↑"、"↓" 鍵來回復最近執行過的命令
另外當指令輸入到一半, 卻忘記指令名稱或僅記得前幾個字時, 只要按 Tab 鍵就能自動完成可能的指令 若是尚未完成的指令有兩種以上的可能性, 再按第二次 Tab 鍵, 系統便會將所有可能的指令都列出來以供參考
38
刪除目錄的 rmdir 指令 rmdir (remove directory) 指令可用來刪除 "空" 的子目錄:
39
複製檔案的 cp 指令 cp (copy) 指令可以將檔案從一處複製到另一處
40
複製檔案的 cp 指令 顯示複製過程:加入 -v 參數可顯示指令執行過程
41
複製檔案的 cp 指令 遞迴複製:加入 -R 參數可同時複製目錄下的所有檔案及子目錄
42
刪除檔案或目錄的 rm 指令 rm (remove) 指令可以刪除檔案或目錄:
強迫刪除:使用 -f 參數時, rm 指令會直接刪除檔案, 不再詢問
43
刪除檔案或目錄的 rm 指令 遞迴刪除:-r 也是一個相當常用的參數, 使用此參數可同時刪除指定目錄下的所有檔案及子目錄
顯示刪除過程:使用 -v 參數
44
刪除檔案或目錄的 rm 指令 強制刪除指定目錄:使用 -r 參數刪除目錄時, 若該目錄下有許多子目錄及檔案, 則系統會不斷的詢問, 以確認的確要刪除目錄或檔案 若已確定要刪除所有目錄及檔案, 則可以使用 -rf 參數 如此一來, 系統將直接刪除該目錄中所有的檔案及子目錄, 不會再一一詢問
45
讓顯示畫面暫停的 more 指令 使用 more 指令, 可讓畫面在顯示滿一頁的時候暫停 按空白鍵可繼續顯示下一個畫面
按 q 鍵則可以停止顯示
46
讓顯示畫面暫停的 more 指令 用 ls 指令查看檔案列表時, 若檔案太多, 則可配合 more 指令使用:
47
讓顯示畫面暫停的 more 指令 單獨使用 more 指令時, 可用來顯示文字檔的內容:
48
顯示檔案內容的 cat 指令 cat (concatenate) 指令可以顯示檔案的內容 (經常和 more 指令搭配使用)
也可以將數個檔案合併成一個檔案 逐頁顯示 preface.txt 的內容: 將 preface.txt 附加到 outline.txt 檔案之後: 將 news.txt 和 info.txt 合併成 readme.txt 檔:
49
搬移或更改檔案、目錄名稱的 mv 指令 mv (move) 指令可以將檔案及目錄搬移到另一目錄下 也用以更改檔案及目錄的名稱
50
顯示目前所在目錄的 pwd 指令 pwd (print working directory) 指令可顯示使用者目前所在的目錄
51
尋找檔案的 locate 指令 locate 指令可用來搜尋包含指定條件字串的檔案或目錄
52
尋找檔案的 locate 指令 locate 指令是從系統中儲存檔案及目錄名稱的資料庫中搜尋檔案, 所以速度較快
雖然系統會定時更新資料庫, 但對於剛新增或刪除的檔案、目錄, 仍然可能會因為資料庫尚未更新而無法查得 以 root 帳號執行 updatedb 指令可更新資料庫, 維持其內容正確
53
搜尋字串的 grep 指 grep 指令可以搜尋特定字串並顯示出來 一般用來過濾先前的結果, 避免顯示太多不必要的資訊
54
搜尋字串的 grep 指 -s 參數:若是使用一般權限的使用者執行, 上例的輸出結果會包含許多如 "拒絕不符權限的操作" 之類的錯誤訊息
55
重導與管線 重導 (redirect) 可將某指令的結果輸出到檔案中, 它有兩種指令: ">" 和 ">>"
">" 可將結果輸出到檔案中, 該檔案原有內容會被刪除 ">>" 則將結果附加到檔案中, 原檔案內容不會被清除
56
重導與管線 管線 (pipe) 指令的符號是 "|", 可將某指令的結果輸出給另一指令
以下範例將 ls 指令的輸出結果傳給 grep 指令過濾:
57
重導與管線 利用 yes 指令會重複輸出 "y" 字元的特性, 將結果傳姶 rm 指令, 如此在遞迴刪除目錄時即可不用重複輸入 "y"
58
使用光碟及軟碟機 在 Linux 的文字模式下要使用光碟或軟碟機, 需要先執行掛載指令, 才可讀寫資料
所謂掛載, 就是將儲存媒體 (如光碟片或軟碟片), 指定成系統中的某個目錄 (如 /mnt/cdrom 或 /mnt/floppy) 直接存取此掛載目錄, 即可讀寫儲存媒體中的資料
59
使用光碟及軟碟機 掛載的 mount 指令 卸載的 umount 指令 開機時自動掛載光碟或軟碟片 允許一般使用掛載光碟或軟碟片
60
掛載的 mount 指令 把光碟片放入光碟機後, 然後執行掛載的 mount 指令掛載光碟片至系統中:
61
掛載的 mount 指令 成功掛載光碟片或軟碟片之後, 即可透過存取該目錄, 來讀寫碟片上的資料:
62
看不到中文檔名? 如果掛載的儲存媒體中含有中文檔名, 則需要在執行 mount 指令時, 再加上 "-o iocharset=utf8" 參數, 如此才能看到此儲存媒體內的中文檔名 例如要掛載光碟片, 可執行以下指令: 也可以將這個參數寫入 /etc/fstab 檔, 這樣就不用每次掛載光碟時, 都加上那麼一長串的參數了
63
卸載的 umount 指令 不需要使用光碟或軟碟片時, 需先執行卸載指令之後, 才能將光碟或軟碟片退出
64
如何抽換光碟片 當光碟片已被掛載成為一個目錄時, 按下光碟機上面的退出鈕, 並無法退出光碟片 必須先將光碟片卸載後, 方能退出光碟片
若目前所在之處就是光碟片掛載的目錄 (如 /mnt/cdrom), 或有其他使用者正在此目錄下, 將無法成功地卸載它, 當然也不能退出光碟片:
65
如何抽換光碟片 請先將工作目錄切換到別處, 或要求其他使用者離開該目錄, 才可卸載並退出光碟片
66
開機自動掛載光碟或軟碟片 若想在開機時自動掛載光碟片或軟碟片, 可用文書編輯器修改 /etc/fstab 檔:
67
允許一般使用者 掛載光碟或軟碟片 Linux 作業系統預設只允許 root 使用者才能執行 mount 指令
若是一般使用者執行上述指令, 則會出現以下錯誤訊息: 若要允許一般使用者也能掛載光碟或軟碟片, 應修改 /etc/fstab 設定檔
68
允許一般使用者 掛載光碟或軟碟片
69
掛載其他種類的儲存媒體 mount 指令除了可掛載光碟或軟碟片之外, 也可掛載硬碟分割區、USB 拇指碟、 數位相機...等
例如 /dev/hda1 (IDE0 第 1 顆硬碟的第一個主要分割區) 是採用 Windows 的 FAT32 檔案系統, 可執行以下指令掛載: 執行上述指令前, 需先建立要掛載的目錄 (此例為 /mnt/windows )
70
在背景執行程序 使用者有時候執行的程序可能要花很多時間 如果將它放在前景執行, 將導致無法繼續做其他事情 最好的方法就是將它放在背景執行
甚至可能希望在使用者登出系統後, 程序還可以繼續執行
71
在背景執行程序 在背景執行程序的 &、bg 指令 前景執行程序的 fg 指令 於登出後讓程序繼續執行的 nohup 指令
72
在背景執行程序的 &、bg 指令 將程序放到背景執行最簡單的方法, 就是在指令最後加上 "&": 或
73
前景執行程序的 fg 指令 如果使用者目前有程序在背景執行中, 則可以下達 fg 指令, 將它從背景中移到前景執行:
74
於登出後讓程序繼續執行的 nohup 指令 nohup (no hangup) 指令可讓使用者登出系統後, 程序繼續執行 然後使用者就可登出
當再登入時, 可用 ps -aux 指令看到程序仍在背景中執行
75
Linux 指令常放置的位置 Linux 系統提供的指令極多, 而且不同的 Linux 系統提供的指令和用法也有出入
執行 echo $PATH 指令可檢視 PATH 參數所設定的目錄有那些 一般至少有 /bin、/usr/bin、/usr/X11R6/bin 再到這些目錄看看它提供了哪些檔案
76
排程工作 電腦有很多程式需要自動啟動或是週期性地被執行 例如開機後自動啟用郵件服務、清理硬碟中不要的暫存檔、備份系統資料...等
對於這些重複性或是需要自動化的工作, 其實不必要每次都辛苦地執行程式 利用排程指令, 可指定系統定期在某個時間執行這些程式
77
排程工作 排程的 crond 常駐指令 排程設定檔的寫法 排程的系統工作 排程的個人工作 排程程式的輸出結果 設定開機自動啟動的服務
指定開機自動執行的程式
78
排程的 crond 常駐指令 crond 是 Linux 用來定期執行程式的指令 安裝完成作業系統之後, 預設便會啟動
系統執行的工作 個人執行的工作
79
排程的 crond 常駐指令 系統執行的工作: 個人執行的工作: 系統週期性所要執行的工作 例如備份系統資料、清理暫存檔等
這些工作通常由系統管理者安排 個人執行的工作: 某個使用者定期想做的工作, 例如每隔 10 分鐘檢查郵件伺服器是否有新的信 這些工作可由每個使用者自行設定
80
排程設定檔的寫法 排程設定檔的格式如下: 在這些欄位裏, 除了 "Command" 是每次都必須指定的欄位以外, 其他欄位皆可視需求自行決定是否指定 對於不指定的欄位, 填上 "*" 即可
81
排程設定檔的寫法 每個欄位所代表的意義如下表所示:
82
排程設定檔的寫法 指定每小時的第 1 分鐘執行 program -a -b -c 指令:
83
排程設定檔的寫法 指定每月9 日的 3 點 50 分執行 program 指令:
84
排程設定檔的寫法 指定每星期日的 4 點 9 分執行 program 指令:
85
排程設定檔的寫法 如果要同時指定多個不連續的時間, 則可在時間跟時間之間用 "," 區隔
指定每月 1 日及 15 日的 2 點 20 分執行 program 指令:
86
排程設定檔的寫法 如果要指定連續的時間, 則可用 "-" 連接兩段時間
指定每天 1 點至 4 點的第 25 分鐘執行 program 指令:
87
排程設定檔的寫法 若要指定週期性的時間, 則可用 "/" 加上 "時間間隔" 指定 指定每隔 10 分鐘執行一次 program 指令:
若要指定週期性的時間, 則可用 "/" 加上 "時間間隔" 指定 指定每隔 10 分鐘執行一次 program 指令: 指定每月隔 10 天的 5 點 35 分執行一次 program 指令:
88
排程的系統工作 /etc/crontab 檔是 Linux 系統工作的排程設定檔, 其預設的內容如下:
89
排程的系統工作
90
排程的系統工作
91
排程的系統工作 在上述的系統工作排程設定檔中, crond 排程指令會每小時、每天、每週及每月執行一次 /etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly 及 /etc/monthly 目錄中的所有執行檔 crond 還會執行 /etc/cron.d 目錄下的檔案
92
排程的個人工作 一般使用者可利用 crontab 指令, 自行設定要定期執行的工作 使用者新增排程工作 使用者檢視目前排程的工作
使用者刪除排程的工作 系統管理者可管理所有使用者排程的工作 個人排程設定檔擺放的位置
93
使用者新增排程工作 使用者可執行 crontab -e 指令編輯自己的排程設定檔, 在其中加入要定期執行的工作
下例為使用者 tony 編輯自己的排程設定檔: 執行 crontab -e 指令後, 即會進入 vi 文書編輯器, 接下來即可自行編輯排程的工作
94
使用者新增排程工作 以下範例指定每天的 14 點 55 分執行 tar czvf backup/backup.tar work/* 指令
將其家目錄中 work 子目錄下的所有檔案, 打包並壓縮後, 備份到 backup 子目錄下:
95
使用者新增排程工作 crond 指令在 14 點 55 分執行了 tony 使用者指定的指令後, 會將輸出結果或錯誤訊息, 以 寄送給該使用者 例如以下為 tony 使用者所收到執行結果郵件的內容:
96
使用者新增排程工作 如果不習慣使用預設的 vi 文書編輯器, 可執行 export VISUAL=nano 指令, 將預設的文書編輯器改為 nano
97
使用者檢視目前排程的工作 要知道目前自己排程的工作, 可執行 crontab -l 指令查詢:
98
使用者刪除排程的工作 如果不想再定期執行排程中的工作, 則可執行 crontab -r 指令刪除所有排程的工作:
99
系統管理者可管理 所有使用者排程的工作 root 系統管理者除了可執行上述的 crontab 指令, 設定自己的程排工作外, 亦可管理一般使用者的排程工作 例如執行以下指令可編輯使用者 tony 的排程工作:
100
系統管理者可管理 所有使用者排程的工作 系統管理者也可執行 crontab -l -u tony 指令列出 tony 使用者目前排程的工作
系統管理者也可執行 crontab -r -u tony 指令刪除 tony 使用者所有排程的工作
101
個人排程設定檔擺放的位置 每個使用者排程工作的設定檔會被儲存在 /var/spool/cron 目錄下, 以帳號名稱為檔名的設定檔
例如使用者 tony 的排程設定檔即為 /var/spool/cron/tony 這些設定檔只允許 root 系統管理者讀寫 一般使用者沒有權限讀取此排程設定檔
102
排程程式的輸出結果 crond 指令預設會將執行的結果及錯誤訊息, 以 E-mail 的方式寄給要求執行的使用者
如果不想收到這些郵件, 可加入以下所述的內容, 將執行結果導向到一個記錄檔:
103
排程程式的輸出結果 下例會將執行結果及錯誤訊息, 全部導向指定的記錄檔: 最後這個範例將不會儲存所有執行結果及錯誤訊息:
104
設定開機自動啟動的服務 若希望 Linux 開機後便自動啟動某些系統服務, 如網頁或郵件伺服器
請以 root 帳號執行 ntsysv 指令, 來設定想要自動開啟的服務
105
設定開機自動啟動的服務
106
指定開機自動執行的程式 如果希望 Linux 啟動時, 就能執行某些程式, 請將要執行的程式寫入 /etc/rc.d/rc.local 檔
例如希望 Linux 啟動時, 便自動執行 program 指令, 便應用文書編輯器開啟 /etc/rc.d/rc.local 檔案, 如下修改
107
指定開機自動執行的程式
108
打包、壓縮與解壓縮 在 Linux 的世界中, 大部分的程式都是以壓縮檔的形式散佈
所以常常會看到一些以 .tar.gz, .tgz, .gz 或 .bz2 為副檔名的檔案 這些檔案都是使用各種不同壓縮程式所製作出來的壓縮檔 從網路上取得這樣的檔案之後, 都要先解壓縮才能安裝使用 因此打包、壓縮與解壓縮是每個 Linux 使用者都會經常用到的基本功能
109
打包、壓縮與解壓縮 打包檔案的 tar 指令 壓縮與解壓縮的 .zip 和 unzip 指令
壓縮與解壓縮的 gzip 和 gunzip 指令 壓縮與解壓縮的 bzip2 和 bunzip2 指令
110
打包檔案的 tar 指令 tar 指令位於 /bin 目錄中, 能將使用者所指定的檔案或目錄打包成一個檔案, 不過它並不做壓縮
一般 Unix 上常用的壓縮方式是先用 tar 指令將許多檔案打包成一個檔案, 再以 gzip 等壓縮指令壓縮成 xxx.tar.gz (或稱為 xxx.tgz ) 的檔案
111
打包檔案的 tar 指令 tar 指令的參數繁多, 執行 tar --help 指令可得到各參數的語法及大致說明
-c:建立一個新的 tar 檔 -v:顯示運作過程的資訊 -f:指定檔案名稱 -z:呼叫 gzip 壓縮指令執行壓縮 -j:呼叫 bzip2 壓縮指令執行壓縮 -t:檢視壓縮檔案內容 -x:解開 tar 檔
112
打包檔案的 tar 指令 先舉一些最常用的範例:
113
打包檔案的 tar 指令 壓縮與解壓縮 打包與解開 更新與刪除
114
壓縮與解壓縮 tar 指令本身沒有壓縮能力, 但可以在產生 tar 檔案後, 立即使用其他壓縮指令來壓縮, 省去需要輸入兩次指令的麻煩:
使用 -z 參數來解開最常見的 .tar.gz 檔案: 使用 -j 參數解開 tar.bz2 壓縮檔:
115
壓縮與解壓縮 使用 -Z 參數指定以 compress 指令壓縮或以 uncompress 指令解壓縮 tar 檔:
116
壓縮與解壓縮 使用 --totals 參數可在打包完成後, 顯示寫入的 bytes 數:
117
打包與解開 tar 的主要功能在於打包和解開 使用 --atime-preserve 參數, 可將解開後的檔案以原來的檔案時間存檔:
使用 -h 參數指定打包檔案時, 若遇到符號連 結 (symbolic link) 時, 要儲存符號連結所連 結的檔案, 而不是符號連結本身:
118
更新與刪除 使用 --delete 參數刪除 .tar 檔中的檔案: 使用 -r 參數將檔案附加到 tar 檔後面:
119
更新與刪除 使用 -k 參數解開 tar 檔案時, 不覆蓋已存在的檔案:
使用 --remove-files 參數將檔案移入 tar 檔案中, 並移除原檔案:
120
壓縮與解壓縮的 zip 和 unzip 指令 zip 和 unzip 指令位於 /usr/bin 目錄中
它們和 DOS 下的 pkzip、pkunzip 以及 Windows 的 WinZip 軟體功能一樣, 可將檔案壓縮成 .zip 檔 壓縮 .zip 檔案的 zip 指令 解壓縮 .zip 檔的 unzip 指令
121
壓縮 .zip 檔案的 zip 指令 zip 指令可用來壓縮檔案
122
壓縮 .zip 檔案的 zip 指令 若不清楚 zip 指令的執行參數, 可直接執行 zip 指令, 顯示版權與語法說明:
123
壓縮 .zip 檔案的 zip 指令 壓縮指定的檔案 (可同時指定不同副檔名的檔案):
124
壓縮 .zip 檔案的 zip 指令 使用 -g 參數可壓縮指定的檔案, 並加入已存在的壓縮檔中:
125
壓縮 .zip 檔案的 zip 指令 使用 -j 參數壓縮時, 只會加入檔案的名稱及內容, 不會包含目錄結構:
126
壓縮 .zip 檔案的 zip 指令 使用 -r 參數, 可在壓縮時包含所有子目錄下的內容:
127
解壓縮 .zip 檔案的 unzip 指令 unzip 指令用來將 zip 指令壓縮產生的檔案解壓縮
128
解壓縮 .zip 檔案的 unzip 指令 將檔案全部解壓縮: 將檔案解壓縮至某個目錄下:
129
解壓縮 .zip 檔案的 unzip 指令 要解壓縮時, 若原來的檔案已存在目錄中, 就不解壓縮;若不存在, 才解壓縮:
解壓縮時不要依照原來的目錄結構, 而將檔案置於目前目錄:
130
壓縮與解壓縮的 gzip 和 gunzip 指令
除了 .zip 檔的壓縮格式外, 在 Linux 系統下更常見的是 .gz 檔的壓縮格式 這種檔案一般是由 gzip 指令所產生 zip 指令能將許多檔案壓縮成一個檔案功能, 但 gzip 不能 所以 gzip 一般會和 tar 合併使用 目前大部分可以見到的壓縮檔大都是用 tar 將所有檔案包裝成一個檔案, 再用 gzip 做壓縮,副檔名為 .tar.gz 或 .tgz 者, 大多就是這類型的檔案
131
壓縮與解壓縮的 gzip 和 gunzip 指令
解壓縮 .gz 檔的 gunzip
132
壓縮檔案的 gzip 使用 gzip -h 可得到指令的參數及語法說明 壓縮及解壓縮:
133
壓縮檔案的 gzip 解壓縮時, 使用 -f 參數, 可強迫覆蓋輸出檔案, 不要提示詢問訊息:
134
解壓縮 .gz 檔的 gunzip gunzip 的用法與 gzip 一樣, 有相同的指令列選項
135
壓縮與解壓縮的 bzip2 和 bunzip2 指令
*.tar.bz2 的壓縮檔, 是 bzip2 程式壓縮的 這種壓縮檔通常會拿來壓縮系統 kernel 或 patch 檔 *.tar.bz2 的解壓縮方法如下: bzip2 與 bunzip2 在功能、參數的用法上與 gzip 幾乎一樣
136
其他常用指令 修改密碼的 passwd 指令 建立開機磁片的 mkbootdisk 指令
顯示與設定時間的 date、 clock 和 ntpdate 指令
137
修改密碼的 passwd 指令 passwd (password) 指令可讓使用者變更密碼 範例如下:
138
修改密碼的 passwd 指令 輸入密碼太短, 會出現以下訊息: 輸入的密碼過於簡單:
139
修改密碼的 passwd 指令 重複的字元太多: 兩次輸入的密碼不同:
140
修改密碼的 passwd 指令 容易遭受字典攻擊的密碼: 為了安全理由, 所輸入的密碼並不會顯示在螢幕上 以上是為了解說方便才列出來
141
字典攻擊 除非啟動 MD5 編碼, 否則 Linux 基本上只能用到 8 個字元的密碼
依循 DES (Data Encryption Standard, 資料加密標準) 規則採用單向加密法, 每個密碼的編碼結果依編碼時所使用的 2 字元 Slat 參數的不同, 而有 4096 種變化 存放密碼的檔案是 /etc/passwd 檔, 此檔的預設權限是允許任何人讀取 雖然密碼的部份經過加密編碼, 卻無法阻擋有心破解的怪客
142
字典攻擊 基於一般人習慣使用好記的常用字彙當做密碼 怪客會節錄字典上的常用字 (普通英文字典一本約有十萬個單字)
然後把每個單字都進行編碼運算, 先計算出 4096 種可能的編碼 再將這些結果與密碼檔 /etc/passwd 內的密碼編碼相互比對, 發現吻合則可逆向推算出密碼 這種利用字典來破解密碼的手段, 被稱做字典攻擊
143
字典攻擊 由於 /etc/passwd 檔案內還有 UID (User ID, 使用者識別碼) 和 GID (Group ID, 群組識別碼) 的資訊 因而必須能讓所有使用者讀取此檔, 系統方可正常運作, 所以不應該去限制此檔的讀取權限 而當投影密碼啟動之後, 密碼將不再存放於 /etc/passwd 檔內, 而變成存放在 /etc/shadow 檔案裡 這個檔案僅容許 root 帳號讀取, 因而有效地解決了這個問題
144
建立開機磁片的 mkbootdisk 指令 如果在安裝系統時, 並沒有製作開機磁片, 或者開機磁片已經損毀
請執行以下指令建立開機磁片:
145
顯示與設定時間的 date、clock 和 ntpdate 指令
範例如下:
146
顯示與設定時間的 date、clock 和 ntpdate 指令
不過, clock 指令預設不允許一般使用者執行, 請用 root 帳號執行:
147
顯示與設定時間的 date、clock 和 ntpdate 指令
請用 root 帳號如下操作:
148
顯示與設定時間的 date、clock 和 ntpdate 指令
有時候可能會苦於不知道標準時間為何 目前網路上也有校時伺服器提供標準時間, 可供使用者校正自己主機的時間 如中央研究院計算中心校時伺服器的網址為 stdtime.sinica.edu.tw
149
顯示與設定時間的 date、clock 和 ntpdate 指令
更改過時間後, 還要執行 clock -w 指令 將更改的時間寫入電腦的 CMOS 中, 如 此下次開機時才會使用更改過的時間:
Similar presentations