Como trabalhar com vários arquivos ou partições de swap no Linux

Algumas pessoas precisam dividir seu espaço de troca ou memória virtual em diversos dispositivos físicos ou arquivos.
O recurso do swap, no Linux, é bastante maleável e flexível neste ponto.
É comum adquirir um computador e separar uma partição para o swap baseado na quantidade de memória presente no sistema.

Acrescentar um disco rígido ou um outro pente de memória, podem motivar a alteração na sua configuração de swap.

Por outro lado, fazer upgrade de hardware também é comum para muitos usuários.
Ao acrescentar memória RAM, suas necessidades para swapping mudam.
Instalar um SSD no sistema, ao lado do HDD, torna possíve aproveitar o recurso de hardware novo para obter melhor desempenho em tarefas pesadas.
Por estes e outros motivos você pode se ver forçado ou tentado a querer alterar a configuração do seu sistema de memória virtual.


Por favor, leia o artigo Perguntas e respostas sobre o swap, caso ainda restem dúvidas sobre o assunto.
Naquele artigo, há uma tabela com a relação entre quantidade de memória e tamanho de swap adequado — caso você tenha dúvidas sobre este quesito também.

Como configurar o fstab para as suas partições de swap

Não há segredo para configurar o swap no fstab.
Trata-se de um tipo especial de sistema de arquivos e geralmente segue a mesma configuração em todos os sistemas.
Esta é uma configuração modelo do swap, no fstab:

/dev/hda6   swap     swap   defaults        0   0

É seguro adotar este modelo para todas as partições e arquivos swap presentes no seu sistema. Faça apenas as alterações necessárias para refletir a sua situação.
Para fazer com que o fstab tenha efeito, você precisa reiniciar o sistema ou usar o comando mount:


sudo mount -va

Você também pode usar o comando swapon para ativar imediatamente um arquivo ou partição swap:


sudo swapon /dev/sdb2 /dev/sda2

Indique, para o swapon, todas as partições/arquivos swap presentes, que você queira usar.
No exemplo, acima, relacionei as minhas duas partições em ordem, começando pela mais prioritária.
Mas lembre-se que os ajustes feitos com o mount e swapon se perdem após reiniciar o sistema.
É necessário editar o fstab, para ter uma configuração persistente.
Sempre é possível usar o swapon, também para verificar a sua configuração de espaço de troca atual:


sudo swapon -v

[sudo] senha para justincase: 
NAME      TYPE      SIZE USED PRIO
/dev/sdb2 partition   3G   0B   -1
/dev/sda2 partition 8,8G   0B   -2

Leia mais sobre como criar um arquivo de swap.

Como dar mais prioridade a uma partição ou arquivo de swap

Se uma partição swap estiver em um drive mais rápido que os outros (um SSD, por exemplo), pode ser interessante configurar o sistema para começar a fazer o swapping por este dispositivo, que vai oferecer tempo de resposta muito menor.
Veja como especificar as prioridades de swap, no fstab:

/dev/sdb2   none    swap    sw,pri=2    0   0
/dev/hda2   none    swap    sw,pri=1    0   0

Com esta configuração (acima), o kernel irá priorizar a partição /dev/sdb2 (pri=2) — com o maior valor de prioridade da lista.
Assim que sua capacidade se esgotar, o kernel passará a usar a partição /dev/hda2 (pri=1), com valor de prioridade menor.
O valor da prioridade pode variar entre 0 e 32767.
0 é a menor prioridade possível e 32767 é a máxima.

Dê prioridade máxima ao arquivo ou partição swap que se encontrar no dispositivo de armazenamento mais rápido.
Esta configuração irá minimizar a perda de desempenho causada pelo uso do swap.

Configuração de RAID no swap

É possível fazer uso simultâneo de todas as partições swap disponíveis no seu sistema.
Para obter esta configuração, basta dar o mesmo nível de prioridade a todas elas.
Veja um exemplo:

/dev/hdb3   none   swap   sw,pri=1   0   0
/dev/hdd3   none   swap   sw,pri=1   0   0
/dev/hdc3   none   swap   sw,pri=1   0   0

