windows: 以多根的方式組織檔案 c:\ d:\ e:
linux: 以單根的方式組織檔案 /
/目錄結構:fsh (filesystem hierarchy standard) linux 或 unix 作業系統中,所有的檔案和目錄都被組織成以乙個根 節點開始的倒置的樹狀結構。檔案系統的最頂層是由根目錄開始的,系統使用 / 來表示根目錄。在根目錄之下的既可以是目錄,也可以是檔案,而每乙個目錄中又可以包含子目錄檔案。如此反覆就可以構成乙個龐大的檔案系統。
下圖為linux目錄結構
bin普通使用者使用的命令 /bin/ls, /bin/date
sbin管理員使用的命令 /sbin/service
dev裝置檔案 /dev/sda,/dev/sda1,/dev/tty1,/dev/tty2,/dev/pts/1, /dev/zero, /dev/null, /dev/random
rootroot使用者的home
home儲存普通使用者家目錄
lost+foundfsck修復時,儲存沒有鏈結的檔案或目錄
proc虛擬的檔案系統,反映出來的是核心,程序資訊或實時狀態
usr系統檔案,相當於c:\windows
/usr/local軟體安裝的目錄,相當於c:\program
/usr/bin普通使用者使用的應用程式
/usr/sbin管理員使用的應用程式
/usr/lib庫檔案glibc
/usr/lib64庫檔案glibc
boot存放的系統啟動相關的檔案,例如kernel,grub(引導裝載程式)
etc配置檔案(系統相關如網路/etc/sysconfig/network,應用相 關配置檔案如/etc/ssh/sshd_config…)
lib庫檔案glibc
lib64庫檔案glibc
tmp臨時檔案(全域性可寫:程序產生的臨時檔案)
var存放的是一些變化檔案,比如資料庫,日誌,郵件…
命令儲存位置:
**庫檔案儲存位置: **
stat anaconda-ks.cfg //檢視檔案的詳細屬性(其中包括檔案時 間屬性)
通過顏色判斷檔案的型別是不一定正確的!!!
linux系統中檔案是沒有副檔名!!!
方法一:
ls -l 檔名 //看第乙個字元
方法二:file
[root@linux ~]# file /bin/ls
/bin/ls: elf 64-bit lsb executable, x86-64, version 1 (sysv), dynamically linked (uses shared libs), for gnu/linux 2.6.32, buildid[sha1]=3d705971a4c4544545cb78fd890d27bf792af6d4, stripped
[root@linux ~]# file /dev/sda
/dev/sda: block special
[root@linux ~]# file /etc/grub2.cfg
/etc/grub2.cfg: symbolic link to `../boot/grub2/grub.cfg'
[root@linux ~]# file /home/
/home/: directory
絕對路徑:從/開始的路徑 /home/alice/file1
相對路徑:相對於當前目錄開始 a.txt ./a.txt …/bob/b.txt [假如: 此時在目錄/home/alice]
linux 鏈結分兩種,一種被稱為硬鏈結(hard link),另一種被稱 為符號鏈結(symbolic link)。預設情況下,ln 命令產生硬鏈結
硬連線硬連線指通過索引節點來進行連線。在 linux 的檔案系統中,保 存在磁碟分割槽中的檔案不管是什麼型別都給它分配乙個編號,稱為 索引節點號(inode index)。在 linux 中,多個檔名指向同一索引 節點是存在的。比如:a 是 b 的硬鏈結(a 和 b 都是檔名),則 a 的目錄項中的 inode 節點號與 b 的目錄項中的 inode 節點號相 同,即乙個 inode 節點對應兩個不同的檔名,兩個檔名指向同 乙個檔案,a 和 b 對檔案系統來說是完全平等的。刪除其中任何一 個都不會影響另外乙個的訪問。 硬連線的作用是允許乙個檔案擁有多個有效路徑名,這樣使用者就 可以建立硬連線到重要檔案,以防止「誤刪」的功能。其原因如上 所述,因為對應該目錄的索引節點有乙個以上的連線。只刪除乙個 連線並不影響索引節點本身和其它的連線,只有當最後乙個連線被 刪除後,檔案的資料塊及目錄的連線才會被釋放。也就是說,檔案 真正刪除的條件是與之相關的所有硬連線檔案均被刪除。
軟連線另外一種連線稱之為符號連線(symbolic link),也叫軟連線。 軟鏈結檔案有類似於 windows 的快捷方式。它實際上是乙個特殊 的檔案。在符號連線中,檔案實際上是乙個文字檔案,其中包含的 有另一檔案的位置資訊。比如:a 是 b 的軟鏈結(a 和 b 都是檔案 名),a 的目錄項中的 inode 節點號與 b 的目錄項中的 inode 節 點號不相同,a 和 b 指向的是兩個不同的 inode,繼而指向兩塊不 同的資料塊。但是 a 的資料塊中存放的只是 b 的路徑名(可以根據 這個找到 b 的目錄項)。a 和 b 之間是「主從」關係,如果 b 被刪 除了,a 仍然存在(因為兩個是不同的檔案),但指向的是乙個無 效的鏈結。
例如:
[root@linux ~]# touch f1 #建立乙個測試檔案f1
[root@linux ~]# ln f1 f2 #建立f1的乙個硬連線檔案f2
[root@linux ~]# ln -s f1 f3 #建立f1的乙個符號連線檔案f3
[root@linux ~]# ls -li #-i引數顯示檔案的inode節點資訊
total 40
···67145659 -rw-r--r--. 2 root root 0 sep 26 04:49 f1
67145659 -rw-r--r--. 2 root root 0 sep 26 04:49 f2
67145661 lrwxrwxrwx. 1 root root 2 sep 26 04:49 f3 -> f1
···
從上面的結果中可以看出,硬連線檔案 f2 與原檔案 f1 的 inode 節 點相同,均為 9797648,然而符號連線檔案的 inode 節點不同。
[root@linux ~]# echo "i am f1 file" >> f1
[root@linux ~]# cat f1
i am f1 file
[root@linux ~]# cat f2
i am f1 file
[root@linux ~]# cat f3
i am f1 file
[root@linux ~]# rm -f f1
[root@linux ~]# cat f2
i am f1 file
[root@linux ~]# cat f3
cat: f3: no such file or directory
通過上面的測試可以看出:當刪除原始檔案 f1 後,硬連線 f2 不受 影響,但是符號連線 f1 檔案無效。 linux目錄結構
linux目錄結構 目錄樹的主要部分有root usr var home等等。下面是乙個典型的linux目錄結構如下 根目錄 bin 存放必要的命令 boot 存放核心以及啟動所需的檔案等 dev 存放裝置檔案 etc 存放系統的配置檔案 home 使用者檔案的主目錄,使用者資料存放在其主目錄中 l...
Linux目錄結構
bin binary 經常使用的命令 boot啟動linux的核心檔案,包括一些鏈結及映象檔案 dev device linux的外部裝置 etc存放所有的系統管理所需要的配置檔案及子目錄 home使用者主目錄 lib存放系統最基本的動態鏈結共享庫,類似於windows下的dll檔案 lost fo...
Linux目錄結構
此處以red hat enterprise4as為例 1.bin bin是 二進位制的英文縮寫 在這裡存放前面linux常用的操作命令的執行檔案,如 cd mkdir ls 這個目錄的內容和 usr bin裡面的內容是一樣的,他們都是放置一般使用者使用的執行檔案 2.boot 這個目錄存放作業系統啟...