Fstab
如何讓所有使用者自動安裝和使用硬碟?
我的電腦有 3 個磁碟驅動器:
- 256GB ssd(根和交換分區)
- 60GB 固態硬碟 (ext4)
- 2TB 硬碟 (ext4)
我想在啟動時自動掛載兩個額外的驅動器,並且我希望所有使用者都能夠在它們上讀/寫/執行。為此,我將以下幾行添加到
fstab
:/dev/sdb1 /mnt/vertex ext4 defaults,users,noatime 0 0 /dev/sdc1 /mnt/cuda ext4 defaults,users,noatime 0 0
從我讀過的內容來看
fstab
,我認為這應該有效,但事實並非如此。重新啟動或執行後sudo mount -a
,驅動器成功掛載,但我無法以 root 以外的任何使用者身份寫入它們。認為這是必須的,因為我
/mnt
以 root 身份創建了目錄,我在我的主目錄中創建了目錄,並將這些作為掛載點添加到fstab
. 但結果是一樣的,在啟動時或使用sudo mount -a
時,驅動器已安裝,但如果沒有超級使用者權限則無法寫入。如果我刪除這些行
fstab
並重新啟動,我可以看到我的文件管理器(thunar)中列出的驅動器。我可以點擊它,thunar 將安裝驅動器,我可以看到上面的文件,但我仍然無法寫入驅動器。我搞不清楚了。
這兩個分區的格式為
ext4
,預設情況下將該卷的根目錄的所有者和組設置為root
,並將權限設置為rwxrwxr-x
(IIRC)。你可以檢查一下$ ls -la /mnt/<mountpoint>
為了使它們對普通使用者可寫,您可以將該根目錄的組更改為普通使用者的組
$ sudo chgrp users /mnt/<mountpoint>
安裝驅動器時(用適當的組名替換組名),或者您使該目錄對每個人都可寫(這可能會打開安全漏洞):
$ sudo chmod o+w /mnt/<mountpoint>
這會永久更改卷的根目錄的權限(僅此而已),並且只需執行一次。請注意,新 FS 條目(文件、目錄等)的所有者、組和權限仍然取決於創建它們的使用者。還有更細粒度的可能性來處理這個問題,但這是一個高級主題,取決於您的案例。如果您有特殊要求,請擴展此問題或(更好地)創建一個新問題,這對您不起作用。