1. 程式人生 > >Linux文件,目錄命令

Linux文件,目錄命令

1,Linux檔案系統結構

  • Linux目錄結構的組織形式和Windows有很大的不同,首先Linux沒有"盤(C盤,D盤,E盤的概念)"的概念,已經建立檔案系統的硬碟分割槽被掛載到某一目錄下,使用者䚒操作來實現磁碟讀寫.
  • Linux不像Windows那樣的系統目錄,Linux使用正斜槓"/"而不是反斜槓"\"來標識目錄
  • Windows目錄:
  • Linux的目錄
  • 因為Linux是首先建立一個根"/"檔案系統,所有的目錄也都是由根目錄衍生出來的(所以在Linux中一切皆檔案)

 2,檢視根目錄下的所有資料夾

  • 命令: ls /   檢視在根目錄下的所有檔案
  • 在Linux底下,所有的檔案與目錄都是由根目錄開始,是目錄與檔案的源頭,然後一個個的分支下來,如同樹枝狀,因此稱為這種配置為:目錄樹

  • 目錄樹的特點:
    • 目錄樹的起始點是根目錄(/,root)
    • 每一個目錄不止能使用本地的檔案系統,也可以使用網路上的檔案系統,可以利用NFS伺服器掛載特定目錄
    • 每一個檔案在此目錄樹中的檔名,包含完整路徑都是獨一無二的

3,目錄樹架構示意圖

 

 註釋:

  • /bin:bin是Binary的縮寫,這個目錄存放著最經常使用的命令
  • /boot:這裡存放的是啟動Linux時使用的一些核心檔案,包括一些 連線檔案和映象 檔案
  • /dev: dev是Device(裝置)的縮寫,該目錄下存放的是Linux的外部裝置,在Linux中訪問裝置的方式和訪問檔案的方式是相同的
  • /etc這個目錄用來存放的系統管理所需要的配置檔案和子目錄
  • /home:使用者的主目錄,在Linux中,每個使用者都有一個自己的目錄,一般該目錄名是以使用者的賬號命名的.
  • /lib:這個目錄裡存放著系統最基本的動態連結共享庫,器作用類似於Windows裡 的DELL檔案,幾乎所有的應用程式都需要要用到這這些共享庫
  • /lost+found:這個目錄一般情況下是空的,當系統非法關機後,這裡就存放了一些檔案
  • /media:Linux系統會自動識別一些裝置,列如U盤,光碟機等等,當識別後Linux會把識別的裝置掛載到這個目錄下
  • /mnt:系統提供該目錄是為了讓使用者臨時掛載別的檔案,我們可以將光碟機掛載在/mnt上,然後進入該目錄就可以直接檢視光碟機裡的內容了
  • /opt:這是給主機額外的安裝軟體所擺放的目錄,比如你安裝一個ORACLE資料庫則就可以放到這個目錄下,預設是空的
  • /proc:這個是一個虛擬的目錄,它是系統記憶體的對映,我們可以通過直接訪問這個目錄來獲取系統資訊,這個目錄的內容不在硬碟上而是在記憶體裡,我們也可以直接修改裡面的某些檔案,比如可以通過下面的命令來遮蔽主機ping命令,使別人無法ping你的機器
  • echo 1 > / proc/sys/net/ipv4/icmp_echo_ignore_all
  • /root:該目錄為系統管理員,也稱作超級使用者許可權者的使用者主目錄
  • sbin:s就是Super User的意思,這裡存放著的是管理員使用的系統管理程式
  • /selinux:這個目錄是Redhat/CentOS所特有的目錄,Selinux是一個安全機制,類似於Windows的防火牆,但是這套機制比較複雜,這個目錄就是存放selinux相關的檔案的
  • /srv:該目錄存放一些服務啟動之後需要提取的資料
  • /sys:這是Linux2.6核心的一個很大的變化,該目錄下安裝了2.6核心中新出現的一個檔案系統sysfs.sysfs檔案系統集成了下面3種檔案系統的資訊,針對程序資訊的proc檔案,針對裝置的devfs檔案系統以及針對偽裝終端的devfs檔案系統,該檔案系統是核心裝置樹的一個直觀反映.當一個核心物件被建立的時候,對應的檔案和目錄也在核心物件子系統中被建立
  • /tmp:這個目錄是存放一些臨時檔案的
  • /usr:這是一個非常重要的目錄,使用者的很多應用程式和檔案都在這個目錄下,類似於windows下的program files目錄
  • /usr/bin:系統使用者使用的使用的用程式
  • /usr/sbin:超級使用者使用的比較高階的管理程式和系統的守護程式
  • /usr/src/:核心原始碼預設的放置工具
  • /var:這個目錄中存放著在不斷擴充著的東西,我們習慣將那些經常被修改的目錄下,包括各種日誌檔案

 

