Links de salto
-
O sistema de arquivos Linux
-
Interrogue seu sistema de arquivos com montagem
-
Interrogue seu sistema de arquivos com df
-
Remontando todos os sistemas de arquivos no fstab
-
Montando uma imagem ISO
-
Explorando a imagem ISO
-
Desmontando a imagem ISO
-
Criando um ponto de montagem
-
Vinculando um ponto de montagem
-
Usando umount com ligações
-
Montando um disquete
-
Rótulos do sistema de arquivos
-
A grande opção preguiçosa
-
Montando um compartilhamento Samba
-
Criando e montando um sistema de arquivos
-
Remontando um sistema de arquivos
-
(Não) Movendo um Sistema de Arquivos
-
Observações Finais
Os sistemas de arquivos no Linux e em sistemas operacionais semelhantes ao Unix, como o macOS, podem ser montados, desmontados e remontados usando o terminal. Esta é uma ferramenta poderosa e versátil – aqui está tudo o que você precisa saber.
O sistema de arquivos Linux
Os sistemas de arquivos no Linux, macOS e outros sistemas operacionais semelhantes ao Unix não usam identificadores de volume separados para dispositivos de armazenamento da mesma forma que, digamos, o Windows. O Windows atribui a cada volume uma letra de unidade, como C: ou D:, e o sistema de arquivos de cada volume é uma árvore de diretórios abaixo dessa letra de unidade.
No Linux, o sistema de arquivos é uma árvore de diretórios completa. Um dispositivo de armazenamento montado tem seu sistema de arquivos enxertado nessa árvore para que pareça ser parte integrante de um sistema de arquivos coeso. O sistema de arquivos recém-montado estará acessível através do diretório no qual está montado. Esse diretório é chamado de ponto de montagem desse sistema de arquivos.
Muitos sistemas de arquivos são montados automaticamente no momento da inicialização ou dinamicamente como volumes de armazenamento conectados ao computador durante o tempo de execução. Administradores de sistema cautelosos podem desativar os recursos de montagem automática em tempo de execução para que possam controlar as conexões com o sistema.
Isso significa que os dispositivos de armazenamento conectados durante o tempo de execução podem não ser montados automaticamente e exigirão a montagem manual. Montar um sistema de arquivos manualmente permite que você tome decisões sobre esse sistema de arquivos, como onde estará o ponto de montagem e se o sistema de arquivos será somente leitura ou leitura-gravação.
Seja por necessidade ou por escolha, o mount, umount e remount comandos dão a você a capacidade de assumir o controle deste aspecto importante do seu sistema Linux.
As 8 maneiras mais fáceis de compartilhar arquivos entre Linux e Windows
Do SFTP ao Samba e aos servidores HTTP, você tem muitas opções.
Interrogue seu sistema de arquivos com montagem
Mount tem muitas opções, mas listar todos os sistemas de arquivos montados em seu computador não requer nenhuma opção. Basta digitar mount e pressione Enter:
mount listará todos os sistemas de arquivos conectados na janela do terminal.
Pode ser difícil vasculhar esse despejo de dados para encontrar o que você está procurando.
Você pode refinar a saída perguntando mount para listar apenas os sistemas de arquivos de seu interesse. O -t A opção (tipo) informa mount que tipo de sistema de arquivos relatar.
mount -t tmpfs
mount -t ext4
Como exemplo, perguntamos mount listar apenas tmpfs sistemas de arquivos. Obtemos uma saída muito mais gerenciável.
UM tmpfs O sistema de arquivos parece ser um sistema de arquivos normal montado, mas na verdade é armazenado em memória volátil (tmp significa temporário) em vez de em um dispositivo de armazenamento persistente.
Você vai querer substituir o tmpfs parâmetro para o tipo de arquivo no qual você está interessado.
Também emitimos um comando para listar ext4 sistemas de arquivos. Neste computador de teste, há um único ext4 sistema de arquivos, está no dispositivo sda—o primeiro dispositivo de armazenamento montado, geralmente o disco rígido principal — e montado em /que é a raiz da árvore do sistema de arquivos.
Os outros indicadores significam:
- rw: O sistema de arquivos é legível e gravável.
- relatime: O kernel está usando um esquema otimizado para registrar acesso a arquivos e metadados de modificação.
- erros=remontar -o: Se for detectado um erro suficientemente grave, o sistema de arquivos será remontado no modo somente leitura para permitir o diagnóstico.
Interrogue seu sistema de arquivos com df
O df O comando também pode ser usado para exibir quais sistemas de arquivos estão montados e onde estão seus pontos de montagem.
df usado sem parâmetros oferece o mesmo problema de sobrecarga de informações que mount. Por exemplo, no Ubuntu Linux, existe um squashfs sistema de pseudo-arquivos criado para todo e qualquer aplicativo que foi instalado usando o snap comando. Quem quer ver tudo isso?
Para forçar df para ignorá-los – ou qualquer outro tipo de sistema de arquivos – use o -x (excluir) opção:
df -x squashfs
Você pode ver facilmente os nomes dos sistemas de arquivos, suas capacidades, espaço usado e livre e seus pontos de montagem.
Remontando todos os sistemas de arquivos no fstab
Todos os sistemas de arquivos montados no momento da inicialização possuem entradas em um arquivo chamado fstabque é a tabela do sistema de arquivos localizada em /etc.
Você pode usar mount para forçar uma “atualização” e remontar todos os sistemas de arquivos listados em fstab. Em condições normais de funcionamento isto não é necessário. Ele realmente se destaca se você tiver problemas com vários sistemas de arquivos.
Você precisará usar sudoentão sua senha será solicitada.
sudo mount -a
É certo que, em um computador funcionando corretamente, é um pouco desanimador.
Em um computador com problemas no sistema de arquivos, entretanto, a remontagem pode resolver os problemas. Se isso não acontecer, pelo menos você receberá mensagens de diagnóstico na tela e nos logs do sistema que o orientarão na busca da causa do problema.
Montando uma imagem ISO
É fácil montar uma imagem ISO para que você possa acessar seu conteúdo como parte do sistema de arquivos.
Isso funcionará com qualquer imagem ISO. Neste exemplo, estamos usando uma ISO do Tiny Core Linux porque é convenientemente pequena e rápida de baixar. (Uma pequena distribuição Linux com GUI, de 18 MB! Você provavelmente tem arquivos MP3 maiores que isso.)
No mesmo diretório da imagem ISO, emita este comando. Substitua o nome do arquivo ISO que você está montando.
sudo mount -t iso9660 -o loop TinyCore-current.iso /mnt
Porque precisamos usar sudo você precisará inserir sua senha.
O -t A opção (tipo) informa mount que tipo de sistema de arquivos estamos montando. É um arquivo ISO, então fornecemos o iso9660 especificador de tipo.
O -o (opções) sinalizador é usado para passar parâmetros extras para mount. Nosso parâmetro é loop.
Estamos usando loop forçar mount para usar um arquivo de dispositivo de loop para conectar-se à nossa imagem ISO. Um arquivo de dispositivo de loop permite que um arquivo (como a imagem ISO) seja montado e tratado como se fosse um dispositivo de armazenamento.
Arquivos de dispositivos são arquivos especiais usados como interface para que os dispositivos conectados pareçam um arquivo normal do sistema de arquivos. Isso faz parte de tudo no Linux é uma filosofia de design de arquivos.
Existem muitos tipos diferentes de arquivos de dispositivo. Vimos um anteriormente quando notamos que o único ext4 sistema de arquivos nesta máquina de teste foi montado em / e foi chamado sda.
Para ser mais preciso, isso ext4 sistema de arquivos está em um dispositivo de armazenamento conectado ao sistema de arquivos através do /dev/sda arquivo do dispositivo e o sistema de arquivos nesse dispositivo de armazenamento montado em /.
Temos que fornecer o nome da imagem ISO, é claro, e precisamos deixar mount sabemos onde gostaríamos que o sistema de arquivos fosse montado. Nós escolhemos /mnt.
A imagem ISO está montada. Um lembrete de que as imagens ISO são sempre montadas no modo somente leitura aparece na janela do terminal.
Explorando a imagem ISO
Agora que está montado podemos navegar pelos diretórios da imagem ISO da mesma forma que qualquer outra parte do sistema de arquivos. Vamos listar os arquivos da imagem ISO. Está montado em /mnt lembrar.
ls /mnt
ls /mnt/cde/
Desmontando a imagem ISO
Para desmontar um sistema de arquivos montado, use o umount comando. Observe que não há “n” entre “u” e “m” – o comando é umount e não “desmontar”.
Você deve contar umount qual sistema de arquivos você está desmontando. Faça isso fornecendo o ponto de montagem do sistema de arquivos.
sudo umount /mnt
Nenhuma notícia é uma boa notícia. Se não há nada a relatar, então tudo correu bem.
Criando um ponto de montagem
Você pode criar e usar seus próprios pontos de montagem. Vamos criar um chamado isomnt e monte nossa imagem ISO nela. Um ponto de montagem é apenas um diretório. Então podemos usar mkdir para criar nosso novo ponto de montagem.
sudo mkdir /media/dave/isomnt
Agora podemos usar o mesmo formato de comando de antes para montar nossa imagem ISO. Desta vez não vamos montá-lo /mntvamos montá-lo /media/dave/isomnt/:
sudo mount -r -t iso9660 -o loop TinyCore-current.iso /media/dave/isomnt/
Agora podemos acessar o sistema de arquivos montado a partir do nosso novo ponto de montagem.
ls /media/dave/isomnt/cde/optional
Mas esses caminhos estão ficando muito longos. Isso rapidamente se tornará cansativo. Vamos fazer algo sobre isso.
Vinculando um ponto de montagem
Você pode vincular um ponto de montagem a outro diretório. O sistema de arquivos montado pode então ser acessado por meio do ponto de montagem original ou por meio do diretório vinculado a ele.
Aqui está um exemplo prático. Criaremos um diretório em nosso diretório inicial chamado iso. Então vincularemos o ponto de montagem da imagem ISO /media/dave/isomnt para o novo iso diretório em nosso diretório inicial.
Poderemos acessar a imagem ISO através do ponto de montagem original /media/dave/isomnt e através do novo iso diretório. O -B A opção (bind) requer o nome do ponto de montagem e o nome do diretório ao qual vinculá-lo.
mkdir iso
sudo mount -B /media/dave/isomnt/ iso
ls iso
ls /media/dave/isomnt
cd iso
ls
cd cde
Usando umount com ligações
Um sistema de arquivos que teve seu ponto de montagem vinculado a outro diretório requer a desmontagem de seu ponto de montagem e do ponto de ligação.
Mesmo se desmontarmos o sistema de arquivos de seu ponto de montagem original, você ainda poderá acessar o sistema de arquivos de seu diretório vinculado. O sistema de arquivos também deve ser desmontado desse diretório.
sudo umount /media/dave/isomnt
ls iso
sudo umount iso
ls iso
Montando um disquete
Uma unidade de disquete (com um disquete dentro) é um dispositivo de armazenamento. Isso significa que um arquivo de dispositivo SD (para dispositivo de armazenamento) será usado para conectar-se ao dispositivo físico. Devemos estabelecer qual é o próximo arquivo de dispositivo SD gratuito. Podemos fazer isso canalizando a saída de df através grep e procurando entradas com “sd”.
df | grep /dev/sd
Neste computador, há um único arquivo de dispositivo SD em uso. Isso é /dev/sda. O próximo arquivo de dispositivo SD emitido será /dev/sdb. Isso significa que quando conectarmos a unidade de disquete ao computador, o Linux usará /dev/sdb para conectar à unidade de disquete.
Nós vamos contar mount para montar o sistema de arquivos no disquete na unidade de disquete que está conectada ao /dev/sdb para o /mnt ponto de montagem.
Insira o disquete na unidade de disquete e conecte-a a uma porta USB do computador. Emita o seguinte comando:
sudo mount /dev/sdb /mnt
Rótulos do sistema de arquivos
Podemos usar o -l opção (rótulo) com mount para descobrir qual rótulo, se houver, está anexado a um sistema de arquivos. Os rótulos nada mais são do que nomes arbitrários. Eles não têm finalidade funcional.
Estamos usando o -t (tipo) opção para perguntar mount para relatar vfat apenas sistemas de arquivos.
mount -l -t vfat
Você encontrará o rótulo entre colchetes no final da listagem. A etiqueta desta unidade de disquete é NORTUN.
Podemos acessar a unidade de disquete através do /mnt ponto de montagem.
cd /mnt
ls
ls -l AMATCH.C
O disquete contém arquivos de código-fonte em linguagem C. A data de um arquivo mostra que ele foi modificado pela última vez em outubro de 1992. Provavelmente é mais antigo do que muitos de nossos leitores. (É desnecessário dizer que o significado de NORTUN como rótulo se perde nas brumas do tempo.)
Se repetirmos o nosso df canalizado através grep comando para listar os arquivos do dispositivo SD, veremos que agora existem dois deles.
df | grep /dev/sd
Nossa unidade de disquete está aparecendo como montada /dev/sdb como esperávamos. O sistema de arquivos no disquete da unidade é montado em /mnt .
Para desmontar o disquete usamos umount e passe o arquivo do dispositivo como parâmetro.
sudo umount /dev/sdb
A grande opção preguiçosa
O que acontece se você (ou outro usuário) estiver usando o sistema de arquivos ao tentar desmontá-lo? A desmontagem falhará.
sudo umount /dev/sdb
Falha porque o diretório de trabalho atual do usuário está dentro do sistema de arquivos que ele está tentando desmontar. O Linux é inteligente o suficiente para não permitir que você corte o galho em que está sentado.
Para superar isso use o -l opção (preguiçosa). Isso causa umount esperar até que o sistema de arquivos possa ser desmontado com segurança.
sudo umount -l /dev/sdb
ls
cd ~
ls /mnt
Mesmo que o umount O comando é emitido, o sistema de arquivos ainda está montado e o usuário pode listar os arquivos normalmente.
Assim que o usuário muda de diretório para seu diretório inicial, o sistema de arquivos de disquete é liberado e desmontado. Tentando listar os arquivos em /mnt não produz resultados.
Montando um compartilhamento Samba
Samba é um conjunto de serviços de software que permite que compartilhamentos de rede sejam acessados de forma intercambiável entre sistemas operacionais Linux e semelhantes a Unix e sistemas operacionais Windows.
A configuração do Samba está além do escopo deste artigo. Mas, se você autorizou o acesso a um compartilhamento Samba que foi disponibilizado para você, é assim que você pode montá-lo no Linux.
Um Raspberry Pi conectado à mesma rede da máquina de teste possui um compartilhamento Samba. É um diretório chamado Backup que deu ao Samba o nome de “share”. Vamos fazer uma conexão SSH com ele e ver o conteúdo do diretório compartilhado. O diretório compartilhado está em um pendrive montado no Pi.
O nome de usuário é pi e o nome da rede do Raspberry Pi é marineville.local.
ssh pi@marineville.local
ls /media/pi/USB64/Backup
exit
O usuário emite o SSH comando e é solicitada a senha do Raspberry Pi.
Eles fornecem sua senha e são autenticados. O prompt da janela do terminal muda para pi@marineville porque está conectado ao Raspberry Pi.
Eles listam o conteúdo do diretório compartilhado em /media/pi/USB64/Backup . O conteúdo são dois diretórios, um chamado dave e um ligou pat. Então agora sabemos o que esperar quando montarmos o compartilhamento do Samba.
Sistemas de arquivos no Linux: quando você não deve usar o Ext4?
Ext4 é essencialmente o sistema de arquivos padrão na maioria das distros, mas é sempre a escolha certa?
Eles digitam exit para desconectar do Raspberry Pi e o prompt volta para dave@howtogeek.
Para usar o Samba, você deve instalar o cifs-utils pacote.
Usar apt-get para instalar este pacote em seu sistema se você estiver usando Ubuntu ou outra distribuição baseada em Debian. Em outras distribuições Linux, use a ferramenta de gerenciamento de pacotes da sua distribuição Linux.
sudo apt-get install cifs-utils
Quando a instalação for concluída, monte o compartilhamento com um comando como o seguinte, alterando o endereço IP, o nome do compartilhamento e o ponto de montagem (que já deve existir) para se adequar às suas circunstâncias.
sudo mount -t cifs -o credentials=/etc/samba/creds,uid=1000,gid=1000 //192.168.4.13/share /media/dave/NAS
Vamos analisar as partes desse comando.
- -t cifs: O tipo de sistema de arquivos é cifs.
- -o credenciais=/etc/samba/creds,uid=1000,gid=1000: Os parâmetros de opções são o caminho para um arquivo chamado
credsque é seguro e contém o nome de usuário e a senha do usuário Raspberry Pi; o ID do usuário (UID) e o ID do grupo (GID) usados para definir o proprietário e o grupo da raiz do sistema de arquivos. - //192.168.4.13/share: O local de rede do dispositivo com o compartilhamento Samba nele e o nome Samba do diretório compartilhado. A raiz do compartilhamento é um diretório chamado
Backupmas seu nome de compartilhamento Samba está definido comoshare. - /media/dave/NAS: O nome do ponto de montagem. Você deve criar seu ponto de montagem antecipadamente.
Acessando nosso ponto de montagem em /media/dave/NAS estamos acessando o diretório compartilhado no Raspberry Pi pela rede. Podemos ver as duas pastas no Raspberry Pi chamadas dave e pat.
cd /media/dave/NAS
Criando e montando um sistema de arquivos
Você pode usar o dd comando para criar um arquivo de imagem e use mkfs para criar um sistema de arquivos dentro dele. Esse sistema de arquivos pode então ser montado. Esta é uma boa maneira de praticar e experimentar mount.
Nós usamos o if (arquivo de entrada) opção para informar dd para usar o fluxo de valores zero de /dev/zero como o arquivo de entrada.
O of (arquivo de saída) é um novo arquivo chamado geek_fs.
Estamos usando o bs (tamanho do bloco) para solicitar um tamanho de bloco de 1 MB.
Nós usamos o count opção de contar dd para incluir 20 blocos no arquivo de saída.
dd if=/dev/zero of./geek_fs bs=1M count=20
Isso cria nosso arquivo de imagem para nós. Ele contém nada além de valores zero.
Podemos criar um sistema de arquivos funcional dentro do geek_fs arquivo usando o mkfs comando. O -t A opção (tipo) nos permite selecionar o tipo de sistema de arquivos. Estamos criando um ext4 sistema.
mkfs -t ext4 ./geek_fs
Isso é tudo o que é necessário para ter um sistema de arquivos funcional.
Vamos montá-lo /media/dave/geek e então use chown para definir as propriedades do proprietário e do grupo para permitir acesso a ele.
sudo mount ./geek_fs /media/dave/geek
sudo chown dave:users /media/dave/geek
Isso funciona? Vamos mudar para o novo sistema de arquivos e copiar um arquivo para ver.
cd /media/dave/geek
cp /etc/fstab .
ls -l
Conseguimos mudar o diretório para o novo sistema de arquivos e fizemos uma cópia do arquivo com sucesso. /etc/fstab arquivo. Está funcionando!
Se usarmos mount para listar os sistemas de arquivos montados, mas restringir sua saída a ext4 sistemas de arquivos usando o -t (tipo), veremos que agora existem dois montados ext4 sistemas de arquivos.
mount -t ext4
Remontando um sistema de arquivos
A remontagem de um sistema de arquivos usa o -o remount opção. Normalmente, isso é feito para alterar um sistema de arquivos de um estado somente leitura (teste) para um estado de leitura-gravação (produção).
Vamos montar nossa unidade de disquete novamente. Desta vez usaremos o -r sinalizador (somente leitura). Então vamos canalizar mount através grep e observe os detalhes do sistema de arquivos do disquete.
sudo mount -r /dev/sdb /mnt
mount | grep /mnt
Como você pode ver o destacado ro indica que o sistema de arquivos está montado como somente leitura.
Usando o -o remount opção com o rw (leitura-gravação), podemos desmontar e remontar o sistema de arquivos com as novas configurações, tudo em um comando.
sudo mount -o remount,rw /mnt
Repetindo a tubulação de mount através grep nos mostra que o ro foi substituído por rw (destacado). O sistema de arquivos agora está no modo leitura-gravação.
mount | grep /mnt
Apenas começando com scripts Bash? Veja como fazer isso direito
As melhores práticas levam à perfeição.
(Não) Movendo um Sistema de Arquivos
Você costumava desmontar um sistema de arquivos e remontá-lo em outro ponto de montagem com um único comando.
O -M (mover) opção em mount existe especificamente para permitir que você faça isso. Mas não funciona mais em distribuições Linux que migraram para systemd. E essa é a maioria dos grandes nomes.
Se tentarmos mover um sistema de arquivos de /mnt para ./geekele falha e exibe a mensagem de erro mostrada abaixo. Tentando listar os arquivos no sistema de arquivos através ./geek não retorna resultados.
sudo mount -M /mnt ./geek
ls ./geek
A solução alternativa é usar o -B (bind) opção que usamos anteriormente para vincular o ponto de montagem original ao novo ponto de montagem.
sudo mount -B /mnt ./geek
ls ./geek
Além de não liberar o ponto de montagem original, terá o mesmo resultado prático.
Observações Finais
Usando t ele --make-private opção, era possível forçar a mudança a ocorrer em systemd versões do Linux. Essa técnica não é apresentada aqui por dois motivos.
- Pode ter um comportamento imprevisível.
- Não era persistente e precisaria ser repetido a cada reinicialização.
Devuan Linux usa SysV não iniciar systemd. Um computador foi carregado com a versão mais recente do Devuan e testado. O -M A opção (mover) funcionou conforme esperado naquele sistema.
Além do systemd problemas com o -M (mover), você deve encontrar o uso de mount e umount direto. Esses são ótimos comandos para ter na manga quando se depara com um sistema danificado, e você precisa começar a montar o sistema de arquivos manualmente.
|
Comandos Linux |
||
|
Arquivos |
alcatrão · pv · gato · tático · chmod · grep · diferença · sed · ar · homem · empurrado · demanda · fsck · disco de teste · sequência · fd · pandoc · cd · $PATH · estranho · juntar · jq · dobrar · exclusivo · jornalctl · cauda · estatística · eu · fstab · eco · menos · chgrp · chown · rev · olhar · cordas · tipo · renomear · zip · descompactar · montar · quantidade · instalar · fdisk · mkfs · rm · rmdir · sincronizar novamente · df · gpg · vi · nano · mkdir · de · Em · correção · converter · clone · fragmentar · senhor · scp · gzip · bate-papo · corte · encontrar · umask · Banheiro · tr |
|
|
Processos |
apelido · tela · principal · legal · Renice · progresso · traço · sistema · não durma · chsh · história · no · lote · livre · qual · dmesg · chfn · mod de usuário · obs: · chroot · xargs · tty · mindinho · lsof · erguer · tempo esgotado · parede · sim · matar · dormir · sudo · são · tempo · adicionar grupo · mod de usuário · grupos · lshw · desligar · reinício · parar · desligar · senha · lscpu · crontab · data · obrigado · fg · pidof · nada · mapa |
|
|
Rede |
netstat · pingar · traceroute · IP · ss · quem é · fail2ban · bmon · escavação · dedo · nmap · FTP · enrolar · wget · Quem · uau · c · tabelas de ip · ssh-keygen · ufw · arpar · firewalld |