#1 Le 29/12/2020, à 11:05
- grünerTee
[Résolu] crontab @reboot et script cyberghost
bonjour à toutes, à tous,
Mon problème est le suivant:
-Pour activé mon vpn j'utilise une ligne de commande en sudo:
sudo cyberghostvpn --traffic --country-code FR --wireguard --connect
pour m'éviter d'avoir à retrouver cette commande, je l'ai écrit dans un script que j'ai placé dans /usr/local/sbin/
j'ai appeler se script "vpnOn.sh" et je l'ai chmoder comme ceci: sudo chmod 111 vpnOn.sh
Je peux lancer se script depuis mon terminal et il fonctionne systematiquement
J'ai logiquement voulu le faire démarer automatiquement
en utilisant crontab, comme ceci
sudo crontab -e
puis j'ai ajouter ça:
@reboot /bin/bash /usr/local/sbin/vpnOn.sh
ça n'a jamais fonctionner, alors j'ai modifier le script pour comprendre les erreur
mon script:
#!/bin/bash
/usr/bin/cyberghostvpn --traffic --country-code FR --wireguard --connect 1> /home/moune/estCeQueCrontabFonctionne.txt 2>&1
quand il se lance depuis crontab j'ai ceci dans mon fichier d'erreur
Traceback (most recent call last):
File "cyberghostvpn.py", line 5, in <module>
File "<frozen importlib._bootstrap>", line 991, in _find_and_load
File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
File "/usr/local/lib/python3.8/dist-packages/PyInstaller/loader/pyimod03_importers.py", line 623, in exec_module
File "configs/base.py", line 3, in <module>
File "configs/base.py", line 12, in BaseConfiguration
TypeError: can only concatenate str (not "NoneType") to str
[1235] Failed to execute script cyberghostvpn
et pas d'acivation de vpn comme o pourais s'en douter
mais si je le lance a la main depuis mon terminal j'ai cela:
Prepare Wireguard connection ...
Select server ... strasbourg-s405-i08
Connecting ...
VPN connection established.
et le vpn démare normalement
J'ai un peu chercher, un peu partout, peut-etre pas assez, mais j'a rien trouvé.
Dernière modification par grünerTee (Le 06/01/2021, à 13:12)
Hors ligne
#2 Le 29/12/2020, à 11:32
- Watael
Re : [Résolu] crontab @reboot et script cyberghost
salut,
chmod 111 le fichier n'a pas d'autorisation de lecture. Or, un script, pour être exécuté, doit pouvoir être lu !
en plus, quand il est exécutable, il n'a pas besoin d'être appelé par bash.
Dernière modification par Watael (Le 29/12/2020, à 11:33)
Connected \o/
Welcome to sHell. · eval is evil.
En ligne
#3 Le 29/12/2020, à 11:36
- grünerTee
Re : [Résolu] crontab @reboot et script cyberghost
je l'ai chmodé avec 777 et toujours la même erreur
Hors ligne
#4 Le 29/12/2020, à 11:55
- Hizoka
Re : [Résolu] crontab @reboot et script cyberghost
Salut, je me méfie de @reboot car parfois c'est exécuté trop vite.
Je sais que je fais souvent :
@reboot sleep 30 && ....
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#5 Le 29/12/2020, à 12:20
- Watael
Re : [Résolu] crontab @reboot et script cyberghost
un problème de chemin dans les imports ?
crontab a un PATH restreint.
Connected \o/
Welcome to sHell. · eval is evil.
En ligne
#6 Le 29/12/2020, à 14:47
- grünerTee
Re : [Résolu] crontab @reboot et script cyberghost
Merci pour vos réponses,
j'ai placer un sleep avant ma commande et j'ai essayer de rajouter PATH comme ça:
PATH=/bin:/usr/bin:
@reboot sleep 30 && /bin/bash /usr/bin/vpnOn.sh >/home/moune/crontab.log 2>&1
aussi mon fichier crontab.log est toujours vide
Vos idées pour renseigner PATH, sont les bienvenues, je ne suis pas sûre de bien comprendre comment ça fonctionne
pour etre le plus sûre possible j'ai cherché le binaire de "cyberghostvpn" avec command -v cyberghostvpn, et il est placé ici /usr/bin/.
J'ai aussi déplacer mon script dans /usr/bin/
j'ai malheureusement toujours le même problème.
Je vais envoyer une message au support cyberghost, je vous tiendrais informer si j'ai du nouveau de ce coter là
Dernière modification par grünerTee (Le 30/12/2020, à 10:33)
Hors ligne
#7 Le 06/01/2021, à 13:06
- grünerTee
Re : [Résolu] crontab @reboot et script cyberghost
J'ai finalement réussis,
mais plutôt par hasard après une mise a jour, ça a finalement fonctionné
En résumé j'ai fait trois choses:
ce script que j'ai placé dans /usr/bin, il se nome vpnOn.sh
#!/bin/bash
cyberghostvpn --traffic --country-code FR --wireguard --connect
ensuite j'ai lancer "sudo visudo", et j'ai rajouté cette ligne à la fin du fichier
moune, c'est mon nom d'utilisateur, il faut le remplacer,
vpnOn.sh c'est le nom du script, il faut le remplacer par le nom de votre script
moune ALL=(ALL) NOPASSWD:/usr/bin/vpnOn.sh
enfin, je suis passer par l'outil graphique (l'application) qui s'appelle "applications au démarrage", qui était installer nativement avec gnome
dans l'application, j'ai cliqué sur "ajouter", il faut au moins remplir les 2 première case, nom et commande.
Dans Nom, on met se qu'on veux, moi j'ai mis:
vpnWireguard
ça me semblais explicite
Dans Commande, j'ai mis:
sudo vpnOn.sh
parce que mon script s'appelle "vpnOn.sh" et qu'il est placé dans /usr/bin, on a plus besoin de rajouté le chemin absolue.
comme on a donné le droit d’exécuter le script en sudo sans avoir besoin du mot de passe (avec "sudo visudo"), ça a fonctionner chez moi.
j'ai pas mal essayé avec d'autre piste comme crontab et rc.local sans succès pour moi avec ubuntu 20.04 - gnome
encore merci pour votre aide, j'aurais peut-être as autant insister sans elle.
Hors ligne