Solaris
zfs 權限問題?“不是所有者”
我遇到了一個奇怪的問題。
我已經安裝了一個 zfs 分區,其中創建了一個 solaris“硬分區”區域。
我們注意到 /home 目錄
- 全域區域中的根根本無法訪問此目錄
global> id uid=0(root) gid=0(root) global> cd home/home/: 不是所有者。global> ls -la |grep home dr-xr-xr-x 1 root root 1 Jun 16 14:38 home 2. 客戶端區域中的 root 可以讀取,但不能寫入此目錄
client1> id uid=0(root) gid=0(root) client> cd /home client> touch foo touch: foo cannot create client> cd .. client> chmod u+w home chmod: WARNING: can’t change home
這裡發生了什麼?據我所知,這個目錄沒有什麼“特別”的地方
gloabl> cat /etc/zones/client1.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE zone PUBLIC "-//Sun Microsystems Inc//DTD Zones//EN" "file:///usr/share/lib/xml/dtd/zonecfg.dtd.1"> <!-- DO NOT EDIT THIS FILE. Use zonecfg(1M) instead. --> <zone name="knobs1" zonepath="/zones/client1" autoboot="true"> <network address="172.16.54.15" physical="bge0"/> <network address="172.16.54.21" physical="bge0"/> <network address="172.16.54.22" physical="bge0"/> </zone> gloabl> zfs list | grep client1 zpool1/zones/client1 29.2G 34.7G 14.2G /zones/client1 zpool1/zones/client1@initial 5.89M - 5.89G - zpool1/zones/client1@pre_profiling 74.4M - 8.58G - zpool1/zones/client1@post_profiling 8.01G - 19.7G - zpool1/zones/client1@pre-rebuild 4.42G - 18.4G -
根據要求添加了附加資訊。
# getfacl -a /zones/client1 File system doesn't support aclent_t style ACL's. See acl(5) for more information on Solaris ACL support. # zfs get all zpool1/zones/client1 NAME PROPERTY VALUE SOURCE zpool1/zones/client1 type filesystem - zpool1/zones/client1 creation Wed Apr 30 18:09 2008 - zpool1/zones/client1 used 29.2G - zpool1/zones/client1 available 34.7G - zpool1/zones/client1 referenced 14.2G - zpool1/zones/client1 compressratio 1.00x - zpool1/zones/client1 mounted yes - zpool1/zones/client1 quota none default zpool1/zones/client1 reservation none default zpool1/zones/client1 recordsize 128K default zpool1/zones/client1 mountpoint /zones/client1 local zpool1/zones/client1 sharenfs off default zpool1/zones/client1 checksum on default zpool1/zones/client1 compression off default zpool1/zones/client1 atime on default zpool1/zones/client1 devices on default zpool1/zones/client1 exec on default zpool1/zones/client1 setuid on default zpool1/zones/client1 readonly off default zpool1/zones/client1 zoned off default zpool1/zones/client1 snapdir hidden default zpool1/zones/client1 aclmode groupmask default zpool1/zones/client1 aclinherit secure default zpool1/zones/client1 canmount on default zpool1/zones/client1 shareiscsi off default zpool1/zones/client1 xattr on default
可能是您已經/需要使用 automount 安裝 /home。查看 /etc/auto_home 和 /etc/auto_master 文件(在區域中)。您可能已將其設置為自動掛載 /home,但尚未在 /etc/auto_home 中配置從何處自動掛載。
在 /etc/auto_home 中添加如下內容可以讓您從 /export/home 自動掛載主目錄:
* localhost:/export/home/&
只是一個猜測,但什麼表明
getfacl -a /zones/client1
並且
zfs get all zpool1/zones/client1