Start-stop deamon : introuvable via which, find, locate, whereis

Bonjour, je rencontre des problèmes sur ma debian survenus je dois dire sans que je me rende compte.

Après avoir eu un problème d’affichage graphique sur mon log de session, j’ai du hard reboot et aller sur un shell dans les options avancées proposées par GRUB.

Seulement, quand j’utilise apt ou même dpkg directement je recontre le problème :

dpkg: avertissement: start-stop-deamon introuvable dans la variable PATH ou non exécutable
dpkg: erreur: 1 programme attendu non trouvé dans la variable PATH
Note : la variable PATH du superutilisateur doit normalement contenir /usr/local/sbin, /usr/sbin et /sbin/ 
E: Sub-process /usr/bin/dpkg returned an error code (2)

J’ai consulté plusieurs post sur plusieurs forum. J’ai bien vérifié le PATH, le fichier sudoers, j’ai consulté un bug reporté sur le site de debian, j’ai testé en faisant une commande PATH=lepath apt-get upgrade et ça a renvoyé le même problème.

Et de toute façon, start-stop-deamon est introuvable dans l’arborescence.

Qu’en pensez-vous ?

Lorsque l’on cherche une commande cmd le système réagit différemment si on est simple utilisateur ou administrateur (super utilisateur root uid=0). En effet la variable PATH n’est pas la même pour un utilisateur lambda ou pour l’administrateur.

fp2@debpacha:~$ which start-stop-daemon
fp2@debpacha:~$ sudo which start-stop-daemon
[sudo] Mot de passe de fp2 : 
/sbin/start-stop-daemon
fp2@debpacha:~$ 

Dans le premier cas, la commande d’administration start-stop-daemon n’est pas trouvée, c’est vraisemblablement ce qui vous arrive.

Prenez l’habitude de lancer apt ou dpkg soit en étant root soit via sudo. Par contre pour des recherches avec dpkg-query --search pas besoin de sudo.

Qu’est-ce qui vous permet d’affirmer ceci ?
Donner le retour de

file  /sbin/start-stop-daemon

D’autre part cette commande semble être fournie par dpkg

fp2@debpacha:~$ dpkg-query --search /sbin/start-stop-daemon
dpkg: /sbin/start-stop-daemon
fp2@debpacha:~$ 

Donc reprenez calmement depuis le début, ne modifiez pas la variable PATH de l’administrateur et installez et utilisez sudo et l’horizon devrait s’éclaircir.

Cordialement,
Regards,
Mit freundlichen Grüßen,
مع تحياتي الخالصة

F. Petitjean
Ingénieur civil du Génie Maritime.

I hope to die before I have to use Microsoft Word.
- Donald E. Knuth, 2001-10-02 in Tübingen

Bonsoir, merci pour votre réponse.

J’ai fait les commandes comme vous me les proposez. Voici ce que j’obtiens :

