資料來源:http://linux.vbird.org/
重新啟動X Window的快速按鈕
在終端介面登入linux
~ 符號代表的是『使用者的家目錄』的意思,他是個『變數!』。
root的家目錄在/root, 所以 ~ 就代表/root的意思。
vbird的家目錄在/home/vbird。
Linux當中,預設root的提示字元為 # ,而一般身份使用者的提示字元為 $ 。
登出Linux
開始下達指令
語系的支援
重新啟動X Window的快速按鈕
- 直接登出,然後再重新登入即可;
- 在X的畫面中直接按下[Alt] + [Ctrl] + [Backspace]
- [Ctrl] + [Alt] + [F1] ~ [F6] :文字介面登入 tty1 ~ tty6 終端機;
- [Ctrl] + [Alt] + [F7] :圖形介面桌面。
[vbird@www ~]$ startx
在終端介面登入linux
~ 符號代表的是『使用者的家目錄』的意思,他是個『變數!』。
root的家目錄在/root, 所以 ~ 就代表/root的意思。
vbird的家目錄在/home/vbird。
Linux當中,預設root的提示字元為 # ,而一般身份使用者的提示字元為 $ 。
登出Linux
[vbird@www ~]$ exit
開始下達指令
[vbird@www ~]$ command [-options] parameter1 parameter2 ...
指令 選項 參數(1) 參數(2)
說明:
0. #一行指令中第一個輸入的部分絕對是『指令(command)』或『可執行檔案』
1. #command 為指令的名稱,例如變換路徑的指令為 cd 等等;
2. #中刮號[]並不存在於實際的指令中,而加入選項設定時,通常選項前會帶 - 號, 例如 -h;有時候會使用選項的完整全名,則選項前帶有 -- 符號,例如 --help;
3. #parameter1 parameter2.. 為依附在選項後面的參數,或者是 command 的參數;
4. #指令, 選項, 參數等這幾個咚咚中間以空格來區分,不論空幾格 shell 都視為一格;
5. #按下[Enter]按鍵後,該指令就立即執行。[Enter]按鍵代表著一行指令的開始啟動。
6. #指令太長的時候,可以使用反斜線 (\) 來跳脫[Enter]符號,使指令連續到下一行。 注意!反斜線後就立刻接特殊字符,才能跳脫!
其他:
a. #在 Linux 系統中,英文大小寫字母是不一樣的。舉例來說, cd 與 CD 並不同。
b. #更多的介紹等到第十一章 bash 時,再來詳述。
[vbird@www ~]$ ls -al ~ [vbird@www ~]$ ls -al ~ [vbird@www ~]$ ls -a -l ~
1. 顯示目前所支援的語系 [vbird@www ~]$ echo $LANG zh_TW.UTF-8 # 上面的意思是說,目前的語系(LANG)為zh_TW.UTF-8,亦即台灣繁體中文的萬國碼 2. 修改語系成為英文語系 [vbird@www ~]$ LANG=en_US # 注意到上面的指令中沒有空白字元,且英文語系為en_US才對喔! [vbird@www ~]$ echo $LANG en_US # 再次確認一下,結果出現,確實是en_US這個英文語系!注意,那個『LANG=en_US』是連續輸入的,等號兩邊並沒有空白字元喔!
這樣一來,就能夠在『這次的登入』察看英文訊息囉!
因為,如果你登出Linux後,剛剛下達的指令就沒有用啦!
基礎指令的操作
- 顯示日期與時間的指令: date
- 顯示日曆的指令: cal
- 簡單好用的計算機: bc
[vbird@www ~]$ date +%Y/%m/%d 2009/08/17 [vbird@www ~]$ date +%H:%M 17:04 #從上面的例子當中我們也可以知道,指令之後的選項除了前面帶有減號『-』之外,某些特殊情況下, 選項或參數前面也會帶有正號『+』的情況!這部份可不要輕易的忘記了呢!
[vbird@www ~]$ cal [month] [year]
[vbird@www ~]$ cal 10 2009
October 2009
Su Mo Tu We Th Fr Sa
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
[vbird@www ~]$ bc bc 1.06 Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation, Inc. This is free software with ABSOLUTELY NO WARRANTY. For details type 'warranty' _ <==這個時候,游標會停留在這裡等待你的輸入 #因為bc預設僅輸出整數,如果要輸出小數點下位數,那麼就必須要執行 scale=number ,那個number就是小數點位數 scale=3 <==沒錯!就是這裡!! 1/3 .333 340/2349 .144 quit重要的幾個熱鍵[Tab], [ctrl]-c, [ctrl]-d
這些按鍵可以輔助我們進行指令的編寫與程式的中斷呢
[vbird@www ~]$ ls -al ~/.bash[tab][tab] .bash_history .bash_logout .bash_profile .bashrc #那麼[Ctrl]-d是什麼呢?這個組合按鍵通常代表著: 『鍵盤輸入結束(End Of File, EOF 或 End Of Input)』的意思! #另外,他也可以用來取代exit的輸入呢!例如你想要直接離開文字介面,可以直接按下[Ctrl]-d就能夠直接離開了(相當於輸入exit啊!)。Linux系統的線上求助man page與info page
[vbird@www ~]$ <==在這裡不要輸入任何字元,直接輸入兩次[tab]按鍵 Display all 2450 possibilities? (y or n) <==如果不想要看,按 n 離開man page 這個man是manual(操作說明)的簡寫啦!
[vbird@www ~]$ man date
DATE(1) User Commands DATE(1)
# 請注意上面這個括號內的數字
NAME <==這個指令的完整全名,如下所示為date且說明簡單用途為設定與顯示日期/時間
date - print or set the system date and time
SYNOPSIS <==這個指令的基本語法如下所示
date [OPTION]... [+FORMAT]
date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
DESCRIPTION <==詳細說明剛剛語法談到的選項與參數的用法
Display the current time in the given FORMAT, or set the system
date.
-d, --date=STRING <==左邊-d為短選項名稱,右邊--date為完整選項名稱
display time described by STRING, not 'now'
-f, --file=DATEFILE
like --date once for each line of DATEFILE
-r, --reference=FILE
display the last modification time of FILE
....(中間省略)....
# 找到了!底下就是格式化輸出的詳細資料!
FORMAT controls the output. The only valid option for the second
form specifies Coordinated Universal Time. Interpreted sequences
are:
%% a literal %
%a locale's abbreviated weekday name (e.g., Sun)
%A locale's full weekday name (e.g., Sunday)
....(中間省略)....
ENVIRONMENT <==與這個指令相關的環境參數有如下的說明
TZ Specifies the timezone, unless overridden by command line
parameters. If neither is specified, the setting from
/etc/localtime is used.
AUTHOR <==這個指令的作者啦!
Written by David MacKenzie.
REPORTING BUGS <==有問題請留言給底下的email的意思!
Report bugs to .
COPYRIGHT <==受到著作權法的保護!用的就是 GPL 了!
Copyright ? 2006 Free Software Foundation, Inc.
This is free software. You may redistribute copies of it under the
terms of the GNU General Public License
. There is NO WARRANTY, to
the extent permitted by law.
SEE ALSO <==這個重要,你還可以從哪裡查到與date相關的說明文件之意
The full documentation for date is maintained as a Texinfo manual.
If the info and date programs are properly installed at your site,
the command
info date
should give you access to the complete manual.
date 5.97 May 2006 DATE(1)
#按下『空白鍵』往下翻頁,可以按下『 q 』按鍵來離開man的環境。
#『DATE(1)』,DATE我們知道是指令的名稱, 那麼(1)代表什麼呢?他代表的是『一般使用者可使用的指令』的意思
常見的幾個數字的意義| 代號 | 代表內容 |
| 1 | 使用者在shell環境中可以操作的指令或可執行檔 |
| 2 | 系統核心可呼叫的函數與工具等 |
| 3 | 一些常用的函數(function)與函式庫(library),大部分為C的函式庫(libc) |
| 4 | 裝置檔案的說明,通常在/dev下的檔案 |
| 5 | 設定檔或者是某些檔案的格式 |
| 6 | 遊戲(games) |
| 7 | 慣例與協定等,例如Linux檔案系統、網路協定、ASCII code等等的說明 |
| 8 | 系統管理員可用的管理指令 |
| 9 | 跟kernel有關的文件 |
man page大致分成底下這幾個部分
| 代號 | 內容說明 |
| NAME | 簡短的指令、資料名稱說明 |
| SYNOPSIS | 簡短的指令下達語法(syntax)簡介 |
| DESCRIPTION | 較為完整的說明,這部分最好仔細看看! |
| OPTIONS | 針對 SYNOPSIS 部分中,有列舉的所有可用的選項說明 |
| COMMANDS | 當這個程式(軟體)在執行的時候,可以在此程式(軟體)中下達的指令 |
| FILES | 這個程式或資料所使用或參考或連結到的某些檔案 |
| SEE ALSO | 可以參考的,跟這個指令或資料有相關的其他說明! |
| EXAMPLE | 一些可以參考的範例 |
| BUGS | 是否有相關的臭蟲! |
通常鳥哥在查詢某個資料時是這樣來查閱的:
- 先察看NAME的項目,約略看一下這個資料的意思;
- 再詳看一下DESCRIPTION,這個部分會提到很多相關的資料與使用時機,從這個地方可以學到很多小細節呢;
- 而如果這個指令其實很熟悉了(例如上面的date),那麼鳥哥主要就是查詢關於OPTIONS的部分了! 可以知道每個選項的意義,這樣就可以下達比較細部的指令內容呢!
- 最後,鳥哥會再看一下,跟這個資料有關的還有哪些東西可以使用的?舉例來說,上面的SEE ALSO就告知我們還可以利用『info coreutils date』來進一步查閱資料;
- 某些說明內容還會列舉有關的檔案(FILES 部分)來提供我們參考!這些都是很有幫助的!
man page常用的按鍵給他整理
| 按鍵 | 進行工作 |
| 空白鍵 | 向下翻一頁 |
| [Page Down] | 向下翻一頁 |
| [Page Up] | 向上翻一頁 |
| [Home] | 去到第一頁 |
| [End] | 去到最後一頁 |
| /string | 向『下』搜尋 string 這個字串,如果要搜尋 vbird 的話,就輸入 /vbird |
| ?string | 向『上』搜尋 string 這個字串 |
| n, N | 利用 / 或 ? 來搜尋字串時,可以用 n 來繼續下一個搜尋 (不論是 / 或 ?) ,可以利用 N 來進行『反向』搜尋。舉例來說,我以 /vbird 搜尋 vbird 字串, 那麼可以 n 繼續往下查詢,用 N 往上查詢。若以 ?vbird 向上查詢 vbird 字串, 那我可以用 n 繼續『向上』查詢,用 N 反向查詢。 |
| q | 結束這次的 man page |
這些man page的資料放在哪裡呢?通常是放在/usr/share/man這個目錄裡頭,我們可以透過修改他的man page搜尋路徑來改善這個目錄的問題!修改/etc/man.config (有的版本為man.conf或manpath.conf)即可囉!至於更多的關於man的訊息你可以使用『 man man 』來查詢呦!關於更詳細的設定,
搜尋特定指令/檔案的man page說明文件
系統中還有哪些跟『man』這個指令有關的說明文件呢?
[vbird@www ~]$ man -f man man (1) - format and display the on-line manual pages man (7) - macros to format man pages man.config [man] (5) - configuration data for man #使用 -f 這個選項就可以取得更多與man相關的資訊 [vbird@www ~]$ man 1 man <==這裡是用 man(1) 的文件資料 [vbird@www ~]$ man 7 man <==這裡是用 man(7) 的文件資料 #只有輸入『 man man 』時,那麼取出的資料到底是1還是7啊? 這個就跟搜尋的順序有關了。 #搜尋的順序是記錄在/etc/man.conf這個設定檔當中, 先搜尋到的那個說明檔,就會先被顯示出來! #一般來說,通常會先找到數字較小的那個啦! #當使用『man -f 指令』時,man只會找資料中的左邊那個指令(或檔案)的完整名稱,有一點不同都不行!找出系統的說明檔中,只要有man這個關鍵字就將該說明列出來。
[vbird@www ~]$ man -k man . [builtins] (1) - bash built-in commands, see bash(1) .TP 15 php [php] (1) - PHP Command Line Interface 'CLI' ....(中間省略).... zshall (1) - the Z shell meta-man page zshbuiltins (1) - zsh built-in commands zshzle (1) - zsh command line editor #這個是利用關鍵字將說明文件裡面只要含有man那個字眼的(不見得是完整字串) 就將他取出來!還有兩個指令與man page有關呢!而這兩個指令是man的簡略寫法說~就是這兩個:
[vbird@www ~]$ whatis [指令或者是資料] <==相當於 man -f [指令或者是資料] [vbird@www ~]$ apropos [指令或者是資料] <==相當於 man -k [指令或者是資料]
info page
與man page一口氣輸出一堆資訊不同的是,info page則是將文件資料拆成一個一個的段落,每個段落用自己的頁面來撰寫, 並且在各個頁面中還有類似網頁的『超連結』來跳到各不同的頁面中,每個獨立的頁面也被稱為一個節點(node)。 你使用『 info info 』可以得到如下的畫面:
[vbird@www ~]$ info info
File: info.info, Node: Top, Next: Getting Started, Up: (dir)
#File:代表這個info page的資料是來自info.info檔案所提供的;
#Node:代表目前的這個頁面是屬於Top節點。 意思是info.info內含有很多資訊,而Top僅是info.info檔案內的一個節點內容而已;
#Next:下一個節點的名稱為Getting Started,你也可以按『N』到下個節點去;
#Up:回到上一層的節點總攬畫面,你也可以按下『U』回到上一層;
#Prev:前一個節點。但由於Top是info.info的第一個節點,所以上面沒有前一個節點的資訊。
Info: An Introduction
*********************
The GNU Project distributes most of its on-line manuals in the "Info
format", which you read using an "Info reader". You are probably using
an Info reader to read this now.
....(中間省略)....
To read about expert-level Info commands, type `n' twice. This
brings you to `Info for Experts', skipping over the `Getting Started'
chapter.
* Menu:
* Getting Started:: Getting started using an Info reader.
* Expert Info:: Info commands for experts.
* Creating an Info File:: How to make your own Info file.
* Index:: An index of topics, commands, and variables.
--zz-Info: (info.info.gz)Top, 29 lines --Top------------------------------
Welcome to Info version 4.8. Type ? for help, m for menu item.
info page當中可以使用的按鍵
| 按鍵 | 進行工作 |
| 空白鍵 | 向下翻一頁 |
| [Page Down] | 向下翻一頁 |
| [Page Up] | 向上翻一頁 |
| [tab] | 在 node 之間移動,有 node 的地方,通常會以 * 顯示。 |
| [Enter] | 當游標在 node 上面時,按下 Enter 可以進入該 node 。 |
| b | 移動游標到該 info 畫面當中的第一個 node 處 |
| e | 移動游標到該 info 畫面當中的最後一個 node 處 |
| n,] | 前往下一個 node 處 |
| p,[ | 前往上一個 node 處 |
| u | 向上移動一層 |
| s(/) | 在 info page 當中進行搜尋 |
| h | 顯示求助選單 |
| ? | 指令一覽表 |
| q | 結束這次的 info page |
CentOS 5將info page的文件放置到/usr/share/info/目錄中!
其他有用的文件(documents)
擺在/usr/share/doc這個目錄啦
舉例來說,你想要知道這一版的CentOS相關的各項資訊:
- /usr/share/doc/centos-release-notes-5.3/
總結上面的三個咚咚(man, info, /usr/share/doc/),請記住喔:
- 在文字介面下,有任何你不知道的指令或檔案格式這種玩意兒,但是你想要瞭解他,請趕快使用man或者是info來查詢!
- 而如果你想要架設一些其他的服務,或想要利用一整組軟體來達成某項功能時,請趕快到/usr/share/doc 底下查一查有沒有該服務的說明檔喔!
- 另外,再次的強調,因為Linux畢竟是外國人發明的,所以中文文件確實是比較少的! 但是不要害怕,拿本英文字典在身邊吧!隨時查閱!不要害怕英文喔!
[vbird@www ~]$ nano text.txt
# 不管text.txt存不存在都沒有關係!存在就開啟舊檔,不存在就開啟新檔
GNU nano 1.3.12 File: text.txt
<==這個是游標所在處
[ New File ]
^G Get Help^O WriteOut^R Read Fil^Y Prev Pag^K Cut Text^C Cur Pos
^X Exit ^J Justify ^W Where Is^V Next Pag^U UnCut Te^T To Spell
# 上面兩行是指令說明列,其中^代表的是[ctrl]的意思
#[ctrl]-G:取得線上說明(help),很有用的!
#[ctrl]-X:離開naon軟體,若有修改過檔案會提示是否需要儲存喔!
#[ctrl]-O:儲存檔案,若你有權限的話就能夠儲存檔案了;
#[ctrl]-R:從其他檔案讀入資料,可以將某個檔案的內容貼在本檔案中;
#[ctrl]-W:搜尋字串,這個也是很有幫助的指令喔!
#[ctrl]-C:說明目前游標所在處的行數與列數等資訊;
#[ctrl]-_:可以直接輸入行號,讓游標快速移動到該行;
#[alt]-Y:校正語法功能開啟或關閉(按一下開、再按一下關)
#[alt]-M:可以支援滑鼠來移動游標的功能
正確的關機方法 - 觀察系統的使用狀態:
看目前有誰在線上,可以下達『who』這個指令 - 看網路的連線狀態,可以下達 『 netstat -a 』這個指令,
- 看背景執行的程序可以執行『 ps -aux 』這個指令。
- 通知線上使用者關機的時刻:
要關機前總得給線上的使用者一些時間來結束他們的工作,所以,這個時候你可以使用 shutdown 的特別指令來達到此一功能。 - 正確的關機指令使用:
例如 shutdown 與 reboot 兩個指令!
所以底下我們就來談一談幾個與關機/重新開機相關的指令囉!
- 將資料同步寫入硬碟中的指令: sync
- 慣用的關機指令: shutdown
- 重新開機,關機: reboot, halt, poweroff
記憶體中尚未被更新的資料,就會被寫入硬碟中!所以,這個指令在系統關機或重新開機之前, 很重要喔!最好多執行幾次!
慣用的關機指令: shutdown
shutdown可以達成如下的工作:
- 可以自由選擇關機模式:是要關機、重新開機或進入單人操作模式均可;
- 可以設定關機時間: 可以設定成現在立刻關機, 也可以設定某一個特定的時間才關機。
- 可以自訂關機訊息:在關機之前,可以將自己設定的訊息傳送給線上 user 。
- 可以僅發出警告訊息:有時有可能你要進行一些測試,而不想讓其他的使用者干擾, 或者是明白的告訴使用者某段時間要注意一下!這個時候可以使用 shutdown 來嚇一嚇使用者,但卻不是真的要關機啦!
- 可以選擇是否要 fsck 檢查檔案系統 。
[root@www ~]# /sbin/shutdown [-t 秒] [-arkhncfF] 時間 [警告訊息] 選項與參數: -t sec : -t 後面加秒數,亦即『過幾秒後關機』的意思 -k : 不要真的關機,只是發送警告訊息出去! -r : 在將系統的服務停掉之後就重新開機(常用) -h : 將系統的服務停掉後,立即關機。 (常用) -n : 不經過 init 程序,直接以 shutdown 的功能來關機 -f : 關機並開機之後,強制略過 fsck 的磁碟檢查 -F : 系統重新開機之後,強制進行 fsck 的磁碟檢查 -c : 取消已經在進行的 shutdown 指令內容。 時間 : 這是一定要加入的參數!指定系統關機的時間!時間的範例底下會說明。 範例: [root@www ~]# /sbin/shutdown -h 10 'I will shutdown after 10 mins' # 告訴大家,這部機器會在十分鐘後關機!並且會顯示在目前登入者的螢幕前方! # 至於參數有哪些呢?以下介紹幾個吧! [root@www ~]# shutdown -h now 立刻關機,其中 now 相當於時間為 0 的狀態 [root@www ~]# shutdown -h 20:25 系統在今天的 20:25 分會關機,若在21:25才下達此指令,則隔天才關機 [root@www ~]# shutdown -h +10 系統再過十分鐘後自動關機 [root@www ~]# shutdown -r now 系統立刻重新開機 [root@www ~]# shutdown -r +30 'The system will reboot' 再過三十分鐘系統會重新開機,並顯示後面的訊息給所有在線上的使用者 [root@www ~]# shutdown -k now 'This system will reboot' 僅發出警告信件的參數!系統並不會關機啦!嚇唬人!切換執行等級: init
Linux共有七種執行等級。本章你只要知道底下四種執行等級就好了:
run level 0:關機
run level 3:純文字模式
run level 5:含有圖形介面模式
run level 6:重新開機
那如何切換各模式呢?可以使用init這個指令來處理喔! 也就是說,如果你想要關機的話, 除了上述的shutdown -h now以及poweroff之外,你也可以使用如下的指令來關機:
[root@www ~]# init 0劃分不同的partition
為什麼磁碟分割這麼重要!因為Linux每個目錄被讀寫的頻率不同,妥善的分割將會讓我們的Linux更安全! 通常我們會建議劃分下列的磁碟區塊:
/
/boot
/usr
/home
/var
這樣劃分有些好處,例如/var是系統預設的一些資料暫存或者是cache資料的儲存目錄, 像 e-mail 就含在這裡面。如果還有使用proxy時,因為常常存取,所以有可能會造成磁碟損壞, 而當這部份的磁碟損壞時,由於其他的地方是沒問題的,因此資料得以保存,而且在處理時也比較容易!

沒有留言:
張貼留言