1. 程式人生 > >Linux文件系統掛載

Linux文件系統掛載

exec tro free 主機 應用 關聯 alt 訪問 本地

1. 基本知識
  掛載:將額外文件系統與根文件系統某現存目錄建立起關聯關系,進而使得此目錄作為其他文件訪問入口的行為
  卸載:解除此關聯關系的過程
  Mount Point: 把設備關聯掛載點

  掛載: mount命令
  卸載: umount命令
           可使用設備,也可使用掛載點來卸載

  *註意*:掛載點下原有文件在掛載完後會被臨時隱藏(所以掛載時盡可能使用空目錄)
2. 掛載方法
    mount DEVICE MOUNT_POINT
    mount [-fnrsvw] [-t vfstype] [-o options] device dir
            device: 指明要掛載的設備
                   (1)設備文件: 如:/dev/sda1
                   (2)卷標, -L ‘LABEL‘
                   (3)UUID, -U UUID
                   (4)偽文件系統名稱: proc, sys
            dir: 掛載點
                 事先存在,建議使用空目錄
                 **進程正在使用的設備是無法被掛載**

技術分享圖片
技術分享圖片
技術分享圖片

註意:
(1)mount 不帶任何參數,只是顯示當前系統已掛載的所有設備(通過查看/etc/mtab文件)
技術分享圖片
技術分享圖片

  (2)要永久在當前主機掛載的文件,盡量不要使用mnt, media
  (3)查看內核追蹤到的已掛載的所有設備: cat /proc/mounts

           mnt: 臨時文件系統
           media: 便攜式移動設備

常用命令選項

     -t vfstype: 指定要掛載的設備上的文件系統類型
     -r : readonly
     -w : read and write
     -a : 自動掛載所有支持自動掛載的設備(定義在/etc/fstab文件中,且掛載選項中有“自動掛載”功能)
     -n : 不更新/etc.mtab
     -B (--bind) 綁定目錄到另一個目錄上

-o options:

     async: 異步模式
     sync:同步模式
     atime/noatime: 更新訪問時間戳(包含目錄和文件)
     diratime/nodiratime: 目錄的訪問時間戳
     auto/noauto: 默認是自動掛載
     exec/noexec: 支持將文件系統上應用程序運行為進程
     dev/nodev: 支持在此文件系統上使用設備文件
     suid/nosuid
     remount: 重新掛載
     ro
     rw
     user/nouser: 普通用戶掛載此設備(默認只有管理員才有權限掛載)
     acl: 啟用此文件系統上的‘訪問控制列表‘功能

     註意:上述選項可多個同時使用,彼此之間用逗號(,)分隔
            默認掛載選項:defaults(rw,suid,dev,exec,auto,nouser,sync)

技術分享圖片

3. 卸載命令
      umount DEVICE
      umount MOUNT_POINT

技術分享圖片
技術分享圖片

  • fuser
    fuser命令用於報告進程使用的文件和網絡套接字。fuser命令列出了本地進程的進程號,那些本地進程使用file,參數指定的本地或遠程文件。對於阻塞特別設備,此命令列出了使用該設備上任何文件的進程。

         fuser(選項)(參數)
             選項:
                -a:顯示命令行中指定的所有文件;
                -k:殺死訪問指定文件的所有進程;
                -i:殺死進程前需要用戶進行確認;
                -l:列出所有已知信號名;
                -m:指定一個被加載的文件系統或一個被加載的塊設備;
                -n:選擇不同的名稱空間;
                -u:在每個進程後顯示所屬的用戶名。
                -v Verbose
    
             參數:                 
                  文件:可以是文件名或者TCP、UDP端口號。
    • 查看正在訪問指定文件系統的進程:

        fuser -v MOUNT_POINT

      技術分享圖片

    • 終止所有正在訪問指定文件系統的jinc

      fuser -km MOUNT_POINT

4. 掛載交換分區
     啟用:swapon
                  swapon [option]... [DEVICE]
                              -a 激活所有交換分區
                              -p PRIORITY 指定優先級                                  
                              -s:顯示交換區的使用狀況;

技術分享圖片
技術分享圖片

   關閉:swapoff
           swapoff [option]... [DEVICE]

技術分享圖片

5. 一些查看信息的命令
  • 內存空間使用狀態

    free [option]
          -m 以Mb為單位
          -g 以Gb為單位

    技術分享圖片

  • 文件系統空間占用等信息的查看工具:

    df(disk free)
    -h human-readable
    -i innodes
    -P 以posix兼容的格式輸出
    技術分享圖片

  • 查看某目錄總體空間占用狀態:

    du
    du [options]... DIR
    -h huamn-readable
    -s summary (display only a total for each argument)
    技術分享圖片

Linux文件系統掛載