root@debian-robin:~# which start-stop-daemon
root@debian-robin:~# sudo which start-stop-daemon
root@debian-robin:~# file /sbin/start-stop-daemon
/sbin/start-stop-daemon: cannot open `/sbin/start-stop-daemon' (No such file or directory)
root@debian-robin:~# 

Je suis connecté en root peut-être ça poserait un problème, je devrais rester en user normal et passer par sudo?

EDIT: Mon shell avec la dernière commande dpkg

root@debian-robin:~# dpkg-query --search /sbin/start-stop-daemon
dpkg: /sbin/start-stop-daemon
root@debian-robin:~#

Avez-vous une vraie Debian et quelle version ?
Donnez le retour de

fp2@debpacha:/var/cache/apt/archives$ lsb_release -a
No LSB modules are available.
Distributor ID:	Debian
Description:	Debian GNU/Linux 9.3 (stretch)
Release:	9.3
Codename:	stretch
fp2@debpacha:/var/cache/apt/archives$ 

Il semblerait que l’installation du paquet dpkg ne soit pa complète. Si votre ordinateur est un intel ou AMD en 64 bits lancez

fp2@debpacha:/var/cache/apt/archives$ ls -l dpkg*
-rw-r--r-- 1 root root 2106696 mai   18  2017 dpkg_1.18.24_amd64.deb
-rw-r--r-- 1 root root 1591874 mai   18  2017 dpkg-dev_1.18.24_all.deb
fp2@debpacha:/var/cache/apt/archives$ 

et si vous obtenez les mêmes dates et tailles vous vous tenter un

dpkg --install  dpkg_1.18.24_amd64.deb

mais il est fort possible qu’une réinstallation s’impose (si cette opération échoue ou si il y a d’autres composants essentiels non complets ).

Cordialement,
Regards,
Mit freundlichen Grüßen,
مع تحياتي الخالصة

F. Petitjean
Ingénieur civil du Génie Maritime.

« Celui qui, parti de rien, n’est arrivé nulle part n’a de merci à dire à personne !! »
Pierre Dac

Hélas les retours me paraissent moyens :

root@debian-robin:/var/cache/apt/archives# lsb_release -a
No LSB modules are available.
Distributor ID:	Debian
Description:	Debian GNU/Linux 9.2 (stretch)
Release:	9.2
Codename:	stretch
root@debian-robin:/var/cache/apt/archives# 
root@debian-robin:/var/cache/apt/archives# ls -l dpkg*
-rw-r--r-- 1 root root 2133704 mai   18  2017 dpkg_1.18.24_i386.deb
-rw-r--r-- 1 root root 1591874 mai   18  2017 dpkg-dev_1.18.24_all.deb
root@debian-robin:/var/cache/apt/archives# 
root@debian-robin:/var/cache/apt/archives# dpkg --install dpkg_1.18.24_amd64.deb
dpkg: avertissement: « start-stop-daemon » introuvable dans la variable PATH ou non exécutable
dpkg: erreur: 1 programme attendu non trouvé dans la variable PATH ou non exécutable
Note : la variable PATH du superutilisateur doit normalement contenir /usr/local/sbin, /usr/sbin et /sbin
root@debian-robin:/var/cache/apt/archives# 
root@debian-robin:/var/cache/apt/archives# dpkg --install  dpkg_1.18.24_amd64.deb
dpkg: avertissement: « start-stop-daemon » introuvable dans la variable PATH ou non exécutable
dpkg: erreur: 1 programme attendu non trouvé dans la variable PATH ou non exécutable
Note : la variable PATH du superutilisateur doit normalement contenir /usr/local/sbin, /usr/sbin et /sbin
root@debian-robin:/var/cache/apt/archives# 

Effectivement on se mort la queue :disappointed_relieved:
Comme les versions correspondent il reste la solution d’extraire ce fameux binaire du paquet Par exemple, vous pourriez copier le .deb sur /tmp et procéder ainsi

fp2@debpacha:/tmp$ l dpkg_1.18.24_amd64.deb
2060 -rw-r--r-- 1 fp2 fp2 2106696 déc.  19 22:32 dpkg_1.18.24_amd64.deb
fp2@debpacha:/tmp$ ar x dpkg_1.18.24_amd64.deb data.tar.xz
fp2@debpacha:/tmp$ l data.tar.xz
2052 -rw-r--r-- 1 fp2 fp2 2099956 déc.  19 22:34 data.tar.xz
fp2@debpacha:/tmp$ less data.tar.xz
fp2@debpacha:/tmp$ less data.tar.xz | fgrep sbin
drwxr-xr-x root/root         0 2017-05-17 13:16 ./sbin/
-rwxr-xr-x root/root     31848 2017-05-17 13:16 ./sbin/start-stop-daemon
fp2@debpacha:/tmp$ tar --extract --xz --file data.tar.xz ./sbin/start-stop-daemon
fp2@debpacha:/tmp$ l sbin/
total 32
32 -rwxr-xr-x 1 fp2 fp2 31848 mai   17  2017 start-stop-daemon
fp2@debpacha:/tmp$ file sbin/start-stop-daemon 
sbin/start-stop-daemon: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=b25c6b4e467269f9449e842caaa2538047613d93, stripped
fp2@debpacha:/tmp$ 

Une copie ( cp -p) et un chown plus tard vous aurez peut-être un dpkgremis d’aplomb. C’est de la voltige, car l’outil cassé est de bas niveau.

Il faudrait comprendre pourquoi /sbin/start-stop-daemon n’a pas été installé.
Avez-vous eu des erreurs disques récemment ?

Cordialement,
Regards,
Mit freundlichen Grüßen,
مع تحياتي الخالصة

F. Petitjean
Ingénieur civil du Génie Maritime.

Concierge qui roule, ne s’arrête qu’au bas de l’escalier.
Les proverbes philosophiques du Professeur Choron

Bonjour :slight_smile:

J’ai suivis votre démarche, mais l n’étant pas installé j’ai fait avec ls -l

root@debian-robin:/tmp# ls dpkg_1.18.24_i386.deb
dpkg_1.18.24_i386.deb
root@debian-robin:/tmp# 
root@debian-robin:/tmp# ls -l
total 2092
-rw-r--r-- 1 root root 2133704 déc.  20 19:08 dpkg_1.18.24_i386.deb
drwx------ 2 root root    4096 déc.  20 18:36 pulse-PKdhtXMmr18n
drwx------ 3 root root    4096 déc.  20 18:36 systemd-private-6246628d952d40ecb2e4be424b9c215e-systemd-timesyncd.service-F72G7G
root@debian-robin:/tmp# 
root@debian-robin:/tmp# ls -l dpkg_1.18.24_i386.deb
-rw-r--r-- 1 root root 2133704 déc.  20 19:08 dpkg_1.18.24_i386.deb
root@debian-robin:/tmp# 
root@debian-robin:/tmp# ar x dpkg_1.18.24_i386.deb data.tar.xz
root@debian-robin:/tmp# 
root@debian-robin:/tmp# ls data.tar.xz 
data.tar.xz
root@debian-robin:/tmp# 
root@debian-robin:/tmp# ls -l data.tar.xz 
-rw-r--r-- 1 root root 2126968 déc.  20 19:10 data.tar.xz
root@debian-robin:/tmp# 
root@debian-robin:/tmp# less data.tar.xz 
"data.tar.xz" may be a binary file.  See it anyway? 
root@debian-robin:/tmp# 
root@debian-robin:/tmp# less data.tar.xz | fgrep sbin
"data.tar.xz" may be a binary file.  See it anyway? 
root@debian-robin:/tmp# 
root@debian-robin:/tmp# tar --extract --xz --file data.tar.xz ./sbin/start-stop-daemon
root@debian-robin:/tmp# 
root@debian-robin:/tmp# ls -l sbin/
total 32
-rwxr-xr-x 1 root root 30668 mai   17  2017 start-stop-daemon
root@debian-robin:/tmp# 
root@debian-robin:/tmp# file sbin/start-stop-daemon 
sbin/start-stop-daemon: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=dbd159150dd35e03dfa97409370b5f79f4e7317e, stripped
root@debian-robin:/tmp# 

L’espace que l’on retrouve au milieu du code était présent dans mon shell après le grep.

Je fais un :

root@debian-robin:/# find / -name "start-stop-daemon"  
/tmp/sbin/start-stop-daemon
root@debian-robin:/# 

Avant donc je n’avais même pas ça.

Par contre je n’ai pas compris, vous voulez que je modifie les droits ? (la partie sur cp -p et chown) ?

Deux remarques :

  1. Prenez l’habitude de ne pas utiliser la ligne de commandes en étant root
  2. Le message affiché est dû au fait que les variables d’environnement LESSOPEN et LESSCLOSE ne sont pas renseignées.
fp2@debpacha:~$ fgrep less .bashrc
# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
# set a fancy prompt (non-color, unless we know we "want" color)
fp2@debpacha:~$ 
fp2@debpacha:~$ SHELL=/bin/sh lesspipe
export LESSOPEN="| /usr/bin/lesspipe %s";
export LESSCLOSE="/usr/bin/lesspipe %s %s";
fp2@debpacha:~$ 

Pouquoi la version i386 ? Votre machine n’est pas en 64 bits ?

En 32 bits, voir ci-dessus.
Donnez le retour de

file $(which apt)
file $(which dpkg)
uname -a

Je faisais l’hypothèse que que le lecteur savait ce qu’il faisait (j’ai dit de la voltige pour réparer un système cassé on ne sait comment), et donc qu’il n’utilisait pas la ligne de commandes en root et donc qu’après un sudo cp -p /tmp/sbin/start-stop-daemon /sbin/start-stop-daemon l’option -p aurait permis de conserver la date du fichier (17 mai 2017) mais aurait eu l’effet de transférer aussi le propriétaire de la commande (utilisateur qui a fait une extraction parallèle dans /tmp). Dans ce cas un

sudo chown root:root /sbin/start-stop-daemon

se serait imposé.

Donc, si votre système est 32bits et seulement dans ce cas

sudo cp -p /tmp/sbin/start-stop-daemon /sbin/start-stop-daemon

Si par contre votre architecture est amd64 nous aviserons.

Cordialement,
Regards,
Mit freundlichen Grüßen,
مع تحياتي الخالصة

F. Petitjean
Ingénieur civil du Génie Maritime.

« Celui qui, parti de rien, n’est arrivé nulle part n’a de merci à dire à personne !! »
Pierre Dac

Oui je comprends ben justement comme le montre mon code en dessous, en 64 bits mais ce paquets me turlipinait à ce propos.
J’ai lu qu’on parlait d’architecture, de types d’instructions relatives au proc donc des fois on s’y perd.

robin01@debian-robin:/$ fgrep less .bashrc
grep: .bashrc: Aucun fichier ou dossier de ce type
robin01@debian-robin:/$ 
robin01@debian-robin:/$ [ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
robin01@debian-robin:/$ 
robin01@debian-robin:/$ SHELL=/bin/sh lesspipe 
export LESSOPEN="| /usr/bin/lesspipe %s";
export LESSCLOSE="/usr/bin/lesspipe %s %s";
robin01@debian-robin:/$ 
robin01@debian-robin:/$ arch
x86_64
robin01@debian-robin:/$ 
robin01@debian-robin:/$ uname -r
4.9.0-4-amd64
robin01@debian-robin:/$ 
robin01@debian-robin:/$ file $(which apt)
/usr/bin/apt: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=c45cabec551897189e1e4ae6d8f898c3f0325058, stripped
robin01@debian-robin:/$ 
robin01@debian-robin:/$ file $(which dpkg)
/usr/bin/dpkg: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=8a0840ffa14cb81aeca3f87f87268efaee7a587b, stripped
robin01@debian-robin:/$ 
robin01@debian-robin:/$ uname -a
Linux debian-robin 4.9.0-4-amd64 #1 SMP Debian 4.9.51-1 (2017-09-28) x86_64 GNU/Linux
robin01@debian-robin:/$ 

Il semblerait que pour fgrep je ne l’ai pas installé :confused:

Du coup il semblerait que mon système soit en 64 bits, sur un processeur Ryzen 7 tout récent ça me paraissait logique, en vérifiant d’autant plus, peut-être faudrait-il vérifier l’OS ?

robin01@debian-robin:/$ uname -a
Linux debian-robin 4.9.0-4-amd64 #1 SMP Debian 4.9.51-1 (2017-09-28) x86_64 GNU/Linux
robin01@debian-robin:/$ 

Re !

Je suis tombé par hasard sur un post sur Github que voici : https://gist.github.com/yuuichi-fujioka/c4388cc672a3c8188423

J’ai suivis l’installation et ça m’a permis de ne plus retrouver les erreurs sur start-stop-daemon.

Donc j’ai pu faire un art-get upgrade par exemple, dans lequel j’ai noté ceci :

W: Possible missing firmware /lib/firmware/rtl_nic/rtl8107e-2.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8107e-1.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8168h-2.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8168h-1.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8168g-3.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8168g-2.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8106e-2.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8106e-1.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8411-2.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8411-1.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8402-1.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8168f-2.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8168f-1.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8105e-1.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8168e-3.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8168e-2.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8168e-1.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8168d-2.fw for module r8169
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8168d-1.fw for module r8169

Désolé c’est un peu long mais je me demande si ce firmware a un lien avec le bug que j’ai à la base sur l’interface graphique.

Bonjour Peopleofthesky

Je me suis permis de reformater certains blocs de texte cités dans tes message,
en ajoutant
avant et après chaque bloc de texte à formater,
3 backticks AltGr+7au début d’une ligne vide,

comme ci-dessous :

```plain
Une ligne du block de texte collé  qui sera formaté Le block de texte collé  qui sera formaté Le block de texte collé  qui sera formaté Le block de texte collé 
Une ligne de plus de blabla
Une autre ligne de plus de Une ligne du block de texte collé  qui sera formaté 


----------
[quote="Peopleofthesky, post:10, topic:75421"]
…je me demande si ce firmware a un lien avec le bug que j'ai à la base sur l'interface graphique.
[/quote]Non, ce ne sont que des messages qui concernent une carte réseau de ta machine

Pour que ces messages n'apparaissent plus,
il te faudra installer le paquetage **firmware-realtek**

Mais pour que ce paquetage puisse être récupéré et installé par la commande **apt**
si ce n'est pas déjà fait, il te faudra d'abord
[ajouter les composants **contrib** et **non-free** aux dépôts cités dans ton fichier **/etc/apt/sources.list**](https://wiki.debian.org/fr/SourcesList#Exemple_:_fichier_sources.list)

D’accord très bien.

Oui je vais faire ça alors :slight_smile: