Problema de permissão na pasta / media / user me impede de acessar mídia externa

7

Quando eu conecto meu disco rígido externo, insiro um DVD ou tento ver o que tenho no meu pen drive, um comportamento peculiar é o resultado normal.

Os sistemas de arquivos são montados corretamente. Quando eu logar como root através de sudo su , eu posso ver o conteúdo do /media/casper/externaldrive perfeitamente bem. Meu usuário, no entanto, casper , não pode. O Ubuntu responde a todas as ações que envolvem a localização Permission denied :

casper@casper-desktop:/media$ ll /media/casper/externaldrive
ls: cannot access '/media/casper/externaldrive': Permission denied

Eu decidi investigar a permissão (problemas) da pasta /media . Como casper , vejo o seguinte:

casper@casper-desktop:/media$ ls -alF
total 16
drwxr-xr-x  4 root root 4096 apr 21 17:47 ./
drwxr-xr-x 25 root root 4096 jul 29 15:43 ../
drwxr-x---  3 root root 4096 aug  3 21:02 casper/
lrwxrwxrwx  1 root root   45 apr 21 17:47 .directory -> /etc/kubuntu-default-settings/directory-media
lrwxrwxrwx  1 root root   42 apr 21 17:47 .hidden -> /etc/kubuntu-default-settings/hidden-media
drwxr-xr-x  2 root root 4096 feb 29 23:56 home/

O que me impressionou foi que ele disse total 16 , enquanto há apenas no máximo 6 listagens. Então eu corri o comando novamente, mas como root . O resultado foi o mesmo, estranho. (alguém pode me esclarecer sobre isso?)

De qualquer forma, o que mais me impressionou foi que o diretório /media/casper não é meu e também não pode ser acessado por mim. Eu fiquei tentada a apenas chown -R as bazinkas, mas depois que eu me peguei eu pesquisei algo como "Pasta de usuário de mídia e não minha, me ajude".

Demorou um pouco, mas finalmente me deparei com isso thread, onde os usuários explicam o objetivo das pastas 750 root:root /media/user . Ele garante que apenas o root possa montar, visualizar e gerenciar sistemas de arquivos, dos quais as permissões individuais são alteradas para o usuário real.

Então, se minhas informações estiverem corretas, as permissões /media/casper/externaldrive devem ser favoráveis para mim. Eu verifiquei,

root@casper-desktop:/media/casper# ll
total 12
drwxr-x--- 3 root   root   4096 aug  3 21:02 ./
drwxr-xr-x 4 root   root   4096 apr 21 17:47 ../
drwxrwxrwx 1 casper casper 4096 aug  3 20:20 externaldrive/

E este parece ser o caso.

Então é aí que estou preso. O sistema de arquivos tem permissões para mim até o final da árvore de diretórios, mas não consigo acessar um único arquivo. Isso é o mesmo para as unidades de CD e USB.

Quem pode me ajudar a acessar meu precioso?

Ah, e a propósito. O encadeamento mencionado fala sobre a ACL nessas pastas /media/user , indicado por um + após as permissões regulares, como drwxr-x---+ 3 root root . Meu sistema não mostra isso. A ACL está nessas pastas padrão para o Ubuntu ou o usuário tinha coisas especiais acontecendo, e eu deveria estar preocupado que este seja o local de onde vem o meu problema?

Obrigado pela leitura.

    
por MicroParsec 03.08.2016 / 22:11

2 respostas

11

Desde as permissões & amp; propriedade de /media/casper é

drwxr-x---  root root 

Sem + para ACLs ( Listas de controle de acesso ), é claro que somente o root pode abrir, digitar, ler ou escreva para este diretório. Usuários humildes como nós obtêm as permissões no final da string --- : (

Nós, pessoas sem privilégios, obtemos permissão para acessar esse local com as ACLs. Eu não tenho certeza porque você não tem isso, mas você pode configurá-los, o que pode ser simples ou exigir um pouco de ajustes:

  • o pacote acl é obrigatório (verifique apt-cache policy acl )
  • o sistema de arquivos deve ser montado com a opção acl

Para verificar o último (substitua sdxY apropriadamente pela sua partição raiz):

sudo tune2fs -l /dev/sdxY | grep "Default mount options:"

deve retornar:

Default mount options:    user_xattr acl

As opções de montagem padrão estão definidas em /etc/mke2fs.conf

Eles podem ser substituídos, então verifique:

cat /proc/mounts | grep sdxY

parece algo como:

/dev/sdxY / ext4 rw,relatime,errors=remount-ro,data=ordered 0 0

O texto acima está correto, ( acl não precisa ser mencionado), mas se ele diz noacl , você precisa alterá-lo.

Você pode adicionar a opção às opções de montagem padrão como esta:

sudo tune2fs -o acl /dev/sdxY

Ou você pode adicionar acl às opções da linha de partição raiz em /etc/fstab , por exemplo:

UUID=whatever /     ext4    errors=remount-ro,acl    0       1

Com as ACLs ativadas, use setfacl para adicionar permissões para você mesmo. Para dar username ler e executar permissões em / media / casper (você precisa executar permissão para entrar em um diretório ou pesquisar seu conteúdo):

sudo setfacl -m u:username:rx /media/casper

Você pode substituir username por uid (provavelmente você é 1000 - verifique com o comando id )

sudo setfacl -m u:1000:rx /media/casper

para ver as permissões de ACL que você usa getfacl , como Oli fez em sua resposta

getfacl /media/casper

Para remover as permissões da ACL de um usuário

sudo setfacl -x u:username /media/casper

Para limpar todas as permissões da ACL

sudo setfacl -b /media/casper

Nota: Eu me enganei e fiz uma pergunta sobre por que existem tantas entradas em /media . A resposta é aqui

    
por Zanna 09.08.2016 / 19:54
1

Quando você quiser dar permissão de acesso ao Windows Drive a partir do Ubuntu:

O comando normal chmod não funcionará se for o drive do windows ntfs.

Faça o seguinte, funciona para mim.

abra o arquivo / etc / mtab

gedit / etc / mtab

Encontre o nome da unidade neste arquivo (Basta passar o mouse sobre a unidade para a qual você está procurando solução, no meu caso a GUI está mostrando um nome diferente e no mouse mostra / media / nome do usuário / nome da unidade)

agora em etc / mtab: procure o drive-name no arquivo e verifique para qual unidade sua unidade montada foi atribuída (no meu caso - / dev / sda4)

agora monte esta unidade como:

sudo ntfs-3g / dev / sda4 / media / nome de usuário

Se você não sabe seu nome de usuário, basta abrir o terminal e entrar

quem sou eu?

agora eu poderia executar meus executáveis. mas eu não vou conseguir ver o conteúdo do drive-name, então eu desmontei o drive e o montei novamente.

    
por Hridaynath 27.10.2017 / 14:17