Mounten Sie die komprimierte TAR-Datei und aktualisieren Sie sie

Mounten Sie die komprimierte TAR-Datei und aktualisieren Sie sie

Wie mounte ich eine .tar.gz-Datei, aktualisiere sie (füge neue Dateien hinzu, bearbeite Dateien) und unmounte sie dann, sodass die Änderungen in der ursprünglichen komprimierten Datei widergespiegelt werden?

Ich bin für andere Komprimierungsformate offen, wenn keine Tools dafür vorhanden sind, dies für gzippte Tar-Dateien zu tun.

Ich habe es mit archivemount versucht, aber dadurch werden .tar.gz-Dateien im schreibgeschützten Modus gemountet.

Antwort1

Standardmäßig archivemountfunktioniert es im Lese-/Schreibmodus. Wahrscheinlich erlauben die Berechtigungen der gemounteten Tar.gz-Datei dem Benutzer nicht, sie zu aktualisieren.

Das Hinzufügen von „-o debug“ zu den Mount-Optionen könnte helfen zu verstehen, was passiert.

Antwort2

Es funktioniert gut für mich auf Fedora 20 1 , vielleicht haben Sie einen Fehler, oder alsmpromonet hat vorgeschlagen, das Archiv ist schreibgeschützt:

[root@f20 ~]# tar czf /tmp/ul137194.tar.gz -C / /etc/passwd /etc/group /etc/shells
tar: Removing leading `/' from member names
[root@f20 ~]# mkdir /tmp/ul137194
[root@f20 ~]# archivemount /tmp/ul137194.tar.gz /tmp/ul137194
[root@f20 ~]# find /tmp/ul137194
/tmp/ul137194
/tmp/ul137194/etc
/tmp/ul137194/etc/passwd
/tmp/ul137194/etc/group
/tmp/ul137194/etc/shells
[root@f20 ~]# rm /tmp/ul137194/etc/shells
rm: remove regular file ‘/tmp/ul137194/etc/shells’? y
[root@f20 ~]# echo nogroups > /tmp/ul137194/etc/group
[root@f20 ~]# umount /tmp/ul137194
[root@f20 ~]# tar xzf /tmp/ul137194.tar.gz -C /tmp/ul137194
[root@f20 ~]# find /tmp/ul137194
/tmp/ul137194
/tmp/ul137194/etc
/tmp/ul137194/etc/group
/tmp/ul137194/etc/passwd
[root@f20 ~]# cat /tmp/ul137194/etc/group
nogroups

1 archivemount-0.8.1-2.fc20.x86_64, libarchive-3.1.2-7.fc20.x86_64, fuse-2.9.3-2.fc20.x86_64

verwandte Informationen