Erreur Mise à jour automatique Raspberri pi 4

Bonjour,
J’ai crée le script suivant:

#!/bin/sh
sudo apt-get update && sudo apt-get upgrade -y 
sudo rpi-update -y
sudo apt-get autoremove -y
sudo apt-get autoclean -y
sudo reboot

J’ai mis dans la crontab-e l’execution de ce script
Dans mon log il apparait l’erreur sudo: no tty present and no askpass program specified

Je souhaite pouvoir mettre à jour mon raspberry pi mais la commande sudo ne passe pas. Je veux garder la sécurité de mon mot de passe… Mon probléme et que j’ignore comment je dois m’y prendre.

J’espére que vous pourrez m’aider ?

A bientôt

Bonjour,

  • Écrire ce script dans l’environnement de l’utilisateur ‹ root › sans les sudo.
  • Le rendre executable
  • Le charger dans la crontab de root.

A+

Bonjour @jelopo ,

Quand je fais sudo passwd root il me demande de reset le password « dominarsen »… C’est avec ce compte que j’ai fait mon message ci dessus

Du coup est ce que cela changerais un peux ton tuto :sweat_smile: ?

Bonjour,

sudo passwd root change le mot de passe de root, ce n’est pas nécessaire dans ta demande initiale.

Il faut que tu connecte avec le user root

  • soit par sudo bash avec un compte utilisateur qui à les droits sudo

  • soit par su - si tu connait le mot de passe de l’utilisateur root

A+

Bonjour @jelopo,

Je test durand les prochaine semaine avec ton aide du sudo bash
Si ça fonctionne je cloture le sujet :wink:

Bonjour,
Si tu ne veux pas entrer ton mot de pass après chaque commande il faut taper la commande

sudo visudo

et entrer la ligne:

%sudo ALL=(ALL:ALL) ALL
dominarsen ALL=(ALL) NOPASSWD: ALL

De plus sudo rpi-update ne fonctionne pas avec le paramètre -y, il te faut donc enlever cette ligne.

Bonjour @Mik91390 ,
Je test votre solution je fais un compte rendu la semaine prochaine :wink:
Merci

Bonjour,
J’ai fait un script python pour la mise à jour automatique de RaspiOS avec log update.py

Bonjour @Mik91390
J’ai fait

#!/bin/sh
sudo visudo
sudo apt-get update && sudo apt-get upgrade
sudo rpi-update
sudo apt-get autoremove
sudo apt-get autoclean
sudo reboot

Lorsque j’exécute avec la ligne de commande
il m’affiche

Quand cela s’éxécute en automatique avec crontab j’ai l’erreur

Error opening terminal: unknown.
visudo: /etc/sudoers.tmp unchanged
debconf: unable to initialize frontend: Dialog
debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.)
debconf: falling back to frontend: Readline
debconf: unable to initialize frontend: Readline
debconf: (This frontend requires a controlling tty.)
debconf: falling back to frontend: Teletype
dpkg-preconfigure: unable to re-open stdin:

C’est normal,
visudo ne doit pas être dans un script, et rpi-update ne peux pas s’exécuter dans un script.

#!/bin/sh
sudo visudo
sudo apt-get update && sudo apt-get upgrade
sudo rpi-update
sudo apt-get autoremove
sudo apt-get autoclean
sudo reboot

le script est mauvais,: il faut supprilmer les lignes:

sudo visudo
sudo rpi-update

Bonjour (avec le délai…),

Donc aucun moyen de mettre à jour automatiquement le Raspberry Pi ?

Bonjour,

Généralement quand on parle de mise à jour c’est la mise à jour de l’OS, et ça c’est déjà fait par script. rpi-update ne met à jour que le firmware et le kernel.

Plus d’infos sur cette commande ici:

A+

1 J'aime