lefteros_by SomniusX
EN ↗Πες ένα γεια

1 Φεβρουαρίου 2023 / Lefteris Iliadis (SomniusX)

Τρέξε Bash Script ζητώντας Sudo σε Παραθυρικό Modal

1 Φεβρουαρίου 2023

Είχα μια ανάγκη να φτιάξω ένα Script να μου ξεκινάει το OpenVPN .ovpn configuration file μου διότι δεν υπάρχει ένα παραθυρικό που να κάνει σωστά τη δουλειά του, εν’έτη 2023 ναι δεν

Είχα μια ανάγκη να φτιάξω ένα Script να μου ξεκινάει το OpenVPN .ovpn configuration file μου διότι δεν υπάρχει ένα παραθυρικό που να κάνει σωστά τη δουλειά του, εν'έτη 2023 ναι δεν υπάρχει !!!

Έφτιαξα το OpenVPN conf όπως έπρεπε για να πραγματοποιηθεί η σύνδεση και μετά έμεινε το scripting του.

Έφτιαξα σε ένα σημείο ένα connect.sh που θα είναι "πάντα" εκεί, και του έδωσα το παρακάτω

PASSWD="$(zenity --password --title=Authentication)\n"
echo -e $PASSWD | sudo -S oi-entoles-sou edo

όπου το oi-entoles-sou-edo είναι το Script μου.

Το αποτέλεσμα, πετάει ένα παραθυράκι, ζητάει το Super user password, το περνάει στο shell script σαν να είχε ζητηθεί και τρέχει την εντολή.

image

Και το full path για το OpenVPN θα ήταν

PASSWD="$(zenity --password --title=Authentication)\n"
echo -e $PASSWD | sudo -S openvpn --config /home/lef/openvpn.ovpn

Μια παραλλαγή του προσπάθησα με το kdialog

kdialog --password "Please enter your password: "

image

Αλλά δεν κατάφερα να περάσω το argument όταν στα καπάκια έτρεχε το sudo για την εντολή.. καλό να το ξέρουμε όμως ότι και αυτό σηκώνει παράθυρο. Ένα άλλο παράδειγμα θα ήταν

kdialog --title "Log of files" --textbox /home/user/data.txt 640 480

όπου δείχνει τα περιεχόμενα ενός αρχείο, στο παράδειγμα /home/user/data.txt σε ένα window modal μπροστά σου, με επιλογή να το κλείσεις, ωραίο να καταλήγεις ένα log για προβολή με αυτό.

Ελπίζω να βοήθησαν! 😉