quarta-feira, 15 de março de 2017

Montagem de partições no Antergos e no Manjaro

Antergos uptime 1min2 0seg, com 25 partições adicionais montadas automaticamente

A montagem automática das partições “adicionais”, — aquelas que não fazem parte do “sistema”, — foi um dos fatores a retardar o relato da instalação e configuração do Antergos, em 3 Mar. 2017.

Com todas as capturas de tela centralizadas na partição “XTudo”, — pois não faria sentido deixá-las dispersas nas partições dos 11 sistemas instalados em paralelo, — a boa ordem dos trabalhos pressupõe que essa partição “XTudo” esteja montada desde o momento em que cada sistema é carregado, para registrar o tempo decorrido (uptime), o uso inicial da Memória RAM, e vários outros indicadores exibidos no Conky.

Desde o início de cada sessão, o Dolphin também já deve estar aberto, — com várias abas, em várias pastas, conforme os trabalhos em andamento, em cada época. — Essas “flutuações” do ambiente de produção são atualizadas pelo recurso “Desligar / Sessão → Salvar sessão”, aliado à opção de “Restaurar a sessão salva manualmente”.

Este relato se compõe dos seguintes resumos, — com links para mais detalhes de cada caso:

  • Manjaro
  • Udisks2
  • Polkit-1
  • Antecedentes
  • Linux Mint 17.3 Cinnamon
  • Debian 8 / 9
  • openSUSE
  • Fedora
  • Sabayon

Manjaro


Montagem automática de partições “adicionais” pelas Configurações de sistema do Manjaro KDE

Curiosamente, essa montagem automática não tinha apresentado problema algum no Manjaro (1º Jan. 2017), — também baseado no Arch Linux. — Bastou marcar as partições “adicionais” nas Configurações do sistema (KDE), e desde então, elas são automaticamente montadas no início de cada sessão.

Nesse aspecto, o Manjaro se comportou exatamente como o Kubuntu, o KDE Neon e o Linux Mint KDE, entre outros, — nos quais, basta isso, para obter a montagem automática.

Udisks2


Uso do daemon udisks2 na montagem automática de partições “adicionais”

Por trás dessa configuração, “trabalha” o daemon udisks2, — o mesmo utilizado pelo Dolphin, por exemplo, para montar uma partição “sob demanda” (quando você clica nela, no Dolphin).

Por isso, o caminho (path) para a montagem da partição é igual nos 2 casos, — e pode ser alterado por algumas regras em “/etc/udev/rules.d/”:

/etc/udev/rules.d/99-udisks2.rules


# UDISKS_FILESYSTEM_SHARED
# ==1: mount filesystem to a shared directory (/media/VolumeName)
# ==0: mount filesystem to a private directory (/run/media/$USER/VolumeName)
# See udisks(8)
ENV{ID_FS_USAGE}=="filesystem|other|crypto", ENV{UDISKS_FILESYSTEM_SHARED}="1"

Polkit


Criação do arquivo “/etc/polkit-1/rules.d/99-udisks2.rules” no Antergos

Acontece que, no Antergos, ao clicar no Dolphin para montar uma partição exibida na barra lateral, ele solicita a senha de Root, — coisa que não acontece durante o carregamento do sistema, — e o resultado é como um carregamento “incompleto”, pendente de ação manual (senha de Root), antes que o ambiente se possa considerar realmente pronto.

Em resumo, a mera configuração de montagem automática não funcionou no Antergos.

Por comodismo, talvez o próximo passo fosse tentar o arquivo “/etc/fstab”, — mas não encontrei nos repositórios nenhum aplicativo similar ao “Discos” (gnome-disk-manager), nem ao “Gerenciador de discos” do Debian. — Ou, se encontrei, não consegui perceber, ou ter certeza. Em Arch, sou estranho em terra estranha.

Sem entender absolutamente nada desse emaranhado de sutilezas que é a estrutura de um Linux, — e por isso, dando apenas 1 passo de cada vez, para sentir o terreno, — comecei por testar uma alteração de “política”, que já havia resolvido um problema semelhante no Fedora.

Em resumo, tratava-se de criar o arquivo “/etc/polkit-1/rules.d/99-udisks2.rules”, e colar nele o conteúdo sugerido, — para habilitar a montagem de partições sem a exigência da senha de Root:

// Allow udisks2 to mount devices without authentication
polkit.addRule(function(action, subject) {
if (action.id == "org.freedesktop.udisks2.filesystem-mount-system" || action.id == "org.freedesktop.udisks2.filesystem-mount" || action.id == "org.freedesktop.udisks2.filesystem-mount-system-internal") { return polkit.Result.YES; } });

Sequência repetida a posteriori, para conferir como foi criado o arquivo “99-udisks2.rules

Na falta de um recurso tipo “Dolphin como Root”, foi seguida a sequência:

su
cd /etc/polkit-1/rules.d
kate
[copy & paste]
save as
99-udisks2.rules

Um pouco mais à vontade com comandos em tela preta, seria mais simples apenas copiar esse arquivo do Fedora.

Antecedentes


Sistemas Linux experimentados nos primeiros 8 anos

Instalar e usar um sistema Linux “facilitado” para iniciantes, — como o (K)Ubuntu, — exige muito pouco aprendizado.

Até o início de 2016, — embora usando Linux desde 2007, — havia aprendido o mínimo. Acessar e gravar nas partições “E:\” e “F:\” do Windows era tudo quanto bastava, — não importando se o Dolphin as apresentava como “Volume de 178 GB”, pois eram poucas; dava para identificar. As partições nem tinham rótulos (label), e ignoro como eram os pontos de montagem.

O fato daquelas partições usarem sistema de arquivos Fat32, — sem manhas de “proprietário” ou “permissões”, — pode ter facilitado seu uso simplificado, dispensando maior estudo.

A mera instalação / configuração de 1 novo Kubuntu LTS a cada 2 anos tampouco estimulava maior aprofundamento, — bastava recuperar as funcionalidades habituais (ou substituir alguma que desaparecia). — Manter o velho Windows também facilitava a acomodação.

Encontrava pouco tempo para dedicar ao “segundo” Linux, — não lembro, sequer, como fiz para obter (se é que obtive) a montagem automática de partições “adicionais” em antigas instalações do Debian e do Linux Mint. — Claro, existem cadernos com anotações, mas além de não oferecerem “CTRL-F”, só registram algumas soluções que pareciam mais valiosas. O que foi fácil ou não foi conseguido, não ficou anotado. E o que demorava a ser conseguido, só era anotado quando boa parte do histórico já estava esquecido.

Apenas a partir de Mar. 2015, com a instalação de um segundo Kubuntu, — “igual” ao primeiro, exceto por ser 32-bit, ao invés de 64-bit, — as configurações começaram a ser sistematizadas, com registros mais completos e detalhados.

A bem dizer, 99% do pouco que sei foi aprendido nesses últimos 12 ou 14 meses, “brincando” de instalar 2, depois 4, e agora 11 sistemas “em paralelo” (multiboot), — com o propósito firme de substituir todas as tarefas ainda dependentes do Windows, — e procurando registrar com detalhes, aqui no Byteria, em postagens um pouco mais estruturadas.

Portanto, os “antecedentes” (abaixo) são meras observações, — com algumas “receitas” práticas, que podem não ser as mais indicadas. — Mero registro, acompanhando um aprendizado ainda bastante precário.

Estudar a estrutura completa do Linux, — caminho para de fato conhecê-lo, — ainda é coisa para o futuro.

Mint Cinnamon


Comandos adotados para montagem automática de partições no antigo Linux Mint 17.3, no início de 2016

Acostumado unicamente ao KDE (Kubuntu), a montagem automática de partições “adicionais” foi particularmente espinhosa no Linux Mint 17.3 Cinnamon (Jan./Fev. 2016), — cujo “Discos” (gnome-disk-utility) escrevia o “/etc/fstab” para usar um recurso do x-gvfs-show ainda incompatível com o resto do sistema (util-linux 2.20).

