sobre o comando ln: condição de dispositivo cruzado

sobre o comando ln: condição de dispositivo cruzado

SobreopenSUSE Tumbleweed20210606com núcleoGNU/Linux 5.12.9-1-padrão

Tentei fazer um link físico do arquivo de /custpara ~/backup:

df /cust && df ~/backup && ln -P /cust/customization.tar ~/backup/

e obtenha um resultado com mensagem de erro:

Filesystem     1K-blocks      Used Available Use% Mounted on
/dev/sda3      706523136 158883972 546393196  23% /
Filesystem     1K-blocks      Used Available Use% Mounted on
/dev/sda3      706523136 158883972 546393196  23% /home
ln: failed to create hard link '/home/luli/backup/customization.tar' => '/cust/customization.tar': Invalid cross-device link

Por que foi dito que de /dev/sda3para /dev/sda3é cross-devicee onde posso obter mais detalhes?

Obrigado.

Responder1

lnsem opções cria um link físico conforme documentadona página de manual paralink, especialmente a seção que explica o erro EXDEV, que contém a observação

link() não funciona em diferentes pontos de montagem, mesmo se o mesmo sistema de arquivos estiver montado em ambos

Embora eu perceba que o parágrafo abaixo não aborda o problema, não o removerei da minha resposta. Ainda pode ser útil para alguns leitores.

Um link físico aponta para um número de inode no mesmo sistema de arquivos e, portanto, não pode ser criado em sistemas de arquivos. Você pode usar um link simbólico (opção -s).

informação relacionada