本教程操作環(huán)境:linux7.3系統(tǒng)、Dell G3電腦。
Linux 系統(tǒng)中“一切皆文件”,所有文件都放置在以根目錄為樹根的樹形目錄結(jié)構(gòu)中。在 Linux 看來,任何硬件設(shè)備也都是文件,它們各有自己的一套文件系統(tǒng)(文件目錄結(jié)構(gòu))。
(資料圖片僅供參考)
因此產(chǎn)生的問題是,當(dāng)在 Linux 系統(tǒng)中使用這些硬件設(shè)備時(shí),只有將Linux本身的文件目錄與硬件設(shè)備的文件目錄合二為一,硬件設(shè)備才能為我們所用。合二為一的過程稱為“掛載”。
如果不掛載,通過Linux系統(tǒng)中的圖形界面系統(tǒng)可以查看找到硬件設(shè)備,但命令行方式無法找到。
掛載,指的就是將設(shè)備文件中的頂級(jí)目錄連接到 Linux 根目錄下的某一目錄(最好是空目錄),訪問此目錄就等同于訪問設(shè)備文件。
而要將文件系統(tǒng)掛載到 Linux 系統(tǒng)上,就需要使用 mount掛載命令。
Linux mount命令:掛載Linux系統(tǒng)外的文件
mount命令是將分區(qū)掛載到文件夾下的,達(dá)到將分區(qū)和目錄聯(lián)系起來,以后我們只要訪問這個(gè)文件夾就就相當(dāng)于訪問該分區(qū)。
mount 命令的常用格式有以下幾種:
# mount [-l]
單純使用 mount 命令,會(huì)顯示出系統(tǒng)中已掛載的設(shè)備信息,使用 -l選項(xiàng),會(huì)額外顯示出卷標(biāo)名稱(讀者可自行運(yùn)行,查看輸出結(jié)果);
# mount -a
-a選項(xiàng)的含義是自動(dòng)檢查 /etc/fstab 文件中有無疏漏被掛載的設(shè)備文件,如果有,則進(jìn)行自動(dòng)掛載操作。這里簡(jiǎn)單介紹一下 /etc/fstab 文件,此文件是自動(dòng)掛載文件,系統(tǒng)開機(jī)時(shí)會(huì)主動(dòng)讀取 /etc/fstab 這個(gè)文件中的內(nèi)容,根據(jù)該文件的配置,系統(tǒng)會(huì)自動(dòng)掛載指定設(shè)備。
# mount [-t 系統(tǒng)類型] [-L 卷標(biāo)名] [-o 特殊選項(xiàng)] [-n] 設(shè)備文件名 掛載點(diǎn)
各選項(xiàng)的含義分別是:
-t系統(tǒng)類型:指定欲掛載的文件系統(tǒng)類型。Linux 常見的支持類型有 EXT2、EXT3、EXT4、iso9660(光盤格式)、vfat、reiserfs 等。如果不指定具體類型,掛載時(shí) Linux 會(huì)自動(dòng)檢測(cè)。
-L卷標(biāo)名:除了使用設(shè)備文件名(例如 /dev/hdc6)之外,還可以利用文件系統(tǒng)的卷標(biāo)名稱進(jìn)行掛載。
-n:在默認(rèn)情況下,系統(tǒng)會(huì)將實(shí)際掛載的情況實(shí)時(shí)寫入 /etc/mtab 文件中,但在某些場(chǎng)景下(例如單人維護(hù)模式),為了避免出現(xiàn)問題,會(huì)刻意不寫入,此時(shí)就需要使用這個(gè)選項(xiàng);
-o特殊選項(xiàng):可以指定掛載的額外選項(xiàng),比如讀寫權(quán)限、同步/異步等,如果不指定,則使用默認(rèn)值(defaults)。具體的特殊選項(xiàng)參見表 1;
| 選項(xiàng) | 功能 |
|---|---|
| rw/ro | 是否對(duì)掛載的文件系統(tǒng)擁有讀寫權(quán)限,rw 為默認(rèn)值,表示擁有讀寫權(quán)限;ro 表示只讀權(quán)限。 |
| async/sync | 此文件系統(tǒng)是否使用同步寫入(sync)或異步(async)的內(nèi)存機(jī)制,默認(rèn)為異步 async。 |
| dev/nodev | 是否允許從該文件系統(tǒng)的 block 文件中提取數(shù)據(jù),為了保證數(shù)據(jù)安裝,默認(rèn)是 nodev。 |
| auto/noauto | 是否允許此文件系統(tǒng)被以 mount -a 的方式進(jìn)行自動(dòng)掛載,默認(rèn)是 auto。 |
| suid/nosuid | 設(shè)定文件系統(tǒng)是否擁有 SetUID 和 SetGID 權(quán)限,默認(rèn)是擁有。 |
| exec/noexec | 設(shè)定在文件系統(tǒng)中是否允許執(zhí)行可執(zhí)行文件,默認(rèn)是允許。 |
| user/nouser | 設(shè)定此文件系統(tǒng)是否允許讓普通用戶使用 mount 執(zhí)行實(shí)現(xiàn)掛載,默認(rèn)是不允許(nouser),僅有 root 可以。 |
| defaults | 定義默認(rèn)值,相當(dāng)于 rw、suid、dev、exec、auto、nouser、async 這 7 個(gè)選項(xiàng)。 |
| remount | 重新掛載已掛載的文件系統(tǒng),一般用于指定修改特殊權(quán)限。 |
【例 1】
[root@localhost ~]# mount#查看系統(tǒng)中已經(jīng)掛載的文件系統(tǒng),注意有虛擬文件系統(tǒng)/dev/sda3 on / type ext4 (rw) <--含義是,將 /dev/sda3 分區(qū)掛載到了 / 目錄上,文件系統(tǒng)是 ext4,具有讀寫權(quán)限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】
修改特殊權(quán)限。通過例 1 我們查看到,/boot 分區(qū)已經(jīng)被掛載了,而且采用的是 defaults 選項(xiàng)。這里我們重新掛載分區(qū),并采用 noexec 權(quán)限禁止執(zhí)行文件執(zhí)行,看看會(huì)出現(xiàn)什么情況(注意不要用 / 分區(qū)做實(shí)驗(yàn),否則系統(tǒng)命令也就不能執(zhí)行了。
[root@localhost ~]# mount -o remount noexec /boot#重新掛載 /boot 分區(qū),并使用 noexec 權(quán)限[root@localhost sh]# cd /boot#寫一個(gè) shell 腳本,看是否會(huì)運(yùn)行[root@localhost boot]#vi hello.sh#!/bin/bashecho "hello!!"[root@localhost boot]# chmod 755 hello.sh[root@localhost boot]# ./hello.sh-bash:./hello.sh:權(quán)限不夠#雖然賦予了hello.sh執(zhí)行權(quán)限,但是仍然無法執(zhí)行[root@localhost boot]# mount -o remount exec /boot#記得改回來,否則會(huì)影響系統(tǒng)啟動(dòng)
對(duì)于特殊選項(xiàng)的修改,除非特殊場(chǎng)景下需要,否則不建議大家隨意修改,非常容易造成系統(tǒng)出現(xiàn)問題,而且還找不到問題的根源。
【例 3】掛載分區(qū)。
[root@localhost ~]# mkdir /mnt/disk1#建立掛載點(diǎn)目錄[root@localhost ~]# mount /dev/sdb1 /mnt/disk1#掛載分區(qū)
/dev/sdb1 分區(qū)還沒有被劃分。我們?cè)谶@里只看看掛載分區(qū)的方式,非常簡(jiǎn)單,甚至不需要使用 "-ext4" 命令指定文件系統(tǒng),因?yàn)橄到y(tǒng)可以自動(dòng)檢測(cè)。
可能讀者會(huì)想,為什么使用 Linux 系統(tǒng)的硬盤分區(qū)這么麻煩,而不能像 Windows 系統(tǒng)那樣,硬盤安裝上就可以使用?
其實(shí),硬盤分區(qū)(設(shè)備)掛載和卸載(使用 umount 命令)的概念源自 UNIX,UNIX 系統(tǒng)一般是作為服務(wù)器使用的,系統(tǒng)安全非常重要,特別是在網(wǎng)絡(luò)上,最簡(jiǎn)單有效的方法就是“不使用的硬盤分區(qū)(設(shè)備)不掛載”,因?yàn)闆]有掛載的硬盤分區(qū)是無法訪問的,這樣系統(tǒng)也就更安全了。
另外,這樣也可以減少掛載的硬盤分區(qū)數(shù)量,相應(yīng)地,也就可以減少系統(tǒng)維護(hù)文件的規(guī)模,當(dāng)然也就減少了系統(tǒng)的開銷,即提高了系統(tǒng)的效率。
推薦學(xué)習(xí):Linux視頻教程
以上就是linux掛載硬盤命令是mount命令嗎的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!
關(guān)鍵詞: linux