pacman - Syy: Fehler: Beim Abrufen der Datei „packages.db“ ist ein Fehler aufgetreten.

pacman - Syy: Fehler: Beim Abrufen der Datei „packages.db“ ist ein Fehler aufgetreten.

Ich führe einen Manjaro-Container in einer AWS Cloud9-Maschine mit aus docker container run --interactive --tty manjarolinux/build bash, und der erste von mir ausgeführte Befehl, pacman -Syy, schlägt mit der folgenden Ausgabe fehl:

# pacman -Syy
:: Synchronizing package databases...
error: failed retrieving file 'packages.db' from disk : Couldn't open file /build/packages/packages.db
error: failed to update packages (download library error)
 core                                                                                                          167.5 KiB   722 KiB/s 00:00 [#####################################################################################] 100%
 extra                                                                                                        1986.5 KiB  2.37 MiB/s 00:01 [#####################################################################################] 100%
 community                                                                                                       5.8 MiB  3.10 MiB/s 00:02 [#####################################################################################] 100%
 multilib                                                                                                      192.6 KiB  0.00   B/s 00:00 [#####################################################################################] 100%
error: failed to synchronize all databases

/build/Verzeichnis ist leer, also existiert diese Datei nicht. Was ist der Zweck dieser Datei? Und wie kann ich dieses Problem lösen?

Ich muss Pakete im Container installieren, aber Pacman scheint im Moment nutzlos.


/etc/pacman.conf:

#
# /etc/pacman.conf
#
# See the pacman.conf(5) manpage for option and repository directives

#
# GENERAL OPTIONS
#
[options]
# The following paths are commented out with their default values listed.
# If you wish to use different paths, uncomment and update the paths.
#RootDir     = /
#DBPath      = /var/lib/pacman/
#CacheDir    = /var/cache/pacman/pkg/
#LogFile     = /var/log/pacman.log
#GPGDir      = /etc/pacman.d/gnupg/
#HookDir     = /etc/pacman.d/hooks/
HoldPkg      = pacman glibc manjaro-system
# If upgrades are available for these packages they will be asked for first
SyncFirst    = manjaro-system archlinux-keyring manjaro-keyring
#XferCommand = /usr/bin/curl -L -C - -f -o %o %u
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
#CleanMethod = KeepInstalled
Architecture = auto

# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
#IgnorePkg   =
#IgnoreGroup =

#NoUpgrade   =
#NoExtract   =

# Misc options
#UseSyslog
#Color
#TotalDownload
CheckSpace
#VerbosePkgLists

# By default, pacman accepts packages signed by keys that its local keyring
# trusts (see pacman-key and its man page), as well as unsigned packages.
SigLevel    = Required DatabaseOptional
LocalFileSigLevel = Optional
#RemoteFileSigLevel = Required

# NOTE: You must run `pacman-key --init` before first using pacman; the local
# keyring can then be populated with the keys of all official Manjaro Linux
# packagers with `pacman-key --populate archlinux manjaro`.

#
# REPOSITORIES
#   - can be defined here or included from another file
#   - pacman will search repositories in the order defined here
#   - local/custom mirrors can be added here or in separate files
#   - repositories listed first will take precedence when packages
#     have identical names, regardless of version number
#   - URLs will have $repo replaced by the name of the current repo
#   - URLs will have $arch replaced by the name of the architecture
#
# 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.
#

[packages]
SigLevel = Optional TrustAll
Server = file:///build/packages

[core]
Include = /etc/pacman.d/mirrorlist

[extra]
Include = /etc/pacman.d/mirrorlist

[community]
Include = /etc/pacman.d/mirrorlist

# If you want to run 32 bit applications on your x86_64 system,
# enable the multilib repositories as required here.

[multilib]
Include = /etc/pacman.d/mirrorlist

# An example of a custom package repository.  See the pacman manpage for
# tips on creating your own repositories.
#[custom]
#SigLevel = Optional TrustAll
#Server = file:///home/custompkgs

Antwort1

Kommentieren Sie die 3. Zeile zu den benutzerdefinierten Repos.

[packages] 
SigLevel = Optional TrustAll  
Server = file:///build/packages

Wenn Sie es nie geändert haben. Ich weiß nicht, warum die benutzerdefinierten Repos festgelegt sind. Aber Sie verwenden sicherlich nicht Ihre eigenen Repos. Daher müssen die benutzerdefinierten Repos kommentiert werden.

verwandte Informationen