新聞中心

創(chuàng)新互聯(lián)建站是專業(yè)的高昌網(wǎng)站建設公司,高昌接單;提供網(wǎng)站設計制作、網(wǎng)站設計,網(wǎng)頁設計,網(wǎng)站設計,建網(wǎng)站,PHP網(wǎng)站建設等專業(yè)做網(wǎng)站服務;采用PHP框架,可快速的進行高昌網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
通過學習 Linux 文件系統(tǒng),我們可以對掛載的含義進行引申,掛載指的是將硬件設備的文件系統(tǒng)和 Linux 系統(tǒng)中的文件系統(tǒng),通過指定目錄(作為掛載點)進行關聯(lián)。而要將文件系統(tǒng)掛載到 Linux 系統(tǒng)上,就需要使用
mount 掛載命令。
mount 命令的常用格式有以下幾種:
[root@localhost ~]# mount [-l]
單純使用 mount 命令,會顯示出系統(tǒng)中已掛載的設備信息,使用 -l 選項,會額外顯示出卷標名稱(讀者可自行運行,查看輸出結果);
[root@localhost ~]# mount -a
-a 選項的含義是自動檢查 /etc/fstab 文件中有無疏漏被掛載的設備文件,如果有,則進行自動掛載操作。這里簡單介紹一下 /etc/fstab 文件,此文件是自動掛載文件,系統(tǒng)開機時會主動讀取 /etc/fstab 這個文件中的內容,根據(jù)該文件的配置,系統(tǒng)會自動掛載指定設備。有關自動掛載(修改此文件)的具體介紹,會在后續(xù)文章中講解。
[root@localhost ~]# mount [-t 系統(tǒng)類型] [-L 卷標名] [-o 特殊選項] [-n] 設備文件名 掛載點
各選項的含義分別是:
- -t 系統(tǒng)類型:指定欲掛載的文件系統(tǒng)類型。Linux 常見的支持類型有 EXT2、EXT3、EXT4、iso9660(光盤格式)、vfat、reiserfs 等。如果不指定具體類型,掛載時 Linux 會自動檢測。
- -L 卷標名:除了使用設備文件名(例如 /dev/hdc6)之外,還可以利用文件系統(tǒng)的卷標名稱進行掛載。
- -n:在默認情況下,系統(tǒng)會將實際掛載的情況實時寫入 /etc/mtab 文件中,但在某些場景下(例如單人維護模式),為了避免出現(xiàn)問題,會刻意不寫入,此時就需要使用這個選項;
- -o 特殊選項:可以指定掛載的額外選項,比如讀寫權限、同步/異步等,如果不指定,則使用默認值(defaults)。具體的特殊選項參見表 1;
| 選項 | 功能 |
|---|---|
| rw/ro | 是否對掛載的文件系統(tǒng)擁有讀寫權限,rw 為默認值,表示擁有讀寫權限;ro 表示只讀權限。 |
| async/sync | 此文件系統(tǒng)是否使用同步寫入(sync)或異步(async)的內存機制,默認為異步 async。 |
| dev/nodev | 是否允許從該文件系統(tǒng)的 block 文件中提取數(shù)據(jù),為了保證數(shù)據(jù)安裝,默認是 nodev。 |
| auto/noauto | 是否允許此文件系統(tǒng)被以 mount -a 的方式進行自動掛載,默認是 auto。 |
| suid/nosuid | 設定文件系統(tǒng)是否擁有 SetUID 和 SetGID 權限,默認是擁有。 |
| exec/noexec | 設定在文件系統(tǒng)中是否允許執(zhí)行可執(zhí)行文件,默認是允許。 |
| user/nouser | 設定此文件系統(tǒng)是否允許讓普通用戶使用 mount 執(zhí)行實現(xiàn)掛載,默認是不允許(nouser),僅有 root 可以。 |
| defaults | 定義默認值,相當于 rw、suid、dev、exec、auto、nouser、async 這 7 個選項。 |
| remount | 重新掛載已掛載的文件系統(tǒng),一般用于指定修改特殊權限。 |
【例 1】
[root@localhost ~]# mount
#查看系統(tǒng)中已經掛載的文件系統(tǒng),注意有虛擬文件系統(tǒng)
/dev/sda3 on / type ext4 (rw) <--含義是,將 /dev/sda3 分區(qū)掛載到了 / 目錄上,文件系統(tǒng)是 ext4,具有讀寫權限
proc on /proc type proc (rw)
sysfe on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw, gid=5, mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sda1 on /boot type ext4 (rw)
none on /proc/sys/fe/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfe/rpc_pipefs type rpc_pipefs (rw)
【例 2】
修改特殊權限。通過例 1
我們查看到,/boot 分區(qū)已經被掛載了,而且采用的是 defaults 選項。這里我們重新掛載分區(qū),并采用 noexec 權限禁止執(zhí)行文件執(zhí)行,看看會出現(xiàn)什么情況(注意不要用 / 分區(qū)做實驗,否則系統(tǒng)命令也就不能執(zhí)行了。
[root@localhost ~]# mount -o remount noexec /boot
#重新掛載 /boot 分區(qū),并使用 noexec 權限
[root@localhost sh]# cd /boot
#寫一個 shell 腳本,看是否會運行
[root@localhost boot]#vi hello.sh
#!/bin/bash
echo "hello!!"
[root@localhost boot]# chmod 755 hello.sh
[root@localhost boot]# ./hello.sh
-bash:./hello.sh:權限不夠
#雖然賦予了hello.sh執(zhí)行權限,但是仍然無法執(zhí)行
[root@localhost boot]# mount -o remount exec /boot
#記得改回來,否則會影響系統(tǒng)啟動
對于特殊選項的修改,除非特殊場景下需要,否則不建議大家隨意修改,非常容易造成系統(tǒng)出現(xiàn)問題,而且還找不到問題的根源。
【例 3】掛載分區(qū)。
[root@localhost ~]# mkdir /mnt/disk1
#建立掛載點目錄
[root@localhost ~]# mount /dev/sdb1 /mnt/disk1
#掛載分區(qū)
/dev/sdb1 分區(qū)還沒有被劃分。我們在這里只看看掛載分區(qū)的方式,非常簡單,甚至不需要使用 "-ext4" 命令指定文件系統(tǒng),因為系統(tǒng)可以自動檢測。
可能讀者會想,為什么使用 Linux 系統(tǒng)的硬盤分區(qū)這么麻煩,而不能像 Windows 系統(tǒng)那樣,硬盤安裝上就可以使用?
其實,硬盤分區(qū)(設備)掛載和卸載(使用 umount 命令)的概念源自 UNIX,UNIX 系統(tǒng)一般是作為服務器使用的,系統(tǒng)安全非常重要,特別是在網(wǎng)絡上,最簡單有效的方法就是“不使用的硬盤分區(qū)(設備)不掛載”,因為沒有掛載的硬盤分區(qū)是無法訪問的,這樣系統(tǒng)也就更安全了。
另外,這樣也可以減少掛載的硬盤分區(qū)數(shù)量,相應地,也就可以減少系統(tǒng)維護文件的規(guī)模,當然也就減少了系統(tǒng)的開銷,即提高了系統(tǒng)的效率。
標題名稱:Linuxmount命令詳解:掛載Linux系統(tǒng)外的文件
分享網(wǎng)址:http://m.5511xx.com/article/coeposd.html


咨詢
建站咨詢
