在linux裡面所有的可儲存裝置都需要掛載後才可以正常使用,不過硬碟是系統自動掛載,但是u盤,光碟,行動硬碟等就需要我們手動進行掛載了。
相當於為裝置分配乙個碟符。
一、查詢與自動掛載
1、掛載查詢
[root@localhost ~]# mount -l
查詢系統中已經掛載的裝置,-l會顯示卷標名稱。與不加-l效果一樣。
如圖:2、自動掛載
[root@localhost ~]# mount -a
依據配置檔案/etc/fstab的內容,自動掛載
需要注意的是光碟和u盤或行動硬碟都不要設定為自動掛載,因為一旦光碟機裡沒有光碟**或移動裝置出問題就會導致系統檢測失敗而崩潰。
二、掛載命令的格式
[root@localhost ~]# mount [-t 檔案系統][-l 卷標名] \
[-o 特殊選項] 裝置檔名 掛載點
選項:-t 檔案系統:加入檔案系統型別來指定掛載的型別,硬碟的檔案系統為ext3、ext4。光碟裝置的檔案系統型別為iso9660。
-l 卷標名: 掛載指定卷標的分割槽,而不是按照裝置檔名掛載。
-o 特殊選項:可以指定掛載的額外選項。
這個命令看起來挺複雜,但其實我們平時用的時候一般不用加選項,直接用mount+裝置檔名+掛載點即可,比如我們前面學習的掛載光碟機:
[root@localhost ~]# mount /dev/sr0 /mnt/cdrom
也就是說如果不加選項的話就代表選項為預設。
1、這裡特別說明一下-o特殊選項,這個額外選項有好多引數:
async/sync : 非同步/同步,預設為非同步
auto/noauto :自動/手動,mount -a命令執行時,是否會自動安裝/etc/fstab檔案內容掛載,預設為自動。
defaults: 定義預設值,相當於rw,suid,dev,exec,auto,nouser,async這七個選項。
exec/noexec:執行/不執行,設定是否允許在檔案系統中執行可執行檔案,預設是exec允許
remount :重新掛載已經掛載的檔案系統,一般用於指定修改特殊許可權
rw/ro:讀寫/唯讀,檔案系統掛載時,是否具有讀寫許可權,預設為rw
suid/nosuid: 具有/不具有suid許可權,設定檔案系統是否具有suid和sgid的許可權,預設是具有
user/nouser :允許/不允許普通使用者掛載,設定檔案系統是否允許普通使用者掛載,預設是不允許,只有root可以掛載分割槽
usrquota :寫入代表檔案系統支援使用者磁碟配額,預設不支援
grpquota : 寫入代表檔案系統支援組磁碟配額,預設不支援。
2、這裡我們比較常用的就是從新掛載引數remount,以及exec/noexec.
比如我們修改了掛載分割槽檔案系統的一些引數,而不想從新啟動系統,這時候就只需要從新掛載一下這個分割槽就可以了,命令寫法:
[root@localhost ~]# mount -o remount /home
這樣就從新掛載了/home分割槽了。
3、exec一般主要用於伺服器系統中使用者上傳檔案的目錄分割槽設定為不允許執行可執行的檔案,避免使用者上傳了木馬病毒執行後影響了整個系統。
用法比如:
[root@localhost ~]# mount -o remount,noexec /home
這樣就禁止了home分割槽裡的可執行檔案的執行能力。remount,noexec兩個引數中間用逗號隔開,也就是新增多個引數的話中間用逗號隔開。
而正常情況下不建議大家修改這些分割槽系統預設選項。
那麼其實有的時候我們某個可執行檔案不能執行並不一定是許可權的問題,可能就是這個分割槽被禁用了執行檔案的執行。
比如我們先把home目錄的分割槽引數設定為不允許執行可執行檔案,
[root@localhost ~]# mount -o remount,noexec /home
然後我們來到home目錄下。
[root@localhost ~]# cd /home
如圖:然後我們在這個目錄下新增乙個可執行指令碼
[root@localhost ~]# vi hello.sh
linux裡我們所有的指令碼檔案內容都必須以#!/bin/bash開頭,代表我們後面的內容是bash指令碼,
如圖:然後wq儲存,並且給他賦予可執行許可權755.
那麼這個時候我們來執行一下這個指令碼,執行指令碼的寫法為:
./hello.sh
或者用絕對路徑也一樣:
/home/hello.sh
看,他竟然說我們許可權不夠,圖中我們看到了,首先這個檔案是有執行許可權x的,最主要的是我們是root超級使用者啊,為什麼都不可以執行呢?
呵呵,原因很簡單,因為剛才我們設定了這個目錄的可執行檔案的禁止執行引數noexec,所以任何人都不能執行。
那麼我們現在把/home目錄的引數修改為exec,就是可執行,然後我們再試試這個指令碼是不是可以執行,如圖:
看,現在是不是就可以執行了,輸出了hello world。
這就是exec和noexec的作用,正常操作伺服器的時候,我們就可以把普通使用者用於上傳的目錄設定為禁止執行,這樣就維護了伺服器的安全。
linux 命令 mount 掛載 詳解
1 掛載點必須是乙個目錄。2 乙個分割槽掛載在乙個已存在的目錄上,這個目錄可以不為空,但掛載後這個目錄下以前的內容將不可用。對 於其他作業系統建立的檔案系統的掛載也是這樣。但是需要理解的是 光碟 軟盤 其他作業系統使用的檔案系統的格式與linux使用的檔案系統格式是不一樣 的。光碟是iso9660 ...
linux命令 掛載mount與解除安裝umount
掛載 將新的檔案系統關聯至當前根檔案系統 解除安裝 將某檔案系統與當前根檔案系統的關聯關係予以移除 mount umount命令簡介 mount將新的檔案系統關聯至當前根檔案系統,直接輸入mount顯示當前已掛載的檔案系統。umount將某檔案系統與當前根檔案系統的關聯關係予以移除 1 命令格式 m...
2 磁碟掛載命令(mount)
1.載入光碟機或者u盤方法1 sudo fdisk l 得到u盤的路徑 sudo mount dev sdb1 mnt c 將u盤掛載到路徑 mnt c中 cd mnt c 可以訪問到u盤裡的內容 2.載入光碟機或者u盤方法2 sudo fdisk l 得到u盤的路徑 mount t vfat de...