Gelöstes Problem "Device or resource busy" bei apt / dpkg

Du kommst mit der Installation nicht voran oder willst noch was nachfragen? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
Benutzeravatar
weedy
Beiträge: 585
Registriert: 02.11.2002 21:47:49
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Gelöstes Problem "Device or resource busy" bei apt / dpkg

Beitrag von weedy » 22.05.2019 20:25:46

Hi,

nachdem ich bei einem upgrade von gcc-4.9 zu der Situation kam, dass die Paketabhängigkeiten nicht aufgelöst werden konnten, habe ich mich entschieden, hier mal was dazu zu posten, insbesondere deswegen, da die Suche nach der eigentlichen Fehlermeldung:

"unable to install new version of `<binaryname>': Device or resource busy"

Im Internet quasi gar nicht zu tage gefördert hat, was hilfreich hätte sein können.

Hier das Problem:

Code: Alles auswählen

# LANG=C apt-get -f install
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following extra packages will be installed:
  cpp-4.9 g++-4.9 gcc-4.9
Suggested packages:
  gcc-4.9-locales g++-4.9-multilib libstdc++6-4.9-dbg libgcc1-dbg libgomp1-dbg libitm1-dbg libatomic1-dbg libasan1-dbg liblsan0-dbg libtsan0-dbg libubsan0-dbg libcilkrts5-dbg libquadmath0-dbg
The following packages will be upgraded:
  cpp-4.9 g++-4.9 gcc-4.9
3 upgraded, 0 newly installed, 0 to remove and 797 not upgraded.
37 not fully installed or removed.
Need to get 0 B/28.1 MB of archives.
After this operation, 3772 kB disk space will be freed.
Do you want to continue? [Y/n] y
Reading changelogs... Done
(Reading database ... 577278 files and directories currently installed.)
Preparing to unpack .../g++-4.9_4.9.2-10+deb8u2_amd64.deb ...
Unpacking g++-4.9 (4.9.2-10+deb8u2) over (4.9.2-10) ...
dpkg: error processing archive /home/ox/Downloads/debian-jessie-backports/mirror/ftp.hosteurope.de/mirror/ftp.debian.org/debian-security/pool/updates/main/g/gcc-4.9/g++-4.9_4.9.2-10+deb8u2_amd64.deb (--unpack):
 unable to install new version of `/usr/bin/g++-4.9': Device or resource busy
Preparing to unpack .../gcc-4.9_4.9.2-10+deb8u2_amd64.deb ...
Unpacking gcc-4.9 (4.9.2-10+deb8u2) over (4.9.2-10) ...
dpkg: error processing archive /home/ox/Downloads/debian-jessie-backports/mirror/ftp.hosteurope.de/mirror/ftp.debian.org/debian-security/pool/updates/main/g/gcc-4.9/gcc-4.9_4.9.2-10+deb8u2_amd64.deb (--unpack):
 unable to install new version of `/usr/bin/gcc-ranlib-4.9': Device or resource busy
Preparing to unpack .../cpp-4.9_4.9.2-10+deb8u2_amd64.deb ...
Unpacking cpp-4.9 (4.9.2-10+deb8u2) over (4.9.2-10) ...
dpkg: error processing archive /home/ox/Downloads/debian-jessie-backports/mirror/ftp.hosteurope.de/mirror/ftp.debian.org/debian-security/pool/updates/main/g/gcc-4.9/cpp-4.9_4.9.2-10+deb8u2_amd64.deb (--unpack):
 unable to install new version of `/usr/bin/cpp-4.9': Device or resource busy
Processing triggers for man-db (2.7.0.2-5) ...
E: Sub-process /usr/bin/dpkg returned an error code (1)
Nachdem ich versucht hatte, die Pakete direkt per dpkg mit verschiedenen force optionen zu installieren und immer noch dieselbe Fehlermeldung bekam, wollte ich der Sache noch etwas genauer auf den Grund gehen und schaute im Quellcode von dpkg nach. Ein erster Angriffspunkt dafür ist die Fehlermeldung: "Device or resource busy", die, wer hätte es gedacht, überhaupt nicht in dpkg zu finden ist.

Also versuchte ich spasseshalber die Datei /usr/bin/g++-4.9 nach /usr/bin/g++-4.9_ zu bewegen, vieleicht liegt es ja daran.

# mv -i /usr/bin/g++-4.9 /usr/bin/g++-4.9_

Und irgendwie kam hier wieder "Device or resource busy", womit ich endlich den Verursacher des Problems ausfindig gemacht hatte.

Da die Datei sich nicht wegbewegen liess, liegt die Vermutung nahe, dass sie auch nicht überschreibbar gewesen sein muss.

Nach einem Neustart des Systems, liess sich die Operation per apt ordnungsgemäß durchführen.

Dennoch bleibt die Frage: wie kam dieser Zustand zustande?

Und wieso kann dpkg und apt nicht einfach mal vernünftige Fehlermeldungen produzieren?

Gruß,
weedy

Benutzeravatar
Blackbox
Beiträge: 4289
Registriert: 17.09.2008 17:01:20
Lizenz eigener Beiträge: GNU Free Documentation License

Re: Gelöstes Problem "Device or resource busy" bei apt / dpkg

Beitrag von Blackbox » 23.05.2019 11:59:27

Interessant wäre vielleicht auch gewesen, auf welchem Release du einen so veralteten Debiangcc verwendest und warum das nötig ist.
Eigenbau PC: Debian Sid - Kernel: 6.5.13 - Xfce 4.18 mit sway
Desktop PC: Dell Inspiron 530 - Debian Sid - Kernel: 6.5.13 - Xfce 4.18 mit sway
Notebook: TUXEDO BU1406 - Debian Sid - Kernel: 6.5.13 - Xfce 4.18 mit sway
Alles Minimalinstallationen und ohne sudo/PA/PW.
Rootserver: Rocky Linux 9.3 - Kernel: 5.14

Freie Software unterstützen, Grundrechte stärken!

Benutzeravatar
weedy
Beiträge: 585
Registriert: 02.11.2002 21:47:49
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Gelöstes Problem "Device or resource busy" bei apt / dpkg

Beitrag von weedy » 23.05.2019 13:46:38

Blackbox hat geschrieben: ↑ zum Beitrag ↑
23.05.2019 11:59:27
Interessant wäre vielleicht auch gewesen, auf welchem Release du einen so veralteten Debiangcc verwendest und warum das nötig ist.
Debian Jessie

Code: Alles auswählen

$ uname -a
Linux debian64 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1+deb8u2 (2016-10-19) x86_64 GNU/Linux
Gruß

Antworten