Para obter um desempenho melhor, o ideal é que cada partição esteja em um drive físico diferente.

Conclusão

Na imagem, abaixo, você pode ver como configurei o meu swap
configuração do swap no linux fstab
Com 8 GiB de memória RAM e um SSD de 24 GiB, julguei interessante distribuir o espaço de troca recomendado, de 11 GiB entre o SSD e o HDD.
Assim, deixei 3 GiB de swap na unidade de estado sólido e o restante no disco rígido — dando maior prioridade à primeira.
Houve ganho de performance no sistema, toda vez em que foi necessário fazer uso da memória virtual.
Infelizmente, a unidade SSD já tem mais de 5 anos e eu espero que esta configuração tenha algum impacto negativo na sua durabilidade.
Tudo tem um preço, não é?

Assinar blog por e-mail

Digite seu endereço de e-mail para assinar este blog e receber notificações de novas publicações por e-mail.

Referências

http://www.tldp.org/HOWTO/Partition/setting_up_swap.html.

Opções avançadas de conversão FLAC ou OGG para MP3 sob demanda com mp3fs

Quando comecei a usar o mp3fs, não imaginava que iria fazer tanto uso deste sistema de arquivos virtual.
O fato é que ele me permite manter backup de todos as minhas músicas apenas em FLAC ou OGG.
Quando eu preciso transferir músicas para algum outro dispositivo que só tem suporte a MP3, o mp3fs resolve o problema com a criação de um sistema de arquivos virtual e a conversão on the fly.

Isto me livra do peso da redundância — ou algo próximo de 50% de todo o espaço ocupado por músicas em meu computador.

Se você quiser saber sobre os recursos básicos do funcionamento do mp3fs e sobre como instalá-lo no seu sistema, leia o artigo como converter arquivos FLAC para MP3, sob demanda, com mp3fs.

Ajustes sobre a qualidade da mídia

Você pode especificar a qualidade da conversão sob demanda para todos os arquivos.
Veja as opções de codificação possíveis:

  • --quality — determina a qualidade geral das conversões.
    Os valores podem ir de 0 (qualidade máx.) a 9 (velocidade máx.).
    O padrão é 5 (caso você não especifique nada neste quesito).
    Quanto maior a qualidade, maior o impacto sobre a performance do sistema — em outras palavras, os arquivos .mp3 resultantes ficarão maiores e o processo de conversão é mais demorado.

    Se o seu hardware for razoavelmente atual, não vejo motivo para não usar a qualidade máxima.
    Por outro lado, o manual do LAME recomenda usar o valor 2.
    A decisão é sua.

  • -b — determina o bitrate dos seus arquivos MP3. Os valores possíveis são 96, 112, 128 (padrão), 160, 192, 224, 256 e 320
  • --gainmode — determina o modo de ganho para todos os arquivos.
    Escolha 0, para ignorar; 1, para preferir o ganho predeterminado do álbum ou 2 (padrão), para manter e uniformizar o ganho por cada trilha.
  • --gainref — determina o ganho em decibéis. Se nenhum valor for fornecido, o sistema usará 89 dB.

No exemplo que segue, montei um dispositivo de armazenamento externo WD Elements, com uma coleção de músicas em FLAC, fazendo uso de algumas das opções acima
O drive está montado em “/media/justincase/wdelements/music/”. A segunda pasta (vazia, por enquanto) é a do sistema de arquivos virtual, criado e usado pelo mp3fs:

sudo mp3fs -b 320 --gainmode=0 --quality=0 /media/justincase/wdelements/music/ /mnt/music/mp3/ -o allow_other,ro

No final da linha as opções de montagem, “-o allow_other,ro”, que serão abordadas no próximo tópico.

Opções de montagem

As opções de montagem podem ser obtidas através do comando

mp3fs --help

