Saya memiliki file /home/myuser/Desktop/rc/.netrc yang saya ingin hardlink ke / root , yaitu direktori home dari pengguna root . Kapan saya melakukannya:
ln /home/user/Destkop/rc/.netrc /root
itu memberikan kesalahan berikut:
ln: membuat hard link
/root/.netrc' =>
.netrc ': Tautan lintas-perangkat tidak valid
tetapi berfungsi ketika saya menghubungkan file ke home myuser , yaitu ke / home / myuser .
Jadi, apa masalahnya, mengapa dikatakan lintas-perangkat yang tidak valid ketika hanya ada satu sistem file di sini?
PS. Saya menggunakan RHEL6
mount | column -t
dan lihatlah. Atau, jalankanmountpoint -d /
,mountpoint -d /home
,mountpoint -d user
, danmountpoint -d /root
. Anda harus mendapatkan... is not a mountpoint
tiga yang terakhir.mount | column -t
tapicolumn -t < /proc/mounts
./proc/mounts
lebih cenderung untuk menunjukkan semua mount pada suatu sistem daripada/etc/mtab
, di manamount
menarik informasinya. Padahal, perlu dicatat bahwa pada banyak sistem modern,/etc/mtab
dan/proc/mounts
keduanya terkait/proc/self/mounts
.Jawaban:
kemungkinan besar
/home
direktori Anda tidak berada pada partisi yang sama dengan/root
direktori.Anda dapat dengan mudah memeriksa ini dengan
cat /etc/fstab
tautan keras tidak dapat dibuat di antara partisi yang berbeda, hanya symlink yang bisa.sumber
Menurut saya cara TERBAIK adalah BUKAN menggunakan tautan KERAS tetapi menggunakan tautan simbolis. Anda akan merasa jauh dari kerumitan dan semuanya berjalan baik. Hard link memiliki beberapa masalah menarik jika Anda tidak menyadarinya.
Lihat
man ln
dan periksa-s
opsi!Harap pada umumnya menggunakan tautan simbolik alih-alih tautan KERAS.
sumber