Direktes Starten des XServer ohne Login Prompt

Hallo !

Würde gerne fragen ob mir jemand sagen kann was ich tun muss damit nach dem booten von OpenBSD der Befehl "startx" als angemeldeter "root" Benutzer ausgeführt werden kann.

Habe bereits veruscht den Befehl "startx" alleine ganz am ende der "/etc/rc" Datei zu schreiben um damit den root Desktop zu starten.
Leider meldet OBSD das er das richtige Profil zum "startx" nicht finden kann da ich nicht als user im System angemeldet bin.

Danke im voraus für jede Hilfe.
Gruss Soft-ICE-Crack
 
Du willst dich also auf der Konsole anmelden und dann soll startx ausgefuehrt werden? Dazu kannst du z.B. in das Startskript deiner Shell den Befehl startx & schreiben. Wenn du die bash benutzt, dann musst du dir die .bashrc im Homeverzeichnis vornehmen, bei (t)csh oder zsh verhaelt es sich aehnlich mit den rc Startskripten im Homeverzeichnis. Ansonsten schau dir einfach die Manpages an.
 
Also ersteinmal frage ich mich, warum du den X-Server als root starten willst? Das willst du mit Sicherheit nicht. Solch große Sicherheitrisiken sollte man nicht eingehen, dann kannste auch gleich windows benutzen. Warum willst du dich als root einloggen?

Zum Thema:
Ich benutze zwar "nur" FreeBSD, aber ich denke mal, dass es unter OpenBSD gleich sein wird. Es gibt in den Userverzeichnissen eine Datei, die .profile heißt. In diese Datei schreibst ans Ende einfach "startx" ein.

Wenn du dich dann mit dem entsprechenden User anmeldest, wird automatisch X gestartet. Falls du möchtest, dass der entsprechende User automatisiert beim booten eingeloggt wird, kannst du das über die /etc/gettytab lösen. Wie gesagt, so isses bei FreeBSD.
 
Hallo allerseits.

Danke für die anregenden Antworten bis jetzt.

So wie es aussieht benutzt OpenBSD keine ".zshrc" dateien.

Die einzige Dateie die in etwa gleich heisst bei OpenBSD ist ".cshrc".

Ein "startx" eintrag "startx &" am ende dieser Datei im root Verzeichniss "/root/.cshrc" und in "/.cshrc" bringt leider keine veränderung beim Booten von OpenBSD.

Der Grund weshalb ich zur Zeit als root in OpenBSD arbeite ist das ich das System kennenlernen will ohne mich bei jeder aktion einlogen zu müssen.
Bin soeben von Windows zu OpenBSD umgestiegen und möchte das ganze rechte system genauso haben wie bei Windows.
Die OpenBSD Maschine ist zur Zeit einfach eine Testmaschine damit ich lernen kann wie OpeBSD funktioniert.
 
Die Dateien mit *rc gehoeren zu den Shells. Das sind ihre Startskripte. Die .zshrc gehoert zur ZSH, analog dazu benutzt die Standardshell csh von *BSD die Datei .cshrc. Der Inhalt dieser Datei wird erst ausgefuehrt, wenn sich der jeweilige Benutzer angemeldet hat. Willst du aber, dass anstatt der "normalen" Loginprompt der Xserver gestartet wird, musst du einen Displaymanager wie z.B. xdm benutzen.
 
Styx schrieb:
Zum Thema:
Ich benutze zwar "nur" FreeBSD, aber ich denke mal, dass es unter OpenBSD gleich sein wird. Es gibt in den Userverzeichnissen eine Datei, die .profile heißt. In diese Datei schreibst ans Ende einfach "startx" ein.

Wenn du dich dann mit dem entsprechenden User anmeldest, wird automatisch X gestartet. Falls du möchtest, dass der entsprechende User automatisiert beim booten eingeloggt wird, kannst du das über die /etc/gettytab lösen. Wie gesagt, so isses bei FreeBSD.

Der Eintrag von "startx" am ende der Datei "/root/.profile" funktioniert.

Beim Anmelden als root am Bootpromt wird startx automatisch ausgeführt.
Genial :)

Jetz muss ich OpenBSD noch dazu bringen sich automatisch als "root" anzumelden ohne den Bootprompt anzuzeigen und alles ist perfekt.
 
cnopers schrieb:
Der Inhalt dieser Datei wird erst ausgefuehrt, wenn sich der jeweilige Benutzer angemeldet hat. Willst du aber, dass anstatt der "normalen" Loginprompt der Xserver gestartet wird, musst du einen Displaymanager wie z.B. xdm benutzen.

Hallo cnopers.

