TShopping

 找回密碼
 註冊
搜索
查看: 1624|回復: 0
打印 上一主題 下一主題

[CentOS] 如何以普通用戶手動掛載linux文件系統讀/寫?(bindfs)

[複製鏈接]
跳轉到指定樓層
1#
發表於 2019-1-2 23:44:33 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
 
Push to Facebook
CentOS 7.2
需要预先安装的软件:
fuse
fuse-devel
wget

安裝fuse fuse-devel wget
  1. yum -y install fuse fuse-devel wget
複製代碼


下載 bindfs
  1. wget https://bindfs.org/downloads/bindfs-1.13.10.tar.gz
複製代碼


解壓縮 bindfs
  1. tar -xvf bindfs-1.13.10.tar.gz
複製代碼

編譯安裝:
  1. ./configure && make && make install
複製代碼

嘗試運行bindfs
  1. bindfs
複製代碼

我想簡單地將一個ext4文件系統掛載到CentOS(/home/user1)中的普通掛載點,作為當前登錄用戶的可讀寫,即我。

我不想在/etc/fstab中添加任何內容,我只想手動執行。我需要超級用戶權限才能掛載設備,但只有root才能讀寫該掛載。我嘗試了各種掛載選項,將其添加到fstab中,但沒有運氣。


在ext4文件系統(如ext2,ext3和大多數其他源自unix的文件系統)上,有效文件權限不依賴於掛載文件系統的人員或掛載選項,只取決於文件​​系統中存儲的元數據。



如果您的可移動文件系統使用系統中的不同用戶ID,則可以使用bindfs(在同名的CentOS包中)提供具有不同所有權或權限的任何文件系統的視圖。必須已安裝可移動文件系統,例如在/home/superuser/spyglass/user1;那麼,如果你想作為所有文件的所有者出現,你可以運行


  1. mkdir -p ~superuser/spyglass/user1
  2. chown superuser ~superuser/spyglass
  3. chmod 700 ~superuser/spyglass
  4. bindfs -p a+rX ~user1 ~superuser/spyglass/user1
複製代碼

實例說明: 假設我要把 /home/aaa 掛載到指定的目錄下,下達指令即可完成
  1. bindfs -p a+rX /home/aaa /home/testdir/web/aaa
複製代碼

但SELINUX會因為檔案權限不符,不能讓你看到/home/aaa下的檔案
可用
  1. setenforce 0
複製代碼

可看到該目錄及檔案

但selinux問題 待解決~
  1. setfacl -R -m user:superuser:rx ~user1
  2. setfacl -d -R -m user:superuser:rx ~user1
  3. setfacl -m g:superuser:rwx /home/user1
複製代碼




參考文章
https://unix.stackexchange.com/q ... rs-home-directories
https://docs.oracle.com/cd/E5266 ... -users-selinux.html
https://access.redhat.com/docume ... sers_semanage_login





 

臉書網友討論
*滑块验证:
您需要登錄後才可以回帖 登錄 | 註冊 |

本版積分規則



Archiver|手機版|小黑屋|免責聲明|TShopping

GMT+8, 2024-4-19 19:07 , Processed in 0.064205 second(s), 22 queries .

本論壇言論純屬發表者個人意見,與 TShopping綜合論壇 立場無關 如有意見侵犯了您的權益 請寫信聯絡我們。

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表