Operações com cartão SD de várias contas de usuário?

7

Estou executando o Ubuntu MATE 16.04 e copiar imagens de e para meu leitor de cartão SD interno funciona basicamente bem ... na minha conta principal.

Se outro membro da família efetuar login (meu login ainda está ativo em segundo plano, não desconectado) e inserir um cartão SD, ele não poderá acessá-lo:

Então, isso é algum tipo de questão de direitos ...? Fazendo o login novamente como o usuário principal, também vejo alguns problemas de direitos:

Então, o que quer que seja, como posso liberar os direitos de acesso no leitor de cartão SD, para que ele se torne acessível a todos (incluindo usuários não administradores)?

Talvez alguma entrada 'relaxada' etc/fstab ? (sem entrada relacionada lá ainda)

Atualizar I:

Mudar de volta & amp; entre 2 cartões SD (de um único usuário) e olhando para /dev/disk/by-id :

?> ~ $ ll /dev/disk/by-id | grep mmc
...  mmc-SDU1_0x02400f04 -> ../../mmcblk0
...  mmc-SDU1_0x02400f04-part1 -> ../../mmcblk0p1
?> ~ $ ll /dev/disk/by-id | grep mmc
...  mmc-SE32G_0x0072e5ab -> ../../mmcblk0
...  mmc-SE32G_0x0072e5ab-part1 -> ../../mmcblk0p1
?> ~ $ ll /dev/disk/by-id | grep mmc
...  mmc-SDU1_0x02400f04 -> ../../mmcblk0
...  mmc-SDU1_0x02400f04-part1 -> ../../mmcbl

?> ~ $ ll /dev/disk/by-id | grep mmc
...  mmc-SDU1_0x02400f04 -> ../../mmcblk0
...  mmc-SDU1_0x02400f04-part1 -> ../../mmcblk0p1
?> ~ $ ll /dev/disk/by-id | grep mmc
...  mmc-SE32G_0x0072e5ab -> ../../mmcblk0
...  mmc-SE32G_0x0072e5ab-part1 -> ../../mmcblk0p1
?> ~ $ ll /dev/disk/by-id | grep mmc
...  mmc-SDU1_0x02400f04 -> ../../mmcblk0
...  mmc-SDU1_0x02400f04-part1 -> ../../mmcblk0p1

../../mmcblk0[p1]/dev/mmcblk0[p1] parece ser a única constante aqui. Talvez eu consiga uma solução com isso?

Adicionei isso a /etc/fstab (de acordo com a página de manual , a primeira param também pode ser um caminho de dispositivo, se eu entendi corretamente):

/dev/mmcblk0p1  /media/ExtSD01/  auto   auto,user,rw 0 0

Isso funcionou um pouco bem, agora que posso mount /dev/mmcblk0p1/ e desmontar para o caminho neutro do usuário, não automaticamente, mas pelo menos da linha de comando (desvantagem 1). No entanto, meu sistema suspende uma reinicialização - a menos que eu tenha um cartão SD inserido antes da inicialização (desvantagem 2). Então eu removi essa linha novamente ...

Talvez haja outro lugar para editar opções de montagem no Ubuntu Mate? system.d? Em outro lugar?

    
por Frank Nocke 03.01.2018 / 23:25

4 respostas

1

Para montar o cartão SD na inicialização de todos os usuários, precisamos de uma entrada no arquivo fstab . O que está acontecendo atualmente é que o cartão SD está sendo montado para o usuário que faz o login, o que dá permissões de acesso somente àquele usuário. Ao adicionar uma entrada no fstab, o cartão SD será montado pelo root com acesso a todos os usuários. este acesso r / w pode ser controlado mais tarde.

sudo blkid lista todas as partições (incluindo o cartão SD) disponíveis no seu sistema. Anote o UUID da partição que você deseja montar na inicialização.

agora crie uma pasta, por exemplo, sudo mkdir /media/ExtSD01 . Esta é a pasta onde sua partição do cartão SD será montada. Esta pasta será de propriedade de root. Para dar permissão a outros usuários para o r / w nesta pasta, precisamos dar as permissões adequadas. então chmod -R 777 /media/ExtSD01 seria bom o suficiente. Agora você precisa editar seu arquivo fstab. para fazer isso, digite o seguinte comando.

  

sudo nano / etc / fstab

vá até o final do arquivo e adicione a seguinte linha lá.

UUID='enter your UUID here' /media/ExtSD01/     auto,user,rw 0 0

Reinicie o sistema e você deve estar pronto.

    
por burhanuddin abbas 10.01.2018 / 18:38
0