Disposto a evitar o “/etc/fstab”, — e em especial, evitar escrevê-lo “manualmente”, — a solução adotada acabou sendo a inserção de comandos udisks em “Menu → Preferências → Aplicativos de sessão (gnome-session-properties) → Adicionar → Comando personalizado”:

udisksctl mount --block-device /dev/disk/by-uuid/<uuid>

Debian


Edição do arquivo “/etc/fstab” pelo Gerenciador de discos.(Disk Manager 1.1.1)

O registro detalhado da pesquisa para a montagem automática de partições “adicionais” no Linux Mint 17.3 Cinnamon facilitou bastante a escolha da solução adotada no Debian testing “Stretch”, poucos meses depois, em Jun. 2016.

Embora resistisse ao uso do arquivo “/etc/fstab”, o Gerenciador de discos.(Disk Manager 1.1.1) se mostrou tão eficiente e prático para editá-lo, que a pesquisa parou ali mesmo, — sem chegar à “polkit”, por exemplo, que por isso, nem sei como funciona (ou se funciona) no Debian.

Em resumo, o Gerenciador de discos permite, facilmente, habilitar a montagem automática de partições escolhidas, — além de editar o caminho (path) ou ponto de montagem, e mais alguns parâmetros básicos.

Um parâmetro inicialmente adotado para a montagem da partição “F:\” (Fat32), — verificar o sistema de arquivos a cada 30 sessões, — acabou resultando numa demora de mais de 1 minuto, no carregamento de todas as sessões do Debian, caso tivesse passado pelo Linux Mint 17.3 Cinnamon.

O mais provável é que o Linux Mint 17.3 guardasse alguma configuração (manual) heterodoxa, feita para compatibilizar com o “relógio de sistema” do antigo Windows XP (eliminado desde Abril), — e isso deixava na partição uma “data de acesso” situada no futuro (do ponto de vista do Debian).

Infelizmente, esse Gerenciador de discos não tem sido encontrado nos repositórios de outras distros. — Não veio com o Debian testing “Stretch” (Jun. 2016), pois foi instalado depois. — Também não veio com o Debian 8.6 (30 Set. 2016), pois o Histórico do Synaptic indica que só foi instalado em 4 Out. 2016. — Continua nos repositórios do Debian testing / Debian 9, porém o desenvolvedor não tem planos de nova versão, e solicita contato de quem queira assumir a tarefa.

openSUSE


Particionador do YaST2 também serve como “editor” do arquivo “/etc/fstab

Tal como no Debian, também no openSUSE (17 Jan. 2017) não adiantou recorrer ao “Menu K → Configurações do sistema → Hardware → Armazenamento removível → Dispositivos removíveis” para obter a montagem adicional de partições “adicionais”.

Embora jamais tivesse visto de longe um SuSE ou openSUSE, encontrar a solução foi relativamente fácil e rápido, — graças às recentes pesquisas para lidar com essa questão no Mint 17.3 Cinnamon (Jan. 2016) e no Debian (Jun. 2016), sistematizadas em registros detalhados.

Em resumo, o “Particionador” do YaST2 supre o mesmo papel do “Discos” e do “Gerenciador de discos”, — editar o arquivo “/etc/fstab”, mediante opções em uma interface gráfica, — porém de um modo bem mais eficiente e detalhado, com riqueza de parâmetros.

30 Mar. 2017 - Encontrada solução para montagem automática de partições adicionais no openSUSE, — e finalmente evitado o uso do “/etc/fstab” para isso.

Fedora


Fedora não carregava mais, após a edição do arquivo “/etc/fstab

O Fedora (31 Jan. 2017) rompeu o dualismo “udisks2” vs. “/etc/fstab”, — nenhum dos dois funcionou, — e finalmente exigiu pesquisar além deles, até descobrir a existência uma “terceira via”.

