ubuntuusers.de

Aufruf Shellskript öffnet Terminal-Fenster nicht mehr für sudo-PW

Status: Ungelöst | Ubuntu-Version: Ubuntu MATE 22.04 (Jammy Jellyfish)
Antworten |

buntspechtklopfen

Anmeldungsdatum:
21. Oktober 2021

Beiträge: 58

Guten Tag zusammen,

seit ca. 1,5 Jahren nutze ich ein Shell-Skript mit einer Zeile zum Einbinden eines nicht immer verbundenen Laufwerks.

sudo mount -t cifs -o nounix,credentials=[PFAD ZU].smbcredentials,iocharset=utf8,file_mode=0777,dir_mode=0777 //192.1.1.20/Backup/Rechner1 $HOME/Backup/

Seit 1 Monat (oder sind es schon 2?) öffnet das Terminal-Fenster nicht mehr zur Passworteingabe. Nach dem Anklicken der ausführbaren Backup.sh-Datei kann ich auswählen, wie ich die Datei öffnen will:

  • Im Terminal ausführen

  • Anzeigen oder

  • Ausführen.

Ich wähle jeweils das erste und konnte früher das Passwort eingeben, jetzt öffnet sich kein Terminal mehr. Mir ist - wie immer bei den wenig Erfahrenen - nicht bewusst, was ich geändert haben könnte.

Deswegen bitte ich um Tipps, ob das vielleicht ein bekanntes Problem nach irgendeinem Update ist oder was ich da versemmelt haben könnte. Aktuell helfe ich mir durch händisches kopieren des Befehls in ein Terminalfenster.

Danke vorab sagt buntspechtklopfen

dingsbums

Anmeldungsdatum:
13. November 2010

Beiträge: 3791

Nach dem Anklicken der ausführbaren Backup.sh-Datei kann ich auswählen, wie ich die Datei öffnen will:

Teste das Verhalten, wenn du in der Datei

~/.config/libfm/libfm.conf

im Abschnitt [config] folgenden Eintrag setzt:

quick_exec=1

Der Ordner .config in deinem Home-Verzeichnis ist nornalerweise versteckt (führender Punkt). In den gängigen Dateimanagern kann man versteckte Elemente mit STRG+H einblenden lassen.

buntspechtklopfen

(Themenstarter)

Anmeldungsdatum:
21. Oktober 2021

Beiträge: 58

Hallo dingsbums,

danke für Deine Antwort. Leider finde ich die Datei nicht, auch nicht sonst im Dateisystem. Die versteckten Systemdateien habe ich eingeblendet, das ist nicht das Problem.

Schöne Grüße

CarstenHa

Avatar von CarstenHa

Anmeldungsdatum:
1. Mai 2020

Beiträge: 147

Hallo,

du kannst auch Zenity zur Hilfe nehmen:

1
2
passwort=$(zenity --entry --hide-text --text "Bitte Passwort eingeben:" --title "sudo-Passwort")
echo "$passwort" | sudo -S mount -t cifs -o nounix,credentials=[PFAD ZU].smbcredentials,iocharset=utf8,file_mode=0777,dir_mode=0777 //192.1.1.20/Backup/Rechner1 $HOME/Backup/

Mit der Option -S liest sudo dann das Passwort von der Pipe ein. Ob Zenity auf deinem Rechner installiert ist, findest du raus mit:

1
type zenity

Gruß

Carsten

buntspechtklopfen

(Themenstarter)

Anmeldungsdatum:
21. Oktober 2021

Beiträge: 58

Hallo Carsten,

vielen Dank für den Tipp mit Zenity. Das kannte ich noch nicht. Das ist ja schön.

Jetzt habe ich auch noch eine andere Möglichkeit gefunden, das Problem zu umgehen: Einen .desktop-Eintrag für das Shell-Skript, das das Skript im Terminal öffnet. Das funktioniert erstaunlicher Weise. Leider weiß ich immer noch nicht, was das ursprüngliche Problem ist.

#!/usr/bin/env xdg-open
[Desktop Entry]
Version =       1.5
Type =		Application
Name =		Backup.desktop
GenericName[de]= Backup
Categories =	Other;Sonstiges;
Terminal =      true
Exec =		sh -c "/home/buntspechtklopfen/skripte/backup.sh"

Was ich jetzt noch ausprobieren werde, ist das Skript mit Zenity aufzuhübschen. Vielen Dank nochmals!

Schöne Grüße - buntspechtklopfen

juribel

Anmeldungsdatum:
20. April 2014

Beiträge: 1255

Wenn es ums Aufhübschen geht: Wenn ich alles richtig verstanden habe, ist yad ein erweiterter und verbesserter Fork von zenity. Zenity-Skripte laufen mit gleicher Syntax auch mit yad.

Nur so als Info.

Antworten |