当我写 ls -la 时,输出是:
tusharmakkar08-卫星-C660 tusharmakkar08 # ls -la 总计 88 drwxr-x---+ 10 根 4096 4 月 18 日 19:43 。 drwxr-xr-x 4根根4096 3月18日17:35 .. drwxr-xr-x 4 根 根 32768 1970 年 1 月 1 日 CFB1-5DDA drwxrwxrwx 2根根4096 2月23日00:09 FA38015738011473 drwxrwxrwx 2 root root 4096 4 月 17 日 14:00 本地 drwxrwxrwx 2 root root 4096 三月 19 日 05:04 本地\040Disk1 drwxrwxrwx 2 root root 4096 4 月 18 日 19:43 本地\134x20Disk1 drwxrwxrwx 2 root root 4096 二月 23 00:09 本地磁盘 drwxrwxrwx 1 root root 24576 4 月 19 日 15:15 本地\x20Disk1 drwxrwxrwx 2 根 根 4096 二月 23 00:08 PENDRIVE
现在我想更改 CFB1-5DDA 的权限..但我无法这样做。当我写作时
chmod 777 CFB1-5DDA
权限仍然保持不变。的输出
sudo blkid -c /dev/null
是
tusharmakkar08-卫星-C660 tusharmakkar08 # sudo blkid -c /dev/null /dev/sda2:UUID =“FA38015738011473”类型=“ntfs” /dev/sda3: LABEL="本地磁盘" UUID="01CD72098BB21B70" TYPE="ntfs" /dev/sda4:UUID =“2ca94bc3-eb3e-41cf-ad06-293cf89791f2”类型=“ext4” /dev/sda5:UUID =“CFB1-5DDA”类型=“vfat”
的输出
猫 /etc/fstab
是
tusharmakkar08-卫星-C660 tusharmakkar08 # cat /etc/fstab # /etc/fstab:静态文件系统信息。 # # /dev/sda4 的#条目: UUID=2ca94bc3-eb3e-41cf-ad06-293cf89791f2 / ext4 默认 01 /dev/sda2 的#条目: UUID=FA38015738011473 /media/sda2 ntfs-3g 默认值,区域设置=en_IN 0 0 /dev/sda5 的#条目: UUID=CFB1-5DDA /media/tusharmakkar08/CFB1-5DDA vfat 默认 0 0 /dev/sda3 /media/tusharmakkar08/Local\134x20Disk1 fusionblk 默认值、nosuid、nodev、allow_other、blksize=4096 0 0 /dev/sda3 /media/tusharmakkar08/Local\x20Disk1 ntfs-3g 默认值、nosuid、nodev、locale=en_IN 0 0 #/dev/sda3 /media/tusharmakkar08/Local\134x20Disk1 ntfs 默认值,nls=utf8,umask=0222,nosuid,nodev 0 0
和输出
山
是
tusharmakkar08-卫星-C660 tusharmakkar08 # 安装 /dev/sda4 上 / 输入 ext4 (rw) /proc 上的 proc 类型 proc (rw,noexec,nosuid,nodev) /sys 上的 sysfs 类型 sysfs(rw、noexec、nosuid、nodev) /sys/fs/fuse/connections 上没有 类型 fusectl (rw) /sys/kernel/debug 类型 debugfs (rw) 上无 /sys/kernel/security 类型 securityfs (rw) 上无 /dev 上的 udev 类型 devtmpfs (rw,mode=0755) /dev/pts 上的 devpts 类型 devpts (rw,noexec,nosuid,gid=5,mode=0620) /run 上的 tmpfs 类型 tmpfs (rw,noexec,nosuid,size=10%,mode=0755) /run/lock 类型 tmpfs 上没有(rw、noexec、nosuid、nodev、size=5242880) /run/shm 类型 tmpfs 上没有(rw、nosuid、nodev) /run/user 类型 tmpfs 上没有(rw、noexec、nosuid、nodev、size=104857600、mode=0755) /sys/fs/cgroup 上的 cgroup 类型 tmpfs (rw,relatime,mode=755) /sys/fs/cgroup/cpuset 上的 cgroup 类型 cgroup(rw、relatime、cpuset) /sys/fs/cgroup/cpu 上的 cgroup 类型 cgroup(rw、relatime、cpu) /sys/fs/cgroup/cpuacct 上的 cgroup 类型 cgroup (rw、relatime、cpuacct) /sys/fs/cgroup/memory 上的 cgroup 类型 cgroup(rw、relatime、内存) /sys/fs/cgroup/devices 上的 cgroup 类型 cgroup(rw、relatime、devices) /sys/fs/cgroup/freezer 上的 cgroup 类型 cgroup(rw、relatime、freezer) /sys/fs/cgroup/blkio 上的 cgroup 类型 cgroup(rw、relatime、blkio) /sys/fs/cgroup/perf_event 上的 cgroup 类型 cgroup (rw,relatime,perf_event) /dev/sda2 在 /media/sda2 上类型 fusionblk (rw,nosuid,nodev,allow_other,blksize=4096) /dev/sda5 位于 /media/tusharmakkar08/CFB1-5DDA 类型 vfat (rw) /media/tusharmakkar08/Local\x20Disk1 上的 /dev/sda3 类型 fusionblk (rw,nosuid,nodev,allow_other,blksize=4096) /proc/sys/fs/binfmt_misc 上的 binfmt_misc 类型 binfmt_misc (rw、noexec、nosuid、nodev) /run/user/tusharmakkar08/gvfs 上的 gvfsd-fuse 类型 fusion.gvfsd-fuse (rw,nosuid,nodev,user=tusharmakkar08)
答案1
chmod 777 CFB1-5DDA
失败,因为CFB1-5DDA
是挂载点并且挂载的文件系统是 vfat。因此,您正在尝试将元数据写入文件系统不支持(即无法存储)的文件系统。就那么简单。
strace chmod 777 CFB1-5DDA
显示内核错误。
为了更改访问权限,您必须更改安装(-o remount
或umount; mount
)。
答案2
我无法弄清楚哪个分区/挂载实际上支持给您带来权限问题的目录/文件。
如果它是 NTFS 或可能是融合文件系统之一,那么客户端上显示的权限可能会产生误导。它们不一定是实际的权限。这些的真正权限由执行 NTFS/FUSE 共享安装的实际帐户控制。
对于真正的权限,您可能必须查看权限的发起者(即共享文件的计算机),而不是客户端。
例如
在这里,我使用 mount.cifs 挂载 Samba 共享。在安装共享之前,我将其安装到的目录(也称为安装点)已获得许可,如下所示:
$ ls -dl /mnt
drwxr-xr-x. 5 root root 4096 Apr 20 2011 /mnt/
该目录的内容如下:
$ ls -la /mnt
total 20
drwxr-xr-x. 5 root root 4096 Apr 20 2011 .
drwxr-xr-x. 26 root root 4096 Apr 26 08:11 ..
drwxr-xr-x. 2 root root 4096 Dec 28 2010 m1
drwxr-xr-x 2 root root 4096 Apr 20 2011 test1
drwxr-xr-x 2 root root 4096 Apr 20 2011 test2
现在,我使用用户帐户“sam”挂载来自服务器“bart”的 Samba 共享“sam”。
笔记:用户帐户“sam”是服务器“bart”的本地帐户,而不是我的本地计算机。
$ mount -t cifs //bart/sam -o username=sam /mnt
现在让我们看看 /mnt 是什么样子的:
$ ls -ld /mnt/
drwxr-x--- 123 5060 1000 0 Apr 28 12:14 /mnt/
$ ls -l /mnt/ | head -5
total 72828
drwxr-xr-x 3 5060 users 0 Oct 23 2009 backup_archives
-rw-r--r-- 1 5060 1000 9907 Jan 31 14:39 bashrc
-rw-r--r-- 1 root root 50664 Oct 10 2007 bg_body.png
drwxr-xr-x 4 5060 users 0 Mar 16 2012 bin
只要我们将 Samba 共享挂载到该位置,目录 /mnt 之前的权限就消失了。原来的 /mnt 并没有消失,如果我们原来unmount /mnt
的 /mnt 还在,挂载不会破坏你挂载在上面的目录的内容。
笔记:userid 显示为 5060,更多证据表明您正在处理远程文件系统,而本地系统不知道这些用户 id。
要记住的要点
- 正在显示的文件并不是本地文件系统的真正一部分
- 权限由文件服务器决定,而不是客户端
- 安装技术本质上是不同的,因此您需要注意在哪里使用哪些技术