do-release-upgrade stopped by lock files
- Inicie sesión o regístrese para enviar comentarios
$ sudo do-release-upgrade
Instructing procedure with yes, it opens a screen window with the following messages after an apt update:
E: Could not get lock /var/lib/apt/lists/lock. It is held by process 5649 (ecne)
N: Be aware that removing the lock file is not a solution and may break your system.
E: Impossível criar acesso exclusivo ao directório /var/lib/apt/lists/
E: Could not get lock /var/lib/dpkg/lock-frontend. It is held by process 5649 (ecne)
N: Be aware that removing the lock file is not a solution and may break your system.
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?
Traceback (most recent call last):
File "/tmp/trisquel-release-upgrader-9mg9ad1e/ecne", line 8, in
sys.exit(main())
File "/tmp/trisquel-release-upgrader-9mg9ad1e/DistUpgrade/DistUpgradeMain.py", line 241, in main
if app.run():
File "/tmp/trisquel-release-upgrader-9mg9ad1e/DistUpgrade/DistUpgradeController.py", line 2657, in run
return self.fullUpgrade()
File "/tmp/trisquel-release-upgrader-9mg9ad1e/DistUpgrade/DistUpgradeController.py", line 2462, in fullUpgrade
if not self.doPostInitialUpdate():
File "/tmp/trisquel-release-upgrader-9mg9ad1e/DistUpgrade/DistUpgradeController.py", line 1433, in doPostInitialUpdate
self.quirks.run("PostInitialUpdate")
File "/tmp/trisquel-release-upgrader-9mg9ad1e/DistUpgrade/DistUpgradeQuirks.py", line 103, in run
func()
File "/tmp/trisquel-release-upgrader-9mg9ad1e/DistUpgrade/DistUpgradeQuirks.py", line 133, in ecnePostInitialUpdate
self._test_and_fail_on_unmerged_usr()
File "/tmp/trisquel-release-upgrader-9mg9ad1e/DistUpgrade/DistUpgradeQuirks.py", line 2554, in _test_and_fail_on_unmerged_usr
self.controller.error(_(
AttributeError: 'DistUpgradeController' object has no attribute 'error'
Removing the lock files does not resolve the issue. Rebooting the computing, neither.
$ sudo lsb_release -a No LSB modules are available. Distributor ID: Trisquel Description: Trisquel GNU/Linux Aramo (11.0.1) Release: 11.0.1 Codename: aramo
The following apt operations work just fine, without any complain[t] about lock files: autoremove, autoclean, update, upgrade.
Right before that it is hitting "aramo" (Trisquel 11.0) repositories. I don't know if it should be hitting "ecne" (12.0) repositories. Should I try just seding /etc/apt/sources.list?
Hit https://trisquel...../packages aramo InRelease Hit https://trisquel...../packages aramo-updates InRelease Hit https://trisquel...../packages aramo-backports InRelease Hit https://trisquel...../packages aramo-security InRelease Fetched 0 B in 0s (0 B/s) Reading package lists... Done Building dependency tree... Done Reading state information... Done Reading package lists... Done E: Could not get lock /var/lib/apt/lists/lock. It is held by process 7193 (ecne) N: Be aware that removing the lock file is not a solution and may break your system. E: Unable to lock directory /var/lib/apt/lists/ E: Could not get lock /var/lib/dpkg/lock-frontend. It is held by process 7193 (ecne) N: Be aware that removing the lock file is not a solution and may break your system. E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?
Rebooting and running from tty1 I removed those lock files, but the error is the same. The only difference is that I was prompted to choose how to deal with the error file, which did not happened when running in a console inside the graphical session. The output file is in /var/crash and has 1,5 M with apparently binary content after this traceback:
PythonArgs: ['/usr/bin/do-release-upgrade', '--mode=server', '--frontend=DistUpgradeViewText']
Traceback:
Traceback (most recent call last):
File "/tmp/trisquel-release-upgrader-ytxepwxq/ecne", line 8, in
sys.exit(main())
File "/tmp/trisquel-release-upgrader-ytxepwxq/DistUpgrade/DistUpgradeMain.py", line 241, in main
if app.run():
File "/tmp/trisquel-release-upgrader-ytxepwxq/DistUpgrade/DistUpgradeController.py", line 2657, in run
return self.fullUpgrade()
File "/tmp/trisquel-release-upgrader-ytxepwxq/DistUpgrade/DistUpgradeController.py", line 2462, in fullUpgrade
if not self.doPostInitialUpdate():
File "/tmp/trisquel-release-upgrader-ytxepwxq/DistUpgrade/DistUpgradeController.py", line 1433, in doPostInitialUpdate
self.quirks.run("PostInitialUpdate")
File "/tmp/trisquel-release-upgrader-ytxepwxq/DistUpgrade/DistUpgradeQuirks.py", line 103, in run
func()
File "/tmp/trisquel-release-upgrader-ytxepwxq/DistUpgrade/DistUpgradeQuirks.py", line 133, in ecnePostInitialUpdate
self._test_and_fail_on_unmerged_usr()
File "/tmp/trisquel-release-upgrader-ytxepwxq/DistUpgrade/DistUpgradeQuirks.py", line 2554, in _test_and_fail_on_unmerged_usr
self.controller.error(_(
AttributeError: 'DistUpgradeController' object has no attribute 'error'
UserGroups: N/A
ProblemType: Crash
Date: Sat Apr 18 10:31:55 2026
DistroRelease: Trisquel 12.0.
Package: trisquel-release-upgrader-core 1:12.0.28
Tags: dist-upgrade
VarLogDistupgradeAptclonesystemstate.tar.gz: base64
H4sICAAAAAAC/1ZhckxvZ0Rpc3R1cGdyYWRlQXB0Y2xvbmVzeXN0ZW1zdGF0ZS50YXIuZ3oA
[etc.]
I FORGOT this: I tried also the graphical interface for the upgrade. It was just crashing at that point, without error messages.
I just tried do-release-upgrade in another machine with Trisquel 11.0. Exactly the same error.
(In this one I had to mkdir /var/crash, because it complained with more messages without it and it was not possible to read the first error messages in the screen without scrolling within screen, that was not working with arrows or Emacs shortcuts. The user should know how to do it.)
Please join the this issue, to track it properly
https://gitlab.trisquel.org/trisquel/package-helpers/-/issues/245
I just registered. I tried to upgrade in two production machines. What is the best way to install a VM with Trisquel 11.0 in Trisquel 12.0 to experiment?
It's very likely that you won't get that behavior from a T11 machine, but a T10 upgraded to a T11, then upgraded for a T12.
Please try this script and help us confirm that the latest version actually works.
https://gitlab.trisquel.org/trisquel/package-helpers/-/issues/245#3-current-version-of-the-script
Before seeing your reply I did as Magic Banana suggested. Installing usrmerge solved the issue; I thought usrmerge could be a dependency of trisquel-base or trisquel-release-upgrader-core, but you are saying this only affects previously T10 machines upgraded to T11. I will try that version of the script on the other machine.
In fact, the upgrade in the first machine just failed with the following message:
The package 'trisquel-desktop-common' is marked for removal but it is in the removal deny list.
Should I try that version of the script or you would need to update it first? My gitlab account is still suspended.
Same symptom [in the first error reported] here: https://askubuntu.com/questions/1525165/kubuntu-22-04-24-04-fails-while-calculating-the-upgrade ― but not the [second] since there is no installed package from outside Trisquel repositories. One should not need to remove the package that is in some denial list.
In a fresh T12 installation, trisquel-desktop-common is present. Why is the upgrade mechanism trying to remove it from T11?
I created a new thread for this issue in specific: https://trisquel.info/en/forum/t11-t12 (sorry, the title got out incomplete and I cannot edit or remove that)
File "/tmp/trisquel-release-upgrader-9mg9ad1e/DistUpgrade/DistUpgradeQuirks.py", line 2554, in _test_and_fail_on_unmerged_usr
Install the usrmerge package. Then do-release-upgrade should work.
I have got usrmerge installed.
I did a do-release-upgrade
and all the messages were ok.
After starting the laptop anew
it always opened the boot menu
and never was able to open trisquel.
what can I do?
As a matter of fact, Ark74 says in that gitlab thread that one should not install usrmerge, but run the new version of the script instead.
usrmerge has to be installed in order for the upgrade to go on.
The issue is that an error prevents the error message that instructs the user to do so to be displayed.
Running the new version of the script only makes sure that it actually fixes the issue and prompts the user to install usrmerge. It looks like the script still needs to be updated, so in the meanwhile users should be advised to install ursmerge if the above errors show up.
After starting the laptop anew it always opened the boot menu and never was able to open trisquel.
By "boot menu", you mean a menu of the BIOS/EFI? If so, I would try to try to reinstall GRUB, following https://help.ubuntu.com/community/Grub2/Installing#via_ChRoot
thanks very much for that site.
I went through it, almost at the last step it said:
does not find an efi ...
Probably Guix SD has taken the EFI partition, which I had installed.
So I reinstalled Trisquel 12 in manually creating a second EFI /bootable partition for Trisquel.
This installation went quick,
To install Trisquel is quicker than updating from Trisquel 11.

