Scripts sur linux

Résolu

Bonjour pouvez-vous vous m'expliquer étape par étape le processus pour faire en sorte que dès que mon PC lubuntu démarre, la première chose qu'il fait c'est vérifier s'il y a des mises à jour, les faire en arrière plan, et ensuite démarrer le programme Google Chrome et dès que Google Chrome démarre il démarre automatiquement les onglets Netflix, Disney plus et Google.

Je ne suis pas très fort en script donc pouvez-vous m'aider et me dire comment faire, ça serai super merci !

En gros je veux laisser ce PC branché a ma télé et dès que j'ai envie de regarder un film, j'ai juste à allumer le PC et il vérifie et fait ses mise à jour Linux, et ensuite démarrer Chrome avec les pages que j'ai voulues. Je veux faire ça pour une personne âgée qui comprend rien a l'informatique, comme ça elle aura juste a démarrer le pc quand elle veux regarder un film et sa se fera automatiquement 

Merci d'avance.

4 réponses

  1. Modérateur

    Tu es sur quelle déclinaison de Ubuntu (la basique, Lubuntu, Xubuntu, ...) ?

    Car l'emplacement des scripts de démarrages dépend en partie de l’environnement graphique choisi.

    Pour les mise à jour, comme cela requiert les droits root, il peut être intéressant de mettre ce script au démarrage dans le cron de root (sudo crontab -e).
    Avec une ligne du genre

    @reboot sudo apt update && sudo apt upgrade -Y && sudo apt clean

    Pour Chrome, c'est là que ça dépend de l’environnement de bureau, mais d'une manière générale c'est mettre Chrome en démarrage auto et le configurer pour qu'il charge les onglets automatiquement. (pas mal de site indiquent comment faire)


    0
    1. Modérateur

      Je me répond à moi-même car je viens de relire la question ...
      Sur mon bureau (qui je l'espère sera proche du tien :
      Menu démarrer -> Préférences -> LXQT settings -> Paramétreur de session LXQT puis dans la section "Lancement automatique" tu ajoute Chrome.

      0
  2. D'accord donc si je comprends bien il faut juste faire un script qui met à jour le pc automatiquement.

    Pour lancer chrome automatiquement pas besoin de script il faut juste le mettre en lancement automatique directement depuis paramètres de session lxqt. C'est bien ça ?

    Par contre excusez-moi mais je n'ai pas très bien compris du coup comment faire pour faire en sorte que au démarrage de la machine, elle vérifie si c'est à jour et fais la mise a jour.

    0
    1. Modérateur

      Bonjour,

      Selon l'environnement graphique que tu utilises, ton gestionnaire de paquet graphique peut vérifier si des mises à jour sont disponibles ou pas. Une icône apparaîtra alors près de l'horloge s'il y en a (c'est le cas notamment dans KDE plasma avec Discover). Il faudrait nous préciser ce que tu utilises (quel environnement, et quel gestionnaire de paquets graphique pour gérer tes paquets).

      Concernant les onglets à ouvrir au démarrage, cela dépend de ton navigateur. Certains navigateurs restaure les onglets qui étaient ouverts la dernière fois qu'il a été fermé. Souvent ça suffit. Mais si tu veux un contrôle plus fin, il est possible de paramétrer ton navigateur (voir par exemple ici pour chrome/chromium).

      Bonne chance

      0
      1. D'accord merci 

        0
    2. Un script utile pour mettre à jour et nettoyer Ubuntu que j'ai trouvé et amélioré ici

      Recopiez le fichier suivant dans upgrade.sh

      #!/bin/bash
      # https://github.com/royborgen/linux_upgrade_script/blob/main/upgrade.sh
      
      # Rendre le fichier exécutable
      # Modifiez les autorisations du fichier et le 
      # rendre exécutable à l'aide de la commande chmod.
      # clic droit souris et choisir ouvrir un terminal ici
      # tapez ensuite :
      #  chmod +x upgrade.sh
      # exécutez la commande > touche 'Entrée' du clavier
      
      # Exécutez le script en exécutant la commande suivante
      # sur le terminal ouvert.
      #  sudo ./upgrade.sh
      
      # Cela exécutera le processus de mise à jour
      
      #setting text color
      CYAN='\033[1;36m'
      YELLOW='\033[1;33m'
      NOCOLOR='\033[0m'
      
      #setting variable to keep track if yay is installed to 0 by default
      foundyay=0
      
      # ================================================================
      #Vérification des arguments et affichage du texte d'aide et du message d'erreur
      
      if [ $# -ne 0 ]; then
          if [ $1 = "-h" ] || [ $1 = "--help" ]; then
              echo "Utilisation : mise à niveau [OPTION]"
              echo "Effectue les mises à jour des paquets sur les distributions basées sur Debian et Arch"
              echo "Mises à niveau des packages APT, DNF, pacman, yay, snap et Flatpak."
              echo ""
              echo "Arguments facultatifs:"
              echo "-o, --oui          aucune invite de commande avant d'appliquer les mises à jour"
              echo "-h, --help         affiche ce message"
              echo ""
              exit
          fi 
          
          if [ "$1" != "-o" ] && [ "$1" != "--oui" ]; then
              echo "ERREUR : argument non valable '$1'."
              echo "Veuillez utiliser -h ou --help pour afficher les instructions d'utilisation et les options valides."
              echo ""
              exit
          fi 
      fi
      
      # ================================================================
      #Vérifier si apt est installé avant de mettre à jour les paquets
      
      if [ ! -z $(whereis apt | awk '{ print $2 }') ]; then
          echo -e "${CYAN}Mise à jour liste des APT:${NOCOLOR}"
          if [ $# -ne 0 ]; then
              if [ $1 = "-o" ] || [ $1 = "--oui" ]; then
                  sudo apt update && sudo apt upgrade -y
      
      
              fi
          else
              sudo apt update && sudo apt upgrade -y
          fi
          echo ""
          echo ""
      fi
      
      # ================================================================
      #Vérifier si yay est installé avant de mettre à jour les paquets
      
      if [ ! -z $(whereis yay | awk '{ print $2 }') ]; then
          #setting foundyay to 1 so we do not install upgrades from pacman
          foundyay=1
          echo -e "${CYAN}Mise à jour liste des yay:${NOCOLOR}"
          if [ $# -ne 0 ]; then
              if [ $1 = "-o" ] || [ $1 = "--oui" ]; then
                  yay -Syu --noconfirm
              fi
          else
              yay -Syu
          fi
          echo ""
          echo ""
      fi
      
      # ================================================================
      #Vérifier si pacman est installé avant de mettre à jour les paquets
      
      if [ -n "$(whereis pacman | awk '{ print $2 }')" ] && [ "$foundyay" -eq 0 ]; then
          echo -e "${CYAN}Mise à jour liste des pacman:${NOCOLOR}"
          if [ $# -ne 0 ]; then
              if [ $1 = "-o" ] || [ $1 = "--oui" ]; then
                  sudo pacman -Syu --noconfirm
              fi
          else
              sudo pacman -Syu
          fi
          echo ""
          echo ""
      fi
      
      # ================================================================
      #Vérifier si DNF est installé avant de mettre à jour les paquets
      
      if [ ! -z $(whereis dnf | awk '{ print $2 }') ]; then
          echo -e "${CYAN}Mise à jour de la liste des DNF:${NOCOLOR}"
          if [ $# -ne 0 ]; then
              if [ $1 = "-o" ] || [ $1 = "--oui" ]; then
                  sudo dnf upgrade -y
              fi
          else
              sudo dnf upgrade
          fi
          echo ""
      fi
      
      # ================================================================
      #Vérifier si Snap est installé avant d'essayer de mettre à jour les paquets
      
      if [ ! -z $(whereis snap | awk '{ print $2 }') ]; then
          echo -e "${CYAN}Mise à jour de la liste des Snap:${NOCOLOR}"
          if [ $# -ne 0 ]; then
              if [ $1 = "-o" ] || [ $1 = "--oui" ]; then
                  sudo snap refresh 
                  echo ""
              fi
          else
              updates=$(sudo snap refresh --list)  
              
              # Check if there are updates
              if [ -n "$updates" ]; then
                  echo "$updates"
                  read -p "Voulez-vous installer ces mises à jour? (O/n): " confirm
                  if [ "$confirm" = "o" ] || [ "$confirm" = "O" ] || [ -z "$confirm" ]; then
                  # If user confirms, perform the update
                  sudo snap refresh
                  else
                  echo "Mise à jour des Snap annulée."
                  fi
              fi
      
              echo ""
          fi
      fi
      
      # ================================================================
      #Vérifier si flatpak est installé avant d'essayer de mettre à jour les paquets
      
      
      if [ ! -z $(whereis flatpak | awk '{ print $2 }') ]; then
          echo -e "${CYAN}Mise à jour de la liste des Flatpak:${NOCOLOR}"
          
          #checking if argument was provided
          if [ $# -ne 0 ]; then
              if [ $1 = "-y" ] || [ $1 = "--yes" ]; then
                  flatpak upgrade --noninteractive
              fi
          else
              flatpak upgrade
          fi
      
              echo ""
      fi
      
      # ================================================================
      # Nettoyage des pacman
             echo 
             echo 
             echo "Nettoyage des pacman..."
             echo 
             echo 
             paccache -r
             pacman -Qtdq
             pacman -R $(pacman -Qtdq)
      
      
      # ================================================================
      # Nettoyage des dnf
             echo 
             echo 
             echo "Nettoyage des dnf..."
             echo 
             echo 
             dnf clean all
      
      # ================================================================
      # Nettoyage des flatpak
             echo 
             echo 
             echo "Nettoyage des flatpak..."
             echo 
             echo 
             flatpak uninstall --unused -y
             rm -rfv /var/tmp/flatpak-cache-*
      
      # ================================================================
      # Nettoyage des apt
             echo 
             echo 
             echo "Nettoyage des apt..."
             echo 
             echo 
             apt purge $(dpkg -l | grep '^rc' | awk '{print $2}') -y && apt autoremove -y && apt autoclean
              
             # Ancienne ligne de code sudo apt autoclean -y
      
      # ================================================================
      # Suppression de tous les snaps désactivés
             echo 
             echo 
             echo "Suppression de tous les snaps désactivés..."
             echo 
             echo 
             snap list --all | awk 'BEGIN {} ; /désactivé|disabled/ {print "snap remove "$1" --revision    "$3""} ; END {exit 0}' | sudo /bin/sh
      
      # ================================================================
      #Vérifier si un redémarrage est nécessaire
      
      test -e /var/run/reboot-required && echo -e "${YELLOW}Une mise à jour nécessite un redémarrage!${NOCOLOR}" && echo ""
      
      
      # ================================================================
      # Arrêt automatique du terminal ici à 10 secondes
      # si usage d'un lanceur (raccourci) sur le 
      # tableau de bord ou le bureau
      
             echo 
             echo 
             echo "Arrêt automatique du terminal dans 10 secondes..."
             echo 
             echo 
             sleep 5
      
      # Tue le processus en cours
              kill -9 $$  
      
      
      0