Continuando com a montagem automática de dispositivos conectados no linux , o que deixou as coisas um pouco básicas. Executando o Gentoo, estou montando automaticamente uma combinação de dispositivos locais e de rede no meu laptop com autofs-5.0.4-r5. Fazer autofs sozinho me dá algumas queixas:
- Preciso predefinir nomes para pontos de montagem por dispositivo, mas, ocasionalmente, após a reinicialização, o leitor de cartão MMC muda de posição com o pen drive inicializável
- Gostaria que os pontos de montagem automáticos baseados em LABEL aparecessem, autofs por si só O AFAIK não pode fazer isso
Qual é o que udev e udisks certamente são capazes de fazer. Mas:
- Não quero que o sistema de arquivos seja montado automaticamente ao conectar o dispositivo, apenas me dê o ponto de montagem fantasma chamado LABEL
A montagem real do sistema de arquivos deve ocorrer apenas no primeiro acesso ao ponto de montagem, assim como o autofs ghosting funciona. Isso deve reduzir o risco de sujar os sistemas de arquivos ao desconectar acidentalmente os dispositivos, enquanto ainda oferece grande acessibilidade.
Além disso, eu poderia saber sempre o que está acontecendo no meu DE.
- Existe um aplicativo da bandeja do sistema capaz de indicar o status de todas as montagens automáticas, ou seja, verde = nada está montado, vermelho = algo está montado?
- Existe uma maneira independente de distribuição de fornecer notificações de operação de montagem (des) do sistema de arquivos, por exemplo, usando o envio de notificação? E o Gentoo-specific, que também funciona para mim. Script udev não ajuda com NFS e CIFS, certo?
Essa combinação deve ser a melhor configuração de montagem automática, ou estou perdendo alguma coisa?
fonte
Respostas:
Tudo isso é possível com
udev
. Dê uma olhada no UAM , que parece abordar a maioria dos problemas mencionados, mas na verdade é montado automaticamente. Se desejar, você poderá usar os excelentes recursos que ele oferece, mas modificá-lo para que a mídia não seja montada automaticamente. Você também pode entrar em contato com o autor e sugerir sua abordagem de montagem não automática como um novo recurso. Enquanto isso, dê uma breve olhada em seus recursos:udev
, tornando-o independente de DE e baseado em eventos. (Ele também sugere uma solução alternativa para mídia ótica que pode não ser identificada porudev
.)MOUNTPOINT_TEMPLATES
que pode resolver o problema de nomeação que você mencionou de várias maneiras personalizadas (consulte uam.conf ), potencialmente também usandoLABEL
(conforme desejado)fonte
Aqui está como eu fiz recentemente, e estou muito feliz com essa abordagem agora. Isto é para o Ubuntu 12.04 + gentoo, mas acho que qualquer distro, que permita a instalação do udev e do autofs, deve funcionar.
Pré-requisitos: Você deve ter instalado o udev + autofs.
Passo 1)
Crie o seguinte arquivo "/etc/udev/rules.d/90-usbsd-auto.rules" (é claro que você pode usar qualquer nome desde que termine com ".rules"). :
O que isso faz: Ele cria dois links simbólicos, um para a partição do dispositivo de armazenamento USB em "/ dev / usbdisks / <...>". Ele usará o rótulo da partição de armazenamento USB ou o nome do kernel, se não houver um rótulo. O segundo link simbólico será vinculado de "/ media / usb / <...>" para "/ media / autousb / <...>", para suporte ao montador automático (consulte a etapa 2).
Nota: originalmente não usei as regras com as variáveis ID_FS_LABEL_ENC, pois isso é perigoso na minha opinião. O que acontece se você conectar dois pendrives que usam a mesma etiqueta?
Mas o pôster queria especificamente usar o rótulo do disco USB, então modifiquei as regras de acordo.
Para garantir que o udev leia essas regras, use
Com esse arquivo de regras do udev, tudo está configurado para montar automaticamente a partição do dispositivo de armazenamento USB. Observe que, no momento, o dispositivo NÃO será montado automaticamente (intencionalmente). Ele será montado automaticamente quando você o usar com
Passo 2)
Configurar autofs para automount / media / autousb / <...>: Adicionei a seguinte linha ao meu arquivo "/etc/auto.master" (para Ubuntu 12.04):
Isso significa que o AutoFS desmontará o dispositivo após 60 segundos de inatividade. Você pode querer usar menos ou mais, dependendo do seu gosto.
Para o Gentoo, você precisa modificar "/etc/autofs/auto.master" para que faça sentido usar
Agora eu criei "auto.usb" com o seguinte conteúdo:
Esse auto.usb precisa ser executável, para que o autofs use isso como um script (bash). Então por exemplo
O que isso faz: Este script informa ao AutoFS (/ usr / sbin / automount) como montar a partição do dispositivo de armazenamento usb.
O script primeiro usará "/ sbin / blkid" para descobrir que tipo de sistema de arquivos está na partição.
O script fornecerá as opções corretas de montagem, dependendo da partição do dispositivo.
Nota: Incluí código de amostra para os sistemas de arquivos "vfat" (provavelmente o mais comum para pendrives), "ntfs" e "xfs". Obviamente, é muito fácil estender isso para suportar mais sistemas de arquivos.
Etapa 3) Opcional ... Para "ejetar" == desmontar o (s) seu (s) pendrive (s) (ou partições no seu pendrive), crie um script em / sbin / usbeject:
Com esse script, você pode usar "sudo usbeject" para desmontar todas as partições de dispositivos USB montadas (dizendo ao automount para desmontá-las).
Claro que você pode simplesmente garantir que a partição não seja usada em nenhum lugar; o montador automático desmontará a partição após o tempo limite de 60 segundos ...
O verdadeiro truque aqui é usar links simbólicos de "/ media / usb" para "/ media / autousb":
fonte