2016-09-27 155 views
2

我創建了一個標準的Google存儲桶,我試圖在CentOS Linux計算引擎實例中掛載,但權限似乎不允許我向root用戶以外的用戶授予訪問權限(一旦用gcsfuse裝入存儲位置,可以讀取和寫入存儲位置)。如果我嘗試以非root用戶身份進行掛載,gcsfuse命令表示它成功完成,但嘗試讀取或寫入存儲桶會導致I/O錯誤。我很感謝來自任何具有Google存儲桶體驗的人在Linux實例中的指導。Google Cloud Storage存儲桶:掛載在具有全局權限的Linux實例中

回答

2

這是GCSFuse預期的行爲,您可以覆蓋的權限使用-o allow_other標誌提到here

權限和所有權

的inode

默認情況下, gcsfuse文件系統中的所有inode顯示爲由gcsfuse進程本身的UID和GID所擁有,即安裝文件系統的用戶米所有文件都具有權限位0644,並且所有目錄都具有權限位0755(但其他用戶使用的問題見下文)。更改inode模式(使用chmod(2)或類似)不受支持,並且更改將被忽略。

這些默認值可以用--uid, - gid,--file-mode和--dir-mode標誌覆蓋。

保險絲

熔絲內核層本身限制了文件系統訪問到安裝用戶(參見fuse.txt)。因此,無論配置的inode權限如何,默認情況下,其他用戶在嘗試訪問文件系統時都會收到「權限被拒絕」錯誤。這包括root用戶。

這可以通過設置-o allow_other來允許其他用戶訪問文件系統來覆蓋。小心!可能存在安全隱患。

相關問題