AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / ubuntu / Perguntas / 1281855
Accepted
emk2203
emk2203
Asked: 2020-10-12 03:19:14 +0800 CST2020-10-12 03:19:14 +0800 CST 2020-10-12 03:19:14 +0800 CST

Monte a partição na inicialização da mesma forma que o gerenciador de arquivos faz - NÃO com /etc/fstab

  • 772

Quero montar uma partição após o login da mesma forma que o gerenciador de arquivos faz quando clico em um dispositivo desmontado em 'Dispositivos'. Idealmente, quero usar o mesmo daemon subjacente que o gerenciador de arquivos usa.

Ele NÃO deve ser montado via fstab. Basicamente, o resultado deve ser como se eu abrisse o gerenciador de arquivos após o login e clicasse no dispositivo, sem a necessidade de elevar direitos, desmontáveis ​​pelo usuário, mesmos direitos de acesso, mesmo lugar na hierarquia de arquivos ( /media/user/partitionlabel-or-UUID).

Após o login - para que dispositivos diferentes possam ser montados para usuários diferentes, por exemplo.

Como isso poderia ser feito? Uma pesquisa afoga informações relevantes no zilhão de respostas via /etc/fstab. A resposta sugerida para montar um samba fs no login não ajuda aqui.

mount login
  • 2 2 respostas
  • 542 Views

2 respostas

  • Voted
  1. Best Answer
    emk2203
    2020-10-15T23:06:41+08:002020-10-15T23:06:41+08:00

    A resposta é muito fácil se você souber o que procurar. Uma maneira agnóstica de DE para montar discos automaticamente no login é usar udisksctl. É frequentemente usado para montar dispositivos de loop, mas também pode montar unidades. As polkitregras necessárias já estão presentes, uma vez que udisks2é usado sob o capô para os mecanismos de montagem automática dos gerenciadores de arquivos. Portanto, ele pode ser executado sem direitos de acesso elevados.

    udisksctl mount -b /dev/sdn1ou udisksctl mount -b /dev/disk/by-label/<disklabel>monta o disco a partir da linha de comando em /media/<username>/<diskname or UUID>.

    A linha udisksctl mount -b /dev/sdn1 2>/dev/nulladicionada ao user's ~/.profile, que é executada após cada login gráfico, não gráfico ou remoto, tenta montar o disco e falha silenciosamente se já estiver montada para que o usuário não se irrite com uma linha de erro.

    Para completar, ~/.bash_logoutcom um udisksctl unmount -b /dev/sdn1pode desmontar este disco no logout, se desejado.

    Para uma solução mais ampla, coloque isso em ~/.profile:

    # mount disk with specified label if unmounted and present
    userdisks=( "disklabel 1" "disklabel 2" "disklabel 3" )
    for disk in "${userdisks[@]}"
    do
        if ! lsblk -l | grep -q $disk ; then
            udisksctl mount -b /dev/disk/by-label/$disk
        fi
    done
    

    e adicione isso a ~/.bash_logout:

    # unmounts disks at last logout of user
    count=$(who | grep -c $(whoami))
    if [ $count -eq 1 ] ; then
        userdisks=( "disklabel 1" "disklabel 2" "disklabel 3" )
        for disk in "${userdisks[@]}"
        do
            if lsblk -l | grep -q $disk ; then
               udisksctl unmount -b /dev/disk/by-label/$disk
            fi
        done
    fi
    

    Você precisa colocar todos os rótulos dos dispositivos que deseja montar na userdisksmatriz separada por espaço. Certifique-se de que um rótulo com espaços esteja entre aspas.

    Isso permite que o usuário saiba que o disco está montado na linha de comando, ignora silenciosamente a montagem quando o disco já está montado e apresenta um erro quando os discos estão ausentes.

    Somente quando a última sessão do usuário é desconectada, os discos são desmontados.

    Essa configuração economizou tempo conveniente ao fazer login em sshum laptop com dispositivos removíveis, por exemplo.

    • 1
  2. Taras Bilobran
    2021-10-01T06:58:42+08:002021-10-01T06:58:42+08:00

    No geral, a resposta acima está correta, no entanto, aqui está minha dica. Para mim, a solução lsblk -l | grep -q $disknão funcionou porque, por alguns motivos, meu disco ainda estava na saída.

    Corrigi o problema alterando essa linha para

    lsblk -l -o MOUNTPOINT | grep <expected_mount_path>
    
    • 0

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Existe um comando para listar todos os usuários? Também para adicionar, excluir, modificar usuários, no terminal?

    • 9 respostas
  • Marko Smith

    Como excluir um diretório não vazio no Terminal?

    • 4 respostas
  • Marko Smith

    Como descompactar um arquivo zip do Terminal?

    • 9 respostas
  • Marko Smith

    Como instalo um arquivo .deb por meio da linha de comando?

    • 11 respostas
  • Marko Smith

    Como instalo um arquivo .tar.gz (ou .tar.bz2)?

    • 14 respostas
  • Marko Smith

    Como listar todos os pacotes instalados

    • 24 respostas
  • Martin Hope
    Flimm Como posso usar o docker sem sudo? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    led-Zepp Como faço para salvar a saída do terminal em um arquivo? 2014-02-15 11:49:07 +0800 CST
  • Martin Hope
    ubuntu-nerd Como descompactar um arquivo zip do Terminal? 2011-12-11 20:37:54 +0800 CST
  • Martin Hope
    TheXed Como instalo um arquivo .deb por meio da linha de comando? 2011-05-07 09:40:28 +0800 CST
  • Martin Hope
    Ivan Como listar todos os pacotes instalados 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    David Barry Como determino o tamanho total de um diretório (pasta) na linha de comando? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher "Os seguintes pacotes foram retidos:" Por que e como resolvo isso? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford Como os PPAs podem ser removidos? 2010-07-30 01:09:42 +0800 CST

Hot tag

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve