Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Guten Morgen Leute!

Ich bin grad in der Schule und muss ein Linux Anmeldescript schreiben. Das OS ist open suse.

Das Script soll folgendes können:

Ein User meldet sich an und das script startet.

Es werden Netzlaufwerke verbunden und ein Ping auf einen Drucker gesetzt.

Geht das überhaupt? Wär super wenn jemand da was wüsste...

Geschrieben

das hört sich ja schonmal gut an. Meine Frage:

Wie muss das script aussehen und wo wird es abgelegt. Gibts bei Linux so ne Art Autostart oder so?

Muss dazu sagen dass ich von Linux und Scripten praktisch keine Ahnung hab. Meinen Linuxlehrer interessiert das leider nicht so ;)

Geschrieben

Ein User meldet sich an und das script startet.

Es werden Netzlaufwerke verbunden und ein Ping auf einen Drucker gesetzt.

Es gibt so etwas wie "Netzlaufwerke" eigentlich nicht, das ganze wird als NFS geregelt und man bindet über AutoFS die Freigaben ein. Wenn ein User auf die NFS Freigabe zugreift, wird automatisch gemountet. Die Userrechte verbieten meist die Mountpoints zu setzen. Man kann NFS Freigaben auch statisch per Fstab einbinden

Warum soll bei einem Login ein Drucker gepingt werden? Welche Sinn hat das?

Geschrieben

Hi,

Zunächst muss man sich fragen wenn und unter welchen Voraussetzungen ein Skript auszuführen ist.

Dazu gibt es viele Grundsätzliche Ideen unter Linux

Init = Wird immer am einem bestimmten Runlevel gestartet das kommt wohl er nicht in frage denke ich(ist auch ein Skript).

Bash = es gibt zur Konfiguration der Umgebung einige Konfigurationsdateien die auch z.B eine if abfrage beinhalten dürfen dazu muss sich der Benutzer aber in der Linux-Konsole erst anmelden das könnte Benutzt werden wenn das reicht?

Wichtig sind eine deinem Verzeichnis z.B /home/Benutzer

.bash_logout = Wird beim abmelden Ausgefüllt

.bashrc = Deine Umgebung

Und Systemweit

/etc/profile = Ist die Systemweite Umgebung

/etc/profile.d/ = kann vorhanden sein je Nach Installationsumfang alle darin befindlichen Skript werden ausgeführt

Beim Drucker würde ich mir mal ansehen ob dir folgende Tools reichen.

lpr

lpstat

lpinfo

lpq

Sonst müsste auch HTTP://localhost:631/help gehen um sich einen Überblick zu verschaffen

Um eine Beschreibung zu bekommen

man "Programm"

eingeben

Links

Einfache Skript anpassen oder schreiben

SelfLinux

Shellscripts

Viele Skript und Shell Tricks

UbuntuUsers geht auch mit OpenSuse

ich denke das ist erst mal genug und nicht abschrecken lassen weil das alles etwas kompliziert ausschaut.

Geschrieben

@tobkern:

Nette Aufstellung..

Ergänzend:

~/.profile ist der normale Platz für das eigene Loginskript.

(Jene Datei führt dann auch gern ~/.bashrc aus, worin dann bash-spezifisches abgelegt sein lönnte - nicht jeder hat die Bash als default Shell, bzw. nicht jede Shell kann mit Bash-internen Befehlen was anfangen :)

Grüße

Ripper

Geschrieben
@tobkern:

Nette Aufstellung..

Ergänzend:

~/.profile ist der normale Platz für das eigene Loginskript.

(Jene Datei führt dann auch gern ~/.bashrc aus, worin dann bash-spezifisches abgelegt sein lönnte - nicht jeder hat die Bash als default Shell, bzw. nicht jede Shell kann mit Bash-internen Befehlen was anfangen :)

Grüße

Ripper

Und als Ergänzung

Speicherort von Scripts

Scripte sind nur dann ausführbar, wenn sie innerhalb des Suchpfades liegen. Bei der Wahl einer geeigneten Stelle für eigene Scripts sollte unterschieden werden, wofür sie gedacht sind.