Descartado o simples recurso ao “udisks2”, a primeira tentativa foi usar o “Gerenciador de partições do KDE” (KDE Partition Manager), — porém ele não consegue montar as partições, por não existirem os pontos de montagem. — Ao que parece, ele não os cria.

Outra tentativa foi instalar e usar o “Discos” (gnome-disk-utility), — encontrado nos repositórios, — para resolver a montagem automática de partições “adicionais”.

Nos 2 casos, a edição efetuada por eles no arquivo “/etc/fstab” deixou o Fedora “incarregável”, — entra em “Emergency mode”, pedindo senha Root para manutenção. — O melhor que se pode fazer, nessa hora, é des-editar o “/etc/fstab”, usando o “vi”, por exemplo.

Ou, criar os pontos de montagem indicados nele, — mas, como ainda não sabia nada disso, o caminho mais simples foi disparar um “reboot” e ir para outro sistema, pesquisar mais.

Encontrada a solução “polkit-1”, finalmente o Fedora carregou normalmente, — com as partições e pontos de montagem indicados no “/etc/fstab”. — Depois disso, (aindanão foi feita nova tentativa com “udisks2”, para ver se agora ele também funcionaria (dispensar a edição do “/etc/fstab).

Sabayon


Copiando “99-udisks2.rules” do Antergos para o Sabayon, no Krusader (modo Root)

17 Mar. 2017 - A montagem automática de 4 partições “adicionais” tinha sido habilitada nas Configurações do sistema (System settings) do Sabayon (4 Mar. 2017), — porém não funcionou.

Para testar o procedimento mais simples, foi agora copiado o arquivo “/etc/polkit-1/rules.d/99-udisks2.rules” do Antergos para o Sabayon, — usando o Krusader (modo Root), — e bastou carregá-lo para confirmar o resultado.

Mageia


Montagem automática de todas as partições habilitadas pelo udisks2, ao carregar o Mageia 6 sta2

A mera configuração de montagem automática pelo “Menu K → System settings → Removable devices” também não produziu qualquer efeito no Mageia 5, — e para agilizar, foi utilizado o Centro de Controle Mageia para definir as partições “adicionais” a serem montadas, — um modo de usar interface gráfica para “escrever” no “/etc/fstab”, sem cometer erros bobos de digitação, depois espremer os olhos e os miolos numa sopa de letrinhas.

Agora, ao substituí-lo pelo Mageia 6 sta2, foi feito o teste de simplesmente copiar o arquivo “/etc/polkit-1/rules.d/99-udisks2.rules” do Antergos, — usando o “Krusader as Root”, — e finalmente os comandos udisks2 definidos pelo pelo “Menu K → System settings → Removable devices” puderam fazer efeito ao iniciar a sessão.

Conclusão


Parece muito provável que a autorização contida em um arquivo “/etc/polkit-1/rules.d/99-udisks2.rules” possa dispensar o uso do “/etc/fstab” também no Debian, no Fedora e no openSUSE, bastando então escolher as partições “adicionais” pelo “Menu K → System settings → Removable devices”.

A experiência ainda não foi feita no Debian, porque a estrutura da pasta “/etc/polkit-1” é um pouco mais complicada, — e bem diferente.— Convém estudar com calma, para não sair mexendo à toa:

localauthority
    10-vendor.d
    20-org.d
    30-site.d
    50-local.d
    90-mandatory.d
localauthority.conf.d
    50-localauthority.conf
    51-debian-sudo.conf
nullbackend.conf.d
    50-nullbackend.conf

Também no Fedora e no openSUSE, vale a pena escolher um momento de calma para colocar toda atenção, ao fazer a experiência de trocar o “/etc/fstab” pelos comandos udisks2 das Configurações do sistema + polkit.

30 Mar. 2017 - Encontrada solução para montagem automática de partições adicionais no openSUSE, — e finalmente evitado o uso do “/etc/fstab” para isso.

— … ≠ • ≠ … —

Não-debians


Nenhum comentário:

Postar um comentário