Que tal não ter as unidades USB automontadas quando estão conectadas? Nesse caso, você pode montá-los manualmente como desejar. Para desabilitar o automount, use o dconf-editor e vá para org / gnome / desktop / media-handling e desative o automount definindo-o como false. Em seguida, monte manualmente o cartão SD em uma pasta com as permissões definidas como você deseja.

    
por jpezz 17.01.2018 / 00:08
0

Você pode tentar adicionar um novo grupo chamado sdcard e escrever uma regra do udev para seus cartões SD.

Vamos começar com a parte fácil e criar um novo grupo:

    sudo groupadd sdcard

Agora adicione o (s) usuário (s) ao grupo sdcard:

    sudo usermod -aG sdcard username

Agora temos que procurar informações adicionais sobre o (s) cartão (s) que você está usando.
Precisamos de um nome do produto ou ID do produto e um nome do fornecedor ou código do vencor

  1. conecte seu cartão SD e digite

    lsblk
    

    No meu caso, é / dev / sda.
    Eu sei que os nomes dos seus dispositivos são diferentes, mas, por simplicidade, vou me referir ao cartão SD como / dev / sda.

  2. Pesquise em seus dispositivos as informações desejadas usando

    sudo lshw
    

Esses comandos adicionais podem ajudar você a encontrar o fornecedor e o produto:

  • lsusb
  • usb-devices
  • dmesg

No meu caso, lshw forneceu as seguintes informações:

    *-usb:0
        description: Mass storage device
        product: USB2.0-CRW
        vendor: Generic
        physical id: 1
        bus info: usb@3:1
        logical name: scsi0
        version: 57.13
        serial: 20120926571200000
        capabilities: usb-2.00 scsi emulated scsi-host
                  configuration: driver=usb-storage maxpower=500mA speed=480Mbit/s
      *-disk
           description: SCSI Disk
           product: SD/MMC/MS PRO
           vendor: Generic-
           physical id: 0.0.0
           bus info: scsi@0:0.0.0
           logical name: /dev/sda
           version: 1.00
           serial: 2012062914345300
           capabilities: removable
           configuration: ansiversion=4 logicalsectorsize=512 sectorsize=512
         *-medium
              physical id: 0
              logical name: /dev/sda

Como você pode ver, meu produto é USB2.0-CRW e o fornecedor é Genérico .

  1. Agora você pode criar um arquivo em /etc/udev/rules.d / e chamá-lo, por exemplo, 10-sdcard.rules

    # /etc/udev/rules.d/10-sdcard.rules
    # This file allows the group sdcard to mount sd cards
    # without administrative permissions
    
    SUBSYSTEM=="usb", ATTRS{product}="USB2.0-CRW", ATTRS{vendor}=="Generic", ACTION=="add", OWNER="root", GROUP="sdcard", MODE="0664"
    

Isso adicionará o nó de dispositivo para o sdcard e fornecerá permissão de leitura e gravação ao grupo sdcard .
Se você encontrar um ID do produto (ou seja, 1234) ou ID do fornecedor (ou seja, abcd) em vez de nome do produto e nome do fornecedor strong> use ATTRS{idProduct}="1234", ATTRS{idVendor}="abcd" .

Se os seus dois cartões SD tiverem o mesmo ID / nome do fornecedor e id / nome do produto, esta linha deve ser suficiente. Se não adicionar uma linha adicional fornecendo as informações para o outro cartão SD.

  1. Reinicialize seu sistema

Os usuários do grupo sdcard agora devem poder montar os cartões SD.

    
por Maximilian Laule 17.01.2018 / 15:27
0

Você adicionou isso a /etc/fstab (de acordo com a página do manual, o primeiro parâmetro também pode ser um caminho de dispositivo, se eu entendi corretamente):

/dev/mmcblk0p1  /media/ExtSD01/  auto   auto,user,rw 0 0

Supondo que você tenha um sistema de arquivos da Microsoft (NTFS, FAT32 ou exFAT) no cartão SD, sugiro as seguintes modificações:

  • Substitua a opção de montagem auto por noauto para fazer o sistema inicializar bem sem um cartão SD inserido.

    Desvantagem: você deve montar a unidade manualmente, o que pode ser feito facilmente, e ela será montada de acordo com a linha em /etc/fstab

    sudo mount /media/ExtSD01/
    

    Se desejar, você pode criar um alias para ele,

    alias mtsd='sudo mount /media/ExtSD01/'
    
  • Adicione a opção de montagem umask para fornecer as permissões desejadas para todos os usuários

O resultado é a seguinte linha em /etc/fstab ,

/dev/mmcblk0p1  /media/ExtSD01/  auto   noauto,user,rw,umask=000  0  0

Veja o link a seguir, se você quiser ajustar as opções de montagem,

Como faço usar 'chmod' em uma partição NTFS (ou FAT32)?

    
por sudodus 17.01.2018 / 18:01