一、計算機的組成
一)計算機硬件主要分為五個部分:
1. 控制器(Control):是整個計算機的中樞神經,其功能是對程序規定的控制信息進行解釋,根據其要求進行控制,調度程序、數據、地址,協調計算機各部分工作及內存與外設的訪問等。
2. 運算器(Datapath):運算器的功能是對數據進行各種算術運算和邏輯運算,即對數據進行加工處理。
3. 存儲器(Memory):存儲器的功能是存儲程序、數據和各種信號、命令等信息,并在需要時提供這些信息。
4. 輸入(Input system):輸入設備是計算機的重要組成部分,輸入設備與輸出設備合稱為外部設備,簡稱外設,輸入設備的作用是將程序、原始數據、文字、字符、控制命令或現場采集的數據等信息輸入到計算機。常見的輸入設備有鍵盤、鼠標器、光電輸入機、磁帶機、磁盤機、光盤機等。
5. 輸出(Output system):輸出設備與輸入設備同樣是計算機的重要組成部分,它把外算機的中間結果或最后結果、機內的各種數據符號及文字或各種控制信號等信息輸出出來。微機常用的輸出設備有顯示終端CRT、打印機、激光印字機、繪圖儀及磁帶、光盤機等。
二)軟件:計算機軟件(ComputerSoftware)是指計算機系統中的程序及其文檔。
1、系統軟件: 是指控制和協調計算機及外部設備,支持應用軟件開發和運行的系統,是無需用戶干預的各種程序的集合,主要功能是調度,監控和維護計算機系統;負責管理計算機系統中各種獨立的硬件,使得它們可以協調工作。系統軟件使得計算機使用者和其他軟件將計算機當作一個整體而不需要顧及到底層每個硬件是如何工作的。(如Windows、Linux、Dos、Unix等操作系統都屬于系統軟件。)
2、應用軟件:是用戶可以使用的各種程序設計語言,以及用各種程序設計語言編制的應用程序的集合,分為應用軟件包和用戶程序。應用軟件包是利用計算機解決某類問題而設計的程序的集合,供多用戶使用。計算機軟件分為系統軟件和應用軟件兩大類。應用軟件是為滿足用戶不同領域、不同問題的應用需求而提供的那部分軟件。 它可以拓寬計算機系統的應用領域,放大硬件的功能。(如Word、Excel、QQ等都屬于應用軟件)
二、Linux發行版及其個版本之間的聯系
一)、Ubuntu
Ubuntu是2004年9月首次公布的。雖然相對來說Ubuntu是發行較晚的Linux發行版,該項目沒有其他linux發行版本早,在隨后幾年中,Ubuntu成長為最流行的桌面Linux發行版,它朝著發展一種“易用和免費”的桌面操作系 統做出了極大的努力和貢獻,能夠與市場上任何一款個人操作系統相競爭。Ubuntu是基于Debian的發行版,包含一些著名的軟件包,如GNOME,Firefox和OpenOffice.org其最新 版本的更新。
二)、Fedora
Fedora的正式推出在2004年9月,2003年,在發布了Red Hat Linux 9系統后不久,該公司在其產品線中推出了一些激進的變化。它保留了它的商業產品品牌,尤其是 Red Hat Enterprise Linux,并推出了 Fedora Core,一個由紅帽公司贊助的,但以社區為導向的分配給“Linux的愛好者”設計的核心。新的變化最初飽受批評,Linux社區最終接受了“作為紅帽 Linux的合乎邏輯的延續”的新的發行版。一系列高質量版本的發布為Fedora恢復了其作為一個市場上的狀態最好的操作系統的地位。同時,紅帽公司迅 速成為世界上最大和最賺錢的Linux公司,以創新的產品線和其他有趣的特性,如它的紅帽認證工程師(RHCE)認證計劃。
三)、OpenSUSE
openSUSE的開始可追溯到1992年,由德國的四個Linux愛好者創建,擁有非常絢麗的圖形界面。今天,openSUSE擁有大批滿意的用戶追隨者。為openSUSE獲得高分的是用戶的滿意和漂亮的(KDE和GNOME)桌面環境,優秀的系統 管理工具(YaST),同時為那些購買盒裝版的用戶提供最好的印刷品與任何可用的文檔。但是,最近Novell和微軟之間的交易,Novell承認微軟的 說法:它擁有Linux的知識產權,這導致了許多Linux愛好者的譴責,也促使一些用戶改變其他發行版。雖然Novell已經淡化處理,而微軟也尚未行 使任何權利,但這個問題仍然是保持Linux純粹的公司的眼中釘。
四)、Debian
Debian GNU / Linux 首次公布于1993年。其創始人為Ian Murdock,他設想通過已有的數百位開發志愿者在業余時間創建一個完全非商業目的的發行版。當時懷疑論者遠要大于樂觀派,認為這是注定要失敗和崩潰 的,但事實情況卻恰恰相反。 Debian不僅幸存下來,經過將近10年蓬勃發展,它成為最大的Linux發行版,也可能是迄今為止最大的協同軟件項目!
五)、Mandrive
Mandriva Linux由Gal Duval于1998年7月在Mandrake Linux下發起。起初,這只是一個重新優化了的包含更友好的KDE桌面的Red Hat Linux 版本,但后續版本增加了更友好的體驗,Mandriva Linux主要偏重于桌面版本。其最大特點是高級軟件,一流的系統管理套件(DrakConf),優秀的64位版本支持,以及廣泛的國際支持。
六)、Mint
Linux Mint,一個基于Ubuntu的發行版.
七)、Gentoo
Gentoo Linux的概念由 Daniel Robbins在2000年左右提出,他以前是Stampede Linux和FreeBSD的開發者。當作者接觸到FreeBSD和它的“的Autobuild”功能,即所謂的“ports”,這促使他將 FreeBSD的軟件管理的一些原則納入其Gentoo下的“portage”。Gentoo Linux操作系統是專為高級用戶設計。最初,安裝繁瑣,繁瑣,甚至需要幾個小時甚至一天時間用命令行來編譯建立一個完整的Linux發行版,然而,在 2006年,開發一個項目,簡化了安裝Gentoo的 live CD的安裝過程為“一鍵安裝”程序。除了提供一個始終能夠獲取最新的安裝包的單一命令,發行版的另外一些重要特征是優秀的安全性,廣泛的配置選項,對于許 多架構的支持,并能夠保持系統最新資料,日期無需重新安裝。 Gentoo的文檔已多次被認為是最好的在線文檔之一。
八)、Centos
CentOS在2003年底推出,CentOS是一個重新編譯可安裝的Red Hat Enterprise Linux(RHEL)代碼,并提供及時的安全更新的所有套裝軟件升級為目標的社區項目。更直接地說,CentOS是RHEL克隆版而已。兩個發行版技術 間唯一的區別是品牌 – CentOS替換所有紅帽的商標和標識為他自己的。但是與RHEL和CentOS的聯系在CentOS的網站上無法看到,由于商標法,紅帽被稱為一個 “Prominent North American Enterprise Linux Vendor”(著名的北美企業Linux銷售商),而不是它的正確名稱。然而,紅帽和CentOS的之間的關系仍然良好,許多CentOS的開發者在與 紅帽工程師積極接觸。
三、Linux的哲學思想
1、一切皆文件
2、由眾多的單一的程序完成一件比較復雜的工作,一個程序只做一件事,并且做好他。
3、盡量避免與用戶交互
4、使用文本文件保存配置信息
5、提供機制(可選的策略、是一種框架),而非策略,提供做大的靈活性。
四、Linux的命令格式
command 【選項】 【參數】
1、ifconfig
功能:查看和配置網絡設備。當網絡環境發生改變時可通過此命令對網絡進行相應的配置。
命令參數
-a 顯示全部接口信息
-s 顯示摘要信息(類似于 netstat -i)
add 給指定網卡配置IPv6地址
del 刪除指定網卡的IPv6地址
ifdown 關閉指定網卡
ifup 開啟指定網卡
2、echo
功能:打印、回顯
命令參數
-n:不要在最后一行自動換行
-e: 若字符串中出現以下字符,則特別加以處理,而不會將它當成一般
文字輸出:
\a 發出警告聲;
\b 刪除前一個字符;
\c 最后不加上換行符號;
\f 換行但光標仍舊停留在原來的位置;
\n 換行且光標移至行首;
\r 光標移至行首,但不換行;
\t 插入tab;
\v 與\f相同;
\\ 插入\字符;
\nnn 插入nnn(八進制)所代表的ASCII字符;
–help 顯示幫助
–version 顯示版本信息
3、tty
功能:用來打印與標準輸入連接的終端名稱,如果顯示的是/dev/console,那么此終端為控制臺終端;
命令參數
-s或–silent或–quiet 不顯示任何信息,只回傳狀態代碼。
–help 在線幫助。
–version 顯示版本信息。
4、startx
功能:啟動X windows,startx為啟動X Window的script文件,實際上啟動XWindow的程序為xinit。
語法:startx [程序][–服務器設置]
5、export
功能:設置或顯示環境變量。(比如我們要用一個命令,但這個命令的執行文件不在當前目錄,這樣我們每次用的時候必須指定執行文件的目錄,麻煩,在代碼中先執行export,這個相當于告訴程序,執行某某東西時,需要的文件或什么東東在這些目錄里)
語法:export [-fnp][變量名稱]=[變量設置值]
參數:
-f 代表[變量名稱]中為函數名稱。
-n 刪除指定的變量。變量實際上并未刪除,只是不會輸出到后續指令的執行環境中。
-p 列出所有的shell賦予程序的環境變量。
5、pwd
功能:查看”當前工作目錄“的完整路徑
語法:pwd [選項]
參數:
一般情況下不帶任何參數
如果目錄是鏈接時:
格式:pwd -P 顯示出實際路徑,而非使用連接(link)路徑。
6、history
功能:查看Linux命令的執行歷史
參數:
n :n數字,列出最近N條命令
-c:清空Linux命令執行歷史
-w:立刻將目前的數據寫入到histfile文件中
具體用法:
1). 使用 HISTTIMEFORMAT 顯示時間戳
當你從命令行執行 history 命令后,通常只會顯示已執行命令的序號和命令本身。如果你想要查看命令歷史的時間戳,那么可以執行:
# export HISTTIMEFORMAT='%F %T '
# history | more
831 2016-09-17 09:47:56 git clone https://github.com/moonstack/moon-kibana/tree/beta
832 2016-09-17 09:47:56 wget https://github.com/moonstack/moon-kibana.git
833 2016-09-17 09:47:56 ll
834 2016-09-17 09:47:56 rm -f moon-kibana.git
835 2016-09-17 09:47:56 git https://github.com/moonstack/moon-kibana.git
836 2016-09-17 09:47:56 git clone https://github.com/moonstack/moon-kibana.git
2). 使用 Ctrl+R 搜索歷史
Ctrl+R 是我經常使用的一個快捷鍵。此快捷鍵讓你對命令歷史進行搜索,對于想要重復執行某個命令的時候非常有用。當找到命令后,通常再按回車鍵就可以執行該命令。如果想對找到的命令進行調整后再執行,則可以按一下左或右方向鍵。
# [Press Ctrl+R from the command prompt, which will display the reverse-i-search prompt]
(reverse-i-search)`red‘: cat /etc/redhat-release
[Note: Press enter when you see your command, which will execute the command from the history]
# cat /etc/redhat-release
Fedora release 9 (Sulphur)
3). 快速重復執行上一條命令
有 4 種方法可以重復執行上一條命令:
1. 使用上方向鍵,并回車執行。
2. 按 !! 并回車執行。
3. 輸入 !-1 并回車執行。
4. 按 Ctrl+P 并回車執行。
4). 從命令歷史中執行一個指定的命令
在下面的例子中,如果你想重復執行第 4 條命令,那么可以執行 !4:
# history | more
919 2016-09-17 10:29:48 cat /etc/redhat-release
920 2016-09-17 10:29:59 ifconfig
921 2016-09-17 10:30:01 history
[root@elasticsearch-1 ~]# !919
cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
#
5). 通過指定關鍵字來執行以前的命令
在下面的例子,輸入 !ps 并回車,將執行以 ps 打頭的命令:
# !ps
ps aux | grep yp
root 16947 0.0 0.1 36516 1264 ? Sl 13:10 0:00 ypbind
root 17503 0.0 0.0 4124 740 pts/0 S+ 19:19 0:00 grep yp
6). 使用 HISTSIZE 控制歷史命令記錄的總行數
將下面兩行內容追加到 .bash_profile 文件并重新登錄 bash shell,命令歷史的記錄數將變成 450 條:
# vi ~/.bash_profile
HISTSIZE=450
HISTFILESIZE=450
7). 使用 HISTFILE 更改歷史文件名稱
默認情況下,命令歷史存儲在 ~/.bash_history 文件中。
下載該文件可以去root目錄下,用sz命令
#sz .bash_history
添加下列內容到 .bash_profile 文件并重新登錄 bash shell,將使用 .commandline_warrior 來存儲命令歷史:
# vi ~/.bash_profile
HISTFILE=/root/.commandline_warrior
8). 使用 HISTCONTROL 從命令歷史中剔除連續重復的條目
在下面的例子中,pwd 命令被連續執行了三次。執行 history 后你會看到三條重復的條目。要剔除這些重復的條目,你可以將 HISTCONTROL 設置為 ignoredups:
# pwd
# pwd
# pwd
# history | tail -4
44 pwd
45 pwd
46 pwd [Note that there are three pwd commands in history, after executing pwd 3 times as shown above]
47 history | tail -4
# export HISTCONTROL=ignoredups
# pwd
# pwd
# pwd
# history | tail -3
56 export HISTCONTROL=ignoredups
57 pwd [Note that there is only one pwd command in the history, even after executing pwd 3 times as shown above]
58 history | tail -4
9). 使用 HISTCONTROL 清除整個命令歷史中的重復條目
上例中的 ignoredups 只能剔除連續的重復條目。要清除整個命令歷史中的重復條目,可以將 HISTCONTROL 設置成 erasedups:
# export HISTCONTROL=erasedups
# pwd
# service httpd stop
# history | tail -3
38 pwd
39 service httpd stop
40 history | tail -3
# ls -ltr
# service httpd stop
# history | tail -6
35 export HISTCONTROL=erasedups
36 pwd
37 history | tail -3
38 ls -ltr
39 service httpd stop
[Note that the previous service httpd stop after pwd got erased]
40 history | tail -6
10). 使用 HISTCONTROL 強制 history 不記住特定的命令
將 HISTCONTROL 設置為 ignorespace,并在不想被記住的命令前面輸入一個空格:
11). 使用 -c 選項清除所有的命令歷史
如果你想清除所有的命令歷史,可以執行:
# history -c
12). 命令替換
在下面的例子里,!!:$ 將為當前的命令獲得上一條命令的參數:
# ls anaconda-ks.cfg
anaconda-ks.cfg
# vi !!:$
vi anaconda-ks.cfg
下例中,!^ 從上一條命令獲得第一項參數:
# cp anaconda-ks.cfg anaconda-ks.cfg.bak
anaconda-ks.cfg
# vi -5 !^
vi anaconda-ks.cfg
13). 為特定的命令替換指定的參數
在下面的例子,!cp:2 從命令歷史中搜索以 cp 開頭的命令,并獲取它的第二項參數:
# cp ~/longname.txt /really/a/very/long/path/long-filename.txt
# ls -l !cp:2
ls -l /really/a/very/long/path/long-filename.txt
下例里,!cp:$ 獲取 cp 命令的最后一項參數:
# ls -l !cp:$
ls -l /really/a/very/long/path/long-filename.txt
14). 使用 HISTSIZE 禁用 history
如果你想禁用 history,可以將 HISTSIZE 設置為 0:
# export HISTSIZE=0
# history
# [Note that history did not display anything]
15). 使用 HISTIGNORE 忽略歷史中的特定命令
下面的例子,將忽略 pwd、ls、ls -ltr 等命令:
# export HISTIGNORE=”pwd:ls:ls -ltr:”
# pwd
# ls
# ls -ltr
# service httpd stop
# history | tail -3
924 2016-09-17 10:31:43 ifconfig
925 2016-09-17 10:31:55 cat server.conf
926 2016-09-17 10:33:51 history | tail -3
7、shudown
功能:關機
參數:
-c:中斷關機
-f:重新啟動時不進行磁盤檢測
-F:重新啟動時進行磁盤檢測
-h:關閉電源
-k:模擬關機,不是真的關機,只是向登錄者發送警告信息出去
-n:不調用init進程進行關機,而是強行關機
-r:關閉系統后重新啟動
-t:延遲關機時間
-w:僅做測試,并不是真的關機
8、reboot
功能:重啟系統
參數:
-d:重新啟動時不把數據寫入記錄文件/var/tmp/wtmp
-f:強制重新開機,不調用shutdown指令的功能。
-h:在系統關機或poweroff之前,將所有的硬盤處于待機模式
-i:關閉網絡設置之后再重新啟動系統
-n:保存數據后再重新啟動系統
-p:當停止系統時,關閉電源。這是默認調用停止時關閉電源
-w:僅做測試,并不真的將系統重新開機,只會把重開機的數據寫入/var/log目錄下的wtmp記錄文件
–help:顯示命令在線幫助
8、hwclock
功能:用來顯示/設置硬件時鐘
參數:
-r, –show 讀取并打印硬件時鐘(read hardware clock and print result )
-s, –hctosys 將硬件時鐘同步到系統時鐘(set the system time from the hardware clock )
-w, –systohc 將系統時鐘同步到硬件時鐘(set the hardware clock to the current system time )
–adjust hwclock每次更改硬件時鐘時,都會記錄在/etc/adjtime文件中。使用–adjust參數,可使hwclock根據先前的記錄來估算硬件時鐘的偏差,并用來校正目前的硬件時鐘。
–debug 顯示hwclock執行時詳細的信息。
–directisa hwclock預設從/dev/rtc設備來存取硬件時鐘。若無法存取時,可用此參數直接以I/O指令來存取硬件時鐘。
–hctosys 將系統時鐘調整為與目前的硬件時鐘一致。
–set –date=<日期與時間> 設定硬件時鐘。
–show 顯示硬件時鐘的時間與日期。
–systohc 將硬件時鐘調整為與目前的系統時鐘一致。
–test 僅測試程序,而不會實際更改硬件時鐘。
–utc 若要使用格林威治時間,請加入此參數,hwclock會執行轉換的工作。
–version 顯示版本信息。
9、date
功能: 可以用來顯示或設定系統的日期與時間。
參數:
%H 小時(以00-23來表示)。
%I 小時(以01-12來表示)。
%K 小時(以0-23來表示)。
%l 小時(以0-12來表示)。
%M 分鐘(以00-59來表示)。
%P AM或PM。
%r 時間(含時分秒,小時以12小時AM/PM來表示)。
%s 總秒數。起算時間為1970-01-01 00:00:00 UTC。
%S 秒(以本地的慣用法來表示)。
%T 時間(含時分秒,小時以24小時制來表示)。
%X 時間(以本地的慣用法來表示)。
%Z 市區。
%a 星期的縮寫。
%A 星期的完整名稱。
%b 月份英文名的縮寫。
%B 月份的完整英文名稱。
%c 日期與時間。只輸入date指令也會顯示同樣的結果。
%d 日期(以01-31來表示)。
%D 日期(含年月日)。
%j 該年中的第幾天。
%m 月份(以01-12來表示)。
%U 該年中的周數。
%w 該周的天數,0代表周日,1代表周一,異詞類推。
%x 日期(以本地的慣用法來表示)。
%y 年份(以00-99來表示)。
%Y 年份(以四位數來表示)。
%n 在顯示時,插入新的一行。
%t 在顯示時,插入tab。
MM 月份(必要)
DD 日期(必要)
hh 小時(必要)
mm 分鐘(必要)
ss 秒(選擇性)
選擇參數:
-d<字符串> 顯示字符串所指的日期與時間。字符串前后必須加上雙引號。
-s<字符串> 根據字符串來設置日期與時間。字符串前后必須加上雙引號。
-u 顯示GMT。
–help 在線幫助。
–version 顯示版本信息
[root@elasticsearch-1 ~]# date
Sat Sep 17 10:51:51 CST 2016
[root@elasticsearch-1 ~]# date '+%c'
Sat 17 Sep 2016 10:52:03 AM CST
[root@elasticsearch-1 ~]# date '+%D'
09/17/16
[root@elasticsearch-1 ~]# date '+%x'
09/17/2016
[root@elasticsearch-1 ~]# date '+%F'
2016-09-17
[root@elasticsearch-1 ~]# date '+%T'
10:52:22
[root@elasticsearch-1 ~]# date '+%X'
10:52:27 AM
[root@elasticsearch-1 ~]# date '+%Y%M%d'
20165217
[root@elasticsearch-1 ~]# date '+%Y%m%d'
20160917
[root@elasticsearch-1 ~]# date '+%Y%m%d%H%M%S'
20160917105309
五、Linux命令班助信息
區別內部或外部命令:
# type COMMAND
內部命令在系統啟動時就調入內存,是常駐內存的,所以執行效率高。
外部命令是系統的軟件功能,用戶需要時才從硬盤中讀入內存。
內部命令的幫助文件:
# help COMMAND
外部命令的幫助文件
(1) # COMMAND –help
# COMMAND -h
(2) 使用手冊(manual)
# man COMMAND
(3) 信息頁
# info COMMAND
(4) 程序自身的幫助文檔
README
INSTALL
ChangeLog
(5) 程序官方文檔
官方站點:Documentation
(6) 發行版的官方文檔
(7) Google
幫助(man)手冊頁存放路徑 /usr/share/man
man章節代號
代表內容
1使用者在shell中可以操作的指令或可執行檔
2系統內核調用,不是每個命令都有系統調用。
3一些常用的函數(function)與函數庫(library),大部分是C的函數庫(libc)
4裝置檔案的說明,通常在/dev下的檔案
5設定檔或者是某些檔案的格式
6游戲(games)
7慣例與協定等,例如Linux檔案系統、網絡協定、ASCII code等等的說明
8系統管理員可用的管理指令
9跟kernel有關的文件(CentOS7以后出現)
man文件布局
NAME -命令的名稱和簡要的介紹
SYNOPSIS -命令的基本語法格式
DESCRIPTION -描述命令功能的概要介紹
OPTIONS -命令的各種選項,以及對每個選項的簡短介紹
FILES -命令使用的其他文件
AUTHOR -編寫命令的作者,以及聯系信息
EXAMPLES -常用的一些示例
SEA ALSO -參見相關命令或函數的列表
REPORTING BUGS -已知漏洞
PROMPTS -提示
COMPATIBILITY -兼容性
ENVIRONMENT VARIABLES -環境變量
六、Linux基本目錄結構
/bin 系統有很多放置執行文件的目錄,但/bin比較特殊.因為/bin放置的是在單人維護模式下還能夠被操作的指令. 在/bin底下的指令可以被 root與一般賬號所使用,主要有:cat, chmod, chown, date, mv, mkdir, cp, bash等等常用的指令.
/boot 這個目錄主要在放置開機會使用到的文件,包括Linux核心文件以及開機選單與開機所需配置文件等等. Linux kernel常用的檔名為:vmlinuz,如果使用的是grub這個開機管理程序, 則還會存在/boot/grub/這個目錄喔!
/dev 在Linux系統上,任何裝置與接口設備都是以文件的型態存在于這個目錄當中的. 你只要透過存取這個目錄底下的某個文件,就等于存取某個裝置啰~ 比要重要的文件有/dev/null, /dev/zero, /dev/tty, /dev/lp*, /dev/hd*, /dev/sd*等等
/etc 系統主要的配置文件幾乎都放置在這個目錄內,例如人員的賬號密碼文件、 各種服務的啟始檔等等.一般來說,這個目錄下的各文件屬性是可以讓一般使用者查閱的, 但是只有root有權力修改.FHS建議不要放置可執行文件(binary)在這個目錄中喔.比較重要的文件有: /etc/inittab, /etc/init.d/, /etc/modprobe.conf, /etc/X11/, /etc/fstab, /etc/sysconfig/ 等等.另外,其下重要的目錄有:
/etc/init.d/:所有服務的預設啟動 script 都是放在這里的,例如要啟動或者關閉 iptables 的話:『 /etc/init.d/iptables start』、『/etc/init.d/iptables stop』
/etc/xinetd.d/:這就是所謂的super daemon管理的各項服務的配置文件目錄.
/etc/X11/:與 X Window 有關的各種配置文件都在這里,尤其是 xorg.conf 這個 X Server 的配置文件.
/home 這是系統默認的用戶家目錄(home directory).在你新增一個一般使用者賬號時, 默認的用戶家目錄都會規范到這里來.比較重要的是,家目錄有兩種代號喔:
~:代表目前這個用戶的家目錄,而
~dmtsai :則代表 dmtsai 的家目錄!
/lib 系統的函式庫非常的多,而/lib放置的則是在開機時會用到的函式庫, 以及在/bin或/sbin底下的指令會呼叫的函式庫而已. 什么是函式庫呢?妳可以將他想成是『外掛』,某些指令必須要有這些『外掛』才能夠順利完成程序的執行之意. 尤其重要的是/lib/modules/這個目錄, 因為該目錄會放置核心相關的模塊(驅動程序)喔!
/media media是『媒體』的英文,顧名思義,這個/media底下放置的就是可移除的裝置啦! 包括軟盤、光盤、DVD等等裝置都暫時掛載于此.常見的檔名有:/media/floppy, /media/cdrom等等.
/mnt 如果妳想要暫時掛載某些額外的裝置,一般建議妳可以放置到這個目錄中. 在古早時候,這個目錄的用途與/media相同啦!只是有了/media之后,這個目錄就用來暫時掛載用了.
/opt 這個是給第三方協力軟件放置的目錄.什么是第三方協力軟件??? 舉例來說,KDE這個桌面管理系統是一個獨立的計劃,不過他可以安裝到Linux系統中,因此KDE的軟件就建議放置到此目錄下了. 另外,如果妳想要自行安裝額外的軟件(非原本的distribution提供的),那么也能夠將你的軟件安裝到這里來. 不過,以前的Linux系統中,我們還是習慣放置在/usr/local目錄下呢!
/root 系統管理員(root)的家目錄.之所以放在這里,是因為如果進入單人維護模式而僅掛載根目錄時, 該目錄就能夠擁有root的家目錄,所以我們會希望root的家目錄與根目錄放置在同一個分割槽中.
/sbin Linux有非常多指令是用來設定系統環境的,這些指令只有root才能夠利用來『設定』系統,其他用戶最多只能用來『查詢』而已. 放在 /sbin底下的為開機過程中所需要的,里面包括了開機、修復、還原系統所需要的指令. 至于某些服務器軟件程序,一般則放置到/usr/sbin/當 中.至于本機自行安裝的軟件所產生的系統執行文件(system binary), 則放置到/usr/local/sbin/當中了.常見的指令包括:fdisk, fsck, ifconfig, init, mkfs等等.
/srv srv可以視為『service』的縮寫,是一些網絡服務啟動之后,這些服務所需要取用的數據目錄. 常見的服務例如WWW, FTP等等.舉例來說,WWW服務器需要的網頁數據就可以放置在/srv/www/里面.
/tmp 這是讓一般使用者或者是正在執行的程序暫時放置文件的地方. 這個目錄是任何人都能夠存取的,所以你需要定期的清理一下.當然,重要數據不可放置在此目錄??! 因為FHS甚至建議在開機時,應該要將/tmp下的數據都刪除唷!
/usr 放置的數據屬于可分享的與不可變動
/var 目錄主要針對常態性變動的文件,包括緩存(cache)、登錄檔(log file)以及某些軟件運作所產生的文件, 包括程序文件(lock file, run file)
原創文章,作者:jbm,如若轉載,請注明出處:http://www.www58058.com/45900
寫的很好,如果能夠在調整一下排版會更好,加油