![使用 ext4 USB 驱动器作为“普通”U 盘](https://linux22.com/image/1066946/%E4%BD%BF%E7%94%A8%20ext4%20USB%20%E9%A9%B1%E5%8A%A8%E5%99%A8%E4%BD%9C%E4%B8%BA%E2%80%9C%E6%99%AE%E9%80%9A%E2%80%9DU%20%E7%9B%98.png)
我的目标是拥有一个 ext4 格式的 USB 驱动器,并将其用作普通的 Fat32/NTFS 闪存驱动器(或 USB 盒式驱动器)。我很乐意忘记 NTFS 和 Fat32,并将此 USB 驱动器与本地网络中的所有 PC 一起使用。通过使用 CHMOD 和 CHOWN,我将创建一个真正适合所有人的 ext4 格式驱动器。每个挂载点都应该适合所有人。编写了大量命令行行,但没有教程和简单的程序来实现它。谢谢。
答案1
如果您想要为您的驱动器配备一个与所有者/组无关的文件系统,那么ext3
/ext4
并不适合您。
只有不支持 Linux 权限的文件系统(如 fat)才具有所有权/组属性:uid=value 和 gid=value。请参阅安装手册页。 (通过)
作为一种解决方法,您可以使用绑定挂载(如果有)sudo
,但这可能不是您想要的:
sudo bindfs -u $(id -u) -g $(id -g) /media/diskFoo ~/myUIDdiskFoo
(通过)
我不知道有任何合适的 unix/linux/opensource 权限无关文件系统。不幸的是,您可能应该使用exFat
(NTFS
它是一个日志文件系统,因此不适合闪存)。
答案2
一种为所有人(包括新创建的文件)提供默认权限的解决方案是使用默认访问控制列表。
详细描述如下这个unix.stackexchange 答案——简短部分:
mkfs.ext4 /dev/<device> tune2fs -o acl /dev/<device> mount /dev/<device> /mnt/<mountpoint> chown <username>:<groupname> /mnt/<mountpoint> # Optional; try to use the name of the user who is most commonly using this filesystem chmod 777 /mnt/<mountpoint> setfacl -m d:u::rwx,d:g::rwx,d:o::rwx /mnt/<mountpoint> umount /mnt/<mountpoint>
如果您复制文件时已设置其属性,则可能会出现问题;权限可能会保留,其他用户可能无法编辑或覆盖文件(但通常仍可读取)。但由于上层目录是全球可写的,因此任何用户都可以重命名或删除文件(因此(通过复制)还可以创建自己拥有的新文件并设置权限777
)。请参阅上面提到的 stackchange 答案。