我的主目录权限只允许我自己访问。是否可以将一个文件放在我的主目录中,并设置完全权限,然后创建一个指向它的符号链接,以便其他用户可以单独访问我主文件夹中的该文件?系统是 Ubuntu Karmic。
答案1
可以,但不能使用符号链接。这称为硬链接。用法:
ln /home/you/the-file /some/public/folder/
将在 中创建对文件“the-file”的引用/some/public/folder/the-file
。
硬链接指向相同的 inode(文件、目录等)。符号链接有自己的 inode,例如在 chroot 中不起作用。由于硬链接链接到 inode 而不是路径,因此只能在相同的文件系统上使用。
另一种方法是绑定挂载。这将需要 root 权限才能运行mount
命令,并且只能用于目录。用法:
sudo mount --bind /home/you/the-folder-to-be-shared/ /some/public/folder
/some/public/folder
应该是一个存在的文件夹。它不必为空,但建议为空,因为/home/you/the-folder-to-be-shared
在 上安装后内容将不可见/some/public/folder
。如果您决定从 中删除此共享文件夹/some/public/folder
,请运行:
sudo umount /some/public/folder
答案2
一种更简单的方法是在您的主目录中创建一个目录,将其设置为您想要读取的用户的任何权限,然后将您的主目录设置为 701 权限。
对于目录,需要读取权限才能列出内容、执行权限才能进入(如遍历,如 ls 的 /path/to/dir 部分中所做的那样),以及写入权限才能创建文件(与执行一起时)。
ls /home/[用户]——权限被拒绝 ls /home/[用户]/[共享目录]——允许
有人知道这个有什么缺点吗?请评论。