GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Was macht der Startx-Befehl?

Beim Lesen über Ubuntu fand ich die folgende Aussage…..

Wenn der Display-Manager nicht standardmäßig im Standard-Runlevel gestartet wird, können Sie X auf andere Weise starten, nachdem Sie sich an einer Textmodus-Konsole angemeldet haben, indem Sie startx von der Befehlszeile aus ausführen.

Was bedeutet es, ein Standard-Runlevel zu sein?
Und als ich das auf meinem Terminal ausprobierte, bekam ich Folgendes:

[email protected]:~$ startx

X: user not authorized to run the X server, aborting.
xinit: giving up
xinit: unable to connect to X server: Connection refused
xinit: server error

Beste Antwort

Es war einmal(1), als der Arbeitsspeicher der Computer in Kilobyte und die Festplatten in Megabyte gemessen wurden, galt es als schädlich, die grafische Oberfläche die ganze Zeit laufen zu lassen.

Die meisten Unix-Computer wurden für wissenschaftliche Berechnungen und Simulationen in Mehrbenutzerumgebungen verwendet, und die darauf laufende grafische Oberfläche würde den ihnen zur Verfügung stehenden Speicher und die verfügbare CPU-Leistung reduzieren.

Wenn Sie also eine grafische Oberfläche brauchten, haben Sie sie einfach mit startx gestartet (2).

startx führt im Grunde einen Xserver (den grafischen „Treiber“) und einen darauf ausgeführten Befehl aus, der normalerweise ein Fenstermanager ist. Standardmäßig befinden sich die ausgeführten Befehle in ~/.xinitrc Datei in Ihrem Home-Verzeichnis oder sonst eine generische Systemdatei.

Bei modernen Systemen wird von Grund auf so gedacht, dass sie ein ständig laufendes grafisches System haben, daher hat wahrscheinlich niemand die Funktionsweise von startx überprüft seit Ewigkeiten – das erklärt viele seltsame Verhaltensweisen, die man haben kann.

Wenn Sie experimentieren und die guten alten Zeiten spüren möchten, gehen Sie am besten wie folgt vor:

A) Installieren Sie Xnest und fvwm . Xnest ist ein grafischer Server innerhalb eines Servers, eine Art Server, der sich als Fenster in Ihrem normalen System öffnet. Fvwm ist ein sehr einfacher Fenstermanager, der damals sehr beliebt war. Sie benötigen auch alte Pixmap-Schriftarten.

sudo apt-get install xnest fvwm 
sudo apt-get install xfonts-100dpi xfonts-100dpi-transcoded xfonts-75dpi-transcoded xfonts-75dpi 

B) Schreiben Sie diese Datei irgendwo hin, zum Beispiel in Ihr Home-Verzeichnis, und nennen Sie sie ~/test :

#!/bin/bash 
#
xterm & 
exec fvwm2

C) Ausführen (Hinweis:startx wird normalerweise zuerst mit dem Client-Befehl, dann mit einem doppelten Bindestrich und dann mit einem Server-Befehl ausgeführt. Wie gesagt, die meisten neuen Systeme haben keine vernünftigen Voreinstellungen für startx alleine.).

cd ~
startx ~/test -- /usr/bin/Xnest -ac :1 -geometry 800x600

…und Sie haben einen Arbeitsplatzbildschirm aus den 80ern:

(Sie können das Menü aufrufen, indem Sie auf den „Xnest“-Desktop klicken).

Verwandte:Anzeigeproblem beim Anpassen der Helligkeit in Ubuntu 12.04?

…und wenn Sie wirklich abenteuerlustig sind, können Sie eine native Sitzung auf einer anderen virtuellen Konsole starten (lesen Sie die anderen Antworten), indem Sie mit Strg-Alt-F1 zu einer davon gehen, sich anmelden und

startx ~/test 

die normalerweise mit Strg-Alt-F8 geöffnet wird.

Hinweis Hinweis:Moderne Desktop-Umgebungen sind nicht darauf ausgelegt, gleichzeitig für denselben Benutzer auf zwei verschiedenen Konsolen ausgeführt zu werden. Verwenden Sie also nicht gnome-shell oder unity oder moderne Dinge, wenn Sie diese Experimente durchführen, oder Sie könnten Ihre Konfiguration durcheinander bringen.

Fußnoten:

(1) Wir sprechen hier von etwa 1980-90.

(2) Zum Beispiel hatte ich einen Laptop mit 256 KB RAM. Es war quälend langsam in der grafischen Benutzeroberfläche (B&W!), aber bissig in der Konsole. Also habe ich den größten Teil meiner Arbeit erledigt (Bearbeiten von C , LaTeX und ähnliche Dateien) im Konsolenmodus und wechselte nur dann zur grafischen Umgebung, wenn es wirklich nötig ist.


Ubuntu
  1. Was macht „lc_all=c“?

  2. Was bedeutet ` (Backquote/Backtick) in Befehlen?

  3. Was bedeutet Echo $? Tun??

  4. Was macht . ~/.bashrc Befehl Tun??

  5. Was bedeutet &am Ende eines Linux-Befehls?

Linux-Dateibefehl:Was macht er und wie wird er verwendet?

ExplainShell – Finden Sie heraus, was jeder Teil eines Linux-Befehls tut

Was macht sudo apt-get update?

Was bedeutet Cat-Befehl unter Linux?

Was macht kill -- -0?

Was macht "exec [email protected]"?