Você pode combinar várias delas, após o parâmetro “-o”, separadas por vírgulas. Segue algumas das mais comumente usadas:

  • -o allow_other — tal como usado no exemplo acima, permite a outros usuários, além do que montou o sistema de arquivos, terem acesso para executar as músicas.
  • -o ro — indica que o sistema de arquivos é apenas-para-leitura (read-only). É redundante, pois o mp3fs só tem a opção de montar o sistema de arquivos desta forma.
  • -o nonempty — monta também arquivos e/ou diretórios vazios.
  • -o fsname=NOME — nomeia o sistema de arquivos para NOME.
  • -o direct_io — usa entrada/saída direta.
  • -o kernel_cache — faz o caching através do kernel.
  • -o from_code=CHARSET — determina a codificação de caracteres original, caso você esteja tendo dificuldade para ver os nomes corretos dos arquivos.
  • -o to_code=CHARSET — determina a codificação de caracteres do sistema de arquivos destino. Nesta e na opção anterior, o padrão é UTF-8.

Leia mais sobre as vantagens do FLAC sobre o MP3.

Introdução ao sistema de arquivos BTRFS – parte 2

Este post tem intenção de mostrar, na prática, como lidar com o sistema de arquivos Btrfs, no Linux.
Basicamente, vou cobrir algumas tarefas administrativas, o que inclui criar um sistema de arquivos Btrfs, montá-lo, alterar seu tamanho, usar compressão e auto desfragmentação.
É importante que se diga que o Btrfs, anunciado em 2007, ainda está em fase beta — neste momento, esta é a posição oficial dos desenvolvedores.
Sistema de arquivos Btrfs - logo
Contudo, há grandes empresas que usam o Btrfs em produção, mas ninguém, em sã consciência, abre mão de fazer seus backups. Problemas sempre podem aparecer.

Notas preliminares

Eu venho usando este sistema na minha máquina de trabalho há aproximadamente 6 meses e sem incidentes.
Atualmente, uso o Debian 8.3 “Jessie”, com o kernel 4.3.
Tudo o que descrevo, neste texto, funciona para mim. Não há qualquer garantia de que funcione para você, contudo.
Os comandos, descritos aqui, foram executados em alguns drives USB (vulgo, pendrives…) — o que está longe de ser o ideal para testar um sistema de arquivos tão robusto, mas serve para ilustrar o texto.
Debian 8 GNU/Linux terminal
Usuários Ubuntu, opcionalmente, podem usar o apt-get em vez do aptitude para instalar aplicativos — se isto os fizer sentir mais confortáveis.
Se quiser saber melhor as diferenças entre os dois, leia este artigo.
Outro ponto importante é que a maioria dos comandos, são usados com privilégios administrativos (com todos os perigos que isto implica).
Portanto, não esqueça de usar o ‘sudo’ no início da linha de comando ou logar como ‘root’ (que foi o que eu fiz).
Se você tiver curiosidade, leia Diferenças entre SU e SUDO.

Como instalar o suporte a Btrfs

Se você já instalou o Btrfs, pode pular esta parte.

Uma palavrinha sobre os backports…

Depois que instalei suporte aos backports no Debian, adquiri o hábito de checar se há pacotes mais atuais naqueles repositórios antes de instalar alguma coisa.
No meu caso, não há versão mais atual disponível nos backports, como é possível observar abaixo:

aptitude show btrfs-tools | grep -i vers
Versão: 3.17-1.1

aptitude -t jessie-backports show btrfs-tools | grep -i vers
Versão: 3.17-1.1

Sigamos em frente… 😉

Como ele já está incluído no kernel principal desde a versão 2.6.29-rc1, tudo o que você precisa é instalar as ferramentas para lidar com o sistema de arquivos Btrfs no espaço do usuário ou user space. Veja como:

aptitude update
aptitude install btrfs-tools

Isto é tudo.
Baixar o código fonte e compilá-lo, também é uma opção e pode te dar uma versão bleeding edge, ou seja, a última disponibilizada pelos desenvolvedores — mas vai impor alguns sacrifícios à estabilidade do seu sistema.

Como criar um sistema de arquivos Btrfs

