Hallo, es ist zwar bestimmt schon 1.000 mal behandelt worden, aber ich finde irgendwie nichts dazu, was ich auch verstehe. Ich möchte ein Skript erstellen, mit dem ein DAU ein NFS-System (was erst *nach* dem Arbeitsrechner eingeschaltet wurde) mounten kann, ohne erst in die Konsole zu müssen, Root werden und mount -a einzugeben bzw. ohne den lästigen Neustart zur automatischen Einbindung. Das muss doch eigentlich recht einfach sein? Ich habe jetzt in einer .sh Datei die mount-Anweisung geschrieben und ihr die Rechte -rwsr-xr-x gegeben, Eigentümer ist root, Gruppe ist users (wegen so einem Hinweis aus dem SUSE 9.1 - Handbuch, der aber glaube ich eh nichts damit zu tun hat). Laut besagtem Handbuch sollte die Datei jetzt mit root-Rechten laufen - tut sie aber nicht, beim Ausführen bekomme ich die Meldung: mount: nur root kann dies tun. Bei Google habe ich gefunden, dass das setuid bei Skripten nicht mehr unterstützt wird, und alles weitere bezog sich auf PERL oder C, aber davon habe ich keine Ahnung. So kompliziert kann mein Wunsch doch nicht sein, wo ist mein Denkfehler? Ach ja: System ist Suse 10.1 Danke für Eure Hinweise Conni
Hallo, Am Mittwoch, 30. August 2006 14:54 schrieb Cornelia Böttge:
es ist zwar bestimmt schon 1.000 mal behandelt worden, aber ich finde irgendwie nichts dazu, was ich auch verstehe. Ich möchte ein Skript erstellen, mit dem ein DAU ein NFS-System (was erst *nach* dem Arbeitsrechner eingeschaltet wurde) mounten kann, ohne erst in die Konsole zu müssen, Root werden und mount -a einzugeben bzw. ohne den lästigen Neustart zur automatischen Einbindung. Das muss doch eigentlich recht einfach sein? Ich habe jetzt in einer .sh Datei die mount-Anweisung geschrieben und ihr die Rechte -rwsr-xr-x gegeben, Eigentümer ist root, Gruppe ist users (wegen so einem Hinweis aus dem SUSE 9.1 - Handbuch, der aber glaube ich eh nichts damit zu tun hat). Laut besagtem Handbuch sollte die Datei jetzt mit root-Rechten laufen - tut sie aber nicht, beim Ausführen bekomme ich die Meldung: mount: nur root kann dies tun.
Bei Google habe ich gefunden, dass das setuid bei Skripten nicht mehr unterstützt wird, und alles weitere bezog sich auf PERL oder C, aber davon habe ich keine Ahnung. So kompliziert kann mein Wunsch doch nicht sein, wo ist mein Denkfehler? Ach ja: System ist Suse 10.1
Dazu gibt's autofs. Ein einfachs (z.B.) ls /net/HOST/home/USER und das Verzeichnis wird automatisch gemountet. Mehr dazu mit man autofs Beliebige Kommands mittels root-Rechen als Normal-User ablaufen lassen: man sudo Bye Jürgen -- Dr.rer.nat. Juergen Vollmer, Viktoriastrasse 15, D-76133 Karlsruhe Tel: +49(721) 92 04 87 1 Fax: +49(721) 92 04 87 2 Juergen.Vollmer@informatik-vollmer.de www.informatik-vollmer.de Internet-Telefonie: www.skype.com Benutzer: juergen.vollmer
Dr. Jürgen Vollmer schrieb:
Am Mittwoch, 30. August 2006 14:54 schrieb Cornelia Böttge:
es ist zwar bestimmt schon 1.000 mal behandelt worden, aber ich finde irgendwie nichts dazu, was ich auch verstehe. Ich möchte ein Skript erstellen, mit dem ein DAU ein NFS-System (was erst *nach* dem Arbeitsrechner eingeschaltet wurde) mounten kann, ohne erst in die Konsole zu müssen, Root werden und mount -a einzugeben bzw. ohne den lästigen Neustart zur automatischen Einbindung. Das muss doch eigentlich recht einfach sein? [..] Ach ja: System ist Suse 10.1
Dazu gibt's autofs. Ein einfachs (z.B.) ls /net/HOST/home/USER und das Verzeichnis wird automatisch gemountet. Mehr dazu mit man autofs
Beliebige Kommands mittels root-Rechen als Normal-User ablaufen lassen: man sudo
Sollte die Geschichte mit autofs nicht aufgehen (ich denke, du musst einen entsprechenden fstab-Eintrag anlegen! (mit Dateisystemtyp == autofs), bietet sich noch ein fstab-Eintrag mit Option users an, denn dann kann ein User das mounten (auch im Skript) Beispiel: User a soll /dev/hda3 nach /mnt mounten dürfen (es ist ein ext3-FS): fstab-Eintrag: /dev/hda3 /mnt ext3 noauto,users 0 0 (Anmerkung: noauto, damit es nicht beim Systemstart gemountet wird) Und dein Skript beliebigen Namens, das du dann als User a ausführen kannst: !/bin/sh mount /mnt Sollte es so nicht funktionieren oder deinen Wünschen entsprechen, würde ich es dann mit sudo versuchen. Bei Fragen immer zu erreichen! Martin P.S.: Nichts gegen autofs, aber ich denke, dass der fstab-Eintrag und das Skript die bessere Wahl sind.
Am Mittwoch, 30. August 2006 16:25 schrieb Martin Ereth:
Dr. Jürgen Vollmer schrieb:
Am Mittwoch, 30. August 2006 14:54 schrieb Cornelia Böttge:
es ist zwar bestimmt schon 1.000 mal behandelt worden, aber ich finde irgendwie nichts dazu, was ich auch verstehe. Ich möchte ein Skript erstellen, mit dem ein DAU ein NFS-System (was erst *nach* dem Arbeitsrechner eingeschaltet wurde) mounten kann, ohne erst in die Konsole zu müssen, Root werden und mount -a einzugeben bzw. ohne den lästigen Neustart zur automatischen Einbindung. Das muss doch eigentlich recht einfach sein?
[..]
Ach ja: System ist Suse 10.1
Dazu gibt's autofs. Ein einfachs (z.B.) ls /net/HOST/home/USER und das Verzeichnis wird automatisch gemountet. Mehr dazu mit man autofs
Beliebige Kommands mittels root-Rechen als Normal-User ablaufen lassen: man sudo
Sollte die Geschichte mit autofs nicht aufgehen (ich denke, du musst einen entsprechenden fstab-Eintrag anlegen! (mit Dateisystemtyp == autofs),
NEIN, auf dem NFS-Client-Rechner: - autofs installieren (mit z.B. yast) - in /etc/auto.master die Zeile das Koomentarzeichen vor /net /etc/auto.net entfernen. - mit rcautofs start testen - mit yast (oder insserv) autofs beim booten starten. man braucht nichts in /etc/fstab änderen, sondern nur auf das Verzeichnis /net/HOST/DIR zugreifen. Dann greift man auf das NFS-Verzeichsnis DIR auf dem Rechner HOST zu. (Es muß dort natürlich freigegeben sein (--> /etc/exports) Man kann natürlich auch ein Link hierauf angelegen.
bietet sich noch ein fstab-Eintrag mit Option users an, denn dann kann ein User das mounten (auch im Skript)
Beispiel: User a soll /dev/hda3 nach /mnt mounten dürfen (es ist ein ext3-FS):
fstab-Eintrag: /dev/hda3 /mnt ext3 noauto,users 0 0
(Anmerkung: noauto, damit es nicht beim Systemstart gemountet wird)
P.S.: Nichts gegen autofs, aber ich denke, dass der fstab-Eintrag und das Skript die bessere Wahl sind.
depends, mit autofs muß man nichts machen, auch kein umount etc. Bye Jürgen -- Dr.rer.nat. Juergen Vollmer, Viktoriastrasse 15, D-76133 Karlsruhe Tel: +49(721) 92 04 87 1 Fax: +49(721) 92 04 87 2 Juergen.Vollmer@informatik-vollmer.de www.informatik-vollmer.de Internet-Telefonie: www.skype.com Benutzer: juergen.vollmer
Zum Betreff: Das suid-Bit wird bei Shell-Scripts unter Linux schon seit mindestens 10 Jahren mit Absicht nicht ausgewertet. Am Mittwoch, 30. August 2006 16:38 schrieb Dr. Jürgen Vollmer:
NEIN, auf dem NFS-Client-Rechner: - autofs installieren (mit z.B. yast) - in /etc/auto.master die Zeile das Koomentarzeichen vor /net /etc/auto.net entfernen. - mit rcautofs start testen - mit yast (oder insserv) autofs beim booten starten.
Das dürfte in der Tat die einfachste Lösung sein. Man sollte noch darauf achten, dass autofs4 (also Version 4) installiert ist, bei mindestens einer Suse-Version gibt es auch ein autofs (=Version 3) zur Auswahl, das noch dazu defaultmäßig installiert wird, aber das auto.net-Skript nicht enthält. Und mit "rcautofs status" kann man sich die aktiven automount-Maps anzeigen lassen. -- Viele Grüße ------------------------------------------------------------------------ Michael
Am Mittwoch, 30. August 2006 16:38 schrieb Dr. Jürgen Vollmer:
NEIN, auf dem NFS-Client-Rechner: - autofs installieren (mit z.B. yast) - in /etc/auto.master die Zeile das Koomentarzeichen vor /net /etc/auto.net entfernen. - mit rcautofs start testen - mit yast (oder insserv) autofs beim booten starten.
Ich habe es gerade ausprobiert, und siehe da: es funktioniert. Eine sehr komfortable Einrichtung! SUDO fand ich dagegen kompliziert, denn ich hätte mir irgendeine Lösung wg. Root-Passwort ausdenken müssen, schließlich sollte das Skript auf dem Desktop liegen und per Klick ausgeführt werden - das funktionierte nicht mit "sudo mount ..." VIelen Dank für die schnelle Hilfe Conni
Am Donnerstag, 31. August 2006 16:30 schrieb Cornelia Böttge:
Am Mittwoch, 30. August 2006 16:38 schrieb Dr. Jürgen Vollmer:
NEIN, auf dem NFS-Client-Rechner: - autofs installieren (mit z.B. yast) - in /etc/auto.master die Zeile das Koomentarzeichen vor /net /etc/auto.net entfernen. - mit rcautofs start testen - mit yast (oder insserv) autofs beim booten starten.
Ich habe es gerade ausprobiert, und siehe da: es funktioniert. Eine sehr komfortable Einrichtung!
SUDO fand ich dagegen kompliziert, denn ich hätte mir irgendeine Lösung wg. Root-Passwort ausdenken müssen, schließlich sollte das Skript auf dem Desktop liegen und per Klick ausgeführt werden - das funktionierte nicht mit "sudo mount ..."
nein da muß man sich nichts mit root-passwörtern überlegen. Der mount-Befehl braucht ja keines. in /etc/sudoers folgendes eintragen: %users ALL=(ALL) NOPASSWD:/bin/mount * %users ALL=(ALL) NOPASSWD:/bin/umount * (ungetested) dann sollte ein sudo /bin/mount /foo/bar als normal user gehen, ohne daß ein Passwort eingegeben werden muß. Bye Jürgen -- Dr.rer.nat. Juergen Vollmer, Viktoriastrasse 15, D-76133 Karlsruhe Tel: +49(721) 92 04 87 1 Fax: +49(721) 92 04 87 2 Juergen.Vollmer@informatik-vollmer.de www.informatik-vollmer.de Internet-Telefonie: www.skype.com Benutzer: juergen.vollmer
Am Donnerstag, 31. August 2006 16:47 schrieb Dr. Jürgen Vollmer:
nein da muß man sich nichts mit root-passwörtern überlegen. Der mount-Befehl braucht ja keines.
in /etc/sudoers folgendes eintragen:
%users ALL=(ALL) NOPASSWD:/bin/mount * %users ALL=(ALL) NOPASSWD:/bin/umount *
(ungetested) dann sollte ein sudo /bin/mount /foo/bar als normal user gehen, ohne daß ein Passwort eingegeben werden muß.
So weit hatte ich mich damit noch nicht beschäftigt, denn autofs ging schnell einzurichten und ist komfortabler. Aber das mit /etc/sudoers werde ich mir für andere Gelegenheiten merken. Noch mal Danke Conni
participants (4)
-
Cornelia Böttge
-
Dr. Jürgen Vollmer
-
Martin Ereth
-
Michael Behrens