Vielen dank für die Infos bezüglich den Shellskripts.
Werde den Inhalt dieser Dateien noch einmal genauer anschauen um zu verstehen was sie exakt machen.
Es kann gut sein das ich womöglich die anweisung "startx" falsch im skript platziert habe.

Danke für die hilfreichen Antworten.
Gruss Soft-ICE-Crack.
 
Steve` schrieb:
Kann es sein, dass das ein blödes Argument war?

Kann es sein, dass dein Beitrag nicht sehr hilfreich ist? Das Argument hinkt zugegebenermaßen ein wenig, aber wenn ich das hier lese:

Soft-ICE-Crack schrieb:
Der Grund weshalb ich zur Zeit als root in OpenBSD arbeite ist das ich das System kennenlernen will ohne mich bei jeder aktion einlogen zu müssen.
Bin soeben von Windows zu OpenBSD umgestiegen und möchte das ganze rechte system genauso haben wie bei Windows.
Die OpenBSD Maschine ist zur Zeit einfach eine Testmaschine damit ich lernen kann wie OpeBSD funktioniert.

weiß ich, dass er elementare Dinge an Unix (noch) nicht verstanden hat und wir helfen ihm hier einen Desktop-PC mit OpenBSd zu nutzen, bei dem er ausschließlich mit root arbeitet. Ist das sinnvoll?

@Soft-ICE-Crack
Ich kann dir nur absolut davon abraten dich dauerhaft als root einzuloggen und so ziemlich jeder wird mir hier zustimmen! Du willst OpenBSD kennen lernen? Dann solltest du auch generell lernen, wie man unter Unix arbeitet. Lege dir einen User an, der das Recht hat, zu root zu wechseln. Dann loggst du dich generell als User ein, startest den X-Server usw. Wenn du root-Rechte brauchst, öffnest du unter X einfach eine Konsole (zB xterm) und gibst

Code:
$ su root

und anschließend das PAsswort ein und schon kannst du alles machen, was du willst. Das sollte doch nicht so umständlich sein, oder? Du musst nichts neu starten oder dich irgendwo abmelden oder so.

Automatisches Login:
Da ich OpenBSD nicht nutze, sondern nur FreeBSD kann ich dir nur sagen, wie man sich automatisch bei FreeBSD einloggt:

Ändere in der /etc/ttys folgende Zeile:

Code:
ttyv0   "/usr/libexec/getty Pc"  cons25l1 on  secure

in

Code:
ttyv0   "/usr/libexec/getty autologin"  cons25l1 on  secure

Dann änderst du in der /etc/gettytab folgendes:

Code:
autologin|al.9600:\
        :al=root:tc=std.9600:

An der Stelle, wo "root" steht, muss der entsprechende User stehen. Es geht mit jedem User.

Wie gesagt funktioniert auf FreeBSD, sollte aber auf OpenBSD genauso oder zumindest so ähnlich gehen.
 
Styx schrieb:
Automatisches Login:
Da ich OpenBSD nicht nutze, sondern nur FreeBSD kann ich dir nur sagen, wie man sich automatisch bei FreeBSD einloggt:

Ändere in der /etc/ttys folgende Zeile:

Code:
ttyv0   "/usr/libexec/getty Pc"  cons25l1 on  secure

in

Code:
ttyv0   "/usr/libexec/getty autologin"  cons25l1 on  secure

Dann änderst du in der /etc/gettytab folgendes:

Code:
autologin|al.9600:\
        :al=root:tc=std.9600:

An der Stelle, wo "root" steht, muss der entsprechende User stehen. Es geht mit jedem User.

Wie gesagt funktioniert auf FreeBSD, sollte aber auf OpenBSD genauso oder zumindest so ähnlich gehen.

Aus irrgend einem grund sehen die Daten bei mir alle ein bisschen anders aus.
in der "ttys" datei habe ich anstatt "ttyv" den namen "ttyc" mit den consolen typ vt220.

die ersten zwei Zeilen sehen bei mir so aus.
console "/usr/libexec/getty Pc" vt220 off secure
ttyC0 "/usr/libexec/getty Pc" vt220 on secure
.....

die datei gettytab hat zu meinem erstaunen sogar nicht einmal ein eintrag für autologin.

der einzige eintrag den es in der datei "gettytab" gibt ist der eintrag "Pc" welcher in der ttys datei benutz wird.
Das ganze sieht so aus.

P|Pc|Pc console:\
:np:sp#9600:

Habe versucht den autologin teil aus der freebsd "gettytab" datei ins OpenBSD gettytab datei zu kopieren leider will es nicht so funktionieren wie es sein sollte.

Beim booten gibt es absolut keine änderung. Der Boot-Login Prompt erscheint immer noch.

Kann vielleicht das problem daran liegen das in FreeBSD "ttyV" verwendet wird und in OpenBSD "ttyC" ?

Weiss jemand abhilfe für das auto login problem in OpenBSD ?
 
Ist zwar ein bisschen ot, aber wenn du dich nicht immer als root einloggen willst, installier dir doch sysutils/sudo.

Nach der Installation musst du als root

# visudo

ausführen und den Kommentar an der richtigen Stelle rausnehmen (z.B. alle Benutzer aus Wheel dürfen alle Befehle ausführen).

Danach kannst du jeden Befehl als root ausführen:

$ sudo mount /dev/da0s1 /mnt

Jeweils beim ersten Mal jeder Sitzung musst du noch das User- (nicht root!) Passwort eingeben.

-- Dinh --


EDIT: Bei Ubuntulinux ist das z.B. die Standardeinstellung
 
Wie wäre es mit GDM und automatischem Einloggen? Beim start wird gdm gestartet (mit X) und loggt nen user ein.
 
~/.cshrc => csh, tcsh (C-Shells)
~/.tcshrc => tcsh (C-Shell)
~/.zshrc => zsh (Z-Shell)
~/.bashrc => bash (Bourne Shell)
~/.kshrc => ksh (KornShell)

Dies sind die jeweiligen Files die eine Shell unteranderem beim einlogen/starten ausliesst.
(nicht alle davon sind unter OpenBSD verfügbar meine ich)

Bei den C-Shells wird ~/.cshrc immer ausgelesen, bei den anderen überall (wenn ich mich nicht irre) die ~/.profile.

Bei OpenBSD ist wohl Default die ksh die root Shell. Somit musst Du ~/.profile verwenden.

SU(1) ist meines Wissens unter OpenBSD nicht vorhanden, dort wird meisst mit SUDO(8) gearbeitet.
Leg dir einen User an, der unter anderem in der Gruppe wheel ist. Danach kannst Du in der Konsole oder Terminal nach Wahl mit »sudo ksh« dir eine ksh Shell mit root-rechten starten.

Wenn Du unter OpenBSD so ein Rechtesystem haben willst wie unter Windows, dann arbeiten unterm Singeluser-Modus. (wer Sarkasmus findet darf ihn behalten ;-))

Ernsthaft, Du willst Dir ins Bein schiessen, nur zu. Da möchte ich Dich wirklich nicht von abhalten. Ich möchte Dir aber auch noch mal nahe legen: Wenn Du wirklich (Open)BSD kennen lernen willst, dann fang nicht damit an: »ich will das aber wie bei Windows.«, weil dann kannst auch bei Windows bleiben.

Im übrigen ist OpenBSD kein FreeBSD!
(Das an die, die Tipps von FreeBSD direkt nach OpenBSD übertragen und k.A. haben ob es unter OpenBSD genau so ist. Das ist verwirrender für den Fragestellenden [als auch für den Rest die drauf stossen] als keine Antwort.)

Nachtrag:
ich sehe gerade das OpenBSD auch su(1) hat. Warum lese ich dann bei OpenBSD immer sudo, kann mir das vielleicht jemand kurz schreiben?
 
Zuletzt bearbeitet von einem Moderator:
paefchen schrieb:
Nachtrag:
ich sehe gerade das OpenBSD auch su(1) hat. Warum lese ich dann bei OpenBSD immer sudo, kann mir das vielleicht jemand kurz schreiben?
Die Verwendung von sudo schliesst ja die alternative Verwendung von su nicht aus. Su startet 'ne shell mit anderen Rechten, sudo führt ein angegebenes Programm mit anderen Rechten aus. Su verlangt root-Passwort (bzw. das Passwort des zu kaperenden Benutzers), sudo will das eigene Passwort haben (oder garkeins, je nach Konfiguration). Ein Hauptgrund für die Verwendung von sudo statt su dürfte also der Schutz des root-Accounts sein. Ausserdem kannst Du sudo sagen, welcher User welche Programme ausführen darf.

Für den automatischen Login würde ich wohl auch mal gdm probieren, wenn's denn sein muss. Das erlaubt allerdings kein automatisches Anmelden von root, aber sowas will ja sowieso keiner machen.
 
@nickers: Danke Dir!
Der Unterschied beider Programme ist mir soweit auch bekannt. OSX z.B. kommt nur mit sudo daher. Um die Liste zu vervollständigen, gäbe es noch su2.

Hmm dann war das wohl von mir ein Hirngespenst, das OpenBSD kein su im Base hat.
 
Zurück
Oben