Uma das várias boas notícias, aqui, é que você não precisa usar ferramentas de particionamento, como o fdisk, para preparar o dispositivo antes de formatá-lo com o Btrfs.
O sistema pode ser criado direto, com um único comando:

mkfs.btrfs /dev/sdc

Você pode usar um comando assim, para criar um volume novo até em mídias ainda não formatadas.
Se já houver algum sistema de arquivos (mesmo que seja Btrfs), o utilitário irá avisar:

/dev/sdc appears to contain an existing filesystem (iso9660).
Error: Use the -f option to force overwrite.
See http://btrfs.wiki.kernel.org for more information.

Se você tiver certeza do que está fazendo, pode “forçar” a criação do novo sistema de arquivos no dispositivo:

mkfs.btrfs -f /dev/sdc

Ao formatar a unidade, o mkfs irá aplicar as opções mais adequadas, automaticamente, para o tipo de mídia em questão. Veja o meu resultado, abaixo:

Btrfs v3.17

Turning ON incompat feature 'extref': increased hardlink limit per file to 65536
fs created label (null) on /dev/sdc
	nodesize 16384 leafsize 16384 sectorsize 4096 size 7.50GiB

Antes de concluir o tema, acho interessante falar destas duas opções de criação de um sistema de arquivos: --label e --mixed.
Ambas podem ser abreviadas, respectivamente, para ‘-L’ e ‘-M’.
A primeira serve para dar um nome (até 256 caracteres) ao seu volume e a segunda, mistura (mixa) partes de dados e metadados para obter um uso mais eficiente de espaço.
A aplicação deste recurso penaliza a performance em sistemas de arquivos maiores. Por isto, é recomendado apenas em pequenos sistemas de arquivos com 1 GiB de espaço ou menos.
Veja um exemplo de sua aplicação:

mkfs.btrfs --force --mixed --label "Justin Case" /dev/sdc

Para obter informações sobre o sistema de arquivos criado use o seguinte comando:

btrfs filesystem show /dev/sdc

Como montar um sistema de arquivos Btrfs

Se você conectar um dispositivo de armazenamento com um sistema de arquivos Btrfs, o Linux irá montá-lo automaticamente.
As opções, descritas a seguir, podem ser usadas por quem deseja fazer uso de algum recurso no momento da montagem ou configurar o fstab para obter resultados específicos.
A sintaxe do comando para montar uma unidade Btrfs não é muito diferente da usada para outros sistemas de arquivos. Veja um exemplo simples:

mount -t auto /dev/sdc /mnt

Como você pode ver, usei o parâmetro ‘auto’, por que sei que o kernel irá identificar corretamente o sistema de arquivos do dispositivo.
Mas eu o poderia indicar também, como pode ser observado no exemplo abaixo:

mount -t btrfs /dev/sdc /mnt

Ambas opções detectam e automatizam a escolha das opções de montagem mais adequadas para o seu dispositivo.
Veja alguns exemplos de outros parâmetros de montagem que podem ser usados.
Para montar o dispositivo com a compressão ativada, use a opção ‘compress’:

mount -t btrfs -o compress /dev/sdc /mnt

O algoritmo padrão de compressão é o zlib. Mas você pode usar também o LZO.
Entenda a diferença entre os dois e obtenha mais detalhes da aplicação no artigo Como ativar compressão no Btrfs.
Caso o sistema de arquivos já esteja montado, use o parâmetro ‘remount’:

mount -t btrfs -o remount,compress /dev/sdc /mnt

Assim, não será necessário desmontar e montar manualmente.
Se quiser ver as opções de montagem atuais da sua unidade Btrfs, use o mount combinado com o comando grep.

mount | grep btrfs

O meu resultado é o que segue:

/dev/sdc on /mnt type btrfs (rw,relatime,compress=zlib,space_cache,subvolid=5,subvol=/)

Pode ser interessante fazer testes, montando o sistema manualmente.
Quando tudo estiver funcionando do jeito que você quer, inclua estas opções de montagem no arquivo fstab.
Ao usar ‘autodefrag’, na montagem, o sistema irá executar o processo de desfragmentação em background ou nos bastidores, sem atrapalhar o uso da máquina, sempre que detectar alguma gravação aleatória.
Segue um exemplo de uso:

