Autor |
Nachricht |
|
Titel: su passworteingabe im Skript
Verfasst am: 06.09.2005, 11:03 Uhr
|
|
Anmeldung: 11. Mar 2004
Beiträge: 89
|
|
Hallo,
ich habe mal wieder (bzw. eigentlich immer noch) ein Problem.
Hier in der Firma soll ich ein Linux Skript neu anpassen. Im Skript wird mit su zu einem anderen User gewechselt (dafür ist Passworteingabe nötig, da ich kein root bin).
Das Problem ist nun, dass das ganze automatisiert ablaufen soll (als Nightlybuild). Ich kann die Rechte nicht verändern, dürfte aber z.B. das Passwort im Klartext ins Skript schreiben. Ich weiss nur nicht wie.
In einem vorherigen Thread hatte ich es auch schonmal erwähnt aber es kam keine echte Lösung bei raus (nur Hinweis, dass es vielleicht mit sudo gehen könnte aber ich habe es mit sudo nicht geschafft).
Bitte Hilfe! |
|
|
|
|
 |
|
Titel:
Verfasst am: 06.09.2005, 11:32 Uhr
|
|
Anmeldung: 20. Mai 2005
Beiträge: 323
Wohnort: Niedernberg
|
|
Müsste doch gehen mit:
Code:
su username <<EOF
passwort
EOF
Im script natürlich... |
|
|
|
|
 |
|
Titel:
Verfasst am: 06.09.2005, 11:55 Uhr
|
|
Anmeldung: 20. Mai 2005
Beiträge: 323
Wohnort: Niedernberg
|
|
Ich habs mal getestet, und auf die schnelle nur mit 2 Scripten hinbekommen.
Ein Script, das als anderer User ausgeführt werden soll, und ein script, das den Benutzerwechsel macht.
Hier das Script testfunc.sh
Code:
#!/bin/sh
echo
echo -n "Ich bin "
whoami
Und hier das Ausführscript testsu.sh:
Code:
#!/bin/sh
su -c /home/boregard/testfunc.sh<<EOF
myrootpwd
EOF
echo -n "Und ich bin "
whoami
Beide ausführbar gemacht und dann ausgeführt:
Code:
testsu.sh
Password:
Ich bin root
Und ich bin boregard
Aber es steht halt das passwort im Klartext im script! |
|
|
|
|
 |
|
Titel:
Verfasst am: 06.09.2005, 12:06 Uhr
|
|
Anmeldung: 11. Mar 2004
Beiträge: 89
|
|
Vielen vielen Dank, sehr gut, mit einem Skript wäre es zwar noch besser aber egal. Wie gesagt das Passwort darf im Klartext da stehen. Es kennt sowieso jeder. Man kann sich halt nur nicht als root einloggen. |
|
|
|
|
 |
|
Titel:
Verfasst am: 24.07.2006, 18:24 Uhr
|
|
Anmeldung: 05. Apr 2005
Beiträge: 39
|
|
hallo
was mache ich falsch bei mir kommt immer
su: Muss von einem Terminal gestartet werden
Und ich bin christian |
_________________ Sie können ihren Computer jetzt wegschmeissen
|
|
|
|
 |
|
Titel:
Verfasst am: 27.07.2006, 09:14 Uhr
|
|
Anmeldung: 20. Mai 2005
Beiträge: 323
Wohnort: Niedernberg
|
|
Wie hast Du das denn gestarted??? |
|
|
|
|
 |
|
Titel:
Verfasst am: 27.07.2006, 13:49 Uhr
|
|
Anmeldung: 05. Apr 2005
Beiträge: 39
|
|
mit testsu.sh in einer Konsole |
_________________ Sie können ihren Computer jetzt wegschmeissen
|
|
|
|
 |
|
Titel:
Verfasst am: 27.07.2006, 15:38 Uhr
|
|
Anmeldung: 16. Aug 2004
Beiträge: 1905
|
|
Wäre sudo für den Zweck nicht die bessere Lösung? |
|
|
|
|
 |
|
Titel:
Verfasst am: 31.07.2006, 07:14 Uhr
|
|
Anmeldung: 20. Mai 2005
Beiträge: 323
Wohnort: Niedernberg
|
|
Was passiert, wenn Du 'su' in der selben Konsole eingibst?? |
|
|
|
|
 |
|
Titel:
Verfasst am: 31.07.2006, 15:40 Uhr
|
|

Anmeldung: 13. Jul 2005
Beiträge: 73
|
|
ist das script ausführbar gemacht??? |
|
|
|
|
 |
|
Titel:
Verfasst am: 16.08.2006, 09:43 Uhr
|
|
Anmeldung: 23. Sep 2005
Beiträge: 488
|
|
Ich habe für das Mounten eines Lanservers (mount geht nur mit root) folgende Lösung, unter Mithilfe dieses Forums, gefunden.
Ein Script, das dem User gehört, erfragt Passwort und Benutzername (eingabe), einZweites, welches root gehört, mountet (mount_lan). Dieses zweite Script habe ich ist in die Datei /etc/sudoers eingetragen.
#!/bin/bash
#
# eingabe - Benutzernamen und Passwort erfragen
BEN=$(kdialog --caption "Anmeldung" --inputbox "Bitte Benutzernamen eingeben")
PWD=$(kdialog --caption "Passwort" --passwd "Bitte Passwort eingeben")
sudo /home/user/mount_lan $BEN $PWD
#!/bin/bash
#
# mount_lan Lanserver mounten
mount -t cifs -o username=$1,password=$2 //lanserver_name/Benutzer$ /home/user/Lan_Server
Eintrag in /etc/sudoers – kann nur root tun
%users ALL=NOPASSWD:/home/userverzeichnis/mount_lan
Mit diesem Wissen solltest du imstande sein, dein Script anzupassen.
MfG
Josef |
|
|
|
|
 |
|
Titel:
Verfasst am: 19.10.2008, 21:24 Uhr
|
|
Anmeldung: 23. Sep 2005
Beiträge: 488
|
|
#!/bin/bash
#
# eingabe - Benutzernamen und Passwort erfragen
BEN=$(kdialog --caption "Anmeldung" --inputbox "Bitte Benutzernamen eingeben")
PWD=$(kdialog --caption "Passwort" --passwd "Bitte Passwort eingeben")
sudo /home/user/mount_lan $BEN $PWD
Wenn nun der Benutzer einen Fehler bei der Eingabe macht - wie kann dieses Script automatisch wiederholt werden?
josef |
|
|
|
|
 |
|