Mount
如何在沒有root權限的情況下掛載圖像文件?
我可以在沒有 root 權限的情況下掛載文件系統映像嗎?通常我會這樣做:
mount -o loop DISK_IMAGE FOLDER
不使用 sudo 或設置 suid on
mount
,有沒有合適的方法來做到這一點?我知道我可以使用
fusermount
一些 ISO 映像,但這是非常有限的,即使是 ISO 映像,我的一些映像也無法掛載,但mount
始終有效。
您不能安裝管理員沒有以某種方式授予您安裝權限的任何內容。只有 root 可以呼叫
mount
系統呼叫。原因是有很多方法可以通過掛載來提升權限,例如在系統位置上掛載某些東西、使文件看起來屬於另一個使用者以及利用依賴於文件所有權的程序、創建 setuid 文件或利用錯誤在文件系統驅動程序中。該
mount
命令是 setuid root。但如果你不是 root,它只允許你掛載fstab
.該
fusermount
命令是 setuid root。它只允許您通過 FUSE 驅動程序掛載東西,並限制您以這種方式提供具有任意所有權或權限的文件的能力(在大多數設置下,FUSE 掛載上的所有文件都屬於您)。最好的辦法是找到一個能夠讀取磁碟映像的FUSE 文件系統。對於 ISO 9660 映像,請嘗試fuseiso和UMfuse 的 ISO 9660 支持(在 Debian 下作為
fuseiso9660
軟體包提供)。