mount -t btrfs -o remount,compress,autodefrag /dev/sdc /mnt

Se você estiver tendo algum problema grave com a sua unidade de armazenamento, pode tentar recuperá-la durante a montagem, com ‘recovery’:

mount -o recovery /dev/sdc /mnt 

Como alterar o tamanho de um volume Btrfs

Não há necessidade de desmontar o volume para alterar o seu tamanho. Esta operação pode ser feita online.
Para reduzir o tamanho da unidade em 5 GiB, use o seguinte comando:

btrfs filesystem resize -5g /mnt

Para aumentar o tamanho em 500 MiB, use o seguinte comando:

btrfs filesystem resize +500m /mnt

Se isto não for possível, o sistema retornará o erro:

Resize '/mnt/' of '+500m'
ERROR: unable to resize '/mnt/' - File too large

Para ver o novo tamanho do volume, use o comando df:

df -h /mnt/
Sist. Arq.      Tam. Usado Disp. Uso% Montado em
/dev/sdc        4,1G   32M  3,3G   1% /mnt

Simples, não é?
Este artigo, dá uma ideia inicial das possibilidades do sistema de arquivos Brtfs e lhe permite começar a explorar toda a sua robustez.
Não esqueça de se aprofundar mais no assunto, lendo os textos linkados.
Divirta-se!

Como aplicar compressão a partições btrfs

O Btrfs é um dos sistemas de arquivos mais importantes, com suporte incluído na maioria das distribuições Linux atuais.
Desde a versão do kernel Linux 2.6.38, ele passa a permitir a escolha do algoritmo de compressão: zlib ou lzo.
Este texto é voltado a quem já está usando o Btrfs em algum volume ou partição e deseja obter um melhor aproveitamento do espaço em disco, com o uso de seus recursos nativos de compressão.
Se você ainda não decidiu sobre o sistema de arquivos a usar, leia o artigo Qual sistema de arquivos escolher para meu novo drive SSD, onde faço uma comparação entre Btrfs, XFS, JFS e o tradicional EXT4.
Sistema de arquivos Btrfs - logo
Se você tem interesse específico no sistema de arquivos Btrfs, leia o texto Introdução ao sistema de arquivos Btrfs — Parte 2, onde abordamos na prática, outros recursos básicos deste sistema de arquivos.
Você ainda tem a opção de usar a caixa de busca do site para ler outros artigos sobre os sistemas de arquivos suportados no Linux (tem bastante coisa!) 😉

Os algoritmos de compressão do Btrfs

Este post baseia-se na minha experiência com o Btrfs instalado em um SSD, sob o sistema operacional Debian 8.3 “Jessie”, rodando o kernel 4.3, instalado a partir dos backports.
As opções de compressão do sistema de arquivos Btrfs, atualmente, são as seguintes:

  • compress=zlib — Oferece melhor taxa de compressão. Padrão do sistema.
  • compress=lzo — Método de compressão desenvolvido nos laboratórios da Fujitsu, oferece um nível de compressão mais baixo. É projetado para oferecer melhor desempenho de acesso e menos sobrecarga à CPU.
  • compress=no — indica que a compressão está desabilitada no sistema.
  • compress-force=<method> – Habilita o recurso até mesmo para arquivos que não respondem completamente ao processo de compressão — tais como imagens dd de disco, vídeos, arquivos mp3 etc.
    Esta opção pode ser usada a partir do kernel 2.6.38.
    A opção <method> pode ser zlib ou lzo.

Uma destas opções deve ser fornecida ao montar o seu sistema de arquivos ou pode ser inscrita no seu arquivo /etc/fstab.
Veja um exemplo de configuração de uma unidade SSD, usando Btrfs e compressão lzo:

cat /etc/fstab | grep btrfs

UUID=d36af294-1e99-4e60-af85-fd9964135dcf /               btrfs   defaults,compress=lzo        0       1

