文件系統掛載

文件系統掛載

文件系統管理:

將額外文件系統與根文件系統某現存的目錄建立起關聯關系,進而使得此目錄做為其它文件訪問入口的行為稱之為掛載;

 解除此關聯關系的過程稱之為卸載;

 把設備關聯掛載點:Mount Point

mount

 卸載時:可使用設備,也可以使用掛載點

umount

 注意:掛載點下原有文件在掛載完成后會被臨時隱藏;

 掛載方法:mount DEVICE MOUNT_POINT

mount:通過查看/etc/mtab文件顯示當前系統已掛載的所有設備

mount [-fnrsvw] [-t vfstype] [-o options] device dir

device:指明要掛載的設備;

(1) 設備文件:例如/dev/sda5

(2) 卷標:-L ‘LABEL’, 例如 -L ‘MYDATA’

(3) UUID, -U ‘UUID’:例如 -U ‘0c50523c-43f1-45e7-85c0-a126711d406e’

(4) 偽文件系統名稱:proc, sysfs, devtmpfs, configfs

dir:掛載點

事先存在;建議使用空目錄;

進程正在使用中的設備無法被卸載;

 常用命令選項:

-t vsftype:指定要掛載的設備上的文件系統類型;

-r: readonly,只讀掛載;

-w: read and write, 讀寫掛載;

-n: 不更新/etc/mtab;

-a:自動掛載所有支持自動掛載的設備;(定義在了/etc/fstab文件中,且掛載選項中有“自動掛載”功能)

-L ‘LABEL’: 以卷標指定掛載設備;

-U ‘UUID’: UUID指定要掛載的設備;

-B, –bind: 綁定目錄到另一個目錄上;

 注意:查看內核追蹤到的已掛載的所有設備:cat /proc/mounts

 -o options:(掛載文件系統的選項)

async:異步模式;

sync:同步模式;

atime/noatime:包含目錄和文件;

diratime/nodiratime:目錄的訪問時間戳

auto/noauto:是否支持自動掛載

exec/noexec:是否支持將文件系統上應用程序運行為進程

dev/nodev:是否支持在此文件系統上使用設備文件;

suid/nosuid

remount:重新掛載

ro

rw:

user/nouser:是否允許普通用戶掛載此設備

acl:啟用此文件系統上的acl功能

 注意:上述選項可多個同時使用,彼此使用逗號分隔;

  默認掛載選項:defaults

   rw, suid, dev, exec, auto, nouser, and async

 卸載命令:

# umount DEVICE

# umount MOUNT_POINT

 查看正在訪問指定文件系統的進程:

# fuser -v MOUNT_POINT

 終止所有在正訪問指定的文件系統的進程:

# fuser -km MOUNT_POINT

 掛載交換分區:

啟用:swapon

swapon [OPTION]… [DEVICE]

-a:激活所有的交換分區;

-p PRIORITY:指定優先級;

禁用:swapoff [OPTION]… [DEVICE]

 內存空間使用狀態:

free [OPTION]

-m: MB為單位

-g: GB為單位

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

df:

-h: human-readable

-iinodes instead of blocks

-P: Posix兼容的格式輸出;

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

du

du [OPTION]… DIR

-h: human-readable

-s: summary

 命令總結:mount, umount, free, df, du, swapon, swapoff, fuser

 文件掛載的配置文件:/etc/fstab

 每行定義一個要掛載的文件系統;

 要掛載的設備或偽文件系統 掛載點 文件系統類型   掛載選項 轉儲頻率   自檢次序

 要掛載的設備或偽文件系統:

設備文件、LABEL(LABEL=””)、UUID(UUID=””)、偽文件系統名稱(proc, sysfs)

 掛載選項:

defaults

 轉儲頻率:

0:不做備份

1:每天轉儲

2:每隔一天轉儲

 自檢次序:

0:不自檢

1:首先自檢;一般只有rootfs才用1

 文件系統上的其它概念:

Inode: Index Node, 索引節點

地址指針:

直接指針:

間接指針:

三級指針:

 inode bitmap:對位標識每個inode空閑與否的狀態信息;

 鏈接文件:

硬鏈接:

不能夠對目錄進行;

不能跨分區進行;

指向同一個inode的多個不同路徑;創建文件的硬鏈接即為為inode創建新的引用路徑,因此會增加其引用計數;

 符號鏈接:

可以對目錄進行;

可以跨分區;

指向的是另一個文件的路徑;其大小為指向的路徑字符串的長度;不增加或減少目標文件inode的引用計數;

 ln [-sv] SRC DEST

-ssymbolic link

-v: verbose

