2.1Linux內(nèi)核及發(fā)行版
2.1 .1Linux內(nèi)核版本
-
內(nèi)核(kernel):是系統(tǒng)的心臟,是運(yùn)行程序和管理像磁盤和打印機(jī)等硬件設(shè)備的核心程序,它提供了在裸機(jī)設(shè)備與應(yīng)用程序間的抽象層。
Linux內(nèi)核版本又分為穩(wěn)定版和開發(fā)版,兩種版本相互關(guān)聯(lián),相互循環(huán)
穩(wěn)定版具有工業(yè)級(jí)強(qiáng)度,可以廣泛應(yīng)用和部署。新的穩(wěn)定版相對(duì)于較久的知識(shí)修正一些bug或加入一些新的驅(qū)動(dòng)程序
開發(fā)版:由于要測(cè)試各種解決方案,所以變化
內(nèi)核源碼網(wǎng)址:http://www.kernel.org
2.1.2Linux發(fā)行版本
linux發(fā)行版通常包含了包括桌面環(huán)境 辦公套件 媒體播放器 數(shù)據(jù)庫等應(yīng)用軟件。
常見的發(fā)行版本有:
- Ubuntu
- Redhat
- Fedors
- OpenSUSE
....
2.2文件和目錄
2.2.1Windows和Linux文件系統(tǒng)區(qū)別
Windows是但用戶操作系統(tǒng),一臺(tái)電腦只能在同一時(shí)間一個(gè)用戶使用
Linux是多用戶使用。
登錄系統(tǒng)后,在當(dāng)前命令窗口下輸入命令:
<pre class="prettyprint prettyprinted" style="">ls / </pre>
你會(huì)看到如下圖所示:

樹狀目錄結(jié)構(gòu):

