伺服器建置實務上課補充教材
- 最新消息:
- 授課教材:鳥哥的 Linux 私房菜-伺服器架設篇第三版
- 每週都有可能會有上機實作,要等老師檢查完畢才能夠下課!否則就不算有來上課!
- 回首頁
- 舊版教材簡易介紹
Unit 01:Linux 的基礎操作實務
目錄的建置與管理、檔案的建置與管理、vim 的使用
- 指令列模式的基本操作技巧
- 使用 [tab] 按鈕
盡量使用 [tab] 按鈕 (鍵盤最左邊的按鈕) 來補齊命令或補齊檔名
[student@localhost ~]$ ifc[tab][tab] # 這就是命令補齊
[student@localhost ~]$ ll /var/sp[tab] # 這就是檔名補齊
[student@localhost ~]$ nmcli con[tab] # 這就是參數補齊
意思是,如果一切順利的話,接在第一個文字的後面,就是命令補齊,接在檔名資料的地方,就是檔名補齊,接在指令後面的某些參數,
也可以做成參數補齊的功能喔!
- 善用 command --help
若有看不懂的參數與指令的用法,盡量使用 command --help 的方式查詢,例如查看 date +%Y 輸出的結果,那個 %Y 的功能是什麼呢?
[student@localhost ~]$ date --help
輸出的結果往下一直查詢,你就可以看到 %Y 的說明了!
- 熟記 [ctrl]+c 來中斷某個程式的運作
不知道做了什麼蠢事,就用 [ctrl]+c 來終止,例如下面的範例:
[student@localhost ~]$ ll '/etc/
> <==這裡按下 [ctrl]+c 來中斷吧!
- 指令模式進行目錄觀察與建立
- 觀察檔名請用 ls 或 ll 來進行觀察,例如觀察家目錄下的檔名有哪些?
[student@localhost ~]$ ll
列出本目錄 (pwd) 之後,你會發現最頂端為斜線 (/),那就是根目錄,檢查根目錄下有哪些檔名?
[student@localhost ~]$ pwd
/home/student (最左邊有 / )
[student@localhost ~]$ ll /
觀察到的檔名中,最左邊的字元,基本上有兩種檔案格式:
- d 開頭:該檔名為目錄檔
- - 開頭:該檔名為一般檔案
例題:請上機使用指令查詢系統相關資訊後並回答下列問題:
- 請問 /etc/hosts 是一般檔案還是目錄檔案?如何觀察?(你應該要觀察上一層檔名才對)
- 請問 /var/spool/mail 是一般檔案還是目錄檔案?如何觀察
- 切換工作目錄可以使用『 cd 目錄 』來轉換,例如切換到 /dev/shm 目錄下,並列出該目錄名稱
[student@localhost ~]$ cd /dev/shm
[student@localhost shm]$ pwd
- 建立新目錄,可以使用『 mkdir 目錄名稱』,例如建立 /dev/shm/student 目錄
[student@localhost ~]$ cd /dev/shm
[student@localhost shm]$ pwd
[student@localhost shm]$ mkdir student
[student@localhost shm]$ ll (你應該會看到有出現 student 檔名才對!)
- 檔案的建置與管理
- 檔案的複製,可以使用『 cp 來源檔 目的目錄 』來處理,例如,你要將 /etc/hosts 複製到 /dev/shm/student/ 目錄下,
該如何處理?
# 1. 先確認有沒有存在 /dev/shm/student
[student@localhost ~]$ cd /dev/shm
[student@localhost shm]$ ll (要確認存在,若不存在請 mkdir student 即可)
[student@localhost shm]$ cd student
[student@localhost student]$
# 2. 將檔案複製過來
[student@localhost student]$ cp /etc/hosts .
[student@localhost student]$ ll
有幾個目錄很重要,先記憶一下:
- /:根目錄,所有檔案的起源
- .:本目錄的意思
- ..:上一層目錄的意思
- 複製目錄得要使用 -a 或 -r 的選項,例如複製 /etc/sysconfig 到本目錄下的作法:
# 1. 先確認 /etc/sysconfig 是檔案還是目錄
[student@localhost student]$ ll -d /etc/sysconfig (-d 很重要,只觀察目標而已!不列出內部檔名)
[student@localhost student]$ cp /etc/sysconfig .
[student@localhost student]$ cp -a /etc/sysconfig .
[student@localhost student]$ ll
因為我們使用一般帳號的身份,因此許多檔案複製可能有權限方面的問題,不要緊張!那是正常的!
- 檔案的刪除使用 rm 來刪除喔!不過如果要刪除目錄,得要加上 -r 的選項才行!
# 1. 先確認 hosts 是存在的,然後刪除他
[student@localhost student]$ ll hosts
[student@localhost student]$ rm hosts
# 2. 先確認 sysconfig 裡面存在 network-scripts,並且進入 sysconfig,嘗試刪除 network-scripts
[student@localhost student]$ ll -d sysconfig
[student@localhost student]$ cd sysconfig
[student@localhost sysconfig]$ ll (確認有沒有存在 network-scripts 吧!)
[student@localhost sysconfig]$ rm network-scripts
[student@localhost sysconfig]$ rm -r network-scripts
觀察使用『 rm 目錄』與『 rm -r 目錄』的差別。
- vim 程式編輯器的使用
- 使用『 vim 檔名』就可以編輯檔案!例如再次複製 /etc/hosts 到 /dev/shm/student 之後,
使用 vim hosts 查看一下該檔案的內容:
其實分為上下兩個部份,最下方那一行是目前的狀態列!這個分類請注意!
- vim 的操作模式:總共有三種模式,切換的方式如下:
簡單的說:
- 你需要編輯了,按下 i 來打字 (最下方一行會顯示插入模式)
- 打字完成了,按下 [esc] 回到一般指令模式 (最下方一行的插入不見了)
- 要儲存了按下 :w 來寫入 (最下方一行顯示寫入了)
- 打字完成也儲存了,離開就按 :q 即可
- 練習一下:
- 使用 vim 打開剛剛的 hosts 檔案
- 在第一行新增一段文字『 welcome to my class 』
- 儲存
- 離開
- 最終使用『 cat hosts 』看一下檔案內容, cat 不是貓,而是叫出檔案內容的指令
- 今日練習:
- 使用 date +%Y%d%m 找出今日的日期,同時找出 %Y, %d, %m 的意義為何?請將該意義寫入 student 家目錄底下,建立名為 ans.txt 的檔案中
- 回到 student 家目錄,建立上面找到的日期作為目錄
- 將 /etc/passwd /etc/group /etc/yum 等等,通通複製到剛剛的目錄下
- 請進入剛剛建立的目錄,然後觀察一下檔名是否已經存在了?
- 使用 vim 去修改 passwd 這個檔案,第一行加入你的名字,第二行加入你的學號,之後儲存離開
- 刪除該目錄下的 group 檔案
- 請按右上角的設定,去啟動網路
- 使用 ifconfig 這個指令,找出你的 IP 後,告訴老師你的 IP 號碼 (例如 172.16.8.8),老師會線上檢查你是否完成作業了!