Ich habe eine Datei auf meiner Festplatte.
cd /media/celebisait/5AC69788C6976355
Dort heißt meine Akte myFile.tar.gz
. Ich mache ein ls -l
,
-rw------- 2 celebisait celebisait 1387745311 Jun 6 2013 myFile.tar.gz
Alles scheint in Ordnung zu sein. Wenn ich es jedoch tue,
$ sudo chmod 755 myFile.tar.gz
Ich habe keine Fehler , aber nichts passiert, das heißt, wenn ich ls -l
wieder, ich die gleiche Leistung erhalten,
-rw------- 2 celebisait celebisait 1387745311 Jun 6 2013 myFile.tar.gz
Chmod ändert sich nicht .. Warum?
PS: Ich benutze Ubuntu 13.04.
Bearbeiten:
$ 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
Bearbeiten 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)
Edit 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
Bearbeiten 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
Befehlsergebnis wäre schöndf
.mount
?blkid
.Antworten:
TL; DR;
HINWEIS: Aufgrund der kontinuierlichen Aktualisierung der Frage durch das OP mit neuen Informationen wurde festgestellt, dass das Problem darin bestand, dass eine NTFS-Partition gemountet wurde. Also # 3 unten ist die eigentliche Antwort auf sein Problem. Ich lasse die anderen 2 Methoden hier für andere, die möglicherweise auf ähnliche Probleme stoßen, die keine NTFS-Partition verwenden.
Idee Nr. 1 - Nur für Medien (ISO / CD / DVD)?
Sehen Sie sich die Ausgabe des
mount
Befehls an, und zwar etwa so:Das Gerät, unter dem gemountet wird,
/media/celebisait
ist wahrscheinlich entweder eine ISO-Datei oder ein CD / DVD-Medium. In diesem Fall erhalten Sie keinen Schreibzugriff, da diese normalerweise schreibgeschützt sind.Sie können feststellen, was als read / write oder readonly gemountet ist, indem Sie erneut
mount
die Ausgabe des Befehls aufrufen .Beispiel
Beachten Sie die Ausgabe in der Klammer. Das erste Argument vor dem ersten Komma
rw
bezeichnet den Lese- / Schreibzugriff. Wenn es ein Readonly-Gerät wäre, hättero
es stattdessen ein.Alternative Methode
Mit dem
df -h .
Befehl können Sie auch herausfinden, von welchem Gerät ein bestimmter Speicherort auf Ihrer Festplatte stammt . Dies zeigt Ihnen das Quellgerät des aktuellen Verzeichnisses.Hier können wir sehen, dass ich mich in einem Verzeichnis / Unterverzeichnis befinde, das Teil des Mount ist
/home
, das vom Gerät gesichert wird/dev/mapper/fedora_greeneggs-home
.Mit dem Gerätenamen könnte man das dann auch in der Ausgabe von suchen
mount
.Beispiel
Idee Nr. 2 - Das Gerät ist jedoch mit Lese- / Schreibzugriff ausgestattet.
Wenn Sie feststellen, dass Ihr Gerät mit Lese- / Schreibzugriff aktiviert ist, sollten Sie PySDM installieren - einen Speichergeräte-Manager, der die vollständige Anpassung von Festplatten-Bereitstellungspunkten ohne manuellen Zugriff auf ermöglicht
/etc/fstab
. Außerdem könnenudev
Regeln für die dynamische Konfiguration von Speichergeräten erstellt werdenSchritte zum Lesen / Schreiben
sudo apt-get install pysdm
sudo pysdm
celebisait
Quelle: Wie kann ich Berechtigungen für externe Laufwerke ändern?
Idee # 3 - NTFS-Partitionen
Basierend auf der Ausgabe, die Sie für den Befehl gepostet haben:
Sie haben NTFS-Partitionen, was erklärt, warum Sie nicht in der Lage waren,
chmod
die Dateien auf den von NTFS bereitgestellten Partitionen zu speichern. Wenn Sie dasntfs-3g
Modul verwenden, um auf die NTFS-Partition zuzugreifen, sollten Sie in der Lage sein, die Festplatte zu lesen / schreiben, ohne ihre Berechtigungen mit der normalen Unix-Tool-Suite zu beeinträchtigen.quelle
celebisait
ist sein Benutzername.Wie Sie eine Festplatte erwähnen.
Meine Antwort ist, dass es nicht möglich ist,
chmod
eine Datei auf einer NTFS- oder FAT32-Partition zu erstellen.In der Tat , wie es nur Unix / Linux - Dateisystem
ext3
,ext4
unterstützt diese Attribute.Es zeigt deutlich, dass
/dev/sdb1
es sich um eine NTFS-Partition handelte.quelle
Der Typ
fuseblk
und die Ausgabe von fdisk zeigen an, dass Ihre Partition eine NTFS-Partition ist. Diese unterstützen das UNIX / LINUX-Dateiberechtigungsschema nicht wie andere native * NIX-Dateisysteme.Die Lösung besteht lediglich darin, die Datei in ein Dateisystem zu verschieben, das diese Berechtigungen unterstützt, wie z. B. Ihr Root. Die Art und Weise, wie Sie es tun möchten, funktioniert einfach nicht.
quelle
Ich hatte kürzlich ein ähnliches Problem mit einer NTFS-Partition. Es wurde bereits angegeben, dass in NTFS keine Berechtigungen geändert werden können, diese Berechtigungen können jedoch beim Mounten des Dateisystems festgelegt werden. Wenn Sie die IDs der Gruppen oder Benutzer angeben, die auf die Dateien zugreifen sollen, können Sie Folgendes tun:
Manpage einbinden, damit Sie sie an Ihren Anwendungsfall anpassen können:
http://linux.die.net/man/8/mount
quelle
Das Verzeichnis ist wahrscheinlich schreibgeschützt. Versuche dies:
quelle