1. 程式人生 > >Linux學習筆記之二————Linux系統的文件和目錄

Linux學習筆記之二————Linux系統的文件和目錄

管道 過程 命令 合成 給定 cal 如圖所示 項目 img

一、Windows和Linux文件系統區別

1、在 windows 平臺下,打開“計算機”,我們看到的是一個個的驅動器盤符:

技術分享圖片

技術分享圖片

每個驅動器都有自己的根目錄結構,這樣形成了多個樹並列的情形,如圖所示: 技術分享圖片

技術分享圖片

2、在 Linux 下,我們是看不到這些驅動器盤符,我們看到的是文件夾(目錄):

技術分享圖片

技術分享圖片

二、類Unix系統目錄結構

1、ubuntu沒有盤符這個概念,只有一個根目錄/,所有文件都在它下面:

技術分享圖片

2、Linux 目錄

  • /:根目錄,一般根目錄下只存放目錄,在Linux下有且只有一個根目錄。所有的東西都是從這裏開始。當你在終端裏輸入“/home”,你其實是在告訴電腦,先從/(根目錄)開始,再進入到home目錄。
  • /bin: 或者 /usr/bin: 可執行二進制文件的目錄,如常用的命令ls、tar、mv、cat等。
  • /boot:放置linux系統啟動時用到的一些文件,如Linux的內核文件:/boot/vmlinuz,系統引導管理器:/boot/grub。
  • /dev:存放linux系統下的設備文件,訪問該目錄下某個文件,相當於訪問某個設備,常用的是掛載光驅 mount /dev/cdrom /mnt。
  • /etc:系統配置文件存放的目錄,不建議在此目錄下存放可執行文件,重要的配置文件有 /etc/inittab、/etc/fstab、/etc/init.d、/etc/X11、/etc/sysconfig、/etc/xinetd.d。
  • /home:系統默認的用戶家目錄,新增用戶賬號時,用戶的家目錄都存放在此目錄下,~表示當前用戶的家目錄,~edu 表示用戶 edu 的家目錄。
  • /lib: /usr/lib: /usr/local/lib:系統使用的函數庫的目錄,程序在執行過程中,需要調用一些額外的參數時需要函數庫的協助。
  • /lost+fount:系統異常產生錯誤時,會將一些遺失的片段放置於此目錄下。
  • /mnt: /media:光盤默認掛載點,通常光盤掛載於 /mnt/cdrom 下,也不一定,可以選擇任意位置進行掛載。
  • /opt:給主機額外安裝軟件所擺放的目錄。
  • /proc:此目錄的數據都在內存中,如系統核心,外部設備,網絡狀態,由於數據都存放於內存中,所以不占用磁盤空間,比較重要的目錄有 /proc/cpuinfo、/proc/interrupts、/proc/dma、/proc/ioports、/proc/net/* 等。
  • /root:系統管理員root的家目錄。
  • /sbin: /usr/sbin: /usr/local/sbin:放置系統管理員使用的可執行命令,如fdisk、shutdown、mount 等。與 /bin 不同的是,這幾個目錄是給系統管理員 root使用的命令,一般用戶只能"查看"而不能設置和使用。
  • /tmp:一般用戶或正在執行的程序臨時存放文件的目錄,任何人都可以訪問,重要數據不可放置在此目錄下。
  • /srv:服務啟動之後需要訪問的數據目錄,如 www 服務需要訪問的網頁數據存放在 /srv/www 內。
  • /usr:應用程序存放目錄,/usr/bin 存放應用程序,/usr/share 存放共享數據,/usr/lib 存放不能直接運行的,卻是許多程序運行所必需的一些函數庫文件。/usr/local: 存放軟件升級包。/usr/share/doc: 系統說明文件存放目錄。/usr/share/man: 程序說明文件存放目錄。
  • /var:放置系統執行過程中經常變化的文件,如隨時更改的日誌文件 /var/log,/var/log/message:所有的登錄文件存放目錄,/var/spool/mail:郵件存放的目錄,/var/run:程序或服務啟動後,其PID存放在該目錄下。

技術分享圖片

3、用戶目錄

位於/home/user,稱之為用戶工作目錄或家目錄,表示方式:

/home/user
~

4、相對路徑和絕對路徑

  • 絕對路徑

從/目錄開始描述的路徑為絕對路徑,如:

cd /home
ls /usr
  • 相對路徑

從當前位置開始描述的路徑為相對路徑,如:

cd ../../
ls abc/def

5、 .和..

每個目錄下都有.和..

. 表示當前目錄

.. 表示上一級目錄,即父目錄

根目錄下的.和..都表示當前目錄

三、權限相關問題

1、文件權限

文件權限就是文件的訪問控制權限,即哪些用戶和組群可以訪問文件以及可以執行什麽樣的操作。

Unix/Linux系統是一個典型的多用戶系統,不同的用戶處於不同的地位,對文件和目錄有不同的訪問權限。為了保護系統的安全性,Unix/Linux系統除了對用戶權限作了嚴格的界定外,還在用戶身份認證、訪問控制、傳輸安全、文件讀寫權限等方面作了周密的控制。

在 Unix/Linux中的每一個文件或目錄都包含有訪問權限,這些訪問權限決定了誰能訪問和如何訪問這些文件和目錄。

2、訪問用戶

通過設定權限可以從以下三種訪問方式限制訪問權限:

  • 只允許用戶自己訪問(所有者) 所有者就是創建文件的用戶,用戶是所有用戶所創建文件的所有者,用戶可以允許所在的用戶組能訪問用戶的文件。

  • 允許一個預先指定的用戶組中的用戶訪問(用戶組) 用戶都組合成用戶組,例如,某一類或某一項目中的所有用戶都能夠被系統管理員歸為一個用戶組,一個用戶能夠授予所在用戶組的其他成員的文件訪問權限。

  • 允許系統中的任何用戶訪問(其他用戶) 用戶也將自己的文件向系統內的所有用戶開放,在這種情況下,系統內的所有用戶都能夠訪問用戶的目錄或文件。在這種意義上,系統內的其他所有用戶就是 other 用戶類

這有點類似於 QQ 空間的訪問權限:

技術分享圖片

技術分享圖片

  • 這個 QQ 空間是屬於我的,我相當於管理者(也就是“所有者”),我想怎麽訪問就怎麽訪問。
  • 同時,我可以設置允許 QQ 好友訪問,而這些 QQ 好友則類似於“用戶組”。
  • 當然,我可以允許所有人訪問,這裏的所有人則類似於“其他用戶”。

3、訪問權限

1)用戶能夠控制一個給定的文件或目錄的訪問程度,一個文件或目錄可能有讀、寫及執行權限:

  • 讀權限(r) 對文件而言,具有讀取文件內容的權限;對目錄來說,具有瀏覽目錄的權限。
  • 寫權限(w) 對文件而言,具有新增、修改文件內容的權限;對目錄來說,具有刪除、移動目錄內文件的權限。
  • 可執行權限(x) 對文件而言,具有執行文件的權限;對目錄了來說該用戶具有進入目錄的權限。

註意:通常,Unix/Linux系統只允許文件的屬主(所有者)或超級用戶改變文件的讀寫權限。

2)示例說明

技術分享圖片

技術分享圖片

第1個字母代表文件的類型:“d” 代表文件夾、“-” 代表普通文件、“c” 代表硬件字符設備、“b” 代表硬件塊設備、“s”表示管道文件、“l” 代表軟鏈接文件。 後 9 個字母分別代表三組權限:文件所有者、用戶者、其他用戶擁有的權限。

每一個用戶都有它自身的讀、寫和執行權限。

  • 第一組權限控制訪問自己的文件權限,即所有者權限。
  • 第二組權限控制用戶組訪問其中一個用戶的文件的權限。
  • 第三組權限控制其他所有用戶訪問一個用戶的文件的權限。

這三組權限賦予用戶不同類型(即所有者、用戶組和其他用戶)的讀、寫及執行權限就構成了一個有9種類型的權限組。

--------------------------------------------

來源:整理自網絡

技術分享圖片

技術分享圖片

Linux學習筆記之二————Linux系統的文件和目錄