Mam plik na dysku twardym,
cd /media/celebisait/5AC69788C6976355
Jest mój plik o nazwie myFile.tar.gz
. Robię ls -l
,
-rw------- 2 celebisait celebisait 1387745311 Jun 6 2013 myFile.tar.gz
Wszystko wydaje się w porządku. Jednak kiedy to robię,
$ sudo chmod 755 myFile.tar.gz
Nie mam żadnych błędów, ale nic się nie dzieje, tzn. Gdy ls -l
znowu to robię , otrzymuję ten sam wynik,
-rw------- 2 celebisait celebisait 1387745311 Jun 6 2013 myFile.tar.gz
Chmod się nie zmienia .. Dlaczego?
PS: Używam Ubuntu 13.04.
Edytować:
$ 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
Edycja 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)
Edycja 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
Edycja 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
wynik polecenia byłby miłydf
.mount
?blkid
.Odpowiedzi:
TL; DR;
UWAGA: Na podstawie ciągłej aktualizacji pytania przez OP o nowe informacje ustalono, że problem polegał na tym, że montował partycję NTFS. Więc # 3 poniżej jest faktyczną odpowiedzią na jego problem. Pozostałe 2 metody pozostawiam tutaj innym, które mogą napotkać podobne problemy, które nie używają partycji NTFS.
Pomysł nr 1 - tylko do odczytu mediów (ISO / CD / DVD)?
Spójrz na wynik
mount
polecenia, w szczególności coś takiego:Podmontowane urządzenie
/media/celebisait
to prawdopodobnie plik ISO lub nośnik CD / DVD. W takim przypadku nie będzie można uzyskać dostępu do zapisu, ponieważ są one zwykle tylko do odczytu.Możesz powiedzieć, co jest zamontowane w trybie odczytu / zapisu, a tylko do odczytu, ponownie zwracając się do danych
mount
wyjściowych polecenia.Przykład
Zwróć uwagę na wynik w nawiasie. Pierwszym argumentem przed pierwszym przecinkiem jest
rw
dostęp do odczytu / zapisu. Gdyby było to urządzenie tylko do odczytu, miałobyro
tam miejsce.Alternatywna metoda
Możesz także dowiedzieć się, z którego urządzenia pochodzi określona lokalizacja na dysku twardym, korzystając z
df -h .
polecenia. Spowoduje to wyświetlenie urządzenia źródłowego bieżącego katalogu.Tutaj widzimy, że jestem w katalogu / podkatalogu, który jest częścią montowania
/home
, który jest wspierany przez urządzenie/dev/mapper/fedora_greeneggs-home
.Z nazwą urządzenia możesz tego również szukać w danych wyjściowych
mount
.Przykład
Pomysł nr 2 - Ale urządzenie jest zamontowane w trybie odczytu / zapisu!
Jeśli okaże się, że urządzenie jest zamontowane w trybie odczytu / zapisu, możesz spróbować zainstalować PySDM - Menedżer urządzeń pamięci masowej, który umożliwia pełne dostosowanie punktów montowania dysku twardego bez ręcznego dostępu
/etc/fstab
. Umożliwia także tworzenieudev
reguł dynamicznej konfiguracji urządzeń pamięci masowejkroki do odczytu / zapisu
sudo apt-get install pysdm
sudo pysdm
celebisait
Źródło: Jak mogę zmienić uprawnienia na dyskach zewnętrznych?
Pomysł nr 3 - partycje NTFS
Na podstawie danych wyjściowych opublikowanych dla polecenia:
Masz partycje NTFS, co tłumaczy, dlaczego nie mogłeś uzyskać
chmod
plików na zamontowanych partycjach NTFS. Jeśli używaszntfs-3g
modułu do uzyskania dostępu do partycji NTFS, powinieneś być w stanie odczytać / zapisać dysk, po prostu nie wpływaj na jego uprawnienia za pomocą zwykłego pakietu narzędzi uniksowych.źródło
celebisait
to jego nazwa użytkownika.Jak wspominasz o dysku twardym.
Moja odpowiedź jest taka, że
chmod
plik na partycji NTFS lub FAT32 nie jest możliwy .W rzeczywistości tylko system plików Unix / Linux jak
ext3
,ext4
wspierać te atrybuty.Wyraźnie pokazuje, że
/dev/sdb1
była to partycja NTFS.źródło
Typ
fuseblk
i dane wyjściowe programu fdisk wskazują, że twoja partycja jest partycją NTFS. Nie obsługują one systemu uprawnień do plików UNIX / LINUX, podobnie jak inne rodzime systemy plików * NIX.Rozwiązaniem jest po prostu przeniesienie pliku do systemu plików, który obsługuje te uprawnienia, takie jak root. Sposób, w jaki chcesz to zrobić, po prostu nie zadziała.
źródło
Ostatnio miałem podobny problem z partycją NTFS. Stwierdzono już, że nie można zmienić uprawnień NTFS, ale uprawnienia te można ustawić podczas montowania systemu plików. Biorąc pod uwagę identyfikatory grup lub użytkowników, którzy mają mieć dostęp do plików, możesz zrobić coś takiego:
zamontuj stronę podręcznika, abyś mógł dostosować ją do swojego przypadku użycia:
http://linux.die.net/man/8/mount
źródło
Katalog jest prawdopodobnie tylko do odczytu. Spróbuj tego:
źródło