Meine erste Computererfahrung war mit einem Commodore. Ich möchte, dass Linux-Computer ähnlich funktionieren. Ich habe mich gefragt, ob es unter Linux möglich ist, etwas Ähnliches zu haben.
Was ich sehen möchte, ist, wenn ich meinen Computer über die Befehlszeile und nicht über eine GUI boote, aber grafische Ressourcen zur Verfügung habe. Wenn ich also say eingebe, werden Firefox, das Programm und seine grafische Oberfläche zur Verfügung gestellt. Wenn ich Firefox beende, kehre ich zur Befehlszeile zurück. Wenn ich das Dateisystem durchsuchen muss, sage ich, ich habe Folgendes eingegeben: XFE oder welcher Manager auch immer wird verwendet, und es wird angezeigt, und ich kann den Ordner durchsuchen. Wenn ich ihn beende, kehre ich wieder zur Befehlszeile zurück. Die Möglichkeit, Programme auszuführen, zu verwalten und zu verwenden, ohne eine grafische Benutzeroberfläche verwenden zu müssen, aber Grafiken zur Verfügung zu haben.
Es wäre schön, wenn all dies auf die Programmierung ausgerichtet wäre. Rufen Sie in der BASH-Befehlszeile die IDE einer Compiler-Umgebung auf und schreiben Sie Programme, ohne von einer Desktop-Umgebung abgelenkt zu werden.
Und wenn mehr als ein Grafikprogramm läuft, habe ich einen Fenstermanager mit Registerkarten. Ist das machbar oder träume ich?
quelle
Antworten:
Ich denke, Sie können mit einem Kachelfenster-Manager wie i3 oder xmonad das bekommen, was Sie wollen . Es gibt andere minimalistische Fenstermanager mit ähnlichen Funktionen. i3 und xmonad befinden sich beide in Ubuntu-Repositorys, so dass sie einfach zu installieren sind. Anschließend können Sie sie in Ihrem Anmeldebildschirm auswählen.
quelle
Ich fürchte, Sie verpassen den Hauptunterschied zwischen modernen Computerumgebungen und denen der C-64-Ära. Heimcomputer der C-64-Ära waren Einzelbenutzer- und Einzelprozesssysteme und teilten die Computerressourcen nicht mit anderen Prozessen. Dies bedeutet ganz einfach, dass Sie, wenn Sie ein Programm auf Ihrem C-64 ausführen, das ein Grafikprogramm war, die Hardware Ihres Computers so umkonfigurieren, dass sie sich im Grafikmodus befindet, und Ihr laufendes Programm dann die gesamte grafische Ausgabe und den Benutzer handhabt Eingabe von der Maus und Tastatur selbst.
Im Gegensatz dazu sind moderne Computer und ihre Software Multi-User-Multi-Prozesse, aber nicht nur das. Moderne Software hängt von gemeinsam genutzten Bibliotheken ab, z. B. stützt sich Firefox auf die GTK-Fensterbibliothek und diese wiederum auf andere Bibliotheken auf niedrigerer Ebene. Damit Firefox ausgeführt werden kann, ist eine ganze Reihe von Software und Konfigurationen erforderlich.
Da es so viel zugrunde liegende Software gibt, ist es effizienter, nach dem Start in einer grafischen Umgebung zu bleiben, als die grafische Umgebung für Firefox zu laden, sie dann herunterzufahren und die grafische Umgebung für ein anderes Programm zu starten. so weiter und so fort.
Sie können jedes Linux-GUI-Programm ganz einfach über ein Terminal (Konsolen) -Fenster starten und ausführen. Ich empfehle Ihnen daher, sich eine einfache grafische Desktop-Umgebung, z. B. Enlightenment oder Openbox , auszusuchen und alles über ein Terminal / xterm-Fenster auszuführen.
quelle
Ich stimme Eduar zu, Sie möchten wahrscheinlich einen Tiling / Dynamic Window Manager (WM). Aber niemand ist direkt angesprochen:
Derzeit sollten Sie einen Display Manager (DM) starten, in dem Sie sich anmelden. Sie haben also zwei Möglichkeiten, in eine Shell oder eine Konsole DM zu booten.
Wenn Sie keine DMs eingerichtet haben, melden Sie sich standardmäßig bei einer Shell an. Auf diese Weise erhalten Sie eine Anmeldeaufforderung mit Benutzernamen und Kennwort. Wenn Sie die richtigen Anmeldeinformationen eingeben, melden Sie sich bei Ihrer Standard-Shell an. Ich benutze dies und das Folgende ist ungefähr mein durchschnittlicher Startprozess:
Wenn Sie eine DM haben möchten, aber eine Konsole, müssen Sie sie installieren und konfigurieren. Archs Wiki sagt derzeit, dass es drei Konsolen-DMs gibt: CDM, Console TDM und nodm .
Ubuntu verwendet standardmäßig LightDM , so dass Sie es möglicherweise entfernen müssen.
Aber als jemand, der derzeit keine DM hat, würde ich empfehlen, an Ihrer aktuellen DM festzuhalten und einfach Ihre WM zu ändern. Es ist mühsam zu tippen
startx
und aus dem Speicher automatisch korrekt auszuführen, was für das Setup ärgerlich war.quelle
startx
automatische Ausführung glaube ich, dass jedes Konto ein Bash-Skript hat, das beim Anmelden ausgeführt wird (oder für andere Shells gleichwertig ist).bash_profile
es sich um ein gewöhnliches Bash-Skript handelt, können Sie es nicht einfach einfügenstartx
?.bash_profile
Würde ohne Prüfung versuchen,startx
erneut zu starten .Sowohl startx als auch xinit können als Erstes als Client übergeben werden. Der folgende Befehl:
Startet einen X-Server auf dem TTY, an dem Sie gerade arbeiten, und startet eine einzelne Instanz von Firefox im Vollbildmodus. Sie können zu anderen Titeln wechseln, um zu vermeiden, dass die Firefox-Sitzung beendet werden muss, nur um zur Konsole zurückzukehren, oder um andere Clients dort aufzurufen. Möglicherweise müssen Sie eine Reihe von Optionen angeben, damit dies für Ihren Monitor gut aussieht, da die Desktop-Umgebung einen Teil dieser Konfiguration nicht für Sie übernimmt.
Beachten Sie, dass einige xclients außerhalb von Fenstermanagern oder Desktopumgebungen nicht einwandfrei funktionieren. Es gibt kein DE, das Fensterdekorationen bereitstellt, und kein WM, das MOD-Tastenkombinationen abhört. Wenn diese also keine grafische Möglichkeit zum Beenden bieten, müssen Sie den Prozess (oder X) von einem anderen TTY aus beenden.
Normalerweise ist der erste Client, den die Benutzer mit X verwenden, eine Desktop-Umgebung oder ein Fenstermanager, bei dem es sich lediglich um eine spezielle Art von Client handelt, der andere Clients startet und einbettet und zusätzlich sein eigenes Fenster anzeigt.
quelle
Alternativen
Framebuffer-Modus
Es gibt einige Programme, die im Framebuffer-Modus ausgeführt werden können. Der Framebuffer-Modus ermöglicht es einer Anwendung, den Bildschirm ganz für sich zu behalten, sodass die Anwendung pixelweise auf den Bildschirm zeichnen kann, was immer sie will. Es wird nicht von allen Programmen unterstützt, aber es gibt einige, die dies tun.
Für den Framebuffer-Modus ist kein X-Server erforderlich (z. B.
X.org
bei aktuellen Ubuntu-Versionen oder in naher ZukunftMir
oderWayland
je nachdem, welche Version populärer wird) oder eine Windows-Manager- / Desktop-Umgebung muss gestartet werden. Dies sollte Ihnen eine schnellere Textumschaltung in den Grafikmodus (und zurück) ermöglichen, insbesondere da auf (den meisten?) Modernen Linux-Distributionen und Grafiktreibern dieAlt-F[1-6]
Konsolen sowieso im Framebuffer-Modus gerendert werden."Text User Interface" (TUI)
Einige Programme, die normalerweise nur über die Befehlszeile ausgeführt werden, unterstützen die Verwendung einer Maus über
gpm
. Alles, was Sie unter Ubuntu tun müssen, ist, das Paket zu installieren,gpm
und es sollte sofort funktionieren, ohne dass eine Konfiguration oder sogar ein Neustart erforderlich ist (IIRC). Nach dergpm
Installation wird Ihr Mauszeiger als Textcursor im Blockstil angezeigt, und Sie können wie gewohnt mit der Maus auf die Elemente der Benutzeroberfläche klicken. Sie können auch Text markieren und Kopieren und Einfügen verwenden.Wenn Sie noch einen Schritt weiter gehen möchten, gibt es sogar einen "Fenstermanager", mit dem Sie mehrere Terminalanwendungen auf demselben "Desktop" im Textmodus ausführen können.
Nicht vollständige Liste der Programme, die den Framebuffer-Modus unterstützen
quelle
Verwenden Sie einen Fenstermanager wie FVWM2 anstelle eines "Desktops". Sie können es so konfigurieren, dass nur ein (oder mehrere) xterms beim Booten geöffnet werden, Sie können eine beliebige grafische Anwendung wie einen Webbrowser über die Befehlszeile ausführen, sich nicht um Desktop-Inhalte wie "Taskleiste" oder Symbole für alles kümmern, sondern sie hinzufügen Etwas von dem, was Sie vielleicht tatsächlich für nützlich halten. (In meinem Fall ist das ein Pager-Fenster für mehrere Bildschirme und ein Conky-Lademonitor.)
quelle
Das ist sehr gut möglich.
Zuerst müssen Sie den grafischen Start deaktivieren. Dann möchten Sie den "Einzelbenutzermodus" (Warnung, dass dies einige ziemlich extreme Sicherheitsrisiken mit sich bringt), und schließlich müssen Sie festlegen, was zu tun ist, wenn Sie eine GUI ausführen möchten.
Siehe Wie boote ich von GRUB in den Einzelbenutzermodus?
Im Wesentlichen fügen Sie die Option
single
zu Ihrer GRUB-Startkonfiguration hinzu. Sie können dies in Ihrer / etc / default / grub-Datei tun, um die Änderungen dauerhaft zu speichern.Siehe Wie deaktiviere ich X beim Booten, damit das System im Textmodus bootet?
Im Wesentlichen ergänzen Sie
text
Ihre Optionen in/etc/default/grub
Auf diese Weise erhalten Sie eine Nur-Text-Umgebung für einen einzelnen Benutzer. Als nächstes wird die GUI verwendet. Das Programm, das Sie ausführen möchten, ist
startx
Du würdest rennen
startx /path/to/executable
Das Problem ist, dass Sie wahrscheinlich einen Fenstermanager wollen. Ich würde
twm
Ihnen Ihre Bedürfnisse vorschlagen .sudo apt-get install twm
Wenn Sie dann Befehle ausführen möchten, würde ich sagen, dass Sie mit run
startx
zu Ihrer Konsole zurückkehren (STRG + ALT + F1) und so etwas wie tunexport DISPLAY=:0
. Wann immer Sie eine GUI-Anwendung von der Kommandozeile aus starten, wird diese in der "Grafikseite" gestartet, zu der Sie (normalerweise) mit Strg + Alt + F7 gelangen.Wenn Sie dieses Setup mögen, können Sie es sogar mit einem Skript automatisieren.
Das ist so nah wie möglich, ohne viel Arbeit.
quelle
Ich mag Ratpoison für das, was du versuchst zu tun. Ich werde keinen Screenshot veröffentlichen, da Sie den Unterschied zu einem Screenshot von xterm (oder einer anderen von Ihnen ausgeführten Anwendung) nicht erkennen können. In der Standardkonfiguration wird ein Fenster im Vollbildmodus angezeigt. Sie können es aufteilen, um mehrere Fenster anzuzeigen, aber für den Großteil meines täglichen Gebrauchs ist dies nicht der Fall. Wenn Sie einen Terminal-Emulator aus Ihrer .ratpoisionrc-Datei starten, erhalten Sie eine Eingabeaufforderung, sobald Sie sich anmelden. Sie ist vom Gnu-Bildschirm inspiriert und das einzige Konzept, das sie übersehen haben, waren abnehmbare und geteilte Sitzungen (aber vnc füllt diese Lücke gut aus). .
quelle
Ich denke, Sie können bekommen, was Sie wollen, ohne den Desktop wegzuwerfen. Wie andere Antworten gezeigt haben, erhalten Sie wahrscheinlich eine bessere Leistung, wenn der Desktop ausgeführt wird, und es gibt technische Gründe, aus denen Linux ausgeführt wird, als würde ein älteres Betriebssystem nicht wirklich funktionieren.
Ich werde Gnome als Beispiel für einen Workflow verwenden, da ich weiß, dass andere Desktop-Umgebungen ähnliche Funktionen unterstützen. In Gnome 3 können Sie einen Arbeitsbereich (oder mehrere) mit einem Vollbild-Terminal haben, der das gleiche Erscheinungsbild aufweist wie der reine Befehlszeilenmodus. Die Tatsache, dass der Gnome-Desktop im Hintergrund ausgeführt wird, spielt keine Rolle.
Anschließend können Sie mithilfe eines Fenstermanagers (wie dem in dieser SO-Frage beschriebenen ) steuern, in welchem Arbeitsbereich neue Fenster erstellt werden, und erzwingen, dass jedes neue Fenster in einem eigenen Arbeitsbereich platziert wird. Wenn Sie bereit sind, Fenster beim Erstellen selbst zu verschieben, benötigen Sie keine Software außerhalb von gnome. Gnome 3 unterstützt automatische Arbeitsbereiche, sodass beim Öffnen / Schließen von Fenstern im untersten Arbeitsbereich automatisch neue Arbeitsbereiche erstellt / gelöscht werden. Dann können Sie einfach verwenden,
ctrl + alt + arrow
um schnell zwischen ihnen zu wechseln. Wenn Sie ein Fenster schließen, wird der Arbeitsbereich, in dem es sich befand, automatisch gelöscht, und die beiden Arbeitsbereiche auf jeder Seite werden zusammen verschoben. Alles, was Sie jemals sehen, sind die geöffneten Fenster und das Terminal.quelle
Installieren Sie Xvfb:
Lauf:
Führen Sie dann eine beliebige Grafiksoftware aus, die Sie kopflos mögen.
quelle
Sie können mit [Strg] [Alt] [F1] schnell zu einer Befehlszeilenschnittstelle wechseln (funktioniert, glaube ich, mit [F1] - [F12]). Eine davon wechselt auch zu Ihrer GUI zurück, wenn Sie eine benötigen. Ich denke, es ist [Strg] [Alt] [F8] auf Mint, also solltest du es versuchen. Ich werfe mich allerdings in das Lager "Verwende einen Kachelfenster-Manager". i3 ist wirklich ein großartiges Tool.
quelle