例一:給文件設置硬鏈接

[root@localhost ~]# ln fstab fstab.hl

例二:創建軟鏈接

[root@localhost ~]# ln -s fstab fstab.sl
[root@localhost ~]# ll -i
總用量 20
100663405 -rw-r--r--. 1 root root    0 5月   5 12:05 123
100663409 -rw-r--r--. 1 root root    0 5月   5 12:10 123.txt
100663408 -rw-r--r--. 1 root root    0 5月   5 11:44 201911111111.11
100663407 drwxr-xr-x. 2 root root   17 5月   5 14:42 34
100663363 -rw-------. 1 root root 1261 5月   5 06:31 anaconda-ks.cfg
 33611768 drwxr-xr-x. 2 root root    6 5月   5 18:55 ddd
100699875 -rw-r--r--. 2 root root  617 5月  16 08:58 fstab
100699875 -rw-r--r--. 2 root root  617 5月  16 08:58 fstab.hl
100699893 lrwxrwxrwx. 1 root root    5 5月  16 09:05 fstab.sl -> fstab
100699876 -rw-r--r--. 1 root root   48 5月   6 13:01 grep.txt
100699877 -rw-r--r--. 1 root root  138 5月   6 16:57 ls.txt
      705 drwxr-xr-x. 2 root root    6 5月   5 12:10 rrr
[root@localhost ~]# rm fstab
rm:是否刪除普通文件 "fstab"?y
[root@localhost ~]# ll
總用量 16
-rw-r--r--. 1 root root    0 5月   5 12:05 123
-rw-r--r--. 1 root root    0 5月   5 12:10 123.txt
-rw-r--r--. 1 root root    0 5月   5 11:44 201911111111.11
drwxr-xr-x. 2 root root   17 5月   5 14:42 34
-rw-------. 1 root root 1261 5月   5 06:31 anaconda-ks.cfg
drwxr-xr-x. 2 root root    6 5月   5 18:55 ddd
-rw-r--r--. 1 root root  617 5月  16 08:58 fstab.hl
lrwxrwxrwx. 1 root root    5 5月  16 09:05 fstab.sl -> fstab
-rw-r--r--. 1 root root   48 5月   6 13:01 grep.txt
-rw-r--r--. 1 root root  138 5月   6 16:57 ls.txt
drwxr-xr-x. 2 root root    6 5月   5 12:10 rrr

文件管理操作對文件的影響:

文件刪除:rm

文件復制:cp

文件移動:mv

 例一:掛載文件,創建新的目錄

[root@localhost ~]# mkdir /mydata
[root@localhost ~]# mount /dev/sdb /mydata/
[root@localhost ~]# mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=488984k,nr_inodes=122246,mode=755)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,seclabel,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,seclabel,mode=755)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,seclabel,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_prio,net_cls)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpuacct,cpu)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
configfs on /sys/kernel/config type configfs (rw,relatime)
/dev/mapper/cl-root on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
selinuxfs on /sys/fs/selinux type selinuxfs (rw,relatime)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=35,pgrp=1,timeout=300,minproto=5,maxproto=5,direct)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,seclabel)
mqueue on /dev/mqueue type mqueue (rw,relatime,seclabel)
/dev/sda1 on /boot type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
/dev/mapper/cl-home on /home type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=99996k,mode=700)
/dev/sdb on /mydata type ext2 (rw,relatime,seclabel)

例二:指定要掛載的設備上的文件系統類型

[root@localhost ~]# mount -t ext2 /dev/sdb /mydata
[root@localhost ~]# mount

例三:卸載站點

[root@localhost ~]# umount /dev/sdb
[root@localhost ~]# mout
-bash: mout: 未找到命令
[root@localhost ~]# mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=488984k,nr_inodes=122246,mode=755)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,seclabel,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,seclabel,mode=755)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,seclabel,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=sr/lib/systemd/systemd-cgroups-agent,name=systemd)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_prio,necls)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpuacct,cpu)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
configfs on /sys/kernel/config type configfs (rw,relatime)
/dev/mapper/cl-root on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
selinuxfs on /sys/fs/selinux type selinuxfs (rw,relatime)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=35,pgrp=1,timeout=300,minproto=5axproto=5,direct)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,seclabel)
mqueue on /dev/mqueue type mqueue (rw,relatime,seclabel)
/dev/sda1 on /boot type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
/dev/mapper/cl-home on /home type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=99996k,mode=700)

文件掛載的配置文件:/etc/fstab

 每行定義一個要掛載的文件系統;

 要掛載的設備或偽文件系統 掛載點 文件系統類型   掛載選項 轉儲頻率   自檢次序

 要掛載的設備或偽文件系統:

設備文件、LABEL(LABEL=””)UUID(UUID=””)、偽文件系統名稱(proc, sysfs)

 掛載選項:

defaults

 轉儲頻率:

0:不做備份

1:每天轉儲

2:每隔一天轉儲

 自檢次序:

0:不自檢

1:首先自檢;一般只有rootfs才用

例一:掛載文件,自啟動 …

[root@localhost ~]# vim /etc/fstab
/dev/sdb               /mydata                 ext4    defaults        0 0
[root@localhost ~]# mount -a
[root@localhost ~]# mount
/dev/mapper/cl-root on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
selinuxfs on /sys/fs/selinux type selinuxfs (rw,relatime)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=26,pgrp=1,timeout=300,minproto=5,maxproto=5,direct)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,seclabel)
mqueue on /dev/mqueue type mqueue (rw,relatime,seclabel)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
/dev/sda1 on /boot type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
/dev/mapper/cl-home on /home type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=99996k,mode=700)
/dev/sdb on /mydata type ext4 (rw,relatime,secla

bash腳本編程之用戶交互:

read [option]… [name …]

-p ‘PROMPT’

-t TIMEOUT

 

bash -n /path/to/some_script

檢測腳本中的語法錯誤

例一:檢測命令語法

[root@localhost bin]# vim read.sh
[root@localhost bin]# bash -n read.sh

 bash -x /path/to/some_script

調試執行

例一:命令執行過程

[root@localhost bin]# bash -x read.sh
+ read -p 'Enter a disk special file:' diskfile
Enter a disk special file: /dev/sda
+ '[' -z /dev/sda ']'
+ fdisk -l
+ grep '^Disk /dev/sda'
+ echo 'Wrong disk special file.'
Wrong disk special file.
+ exit 2
 


原創文章,作者:kang,如若轉載,請注明出處:http://www.www58058.com/75922

(0)
kangkang
上一篇 2015-12-15 22:57
下一篇 2015-12-16 12:45

相關推薦

  • linux中管道重定向

    linux中管道重定向 Linux 給程序提供三種I/O設備:    查看是否成功  echo $?      需要再執行命令后直接使用               &n…

    Linux干貨 2017-02-21
  • ip ss route nmcli netstart 命令匯總

    route命令 路由管理命令 查看:route -n [root@localhost ~]# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.101.0 0.0.0.0 255.255.255.0 U 1 0 0 e…

    Linux干貨 2017-05-07
  • 如何安裝CentOS 6.9

    1、打開VMware,點擊“創建新的虛擬機”   2、剛開始用的話,一般就選擇推薦的典型類型來安裝,所以直接點擊“下一步”   3、此處選擇稍后安裝操作系統,這里我們先進行配置,點擊“下一步”   4、因為我需要用里面的linux系統,所以選擇客戶機操作系統為Linux,選擇版本為CentOS 64位,單擊“下一步”。 &nbs…

    2017-07-11
  • shell與kernel的理解

    Shell 的英文釋義是外殼,與kernel 內核名詞遙相呼應,一外一內,一殼一核。內核就像瑞士銀行的金庫,存放著客戶的黃金等眾多的(硬件)資產,閑雜人等(包括客戶)當然是嚴格禁止入內的,而作為客戶要存取金庫中的資產則需要通過專門的特定管理人員代為操作完成,并把存?。ú僮鳎┑慕Y果呈現給客戶。在Linux操作系統中,shell的職能就類似于金庫的操作人員,客戶…

    Linux干貨 2016-02-14
  • ?iptables簡單介紹

    iptables簡單介紹 什么是防火墻? 防火墻是工作在主機或網絡邊緣,能夠對其所匹配到的報文根據事先定義好的規則作出相應處理的組件,可以是軟件,也可以是硬件,還能軟硬結合實現。 UNIX/Linux中對防火墻的實現 早期在openBSD中通過內核中的ipfw實現簡單的數據報過濾功能、后來在Linux 2.2內核中使用ipchains來取代,意為鏈、后來在L…

    Linux干貨 2016-03-31
  • VIM Note

    vim總結: 模式:編輯模式 插入模式 末行模式 內置命令行接口 打開文件 vim +# 打開文件后直接處于文件的#行行首 +/PATTER 打開文件后直接處于第一個被PATTER匹配到行的行首 + 直接處于尾行行首 模式轉換 編輯模式:默認模式,打開文件后處于編輯模式 編輯模式–>插入模式: i: insert 光標所在地方輸入 a:append 在…

    Linux干貨 2017-08-14
欧美性久久久久