2012-03-23 3 views
2

Ich möchte Pakete auf einem ArchLinux-Rechner installieren, der keine Internetverbindung hat. Ich folge dem Link https://wiki.archlinux.org/index.php/Offline_Installation_of_Packages (Abschnitt "Normale Methode: Pacman").Installieren von Paketen auf dem Offline-ArchLinux-System

Der Befehl "pacman -Sp --noconfirm xorg-server" listet die Abhängigkeit auf, aber nicht die vollständige URL zum Herunterladen von. Irgendwelche Ideen, wie man die Liste der abhängigen Pakete mit der URL herunterladen kann. Ich benutze Pacman Version 4.0.2-libalpm v7.0.2.

+0

Ich habe das gerade mit der gleichen Version von 'Pacman' versucht und es funktioniert gut (ich habe Internetverbindung). Vielleicht versuchen Sie '--print-format% l' zu spezifizieren? Es sollte jedoch standardmäßig so sein, also glaube ich nicht, dass es irgendetwas ändern kann. Vielleicht stimmt etwas mit der von Ihnen verwendeten Paketdatenbank nicht? –

+0

mit dem Befehl "pacman -Sp --noconfirm --print-format% 1 xorg-server" druckt "% 1" in mehreren Zeilen (21-mal). Beliebige Hinweise, um die Gültigkeit der Datenbank zu überprüfen. –

+0

Es ist "l" (Kleinbuchstaben L), nicht "1", die Ziffer. –

Antwort

3

Ich reproduziert das Verhalten, das Sie beschreiben, indem Sie alle Repository-Spiegelungen deaktivieren.

$ pacman -Sp inkscape 
gc-7.1-4-i686.pkg.tar.xz 
gsl-1.15-2-i686.pkg.tar.xz 
libsigc++-2.2.10-2-i686.pkg.tar.xz 
glibmm-2.30.1-1-i686.pkg.tar.xz 
cairomm-1.10.0-2-i686.pkg.tar.xz 
pangomm-2.28.4-1-i686.pkg.tar.xz 
atkmm-2.22.6-1-i686.pkg.tar.xz 
gtkmm-2.24.2-2-i686.pkg.tar.xz 
imagemagick-6.7.6.2-1-i686.pkg.tar.xz 
inkscape-0.48.3.1-2-i686.pkg.tar.xz 

Als ich es wieder zu beheben, sieht die Ausgabe wie:

$ pacman -Sp inkscape 
ftp://mirrors.kernel.org/archlinux/extra/os/i686/gc-7.1-4-i686.pkg.tar.xz 
ftp://mirrors.kernel.org/archlinux/extra/os/i686/gsl-1.15-2-i686.pkg.tar.xz 
ftp://mirrors.kernel.org/archlinux/extra/os/i686/libsigc++-2.2.10-2-i686.pkg.tar.xz 
ftp://mirrors.kernel.org/archlinux/extra/os/i686/glibmm-2.30.1-1-i686.pkg.tar.xz 
ftp://mirrors.kernel.org/archlinux/extra/os/i686/cairomm-1.10.0-2-i686.pkg.tar.xz 
ftp://mirrors.kernel.org/archlinux/extra/os/i686/pangomm-2.28.4-1-i686.pkg.tar.xz 
ftp://mirrors.kernel.org/archlinux/extra/os/i686/atkmm-2.22.6-1-i686.pkg.tar.xz 
ftp://mirrors.kernel.org/archlinux/extra/os/i686/gtkmm-2.24.2-2-i686.pkg.tar.xz 
ftp://mirrors.kernel.org/archlinux/extra/os/i686/imagemagick-6.7.6.2-1-i686.pkg.tar.xz 
ftp://mirrors.kernel.org/archlinux/extra/os/i686/inkscape-0.48.3.1-2-i686.pkg.tar.xz 

Nun zu dem, was wahrscheinlich behoben werden muss.

1) /etc/pacman.conf

Hier ist ein Auszug aus Mine ("Repositorys" Abschnitt):

# Repository entries are of the format: 
#  [repo-name] 
#  Server = ServerName 
#  Include = IncludePath 
# 
# The header [repo-name] is crucial - it must be present and 
# uncommented to enable the repo. 
# 

[core] 
#SigLevel = PackageRequired 
Include = /etc/pacman.d/mirrorlist 

[extra] 
#SigLevel = PackageOptional 
Include = /etc/pacman.d/mirrorlist 

[community] 
#SigLevel = PackageOptional 
Include = /etc/pacman.d/mirrorlist 

2) Die Spiegelliste (/etc/pacman.d/mirrorlist)

Die Spiegelliste, die Sie in pacman.conf enthalten muss einige Datensätze unkommentiert haben.

$ head /etc/pacman.d/mirrorlist 
## 
## Arch Linux repository mirrorlist 
## Generated on 2011-08-16 
## 

## Any 
Server = ftp://mirrors.kernel.org/archlinux/$repo/os/$arch 
Server = http://mirrors.kernel.org/archlinux/$repo/os/$arch 

## Australia 

und so weiter. Beachten Sie, dass die von pacman -Sp generierten URLs tatsächlich den ersten Eintrag in der Spiegelliste verwenden.

3) Noch ein Hinweis zu den Anweisungen in der ArchWiki article: Sie müssen nicht wirklich beide .db und .tar.gz Dateien herunterladen. Die .db Dateien sind eigentlich Tarballs selbst und enthalten die gleichen Dateien und Ordner. So können Sie einfach core.db, community.db und extra.db herunterladen und in /var/lib/pacman/sync setzen.

+0

Nur neugierig. Wie hast du das Problem herausgefunden? –

+1

Ich wollte nur wissen, wo die URL-Informationen gespeichert wurden, dann sah ich, dass alle Links zu einem Spiegel waren und dieser Spiegel der erste in meiner Spiegelliste war. Außerdem wurde mir gesagt, dass '.db' Dateien die gleichen wie die restlichen Sachen dort enthielten, und ich überprüfte, dass dort keine URLs waren. –