Linux- Red Hat
我在/var/ROOT/
位置使用chroot运行我的二进制文件
现在两个文件之间有一个软链接
ln -s /usr/local/rmgr.txt /var/ROOT/usr/local/rmgr.txt
ll /usr/local/rmgr.txt
prw-r--r-- 1 root root 39 Nov 25 12:04 /usr/local/rmgr.txt
ll /var/ROOT/usr/local/rmgr.txt
lrwxrwxrwx 1 root root 39 Nov 25 12:04 /var/ROOT/usr/local/rmgr.txt -> /usr/local/rmgr.txt
在我的二进制文件中我使用了函数fopen
fopen("/usr/local/rmgr.txt","r")
但有些人怎么没有得到这个文件!
Error Opening File : /usr/local/rmgr.txt.
答案 0 :(得分:3)
Softlink不仅仅是一个包含引用文件路径的小文本文件。这意味着,软链接不能指向chroot()jail之外(根据定义)。引用的路径将从中读出并在chroot()内解释。
硬链接和绑定挂载是特殊的文件系统/内核实体,因此它们可用于交叉chroot()文件访问。