1. 程式人生 > >檔案和目錄(理解)

檔案和目錄(理解)

目標

  • 理解 Linux 檔案目錄的結構

01. 單使用者作業系統和多使用者作業系統(科普)

  • 單使用者作業系統:指一臺計算機在同一時間 只能由一個使用者 使用,一個使用者獨自享用系統的全部硬體和軟體資源

  • Windows XP 之前的版本都是單使用者作業系統
  • 多使用者作業系統:指一臺計算機在同一時間可以由 多個使用者 使用,多個使用者共同享用系統的全部硬體和軟體資源

    • UnixLinux 的設計初衷就是多使用者作業系統

    02. WindowsLinux 檔案系統區別

    2.1 Windows 下的檔案系統

    • Windows 下,開啟 “計算機”,我們看到的是一個個的驅動器碟符:

    

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

    

    2.2 Linux 下的檔案系統

    • Linux 下,我們是看不到這些驅動器碟符,我們看到的是資料夾(目錄):

    

    • Ubuntu 沒有碟符這個概念,只有一個根目錄 /,所有檔案都在它下面

    

    2.3 使用者目錄

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

    /home/user
    ~
    

    2.4 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/spool/mail:郵件存放的目錄
    • /var/run:程式或服務啟動後,其 PID 存放在該目錄下