A menos que você use ‘compress-force’, o Btrfs não irá afetar arquivos que já tenham passado por algum processo de compressão anterior, tais como vídeos, músicas, imagens, backups etc.
Volumes com grande quantidade de arquivos multimídia, portanto, terão baixa taxa de compressão.
Você pode montar um sistema de arquivos Btrfs com compressão lzo, com o seguinte comando:

sudo mount -o compress=lzo /dev/sdb /mnt

Se você preferir o algoritmo de compressão zlib, use o seguinte:

sudo mount -o compress=zlib /dev/sdb /mnt

Uma vez que o zlib já é o padrão, ele não precisa ser mencionado. Por isto, o comando acima, também pode ficar assim:

sudo mount -o compress /dev/sdb /mnt

O mesmo se aplica ao fstab — se você não mencionar o algoritmo que deseja usar, o sistema irá escolher o lzo.
Leia o artigo Sobre o comando mount, se quiser saber mais sobre seu funcionamento.

Referências

Introdução ao sistema de arquivos ZFS.
https://btrfs.wiki.kernel.org/index.php/Mount_options.
https://wiki.archlinux.org/index.php/Btrfs.

Como usar o comando mount para visualizar, montar e desmontar sistemas de arquivos no Linux

O comando mount permite ver rapidamente e com riqueza de detalhes todos os sistemas de arquivos montados na sua máquina Linux.
Sua função primordial, contudo, não é essa.
Ele é muito mais usado para montar novos sistemas de arquivos.
Para desmontar, usa-se o comando umount.
comando-findmnt-para-listar-sistemas-de-arquivos-ativos

O modo listagem do comando mount

O modo de listagem do comando é mantido por questões de compatibilidade. Há outros métodos recomendados para listar os file systems ativos — como veremos, ainda neste texto.
Para usar o modo listagem, basta executar o comando sozinho:

mount

Ao usar o comando desta maneira, você vai notar que a quantidade de informações pode ser muito grande e, para quem só quer saber quais sistemas de arquivos estão ativos, este método não é mesmo o melhor.
Uma solução rápida para isto, compreende o uso do comando grep:

mount | grep -i '/dev/sd'

A saída deste comando é mais sucinta — inclui o os nomes dos sistemas de arquivos ativos e as opções de montagem, como você pode ver abaixo:

/dev/sdb1 on / type btrfs (rw,relatime,ssd,space_cache,subvolid=5,subvol=/)
/dev/sda2 on /home type ext4 (rw,relatime,data=ordered)
/dev/sdc on /media/justincase/BLUE type vfat (rw,nosuid,nodev,relatime,uid=1000,gid=1000,fmask=0022,dmask=0077,codepage=437,iocharset=utf8,shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks2)

Você pode também especificar exatamente quais tipos de sistemas de arquivos deseja ver na sua listagem:

mount --types btrfs,ext4
/dev/sdb1 on / type btrfs (rw,relatime,ssd,space_cache,subvolid=5,subvol=/) [utraSSD]
/dev/sda2 on /home type ext4 (rw,relatime,data=ordered)

A documentação do comando mount, no entanto, sugere que se use o findmnt para listar os sistemas ativos.
Veja como o resultado é mais organizado:

findmnt | grep -i '/dev/sd'
/                                     /dev/sdb1  btrfs           rw,relatime,ssd,space_cache,subvolid=5,subvol=/
├─/home                               /dev/sda2  ext4            rw,relatime,data=ordered
└─/media/justincase/BLUE              /dev/sdc   vfat            rw,nosuid,nodev,relatime,uid=1000,gid=1000,fmask=0022,dmask=0077,codepage=437,iocharset=utf8,shortname=mixed,showexec,utf8,flush,errors=remount-ro

Se você quiser, pode usar esta sequência dentro de um só comando ou alias, basta incluí-lo na ultima linha do arquivo .bashrc:

alias montados="findmnt | grep -i '/dev/sd'"

Com isto, toda vez em que você digitar ‘montados’, a linha de comando findmnt | grep -i '/dev/sd' é que será executada.
Não esqueça de reiniciar o Bash, para o alias funcionar — com ‘logout’ ou ‘exit’.

