Debians Deb-Pakete sind einfache Dinge. Alle Dateien, die das Paket installieren soll, werden in einem Archiv gespeichert.
Dieses Archiv enthält die vollständige Dateibaumstruktur sowie deren Berechtigungen und Besitzdaten. Während der Installation wird das Archiv unverändert in das Root-Dateisystem entpackt.
Ein Beispiel
Das Paket fping enthält ein Archiv mit folgenden Dateien:
/usr/bin/fping /usr/bin/fping6 /usr/share/doc/fping/README /usr/share/doc/fping/changelog.Debian.gz /usr/share/doc/fping/changelog.gz /usr/share/doc/fping/copyright /usr/share/lintian/overrides/fping /usr/share/man/man8/fping.8.gz /usr/share/man/man8/fping6.8.gz
Berechtigungen und Eigentümerdaten (wobei der Besitzer fast immer als Root gilt) werden nur aus dem Archiv übernommen.
Aus diesem Grund ist es nicht möglich, das Archiv zu extrahieren, wobei der richtige Besitz erhalten wird, ohne dass Superuser-Berechtigungen vorliegen. Ohne Kenntnis der inneren Funktionsweise von rpm und alien würde ich denken, dass alien während der Konvertierung das Quellarchiv extrahiert.
Beantwortung Ihrer Fragen:
Wie unterscheiden sich die Dateibesitzrechte, wenn sie als root ausgeführt werden, gegenüber einem normalen Benutzer?
Normale Benutzer können nur eigene Dateien erstellen und den Besitz von Dateien nicht ändern.
Warum ist der Dateibesitz in einem Paket von Belang?
Vielleicht tut es das, vielleicht auch nicht. Denken Sie daran: Ohne root sind die Dateien im Besitz der Uid, die das Paket konvertiert hat. Obwohl es sich nicht als bewährte Methode herausstellt, dass nicht privilegierte Benutzer Binärdateien in / usr / bin installieren, kann dies möglicherweise funktionieren. Aber es wird kaputt gehen, wenn das installierte Zeug der Besitzer sein muss.
Zurück zum Beispiel muss fping als root gesetzt werden, damit das Paket fehlerhaft funktioniert.