以下是對(duì)這些目錄的解釋:
/bin:
bin 是 Binaries (二進(jìn)制文件) 的縮寫, 這個(gè)目錄存放著最經(jīng)常使用的命令。/boot:
這里存放的是啟動(dòng) Linux 時(shí)使用的一些核心文件,包括一些連接文件以及鏡像文件。/dev :
dev 是 Device(設(shè)備) 的縮寫, 該目錄下存放的是 Linux 的外部設(shè)備,在 Linux 中訪問設(shè)備的方式和訪問文件的方式是相同的。/etc:
etc 是 Etcetera(等等) 的縮寫,這個(gè)目錄用來存放所有的系統(tǒng)管理所需要的配置文件和子目錄。/home:
用戶的主目錄,在 Linux 中,每個(gè)用戶都有一個(gè)自己的目錄,一般該目錄名是以用戶的賬號(hào)命名的,如上圖中的 alice、bob 和 eve。/lib:
lib 是 Library(庫) 的縮寫這個(gè)目錄里存放著系統(tǒng)最基本的動(dòng)態(tài)連接共享庫,其作用類似于 Windows 里的 DLL 文件。幾乎所有的應(yīng)用程序都需要用到這些共享庫。/lost+found:
這個(gè)目錄一般情況下是空的,當(dāng)系統(tǒng)非法關(guān)機(jī)后,這里就存放了一些文件。/media:
linux 系統(tǒng)會(huì)自動(dòng)識(shí)別一些設(shè)備,例如U盤、光驅(qū)等等,當(dāng)識(shí)別后,Linux 會(huì)把識(shí)別的設(shè)備掛載到這個(gè)目錄下。/mnt:
系統(tǒng)提供該目錄是為了讓用戶臨時(shí)掛載別的文件系統(tǒng)的,我們可以將光驅(qū)掛載在 /mnt/ 上,然后進(jìn)入該目錄就可以查看光驅(qū)里的內(nèi)容了。/opt:
opt 是 optional(可選) 的縮寫,這是給主機(jī)額外安裝軟件所擺放的目錄。比如你安裝一個(gè)ORACLE數(shù)據(jù)庫則就可以放到這個(gè)目錄下。默認(rèn)是空的。-
/proc:
proc 是 Processes(進(jìn)程) 的縮寫,/proc 是一種偽文件系統(tǒng)(也即虛擬文件系統(tǒng)),存儲(chǔ)的是當(dāng)前內(nèi)核運(yùn)行狀態(tài)的一系列特殊文件,這個(gè)目錄是一個(gè)虛擬的目錄,它是系統(tǒng)內(nèi)存的映射,我們可以通過直接訪問這個(gè)目錄來獲取系統(tǒng)信息。
這個(gè)目錄的內(nèi)容不在硬盤上而是在內(nèi)存里,我們也可以直接修改里面的某些文件,比如可以通過下面的命令來屏蔽主機(jī)的ping命令,使別人無法ping你的機(jī)器:<pre class="prettyprint prettyprinted" style="">echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all</pre>
/root:
該目錄為系統(tǒng)管理員,也稱作超級(jí)權(quán)限者的用戶主目錄。/sbin:
s 就是 Super User 的意思,是 Superuser Binaries (超級(jí)用戶的二進(jìn)制文件) 的縮寫,這里存放的是系統(tǒng)管理員使用的系統(tǒng)管理程序。/selinux:
這個(gè)目錄是 Redhat/CentOS 所特有的目錄,Selinux 是一個(gè)安全機(jī)制,類似于 windows 的防火墻,但是這套機(jī)制比較復(fù)雜,這個(gè)目錄就是存放selinux相關(guān)的文件的。/srv:
該目錄存放一些服務(wù)啟動(dòng)之后需要提取的數(shù)據(jù)。-
/sys:
這是 Linux2.6 內(nèi)核的一個(gè)很大的變化。該目錄下安裝了 2.6 內(nèi)核中新出現(xiàn)的一個(gè)文件系統(tǒng) sysfs 。
sysfs 文件系統(tǒng)集成了下面3種文件系統(tǒng)的信息:針對(duì)進(jìn)程信息的 proc 文件系統(tǒng)、針對(duì)設(shè)備的 devfs 文件系統(tǒng)以及針對(duì)偽終端的 devpts 文件系統(tǒng)。
該文件系統(tǒng)是內(nèi)核設(shè)備樹的一個(gè)直觀反映。
當(dāng)一個(gè)內(nèi)核對(duì)象被創(chuàng)建的時(shí)候,對(duì)應(yīng)的文件和目錄也在內(nèi)核對(duì)象子系統(tǒng)中被創(chuàng)建。
/tmp:
tmp 是 temporary(臨時(shí)) 的縮寫這個(gè)目錄是用來存放一些臨時(shí)文件的。/usr:
usr 是 unix shared resources(共享資源) 的縮寫,這是一個(gè)非常重要的目錄,用戶的很多應(yīng)用程序和文件都放在這個(gè)目錄下,類似于 windows 下的 program files 目錄。/usr/bin:
系統(tǒng)用戶使用的應(yīng)用程序。/usr/sbin:
超級(jí)用戶使用的比較高級(jí)的管理程序和系統(tǒng)守護(hù)程序。/usr/src:
內(nèi)核源代碼默認(rèn)的放置目錄。/var:
var 是 variable(變量) 的縮寫,這個(gè)目錄中存放著在不斷擴(kuò)充著的東西,我們習(xí)慣將那些經(jīng)常被修改的目錄放在這個(gè)目錄下。包括各種日志文件。/run:
是一個(gè)臨時(shí)文件系統(tǒng),存儲(chǔ)系統(tǒng)啟動(dòng)以來的信息。當(dāng)系統(tǒng)重啟時(shí),這個(gè)目錄下的文件應(yīng)該被刪掉或清除。如果你的系統(tǒng)上有 /var/run 目錄,應(yīng)該讓它指向 run。
在 Linux 系統(tǒng)中,有幾個(gè)目錄是比較重要的,平時(shí)需要注意不要誤刪除或者隨意更改內(nèi)部文件。
/etc: 上邊也提到了,這個(gè)是系統(tǒng)中的配置文件,如果你更改了該目錄下的某個(gè)文件可能會(huì)導(dǎo)致系統(tǒng)不能啟動(dòng)。
/bin, /sbin, /usr/bin, /usr/sbin: 這是系統(tǒng)預(yù)設(shè)的執(zhí)行文件的放置目錄,比如 ls 就是在 /bin/ls 目錄下的。
值得提出的是,/bin, /usr/bin 是給系統(tǒng)用戶使用的指令(除root外的通用戶),而/sbin, /usr/sbin 則是給 root 使用的指令。
/var: 這是一個(gè)非常重要的目錄,系統(tǒng)上跑了很多程序,那么每個(gè)程序都會(huì)有相應(yīng)的日志產(chǎn)生,而這些日志就被記錄到這個(gè)目錄下,具體在 /var/log 目錄下,另外 mail 的預(yù)設(shè)放置也是在這里。