Eu tenho um arquivo no meu disco rígido,
cd /media/celebisait/5AC69788C6976355
Meu arquivo é chamado myFile.tar.gz
. Eu faço um ls -l
,
-rw------- 2 celebisait celebisait 1387745311 Jun 6 2013 myFile.tar.gz
Tudo parece bem. No entanto, quando eu faço,
$ sudo chmod 755 myFile.tar.gz
Não tenho erros, mas nada acontece, ou seja, quando faço ls -l
novamente, recebo a mesma saída,
-rw------- 2 celebisait celebisait 1387745311 Jun 6 2013 myFile.tar.gz
Chmod não muda .. Por quê?
PS: Eu uso o Ubuntu 13.04.
Editar:
$ cd /media/celebisait/5AC69788C6976355
$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda2 89873576 42976028 42325544 51% /
none 4 0 4 0% /sys/fs/cgroup
udev 16436736 4 16436732 1% /dev
tmpfs 3289260 920 3288340 1% /run
none 5120 0 5120 0% /run/lock
none 16446280 764 16445516 1% /run/shm
none 102400 52 102348 1% /run/user
/dev/sda1 94759 2208 92551 3% /boot/efi
/dev/sdb1 767999996 541212516 226787480 71% /media/celebisait/5AC69788C6976355
/dev/sdb2 767999996 1466472 766533524 1% /media/celebisait/54D09DBDD09DA5B0
Edição 2:
$ cd /media/celebisait/5AC69788C6976355
$ mount
/dev/sda2 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/cgroup type tmpfs (rw)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
none on /sys/firmware/efi/efivars type efivarfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)
/dev/sda1 on /boot/efi type vfat (rw)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
gvfsd-fuse on /run/user/celebisait/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=celebisait)
/dev/sdb1 on /media/celebisait/5AC69788C6976355 type fuseblk (rw,nosuid,nodev,allow_other,default_permissions,blksize=4096)
/dev/sdb2 on /media/celebisait/54D09DBDD09DA5B0 type fuseblk (rw,nosuid,nodev,allow_other,default_permissions,blksize=4096)
Edição 3:
$ sudo fdisk -l /dev/sdb1
Disk /dev/sdb1: 786.4 GB, 786432000000 bytes
255 heads, 63 sectors/track, 95611 cylinders, total 1536000000 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x6e697373
This doesn't look like a partition table
Probably you selected the wrong device.
Device Boot Start End Blocks Id System
/dev/sdb1p1 ? 1936269394 3772285809 918008208 4f QNX4.x 3rd part
Partition 1 does not start on physical sector boundary.
/dev/sdb1p2 ? 1917848077 2462285169 272218546+ 73 Unknown
Partition 2 does not start on physical sector boundary.
/dev/sdb1p3 ? 1818575915 2362751050 272087568 2b Unknown
Partition 3 does not start on physical sector boundary.
/dev/sdb1p4 ? 2844524554 2844579527 27487 61 SpeedStor
Partition 4 does not start on physical sector boundary.
Partition table entries are not in disk order
Edição 4:
$ sudo fdisk -l /dev/sdb
Disk /dev/sdb: 2000.4 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders, total 3907029168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x9c73d093
Device Boot Start End Blocks Id System
/dev/sdb1 2048 1536002047 768000000 7 HPFS/NTFS/exFAT
/dev/sdb2 1536002048 3072002047 768000000 7 HPFS/NTFS/exFAT
/dev/sdb3 3072002048 3907026943 417512448 7 HPFS/NTFS/exFAT
df
resultado do comando seria bomdf
.mount
?blkid
.Respostas:
TL; DR;
NOTA: Com base na atualização contínua da pergunta pelo OP com novas informações, foi determinado que o problema era ele estar montando uma partição NTFS. Então, o terceiro item abaixo é a resposta real para o problema dele. Deixo os outros 2 métodos aqui para outros que podem encontrar problemas semelhantes que não estão usando uma partição NTFS.
Idéia # 1 - a mídia é somente leitura (ISO / CD / DVD)?
Dê uma olhada na saída do
mount
comando, especificamente algo como isto:O dispositivo montado abaixo
/media/celebisait
provavelmente é um arquivo ISO ou uma mídia de CD / DVD. Nesse caso, você não poderá obter acesso de gravação, pois normalmente eles são somente leitura.Você pode dizer o que está montado de leitura / gravação vs. somente leitura, voltando novamente para a
mount
saída do comando.Exemplo
Observe a saída entre parênteses. O primeiro argumento antes da primeira vírgula é o
rw
que indica acesso de leitura / gravação. Se fosse um dispositivo somente leitura, teria umro
lá.Método alternativo
Você também pode descobrir de que dispositivo um local específico do seu HDD é originado usando o
df -h .
comando Isso mostrará o dispositivo de origem do diretório atual.Aqui podemos ver que estou em um diretório / subdiretório que faz parte da montagem
/home
, que é apoiada pelo dispositivo/dev/mapper/fedora_greeneggs-home
.Com o nome do dispositivo, você pode procurar isso também na saída de
mount
.Exemplo
Idéia # 2 - Mas o dispositivo está montado de leitura / gravação!
Se você achar que seu dispositivo está montado como leitura / gravação, convém instalar o PySDM - um Gerenciador de Dispositivos de Armazenamento que permite a personalização completa dos pontos de montagem do disco rígido sem acesso manual
/etc/fstab
. Também permite a criação deudev
regras para configuração dinâmica de dispositivos de armazenamentoetapas para leitura / gravação
sudo apt-get install pysdm
sudo pysdm
celebisait
Fonte: Como posso alterar as permissões em unidades externas?
Idéia # 3 - partições NTFS
Com base na saída que você postou para o comando:
Você possui partições NTFS, o que explica por que você não pôde acessar
chmod
os arquivos nas partições montadas em NTFS. Se você estiver usando ontfs-3g
módulo para acessar a partição NTFS, poderá ler / gravar o disco, apenas não afetará suas permissões usando o conjunto normal de ferramentas Unix.fonte
celebisait
é o nome de usuário dele.Como você está mencionando um HDD.
Minha resposta é que não é possível
chmod
um arquivo em uma partição NTFS ou FAT32.De fato, apenas sistemas de arquivos unix / linux como
ext3
,ext4
suportam esses atributos.Isso mostra claramente que
/dev/sdb1
era uma partição NTFS.fonte
O tipo
fuseblk
e a saída do fdisk indicam que sua partição é uma partição NTFS. Eles não suportam o esquema de permissões de arquivo UNIX / LINUX como outros sistemas de arquivos nativos * NIX.A solução está apenas movendo o arquivo para um sistema de arquivos que suporta essas permissões como sua raiz. A maneira como você deseja fazer isso simplesmente não funcionará.
fonte
Eu tive um problema semelhante com uma partição NTFS recentemente. Já foi declarado que o NTFS não pode ter permissões alteradas, mas essas permissões podem ser definidas na montagem do sistema de arquivos. Dadas as identificações dos grupos ou usuários que você deseja acessar os arquivos, você pode fazer algo como:
página de manual mount para que você possa adaptá-lo ao seu caso de uso:
http://linux.die.net/man/8/mount
fonte
O diretório provavelmente é somente leitura. Tente o seguinte:
fonte