Crie links duros e suaves - Preparação do exame RHCSA

Crie links duros e suaves - Preparação do exame RHCSA

Nesta parte da preparação do exame RHCSA, voltaremos nossa atenção para os links. Existem dois tipos de link, links rígidos e links suaves. Neste artigo, falaremos sobre como criar e remover links e também discutiremos alguns antecedentes básicos por trás dos dois, os links rígidos e os links suaves.

Neste tutorial, você aprenderá:

  • O que são links simbólicos (suaves)
  • O que são links difíceis
  • Como criar um link simbólico
  • Como criar um link difícil
  • Como remover o link
Página manual do ln comando

Requisitos de software e convenções usadas

Requisitos de software e convenções de linha de comando Linux
Categoria Requisitos, convenções ou versão de software usada
Sistema Red Hat Enterprise Linux 8 ou qualquer outra distribuição GNU/Linux
Programas N / D
Outro Acesso privilegiado ao seu sistema Linux como raiz ou através do sudo comando.
Convenções # - requer que os comandos Linux sejam executados com privilégios root diretamente como usuário root ou por uso de sudo comando
$ - Requer que os comandos do Linux sejam executados como um usuário não privilegiado regular

O que são links em sistemas GNU/Linux

Cada arquivo tem uma informação sobre sua data de criação, modificação, acesso e posse de arquivos e suas permissões armazenadas em um chamado inode. Além dos metadados armazenados já mencionados, o inode Também armazena uma informação sobre um bloco de dados em que o conteúdo real do arquivo é armazenado no sistema de arquivos.

Portanto, a principal função do inode é descrever um objeto de sistema de arquivo, como um arquivo ou um diretório. Para acessar o objeto de sistema de arquivo associado a um específico inode Precisamos fornecer ao usuário um link rígido qual é o nome de arquivo ou diretório real.

Isso explica o primeiro tipo de links que são Links difíceis. O segundo tipo de links no sistema operacional GNU/Linux são Links simbólicos a.k.links suaves. A diferença entre links duros e simbólicos é que os links simbólicos apontam apenas para links rígidos, ou seja, eles apontam para os nomes de arquivo ou diretório existentes. Nos links de nozes, permitem que o usuário acesse arquivos ou diretórios por meio de vários nomes.



Links difíceis

Desde Links difíceis estão associados ao inodes que, por sua vez. Além disso, não é possível criar links difíceis em diretórios. Qualquer tentativa de criar um link rígido a partir de um diretório resultará em Link rígido não permitido para o diretório mensagem de erro.

Vamos criar alguns links difíceis. Neste exemplo, estaremos primeiro criando um arquivo arbitrário chamado caixa de areia contendo um texto LinuxConfig.org. Uma vez pronto, criaremos um múltiplo Links difíceis para este arquivo apontando de diferentes locais.

  1. Crie um arquivo chamado caixa de areia contendo um texto RHCSA Dentro de um diretório inicial do usuário ~/.
    $ echo "rhcsa"> ~/Sandbox 

    Verifique o conteúdo do arquivo usando o gato comando:

    $ cat ~/sandbox rhcsa 
  2. Ainda localizado dentro de um diretório inicial de um usuário, crie um link difícil para o caixa de areia arquivo de /tmp/ diretório chamado Hardlink1.
    $ ln sandbox /tmp /hardlink1 

    Agora verifique o conteúdo do link duro recém -criado /tmp/hardlink1. O conteúdo do /tmp/hardlink1 e o original caixa de areia O arquivo deve ser o mesmo:

    $ cat /tmp /hardlink1 rhcsa 


  3. Verifique as informações do link associadas aos dois nomes de arquivos caixa de areia e /tmp/hardlink1.
    $ ls -l /tmp /hardlink1 -rw -rw -r--. 2 LinuxConfig LinuxConfig 6 de julho 25 10:20/tmp/hardlink1 $ ls -l ~/sandbox -rw -rw -r--. 2 LinuxConfig LinuxConfig 6 de julho 25 10:20/Home/LinuxConfig/Sandbox 

    Observe o número associado 2 como mostrado pela saída acima. Este número indica o número de links rígidos associados a um inode específico.

    OBSERVAÇÃO
    Nesta fase, é importante entender que não há diferença real entre o original caixa de areia e o recém -criado /tmp/hardlink1 arquivo. Ambos apontam o mesmo inode usando nomes de arquivos diferentes.
  4. Remova o link rígido usando desvincular ou rm comando.
  5. $ desvincular Sandbox $ LS -L /TMP /HARDLINK1 -RW -RW -R--. 1 LinuxConfig LinuxConfig 6 de julho 25 10:20 /tmp /hardlink1 

    Nesse caso, ambos rm ou desvincular Os comandos removerão um link rígido, mas não os dados associados e inode associados. Desde o caixa de areia Link rígido foi removido, existe apenas 1 Link duro deixado associado ao inode original. Em seguida, removeremos o último link rígido associado a este arquivo:

    $ rm /tmp /hardlink1 

    Nesse ponto. Se não houver links difíceis apontando para um inode, o sistema de arquivos agora poderá substituir o local deste inode com um novo dados.

