Pacman 7.0.0 wird jetzt Pakete als ein separater Benutzer herunterladen
Arch-Linux-Benutzer, merkt euch das! Pacman, der Standard-Paketmanager für Arch Linux, hat in Version 7.0.0 ein neues Sicherheitsfeature eingeführt. Pacman 7.0.0 bringt einige coole neue Funktionen und ein paar Änderungen mit sich, die möglicherweise ein wenig manuelles Eingreifen erfordern, besonders wenn ihr ein lokales Repository habt.
Was ist neu in pacman 7.0.0?
Vor Version 7.0.0 lud pacman Pakete mit denselben Rechten wie Ihr reguläres Benutzerkonto herunter. Ab der neuen Version 7.0.0 wird pacman nun einen separaten Benutzer mit eingeschränkten Berechtigungen beim Herunterladen verwenden. Dies ist eine Sicherheitsfunktion, um Risiken zu minimieren.
Wenn Sie jedoch ein lokales Repository haben (einen Ort auf Ihrem Computer, an dem Sie Ihre eigenen benutzerdefinierten Pakete speichern), könnte diese neue Funktion eine kleine Störung verursachen.
Das Problem mit lokalen Repositories
Angenommen, Sie haben ein lokales Repository. Dies könnte ein Ordner sein, so etwas wie: /home/username/localrepo.
Hier ist, was nach dem Update passiert:
Problem :
- Der neue Pacman-Download-Benutzer hat keinen Zugriff auf die Dateien in Ihrem lokalen Repository, weil die Berechtigungen nicht korrekt gesetzt wurden.
- Das bedeutet, dass
pacmankeine Pakete von Ihrem lokalen Repo herunterladen oder installieren kann, es sei denn, Sie beheben die Berechtigungen.
Wie man es repariert:
Um dieses Problem zu beheben, müssen Sie der alpm-Gruppe (einer Gruppe, die pacman verwendet) die Berechtigung geben, auf Ihre lokalen Repository-Dateien zuzugreifen.
Sie können dies tun, indem Sie den folgenden Befehl ausführen:
chown :alpm -R /home/username/localrepoErsetzen Sie /path/to/local/repo durch den tatsächlichen Pfad zu Ihrem lokalen Repository.
Der obige Befehl ändert die Gruppenbesitzrechte des Ordners (und aller darin enthaltenen Dateien, wegen des -R-Flags) auf die alpm-Gruppe, die von pacman verwendet wird.
Sie müssen außerdem sicherstellen, dass die Ordner in Ihrem lokalen Repository ausführbar sind, was bedeutet, dass pacman sie betreten und lesen kann. Dies können Sie bei Bedarf mit dem chmod-Befehl tun, aber normalerweise wird dies automatisch eingestellt.
Was ist mit .pacnew-Dateien?
Manchmal, wenn Sie ein Programm wie pacman aktualisieren, erstellt Arch Linux neue Konfigurationsdateien mit der .pacnew-Erweiterung.
Zum Beispiel könnten Sie eine Datei namens pacman.conf.pacnew finden. Dies sind neue Versionen von Konfigurationsdateien, aber Arch überschreibt Ihre aktuelle Konfiguration nicht automatisch, um Ihre benutzerdefinierten Einstellungen nicht durcheinanderzubringen.
Was zu tun ist:
- Sie müssen Ihre alte Konfigurationsdatei (wie
pacman.conf) mit der.pacnew-Datei (wiepacman.conf.pacnew) vergleichen. - Wenn es wichtige Änderungen in der
.pacnew-Datei gibt, sollten Sie sie in Ihre bestehende Konfigurationsdatei zusammenführen, um Probleme zu vermeiden.
Prüfsummen-Stabilität für Git-Repositories
Pacman hat auch eine Änderung vorgenommen, um zu verbessern, wie Prüfsummen für Pakete behandelt werden, die Git-Quellen verwenden. Wenn Ihr Paket Git-Quellen verwendet und eine .gitattributes-Datei hat, müssen Sie möglicherweise die Prüfsummen in Ihrer PKGBUILD-Datei aktualisieren. Dies ist eine einmalige Änderung.
Zusammenfassend;
- Pacman verwendet jetzt einen anderen Benutzer zum Herunterladen, um die Sicherheit zu verbessern.
- Wenn Sie ein lokales Repository haben, müssen Sie dessen Berechtigungen ändern, damit pacman weiterhin darauf zugreifen kann.
- Sie müssen nach dem Update
.pacnew-Dateien überprüfen und alle wichtigen Änderungen in Ihre bestehende Konfiguration übernehmen. - Wenn Sie Pakete verwenden, die aus Git-Repositorys gezogen werden, müssen Sie möglicherweise die Prüfsumme in Ihren Build-Skripten aktualisieren.
Abschließen
Das Update auf pacman 7.0.0 bringt einige großartige Verbesserungen, erfordert jedoch auch etwas manuelles Eingreifen, insbesondere wenn Sie ein lokales Repository haben. Wenn Sie den oben genannten Schritten folgen, können Sie sicherstellen, dass Ihr lokales Repository reibungslos mit dem neuen pacman-Update funktioniert. Vergessen Sie nicht, diese .pacnew-Dateien zusammenzuführen und bei Bedarf Ihre Prüfsummen zu aktualisieren.
Ressource:
- https://archlinux.org/news/manual-intervention-for-pacman-700-and-local-repositories-required/