在linux系統中,有幾個目錄是比較重要的,平時需要注意不要誤刪除或者隨意更改內部檔案.

/etc: 上邊也提到了,這個是系統中的配置檔案,如果你更改了該目錄下的某個檔案可能會導致系統不能啟動。

 

/bin, /sbin, /usr/bin, /usr/sbin: 這是系統預設的執行檔案的放置目錄,比如 ls 就是在/bin/ls 目錄下的。

值得提出的是,/bin, /usr/bin 是給系統使用者使用的指令(除root外的通使用者),而/sbin, /usr/sbin 則是給root使用的指令。

/var: 這是一個非常重要的目錄,系統上跑了很多程式,那麼每個程式都會有相應的日誌產生,而這些日誌就被記錄到這個目錄下,具體在/var/log 目錄下,另外mail的預設放置也是在這裡。

 4,Linux額路徑PATH

  • 檢視Linux下的PATH環境變數:
  • echo $PATH:echo命令是列印的意思,$ 後邊跟上PATH,表示輸出PATH的變數
  • PATH(一定,必須,坑定要大寫的)這個變數是由一堆目錄組成,分割符號是":"號,而不同的windows的";"號

5,絕對路徑和相對路徑

  • 路徑時非常重要的概念,路徑用來定位如何找到某個檔案
  • Linux下特別注意檔名/路徑的寫法,可以將所謂的路徑(path)定義為絕對路徑(absolute)和相對路徑(relative).
    • 絕對路徑:由根目錄(/)為開始寫起的為檔名或者目錄名稱,如:root/home/xuexue/xueren.py
    • 相對路徑:相對於目前路徑的檔名寫法:非從根目錄開始.:xuexue/xuren.py

6,Linux的檔案系統

  • 使用者在硬體儲存裝置中執行的檔案建立,寫入,讀取,修改,轉存,與控制等操作都是依賴檔案系統完成的,檔案系統的作用是合理規劃硬碟,保證使用者正常的使用.
  • Ext3    是一款日誌檔案系統,能夠在系統異常宕機時避免檔案系統資料丟失,並能 自動修復資料的不一致與錯誤。
  • Ext4     Ext3 的改進版本,作為 RHEL 6 系統中的預設檔案管理系統,它支援的儲存容 量高達 1EB(1EB=1,073,741,824GB),且能夠有無限多的子目錄。另外,Ext4 檔案系統能夠批量分配 block 塊,從而極大地提高了讀寫效率。
  • XFS     是一種高效能的日誌檔案系統,而且是 RHEL 7 中預設的檔案管理系統,它的優勢在發生意外宕機後尤其明顯,即可以快速地恢復可能被破壞的檔案,而且強大的 日誌功能只用花費極低的計算和儲存效能。並且它最大可支援的儲存容量為 18EB, 這幾乎滿足了所有需求
  • /etc/fstab是用來存放檔案系統的靜態資訊的檔案
  • cat/etc/fstab   檢視Linux的檔案系統
  •