VOCÊ SABIA?
Você pode remover qualquer arquivo (dado que você tem uma permissões adequadas) usando o comando desvincular? Tente agora:
$ Touch Arquivo $ LIGE UNLINK 

Se você entendeu os comandos acima, você dominou os links Hard GNU/Linux, conforme explicado neste tutorial.

Links simbólicos

Além dos links rígidos, também existe um tipo diferente de links disponíveis no sistema operacional GNU/Linux. Links simbólicos pode atravessar sistemas de arquivo e também é possível criar um Link simbólico de um diretório. No entanto, links simbólicos em vez do real inode, Link apenas para um link rígido existente (nome de arquivo ou diretório). Por esse motivo, se o link rígido real para o qual o vínculo simbólico está apontando for removido, o vínculo simbólico se quebrar.

  1. Vamos primeiro criar alguns objetos de sandbox para brincar. Nesse caso, estaremos criando um diretório chamado mydir e dentro deste diretório, criaremos um arquivo chamado meu arquivo.
    $ mkdir mydir $ touch mydir/myfile 


  2. Em seguida, criaremos um novo link simbólico do diretório existente Mydir usando o ln comando com uma combinação de -s opção.
    $ ln -s ~/mydir/tmp/symdir 

    Agora, criamos um link simbólico chamado Symdir localizado dentro do /tmp diretório.

    $ cd / tmp / $ ls -l symdir euRWXRWXRWX. 1 LinuxConfig LinuxConfig 23 de julho 25 14:05 symdir ->/home/linuxconfig/mydir 

    Observe o primeiro caractere da saída acima. Neste caso o personagem eu indica que estamos lidando com o link simbólico.

    OBSERVAÇÃO
    Ao criar links simbólicos, lembre -se de que o ln O comando armazena o caminho real fornecido como string. Se não estiver com o mesmo diretório, em muitos casos, você deve fornecer caminho completo para pedir o link para o que funcionar

    O recém -criado Symdir deve conter um arquivo previamente embalado meu arquivo:

    $ cd symdir $ ls myfile $ pwd /tmp /symdir 

Exercícios

  1. Brincar com links simbólicos. Crie um link simbólico para um arquivo depois que remova o arquivo original e veja o que aconteceu com seu link simbólico.
  2. O que acontece quando você executa ls comando com apenas um único argumento. Por exemplo, execute o seguinte comando ln -s /etc /serviços. O que aconteceu?
  3. Determine se você precisa possuir o arquivo para criar um link simbólico para ele. A mesma regra se aplica a links rígidos?
  4. Tutoriais do Linux relacionados:

    • Uma introdução à automação, ferramentas e técnicas do Linux
    • Coisas para instalar no Ubuntu 20.04
    • Mastering Bash Script Loops
    • Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
    • Mint 20: Melhor que o Ubuntu e o Microsoft Windows?
    • Loops aninhados em scripts de basquete
    • Como fazer bota dupla kali linux e windows 10
    • Com que frequência você tem que reiniciar seu servidor Linux?
    • Tutorial de depuração do GDB para iniciantes
    • Sistema Linux Hung? Como escapar para a linha de comando e…