Os arquivos /etc/fstab, /etc/mtab and /proc/mounts

Cada um destes arquivos tem sua função dentro do sistema.
O arquivo /etc/fstab conterá linhas descrevendo quais dispositivos podem ser montados no seu sistema, aonde e de que modo podem ser montados.
Leia o artigo Como montar um drive pelo nome de volume para saber mais sobre o fstab.

Use também a caixa de busca deste site, para encontrar outros artigos que envolvem o uso do fstab e do mount.

Por fim, todos os sistemas de arquivos mencionados no fstab são montados na inicialização do sistema — desde que descritos apropriadamente e não tenham a tag noauto em sua linha descritiva.
O arquivo /etc/mtab contém a lista de sistemas de arquivos montados no sistema.
Embora ele ainda seja suportado na maioria das distribuições Linux, a documentação sugere que você busque estas referência no arquivo /proc/mounts.
Isto ocorre por que o arquivo mtab, mantido no espaço do usuário, não consegue trabalhar com confiabilidade com namespaces, contêineres e outros recursos avançados do Linux.
Combine os comandos cat e grep, para ver o conteúdo parcial deste arquivo:

cat /proc/mounts | grep -i /dev/sd

Se quiser entender melhor o funcionamento do sistema de arquivos proc, leia o artigo Como obter informações do sistema através do /proc.

Como montar dispositivos usando o mount

Nos dias atuais, é muito incomum o usuário ou o sysadmin ter que “mountar” manualmente algum dispositivo conectado ao sistema.
Pendrives, CDs, DVDs, cartões de memória flash etc. todos já entram funcionando e exibindo seu conteúdo.
Dispositivos locais podem ser montados seguindo a regra de indicar o endereço ao qual o dispositivo está conectado, ponto de montagem desejado e o tipo de sistema de arquivos.
Por exemplo, para montar um drive de CD (com a mídia dentro), use o seguinte comando:

sudo mount -t iso9660 /dev/cdrom /cdrom

O ISO 9660 também conhecido como ECMA-119 ou CDFS (Compact Disc File System) por alguns provedores de hardware e software, é uma norma de sistema de arquivos, publicado pela International Organization for Standardization, a ISO, para mídias de disco ótico — Wikipedia.

Para montar um drive flash externo, ligado à sua porta USB, com o sistema de arquivos VFAT, no endereço ‘/dev/sdc’, sob o ponto de montagem ‘/mnt’, use a seguinte linha de comando:

sudo mount -t vfat /dev/sdc /mnt/

Se você já tem alguma linha no seu fstab, descrevendo aquele dispositivo especificamente, você pode montá-lo informando apenas o ponto de montagem: mount /cdrom, por exemplo.
Todas as opções da linha, referente àquele dispositivo, serão usadas na montagem.
Há outros casos em que pode ser necessário usar o processo de montagem manual — quando queremos montar um sistema de arquivos remoto, via rede, por exemplo.
Há alguns exemplos disto no artigo Como montar e acessar o sistema de arquivos WebDAV, onde este processo é descrito.
Para desmontar um dispositivo, basta também fornecer apenas o nome do ponto de montagem:

sudo umount /cdrom

Como montar sistemas de arquivos sem ser superusuário

Como você deve ter notado, os exemplos mostram como montar dispositivos, acompanhados do comando sudo.
É possível dispensar isto, permitindo que qualquer usuário no sistema monte um dispositivo, sem a necessidade de invocar privilégios especiais.
Para isto, basta adicionar a opção ‘user’ à linha de opções de montagem daquele dispositivo no fstab.
Veja um exemplo:

/dev/cdrom  /cd  iso9660  ro,user,noauto,unhide

Com estas opções, é possível a qualquer usuário do sistema montar o cdrom, com o comando:

mount /cd

Note que a opção ‘user’ só vai permitir que o usuário que montou o dispositivo o desmonte posteriormente.
Se você quiser que todos os usuários possam desmontar aquele dispositivo, use a opção ‘users’ (no plural).