tar-Archiv auspacken mit extra passwd/group

10/09/2009 - 22:38 von Marc Haber | Report spam
Hi,

ich möchte gerne ein tar auspacken, das ein komplettes "Image" eines
Linux-Systems enthàlt, und daraus ein chroot bauen. In diesem tar sind
Dateiowner/group natürlich so vergeben, wie sie in dem Quellsystem in
/etc/passwd oder /etc/group waren. Nach dem Auspacken wird dann für
das chroot ein komplett neues /etc/passwd und /etc/group in den Tree
hineingeklatscht.

Packe ich das tar mit --numeric-owner aus, passen die uids/gids nach
dem Tausch des /etc/passwd und /etc/group nicht mehr; wenn ich das tar
ohne --numeric-owner auspacke, bekomme ich die usernamen-uid und
gruppennamen-gid-Zuordnung des Wirtssystems, die natürlich auch nicht
zum tar passen.

Eine Funktion, mit der man tar beim Auspacken ein eigenes passwd und
ein eigenes group-File vorwerfen kann, habe ich nicht gefunden.

Gibt es noch einen anderen Trick, dieses Problem zu lösen, oder muss
man wirklich das diff zwischen den "alten" und den "neuen" uids/gids
bilden und mit find, xargs und chown operieren?

Grüße
Marc

Marc Haber | " Questions are the | Mailadresse im Header
Mannheim, Germany | Beginning of Wisdom " | http://www.zugschlus.de/
Nordisch by Nature | Lt. Worf, TNG "Rightful Heir" | Fon: *49 621 72739834
 

Lesen sie die antworten

#1 Tim Landscheidt
10/09/2009 - 23:39 | Warnen spam
Marc Haber <mh+ wrote:

ich möchte gerne ein tar auspacken, das ein komplettes "Image" eines
Linux-Systems enthàlt, und daraus ein chroot bauen. In diesem tar sind
Dateiowner/group natürlich so vergeben, wie sie in dem Quellsystem in
/etc/passwd oder /etc/group waren. Nach dem Auspacken wird dann für
das chroot ein komplett neues /etc/passwd und /etc/group in den Tree
hineingeklatscht.

Packe ich das tar mit --numeric-owner aus, passen die uids/gids nach
dem Tausch des /etc/passwd und /etc/group nicht mehr; wenn ich das tar
ohne --numeric-owner auspacke, bekomme ich die usernamen-uid und
gruppennamen-gid-Zuordnung des Wirtssystems, die natürlich auch nicht
zum tar passen.

Eine Funktion, mit der man tar beim Auspacken ein eigenes passwd und
ein eigenes group-File vorwerfen kann, habe ich nicht gefunden.

Gibt es noch einen anderen Trick, dieses Problem zu lösen, oder muss
man wirklich das diff zwischen den "alten" und den "neuen" uids/gids
bilden und mit find, xargs und chown operieren?



Hmmm, nur /etc/{passwd,group} auspacken, Image nach /tmp ko-
pieren, dann chroot und den Rest entpacken? Oder eigene In-
tervalle je System für uids/gids vorsehen (wenn das Image
noch verànderlich ist)?

Tim

Ähnliche fragen