Não é possível alterar a permissão / propriedade / grupo de disco rígido externo no Ubuntu

11

Eu tenho um disco rígido externo conectado à minha caixa do Linux. Eu queria configurar um servidor web para acessar arquivos nele, mas a permissão em todos os arquivos e diretórios na unidade são rwx para o proprietário que é meu login local, e o grupo é o root group.

Eu preciso dos arquivos legíveis pelo usuário do apache, eu estava tentando definir todos os arquivos para ser chmod a+rwx -R * , mas isso não faz nada (não dá erros, só não tem efeito.) Eu tentei mudar o grupo usando chgrp para o meu grupo de usuários, mas isso não funcionará também, isso me dá erros que me faltam permissão mesmo quando eu executo todos esses comandos como sudo !

O que há com esse disco rígido ??? sudo chmod a+rwx * deve funcionar em qualquer coisa, certo?

    
por MikeN 19.10.2009 / 00:02

5 respostas

18

Verifique o tipo de sistema de arquivos que ele está usando primeiro com df -T :

sys@p:~$ df -T
Filesystem    Type   1K-blocks      Used Available Use% Mounted on
ext3          ext3    19222656   1050948  17195164   6% /
tmpfs        tmpfs     1684988         0   1684988   0% /lib/init/rw
udev         tmpfs       10240        64     10176   1% /dev
tmpfs        tmpfs     1684988         0   1684988   0% /dev/shm

Se ele estiver montado em /mnt/external , por exemplo, você verá isso na coluna da extrema direita. Você pode ver o tipo de sistema de arquivos na segunda coluna. Se for NTFS, você precisará de NTFS-3G (provavelmente já instalado, se não sudo apt-get install ntfs-config then gksu ntfs-config ). O Linux já possui suporte a FAT para leitura & escrever embora eles não suportem permissões .

Se você quiser uma partição NTFS montada com propriedade aplicada a um usuário / grupo específico, especifique-a nos switches de montagem:

mount -o uid=username,gid=groupname /dev/sdc /path/to/mount

Se você mudar para ext3 como sugerido acima, você pode usar chown :

chown -R user *
chown -R user .
    
por 19.10.2009 / 00:19
3

Como Kim disse, você só terá permissões e propriedade Unix em um sistema de arquivos Unix. ext3 é um bom candidato.

Se você precisar usar essa unidade sem reformatar, poderá fazê-lo com opções para o comando mount que especifica as permissões de proprietário, grupo e / ou leitura / gravação. Essas opções afetam todos os arquivos na unidade (veja a resposta de John T sobre como determinar o FSTYPE):

# list files as owned by X, use numerical UID as found in /etc/passwd
$ mount -t <FSTYPE> -o uid=X /dev/?? /path/to/mount/point

# list files as owned by group Y, use numerical GID found in /etc/passwd
$ mount -t <FSTYPE> -o gid=Y /dev/?? /path/to/mount/point

# list files as accessible per umask 
#   (022 gives rwx permissions to owner, r-x permissions to everyone else)
$ mount -t <FSTYPE> -o umask=022 /dev/?? /path/to/mount/point

# combine all of the above:
$ mount -t <FSTYPE> -o uid=X,gid=Y,umask=022 /dev/?? /path/to/mount/point
    
por 19.10.2009 / 00:24
2

É provavelmente formatado como FAT, que não suporta permissões de arquivo. Use ext3 em vez disso.

    
por 19.10.2009 / 00:08
2

Eu fiz isso e funcionou:

sudo umount /dev/sda3 /media/windows1
sudo umount /dev/sda5 /media/windows2

e depois

sudo mount -o rwx /dev/sda3 /media/windows1
sudo mount -o rwx /dev/sda5 /media/windows2

Observe que estou usando o Ubuntu 11.10 e sda3 é meu Windows C: , sda5 is G: .

    
por 10.02.2012 / 17:54
1

Então, eu tive um pouco de tempo, desde que eu tinha backups de várias máquinas na mesma unidade. Eu tive que instalar utilitários hdfsplus (hfsprogs), montar a unidade e finalmente alterar a propriedade das pastas relevantes usando o nome do usuário e do grupo.

Nota: você pode listar os pontos de montagem e dispositivos digitando apenas mount no terminal.

Primeiro:

sudo apt-get install hfsprogs

Em seguida, desmonte sua unidade se ela já tiver sido montada:

sudo umount /media/user/mount_point

(Re) Monte a unidade usando os seguintes argumentos:

sudo mount -t hfsplus -o force,rw /dev/sdb# /media/user/mount_point

Navegue até o diretório que contém as pastas do problema. Então faça:

chmod -R your_user_group:your_user_name ./target_directory

Espero que ajude.

    
por 15.07.2016 / 07:22