Soll nur der Systemverwalter diese Scripts ausführen dürfen, dann empfiehlt es sich,

  1. die Scripts entweder in /usr/local/sbin oder /root/bin abzuspeichern. Beide Verzeichnisse liegen nur im Suchpfad des Systemverwalters.

  2. die Zugriffsmodi auf 700 zu setzen (rwx------), und dafür zu sorgen, daß sie root gehören. Somit kann sie nur root ausführen.

Sollen sie aber von allen Usern ausführbar sein, so sollten sie nach /usr/local/bin gelegt werden und den Zugriffsmodus 755 (rwxr-xr-x) besitzen. /usr/local/bin ist im Suchpfad aller User. Grundsätzliche Vorsicht ist mit der Verwendung des SUID-Bits angeraten. Die Shell reagiert aber seit einigen Jahren sehr vorsichtig darauf und bezieht sich ihre Informationen über die Identität nicht aus der Effektiven UID sondern aus der echten UID. Ältere Versionen können hier aber erhebliche Schwierigkeiten machen..

Mitschrift aus dem Unterricht

(ich würde die zsh nehmen wenn ich es mir denn aussuchen könnte)

bash

Bourne-Again-Shell. Sie ist die unter Linux am häufigsten benutzte und mächtigste Shell.

Sie entspricht dem POSIX-Standard, ist zur Bourne-Shell kompatibel und wird vom

GNU-Projekt der Free Software Foundation entwickelt und vertrieben. Sie ermöglicht

das Editieren der Befehlszeile sowie History-Substitution.

Geben Sie folgenden Befehl ein, wenn Sie herausfinden möchten, mit welcher Shell Sie

arbeiten. Sie erhalten den vollen Pfadnamen zu Ihrer Shell. Vergessen Sie nicht, das Dollar-

Zeichen mit einzugeben:

$ echo $SHELL

Die Wahrscheinlichkeit ist groß, dass Sie mit bash arbeiten, der Bourne-Again-Shell.

Falls Sie sich in einer anderen Shell wiederfinden, ist dies vielleicht eine gute Gelegenheit, auf

bash umzusteigen. Die bash ist äußerst umfangreich, folgt dem POSIX-Standard, wird gut

unterstützt und ist unter Linux sehr beliebt.

sh

ist meistens ein Link auf die tatsächlich als Standard-Shell zu verwendende Shell (welche auch immer :P).

zsh

Z-Shell. Die neueste der Shells. Kompatibel zur Bourne-Shell. Das Editieren der Befehlszeile

ist möglich.(auch ksh,csh können hier gut genutzt werden)

csh

C-Shell. Sie wurde in Berkeley entwickelt. Sie ist bei der interaktiven Arbeit weit gehend

kompatibel zur Bourne-Shell, bietet aber eine andere Schnittstelle bei der Shell-Programmierung.

Das Editieren der Befehlszeile ist nicht möglich, aber es gibt einen ausgefeilten

Ersatz namens History-Substitution dafür. Unter Linux ist csh nur ein Aliasname für die

neuere tcsh.

tcsh

Erweiterte C-Shell mit der Möglichkeit, die Befehlszeile zu editieren.

ksh

Korn-Shell. Sie ist vielleicht die beliebteste Unix-Shell in der IBM-Welt und war die erste,

die die Bourne-Shell um einige Merkmale moderner Benutzerschnittstellen erweiterte

(einige davon wurden von der C-Shell übernommen). Sie ist kompatibel zur Bourne-Shell

und bietet Editiermöglichkeiten in der Befehlszeile.

pksh

Freie Variante der ksh etwas eingeschränkt

Standart Shell ist in OpenSUSE die Bash (ich meine es nur, ich will es nicht besser wissen!)

Kleine Prüfung z.B

echo $SHELL
Ausgabe = /bin/sh Ist noch nicht aussagekräftig, aber ich habe da noch was an Shell Skripten geschrieben muss ich nur finden dann lade ich das hoch erweiterter test welche Shell es ist:
w
Ausgabe: USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT tobkern tty7 :0 01:07 1:13m 5:01 0.02s /bin/bash /usr/bin/keytouchd-launch gnome-session
file /bin/sh
Ausgabe: /bin/sh: symbolic link to `dash' Ausgabe ist die Shell des aktuellen Benutzers ! und hat man mal kein Plan was, was denn so ist einfach mal
type bash

Ausgabe:

bash ist /bin/bash

wie gesagt Suche mal das Script.

bis dann

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...