staging.inyokaproject.org

Heruntergeladenes Paket in eigenes Paket integrieren

Status: Gelöst | Ubuntu-Version: Ubuntu 16.04 (Xenial Xerus)
Antworten |

ubuch07

Anmeldungsdatum:
7. Oktober 2007

Beiträge: 107

Hallo,

Habe ein eigenes Paket erstellt welches nach Installation automatisch Software installiert und diverse optische Anpassungen durchführt, was grundsätzlich gut funktioniert.

Mir gelingt jedoch nicht, auch TeamViewer automatisch zu installieren. Mit den nachfolgend ersichtlichen Einträgen in der control-Datei lassen sich problemlos alle Abhängigkeiten für TeamViewer automatisch auflösen (Einfachheitshalber habe ich diese für den Forumsbeitrag bereinigt).

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
Package:test
Version: 0.1.1
Architecture: all
Maintainer: X X <xxx@xxx.xx>
Installed-Size: 10
Build-Depends: libc6 (>= 2.4) [amd64], libgcc1 [amd64], libasound2 [amd64], libdbus-1-3 [amd64], libexpat1 [amd64], libfontconfig1 [amd64], libfreetype6 [amd64], libjpeg62 [amd64], libpng12-0 [amd64], libsm6 [amd64], libxdamage1 [amd64], libxext6 [amd64], libxfixes3 [amd64], libxinerama1 [amd64], libxrandr2 [amd64], libxrender1 [amd64], libxtst6 [amd64], zlib1g [amd64]
Section: utils
Priority: required
Homepage: http://xxx.xxx/xxx
Description: Kurzbeschreibung
 Langbeschreibung

Leider funktioniert jedoch nachfolgender Code in der postinst-Datei nicht (Einfachheitshalber habe ich hier nur den Code für TeamViewer stehen lassen).

1
2
3
4
5
6
7
8
#!/bin/bash
# postinst script for test
#
# see: dh_installdeb(1)

set -e

sudo dpkg --add-architecture i386 && sudo apt-get -y -qq update && wget --continue 'http://download.teamviewer.com/download/teamviewer_i386.deb' && sudo dpkg -i teamviewer_i386.deb && sudo apt-get -y -qq install -f && sudo rm -f teamviewer*.deb && exit 0 || exit 1

...es erscheint die Fehlermeldung

E: Konnte Sperre /var/lib/dpkg/lock nicht bekommen - open (11: Die Ressource ist zur Zeit nicht verfügbar)
E: Sperren des Administrationsverzeichnisses (/var/lib/dpkg/) nicht möglich, wird es von einem anderen Prozess verwendet?
dpkg: Fehler beim Bearbeiten des Paketes test (--configure):
 Unterprozess installiertes post-installation-Skript gab den Fehlerwert 1 zurück
Fehler traten auf beim Bearbeiten von:
 test
E: Sub-process /usr/bin/dpkg returned an error code (1)

Kann mir bitte jemand sagen, wie ich es richtig machen muss? Lieber Gruss ubuch07

tomtomtom Team-Icon

Supporter
Avatar von tomtomtom

Anmeldungsdatum:
22. August 2008

Beiträge: 52312

sudo hat in einem postrm-Skript nichts zu suchen, das zeugt leider von Unverständnis, was man da eigentlich tut.

Die Ganzen -y Optionen will man auch nicht, wenn einem etwas an einem funktionierenden System liegt.

Das Hinzufügen der Architektur ist vollkommen überflüssig.

Dein konkretes Problem ist aber wohl das Verständnis von Operationen der Paketverwaltung.

Solange ein solcher Prozess läuft ist diese für weitere Prozesse gesperrt. Du kannst also nicht innerhalb einer Operation der Paketverwaltung eine andere darin starten.

ubuch07

(Themenstarter)

Anmeldungsdatum:
7. Oktober 2007

Beiträge: 107

Danke tomtomtom für deine Antwort.

Was den von mir geposteten Befehl betrifft, so hast du vollkommen recht, der ist schlicht weg falsch (ich habe in der Hitze des Gefechts für meine Fragestellung eine "postinst-Datei" zusammengeklickt und da fälschlicherweise einen Befehlsstring 1:1 aus einem Shell-Script reinkopiert).

Lieber Gruss ubuch07

Antworten |