
Estou no Ubuntu 14.04, queria criar outra conta, além da minha conta de administrador, para meus familiares usarem para não interromper meu trabalho. O problema é que não consigo conceder à outra conta acesso à partição NTFS que contém os dados e tentei algumas soluções mencionadas nos fóruns, mas nada funcionou. Ainda assim, o usuário que faz login primeiro quando a máquina é reinicializada parece controlar essa partição e proibir qualquer outro usuário de acessá-la, mesmo depois de ter feito logout. O único truque que descobri para funcionar édesmontaressa partição antes de desconectar o usuário atual. Dessa forma, o próximo que fizer login serámontara partição e acesse-a.
Minha pergunta realmente é se é assim que o acesso à partição funciona entre diferentes usuários de máquinas, quero dizer desmontar qualquer partição que você esteja usando para que outro usuário possa usá-la depois de você, ou que não consegui conceder acesso a isso corretamente partição?
Responder1
A maneira mais fácil e provavelmente a melhor de conseguir isso, se você precisar disso o tempo todo para todos os usuários, sempre que o computador estiver ligado, é definir o ponto de montagem e as regras para montar a partição no formato /etc/fstab
. Ao fazer isso, você pode fornecer direitos de acesso automaticamente quando a partição/unidade for montada.
Esta é uma prática muito mais avançada, mas se o dispositivo com a partição NTFS estiver sempre conectado ao computador de qualquer maneira, isso elimina algumas dores de cabeça que você está enfrentando e automatiza efetivamente o fornecimento de controles de segurança em torno dos dados e nos permite na verdade, modifique os controles ao longo do tempo, sem ter que remontar manualmente as coisas com diferentes opções ou usuários a cada vez.
Tenho algumas outras seções nesta resposta.
- A primeira é uma das minhas
fstab
entradas NTFS, que é para a partição do Windows no meu computador Ubuntu (e sou o único usuário no computador). - A segunda seção pega minha
fstab
entrada e explica as opções de montagem. - A terceira seção fornece meu procedimento sugerido para fornecer acesso 'seguro' à partição, montagem automática na inicialização e um conjunto decente de opções de montagem para o seu caso (incluindo criar um 'grupo de usuários' no qual você adiciona usuários que têm permissão para acessar o dados na partição montada. Esse grupo de usuários atua como um 'controle de acesso', assim como as permissões de arquivo específicas que estão sendo aplicadas.)
- A quarta seção lhe dará uma
/etc/fstab
linha potencial para usar, desde que você me tenha ouvido na terceira seção.
(1) Minha fstab
entrada
Infelizmente, tenho uma partição NTFS no meu laptop e preciso torná-la legível para mim e para os serviços do sistema ...
# Windows Partition - targetted for /media/win7
UUID=UUIDOFPARTITION /media/win7 ntfs-3g defaults,locale=en_US.utf8,windows_names,umask=7000,uid=1000,gid=1000,user 0 0
O que esta linha significa? Bem, a primeira linha com um #
na frente é um comentário. A segunda linha é a parte mais importante, que é a fstab
entrada real:
- Eu identifico a partição pelo UUID, que é uma string que identifica a partição. Você pode obter o UUID de qualquer partição fazendo
sudo blkid /dev/sda1
(substituindo/dev/sda1
pelo ID real da sua partição, portanto, se estiver em um segundo disco e for a terceira partição na tabela de partição do segundo disco, então possivelmente/dev/sdb3
estaria neste comando. Eu tiro as aspas ao redor daUUID=
linha em minhafstab
entrada.) - Eu monto
/media/win7
na inicialização. - É uma partição NTFS, então passo para
fstab
antfs-3g
opção para que saiba que é NTFS. - Eu forneço as opções de montagem padrão e mais algumas (explico isso mais tarde).
- O quinto campo determina se os sistemas de arquivos precisam ser despejados ou não, mas como isso não é necessário, passei para ele um
0
. - O sexto campo é usado pelo fsck para determinar a ordem das verificações do sistema de arquivos no momento da inicialização, mas como não preciso disso, passo um
0
.
(2) Opções de montagem
Eu passo algumas opções de montagem:
defaults
- passa opções de montagem padrão (rw
- leitura/gravação,suid
- permite que os bits set-user-identifier ou set-group-identifier tenham efeito,dev
- interpreta caracteres ou bloqueia dispositivos especiais no sistema de arquivos,exec
- permite execução de binários,auto
- permite montagem com a-a
opção demount
,nouser
- proíbe a montagem de um usuário (substituída posteriormente),async
- permite E/S assíncrona com o sistema de arquivos.)locale=en_US.utf8
- impõe a localidade do inglês dos EUA com UTF8windows_names
- impõe restrições de nome do Windows para novos arquivos na partição.umask=7000
- Basicamente, chmod inverso. Defina quais são as permissõesnãopermitido para arquivos. Essencialmente, não proíbo nada de leitura/gravação/execução aqui, portanto, todos os arquivos no local montado obtêm, efetivamente, privilégios de leitura, gravação e execução. Eu não quero nenhum dos bits especiais definidos (setuid, setgid, sticky), então tenho que eliminá-los do primeiro octeto - já que a soma numérica deles é '7' e estou proibindo essas permissões, eu coloque um 7 inicial.uid=1000
,gid=1000
- Monte a partição nessa pasta com propriedade de usuário e grupo de UID (ID do usuário) e GID (ID do grupo) de1000
(este é o usuário e grupo do meu usuário,teward
no sistema Ubuntu).user
- Permitir que um usuário monte ou desmonte o diretório. Substitui anouser
opção emdefaults
.
(3) Uma solução para você, de forma segura
Provavelmente poderíamos simplificar as opções de montagem para serem essas opções, para o seu caso de uso, já que os usuários estão acessando os dados e não o sistema. No entanto, vamos fazer isso de maneira segura. Vamos criar um grupo de usuários que forneceria leitura/gravação/execução aqui.
addgroup ntfs-users
- Isto criará um grupo de usuários chamado 'ntfs-users'.
id -g ntfs-users
- Isso nos dará um ID de grupo numérico para 'usuários NTFS'. Precisamos disso para a gid=
opção de montagem.
usermod -a -G ntfs-users USERNAME
- adicione o USERNAME
usuário ao ntfs-users
grupo que acabamos de criar.
Agora, podemos utilizar esta sequência de opções de montagem:
rw,exec,async,auto,user,locale=en_US.utf8,windows_names,umask=7007,gid=654
O que isso faz e minha string no meu fstab não é:
- Escolha certas opções que queremos usar
defaults
- Permite que
uid
o usuário proprietário seja qualquer (geralmente root na montagem da inicialização) - NÃO permite que usuários montem/desmontem
- Define a propriedade de 'grupo' do ponto de montagem (e, portanto, o acesso aos dados internos) para Group ID
654
, cujo ID de grupo hipotéticontfs-users
criamos acima - Não permite que o conjunto de usuários 'todos os demais' (ou seja, nem o usuário proprietário nem ninguém no
ntfs-users
grupo) tenha acesso aos dados.
Se você deseja possuir os dados, ou seja, ser o usuário proprietário em vez de root
, adicione novamente a uid=
opção. Use id -u YOURUSERNAME
e substitua YOURUSERNAME
pelo seu nome de usuário para obter o ID do usuário ( uid
) para usar com essa opção.
(4) Uma possível /etc/fstab
entrada para SEU caso de uso, supondo que você me ouviu na seção 3
Obtenha o UUID da partição, então isso pode ser algo como sua /etc/fstab
linha:
UUID=0123456789ABCDEF /mnt ntfs-3g rw,exec,async,auto,user,locale=en_US.utf8,windows_names,umask=7007,gid=654 0 0
Substitua o valor UUID=
pelo UUID da partição que vocêquererpara montar, substitua /mnt
pelo ponto de montagem em seu sistema, substitua o valor gid=
nas opções de montagem pelo ID do grupo que ntfs-users
criamos e, se desejar ter seu usuário como proprietário em vez de root
, adicione uma uid=
opção, fornecendo o uid
para o seu usuário, como afirmei como fazer isso anteriormente.