Неверная ссылка между устройствами при жесткой ссылке в одной файловой системе

14

У меня есть /home/myuser/Desktop/rc/.netrc файл, который я хочу, чтобы жесткая ссылка на / root , то есть домашний каталог пользователя root . Когда я делаю:

ln /home/user/Destkop/rc/.netrc /root

это дает следующую ошибку:

ln: создание жесткой ссылки /root/.netrc' =>.netrc ': недопустимая ссылка между устройствами

но это работает, когда я жестко связываю файл с домом myuser , то есть с / home / myuser .

Итак, в чем проблема, почему он говорит недопустимые кросс-устройства, когда здесь только одна файловая система?

PS. Я использую RHEL6

Эльвин Асланов
источник
Кстати, мои права доступа .netrc равны 600, как и должно быть
Эльвин Асланов
1
Вы уверены, что эти два каталога находятся в одной файловой системе? Беги mount | column -tи посмотри. Или бежать mountpoint -d /, mountpoint -d /home, mountpoint -d user, и mountpoint -d /root. Вы должны получить ... is not a mountpointза последние три.
2
Пожалуйста, не пересекайте сообщения на нескольких сайтах StackExchange.
@EvanTeitelman Настоящий взгляд не таков, mount | column -tно column -t < /proc/mounts.
Хауке Лэнг
1
@HaukeLaging: Ты прав. /proc/mountsс большей вероятностью покажет все монтирования в системе, чем /etc/mtab, откуда mountберется информация. Хотя стоит отметить, что на многих современных системах /etc/mtabи то /proc/mountsи другое связано /proc/self/mounts.

Ответы:

8

скорее всего, ваш /homeкаталог не находится в том же разделе, что и /rootкаталог.

Вы можете легко проверить это с помощью cat /etc/fstab жестких ссылок, которые не могут быть созданы между различными разделами, могут только символические ссылки.

fduff
источник
4

Мне кажется, ЛУЧШИЙ способ - НЕ использовать HARD-ссылку, а вместо этого использовать символическую ссылку. Вы найдете, что это будет гораздо меньше хлопот, и все работает просто отлично. Жесткие ссылки имеют некоторые интересные проблемы, если вы не знаете о них.

Смотрите man lnи оформите -sопцию!

Пожалуйста, в общем используйте символические ссылки вместо жестких ссылок.

Якорь,
источник
9
Хотя это может решить проблему, на самом деле это не объясняет, почему это происходит.
Bex