FS#64212 - [pacman] pacman deleted all of its files and directories

Attached to Project: Arch Linux
Opened by Zachary Cook (Zeik) - Tuesday, 22 October 2019, 04:06 GMT
Last edited by Eli Schwartz (eschwartz) - Wednesday, 23 October 2019, 00:32 GMT
Task Type Bug Report
Category Packages: Testing
Status Closed
Assigned To No-one
Architecture All
Severity Critical
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
No more pacman binary and no more database!
Might be due to my use of a symlink to another disk for pacman cache directory?

Additional info:
* package version(s) : 5.2.0-2
* config and/or log files etc. :
:: Starting full system upgrade...
resolving dependencies...
looking for conflicting packages...

Package (4) Old Version New Version Net Change

testing/expac 9-1 9-2 -0.03 MiB
testing/pacman 5.1.3-1 5.2.0-2 -0.18 MiB
community-testing/pacman-contrib 1.2.0-2 1.2.0-3 0.00 MiB
community-testing/pacutils 0.8.1-1 0.9.0-1 -0.05 MiB

Total Installed Size: 5.00 MiB
Net Upgrade Size: -0.26 MiB

:: Proceed with installation? [Y/n] y
(4/4) checking keys in keyring [########################################################################################] 100%
(4/4) checking package integrity [########################################################################################] 100%
(4/4) loading package files [########################################################################################] 100%
(4/4) checking for file conflicts [########################################################################################] 100%
(4/4) checking available disk space [########################################################################################] 100%
:: Processing package changes...
error: could not open file /var/cache/pacman/pkg/pacman-5.2.0-2-x86_64.pkg.tar.xz: No such file or directory
error: could not commit transaction
error: failed to commit transaction (transaction aborted)
Errors occurred, no packages were upgraded.

Steps to reproduce:
Maybe setup cache directory as symlink to another disk?
pacman -Syu

This task depends upon

Closed by  Eli Schwartz (eschwartz)
Wednesday, 23 October 2019, 00:32 GMT
Reason for closing:  Duplicate
Additional comments about closing:   FS#50298   FS#58804 
Comment by Zachary Cook (Zeik) - Tuesday, 22 October 2019, 04:11 GMT
I should also mention the disk is refurbished from an old laptop, so may not be reliable. But I have not noticed any issue until this update, so not that likely.

Edit: This was completely incorrect, was looking at wrong disk.
Comment by Zachary Cook (Zeik) - Tuesday, 22 October 2019, 04:39 GMT
Sorry I was wrong, It lost the symlink it seems, I still have the files, including the database, just everything from pacman package is gone due to failure to find the new pacman tarball
Comment by Allan McRae (Allan) - Tuesday, 22 October 2019, 04:49 GMT
Don't use symlinks. Use bind mounts.
Comment by Zachary Cook (Zeik) - Tuesday, 22 October 2019, 05:04 GMT
Ah, good to know. I guess the cleanest way would actually be changing CacheDir right?
Comment by Allan McRae (Allan) - Tuesday, 22 October 2019, 05:06 GMT
Even better!
Comment by Eli Schwartz (eschwartz) - Wednesday, 23 October 2019, 00:32 GMT
This is absolutely a bug, but it's also a duplicate of  FS#50298  and  FS#58804 

(But yes, absolutely use CacheDir or bind mounts. The bug is that pacman allows you to break your system, when what should happen is that pacman should not permit you to perform the upgrade until you undo your symlink and correctly use a CacheDir or bind mount.)

Loading...