linux基礎(chǔ)復(fù)習(xí)(1)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
關(guān)于linux,本來已經(jīng)學(xué)得差不多暫時(shí)夠用了,不過回頭看看可能因?yàn)橹皰叩锰欤恍┘?xì)節(jié)的地方?jīng)]有注意到,加上我也想把這部分加進(jìn)自己的博客,所以算了,從來再掃一次,記下重點(diǎn)跟存在的疑慮,后面真正弄懂了,就回頭解答,當(dāng)然,有高手指點(diǎn)的是最好的哈哈。
補(bǔ)充最后一句廢話,開始學(xué)linux 是從同事鴻飛那里借了一本《嵌入式linux應(yīng)用程序開發(fā)詳解》的書在此說聲謝謝。所以linux 基礎(chǔ)復(fù)習(xí),將按此書展開。后面的文章很多會(huì)轉(zhuǎn)載我在網(wǎng)上搜集的資料,因?yàn)楸容^雜,東拿一塊西拿一塊,實(shí)在無法在每個(gè)地方寫明轉(zhuǎn)載,如有侵犯了您的權(quán)力請(qǐng)告知,我會(huì)馬上刪除。
[list]
[*]linux 的優(yōu)勢(shì)及發(fā)展史:略
[*]基礎(chǔ)概念:1.文件系統(tǒng)、分區(qū)和掛載
文件系統(tǒng)是指操作系統(tǒng)中與管理文件有關(guān)的軟件和數(shù)據(jù)。Linux 的文件系統(tǒng)和Windows中的文件系統(tǒng)有很大的區(qū)別,Windows文件系統(tǒng)是以驅(qū)動(dòng)器的盤符為基礎(chǔ)的,而且每一個(gè)目錄是與相應(yīng)的分區(qū)對(duì)應(yīng),例如“E:\workplace”是指此文件在E 盤這個(gè)分區(qū)下。而Linux 恰好相反,文件系統(tǒng)是一個(gè)文件樹,且它的所有文件和外部設(shè)備(如硬盤、光驅(qū)等)都是以文件的形式掛結(jié)在這個(gè)文件樹上,例如“\usr\local”。對(duì)于Windows 而言,就是指所有分區(qū)都是在一些目錄下。在Linux 中把每一個(gè)分區(qū)和某一個(gè)目錄對(duì)應(yīng),以后在對(duì)這個(gè)目錄的操作就是對(duì)這
個(gè)分區(qū)的操作,這樣就實(shí)現(xiàn)了硬件管理手段和軟件目錄管理手段的統(tǒng)一。這個(gè)把分區(qū)和目錄對(duì)應(yīng)的過程叫做掛載(Mount),而這個(gè)掛載在文件樹中的位置就是掛載點(diǎn)。
2.主分區(qū)、擴(kuò)展分區(qū)和邏輯分區(qū)
硬盤分區(qū)是針對(duì)一個(gè)硬盤進(jìn)行操作的,它可以分為:主分區(qū)、擴(kuò)展分區(qū)、邏輯分區(qū)。其中主分區(qū)就是包含操作系統(tǒng)啟動(dòng)所必需的文件和數(shù)據(jù)的硬盤分區(qū),要在硬盤上安裝操作系統(tǒng),則該硬盤必須要有一個(gè)主分區(qū),而且其主分區(qū)的數(shù)量可以是1~3個(gè);擴(kuò)展分區(qū)也就是除主分區(qū)外的分區(qū),但它不能直接使用,必須再將它劃分為若干個(gè)邏輯分區(qū)才可使用,其數(shù)量可以有0 或1 個(gè);而邏輯分區(qū)則在數(shù)量上沒有什么限制。它們的關(guān)系如圖1.3所示。
一般而言,對(duì)于先裝了Windows 的用戶,則Windows 的C 盤是裝在主分區(qū)上的,可以把Linux 安裝在另一個(gè)主分區(qū)或者擴(kuò)展分區(qū)上。通常為了安裝方便安全起見,一般采用把Linux 裝在多余的邏輯分區(qū)上。
3.SWAP交換分區(qū)
在硬件條件有限的情況下,為了運(yùn)行大型的程序,Linux 在硬盤上劃出一個(gè)區(qū)域來當(dāng)作臨時(shí)的內(nèi)存,而Windows 操作系統(tǒng)把這個(gè)區(qū)域叫做虛擬內(nèi)存,Linux 把它叫做交換分區(qū)swap。在安裝Linux 建立交換分區(qū)時(shí),一般將其設(shè)為內(nèi)存大小的2 倍,當(dāng)然也可以設(shè)為更大。
4.分區(qū)格式
不同的操作系統(tǒng)選擇了不同的格式,同一種操作系統(tǒng)也可能支持多種格式。微軟公司的Windows 就選擇了FAT32、NTFS兩種格式,但是Windows不支持Linux 上常見的分區(qū)格式。
Linux 是一個(gè)開放的操作系統(tǒng),它最初使用EXT2 格式,后來使用EXT3 格式,但是它同時(shí)支持非常多的分區(qū)格式,包括很多大型機(jī)上UNIX 使用的XFS格式,也包括微軟公司的FAT以及NTFS格式。
5.GRUB
GRUB 是一種引導(dǎo)裝入器(類似在嵌入式中非常重要的bootloader)——它負(fù)責(zé)裝入內(nèi)核并引導(dǎo)Linux 系統(tǒng),位于硬盤的起始部分。由于GRUB多方面的優(yōu)越性,如今的Linux 一般都默認(rèn)采用GRUB來引導(dǎo)Linux 操作系統(tǒng)。但事實(shí)上它還可以引導(dǎo)Windows 等多種操作系統(tǒng)。
[*]linux 安裝:略(建議使用Redhat9作為學(xué)習(xí)環(huán)境,F(xiàn)C 的版本有些問題,例如在編譯QTE 的時(shí)候,老是通不過,這個(gè)問題最少浪費(fèi)了我一個(gè)星期,在網(wǎng)上參考了N多文章,還是沒解決,最終在Redhat9 上面很快就把環(huán)境搭建起來了!)
[*]文件系統(tǒng)介紹:1.ext2和ext3
ext3是現(xiàn)在Linux(包括Red Hat,Mandrake下)常見的默認(rèn)的文件系統(tǒng),它是ext2 的升級(jí)版本。正如Red Hat公司的首席核心的開發(fā)人員Michael K.Johnson所說,從ext2 轉(zhuǎn)換到ext3 主要有以下4 個(gè)理由:可用性、數(shù)據(jù)完整性、速度以及易于轉(zhuǎn)化。ext3 中采用了日志式的管理機(jī)制,它使文件系統(tǒng)具有很強(qiáng)的快速恢復(fù)能力,并且由于從ext2 轉(zhuǎn)換到ext3 無須進(jìn)行格式化,因此,更加推進(jìn)了ext3 文件系統(tǒng)的大大推廣。
2.swap 文件系統(tǒng)
該文件系統(tǒng)是Linux 中作為交換分區(qū)使用的。在安裝Linux 的時(shí)候,交換分區(qū)是必須建立的,并且它所采用的文件系統(tǒng)類型必須是swap而沒有其他選擇。
3.vfat文件系統(tǒng)
Linux 中把DOS 中采用的FAT 文件系統(tǒng)(包括FAT12,F(xiàn)AT16 和FAT32)都稱為vfat文件系統(tǒng)。
4.NFS文件系統(tǒng)
NFS文件系統(tǒng)是指網(wǎng)絡(luò)文件系統(tǒng),這種文件系統(tǒng)也是Linux 的獨(dú)到之處。它可以很方便地在局域網(wǎng)內(nèi)實(shí)現(xiàn)文件共享,并且使多臺(tái)主機(jī)共享同一主機(jī)上的文件系統(tǒng)。而且NFS文件系統(tǒng)訪問速度快、穩(wěn)定性高,已經(jīng)得到了廣泛的應(yīng)用,尤其在嵌入式領(lǐng)域,使用NFS文件系統(tǒng)可以很方便地實(shí)現(xiàn)文件本地修改,而免去了一次次讀寫flash的憂慮。
5.ISO9660文件系統(tǒng)
這是光盤所使用的文件系統(tǒng),在Linux 中對(duì)光盤已有了很好的支持,它不僅可以提供對(duì)光盤的讀寫,還可以實(shí)現(xiàn)對(duì)光盤的刻錄。
[*]Linux目錄結(jié)構(gòu)[/list]
/bin
bin 就是二進(jìn)制(binary)英文縮寫。在這里存放前面Linux 常用操作命令的執(zhí)行文件,如mv、ls、mkdir 等。有時(shí),這個(gè)目錄的內(nèi)容和/usr/bin 里面的內(nèi)容一樣,它們都是放置一般用戶使用的執(zhí)行文件/boot 這個(gè)目錄下存放操作系統(tǒng)啟動(dòng)時(shí)所要用到的程序。如啟動(dòng)grub就會(huì)用到其下的/boot/grub子目錄/dev 該目錄中包含了所有Linux系統(tǒng)中使用的外部設(shè)備。要注意的是,這里并不是存放的外部
設(shè)備的驅(qū)動(dòng)程序,它實(shí)際上是一個(gè)訪問這些外部設(shè)備的端口。由于在Linux中,所有的設(shè)備都當(dāng)作文件一樣進(jìn)行操作,比如:/dev/cdrom代表光驅(qū),用戶可以非常方便地像訪問文件、目錄一樣對(duì)其進(jìn)行訪問/etc該目錄下存放了系統(tǒng)管理時(shí)要用到的各種配置文件和子目錄。如網(wǎng)絡(luò)配置文件、文件系統(tǒng)、x系統(tǒng)配置文件、設(shè)備配置信息設(shè)置用戶信息等都在這個(gè)目錄下。系統(tǒng)在啟動(dòng)過程中需要讀取其參數(shù)進(jìn)行相應(yīng)的配置/etc/rc.d 該目錄主要存放Linux啟動(dòng)和關(guān)閉時(shí)要用到的腳本文件,在后面的啟動(dòng)詳解中還會(huì)進(jìn)一步地講解[!--empirenews.page--]
續(xù)表
目 錄 目 錄 內(nèi) 容
/etc/rc.d/init 該目錄存放所有Linux服務(wù)默認(rèn)的啟動(dòng)腳本(在新版本的Linux中還用到的是/etc/xinetd.d
目錄下的內(nèi)容)
/home 該目錄是Linux 系統(tǒng)中默認(rèn)的用戶工作根目錄。如前面在1.3.1 節(jié)中所述,執(zhí)行adduser
命令后系統(tǒng)會(huì)在/home目錄下為對(duì)應(yīng)賬號(hào)建立一個(gè)名為同名的主目錄
/lib 該目錄是用來存放系統(tǒng)動(dòng)態(tài)鏈接共享庫的。幾乎所有的應(yīng)用程序都會(huì)用到這個(gè)目錄下的
共享庫。因此,千萬不要輕易對(duì)這個(gè)目錄進(jìn)行什么操作
/lost+found 該目錄在大多數(shù)情況下都是空的。只有當(dāng)系統(tǒng)產(chǎn)生異常時(shí),會(huì)將一些遺失的片段放在此
目錄下
/media 該目錄下是光驅(qū)和軟驅(qū)的掛載點(diǎn),F(xiàn)edora Core 4已經(jīng)可以自動(dòng)掛載光驅(qū)和軟驅(qū)
/misc 該目錄下存放從DOS下進(jìn)行安裝的實(shí)用工具,一般為空
/mnt 該目錄是軟驅(qū)、光驅(qū)、硬盤的掛載點(diǎn),也可以臨時(shí)將別的文件系統(tǒng)掛載到此目錄下
/proc 該目錄是用于放置系統(tǒng)核心與執(zhí)行程序所需的一些信息。而這些信息是在內(nèi)存中由系統(tǒng)
產(chǎn)生的,故不占用硬盤空間
/root 該目錄是超級(jí)用戶登錄時(shí)的主目錄
/sbin 該目錄是用來存放系統(tǒng)管理員的常用的系統(tǒng)管理程序
/tmp 該目錄用來存放不同程序執(zhí)行時(shí)產(chǎn)生的臨時(shí)文件。一般Linux安裝軟件的默認(rèn)安裝路徑就
是這里
/usr 這是一個(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)的放置目錄
/srv 該目錄存放一些服務(wù)啟動(dòng)之后需要提取的數(shù)據(jù)
/sys
這是Linux 2.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)建
/var 這也是一個(gè)非常重要的目錄,很多服務(wù)的日志信息都存放在這里