Natychmiastowe przełączanie między środowiskami pulpitu w ramach uruchomionej sesji pulpitu


16

Czy istnieje sposób na natychmiastową zmianę? (najlepiej z wiersza poleceń) między jednym środowiskiem pulpitu a drugim; powiedzmy, od Unity do klasycznego GNOME bez konieczności zamykania uruchomionych aplikacji w tej samej sesji pulpitu?

(Pamiętaj, że nie chodzi o instalację środowisk.)


2
Zobaczmy, kto poda autorytatywną odpowiedź, ale mam wrażenie, że jeśli chodzi o Ubuntu i oficjalne smaki, musisz się wylogować i zalogować ponownie. Było coś o nazwie Hybryde Fusion 13.04, które wydaje się oferować coś powiązanego ale tutaj byłoby to nie na temat.

tak, który wydaje się oferować trochę środowiska graficznego HY-D-V1 .. wygląd wydaje się być dość zbliżony do GNOME3, ale mam nadzieję, że oferuje lepsze wrażenia ..
dokładnie

A potem myślę, że Zorin oferuje również coś podobnego. To też będzie OT: D Zdecydowałem, że czysta sesja Openbox bez pulpitu jest dla mnie wystarczająca;)

Odpowiedzi:


11

Dostałem niezłą sztuczkę, kiedy szukałem klawiszy WM, czytając strony podręcznika.

man dm-tool

dm-tool to narzędzie do komunikacji z menedżerem wyświetlania LightDM.

   list-seats
          List the active seats and sessions that are running.

   add-nested-seat
          Start an X server inside a session and connect it to a display manager.

   add-local-x-seat DISPLAY_NUMBER
          Connect an existing X server to the display manager.

   add-seat TYPE [NAME=VALUE...]
          Add a dynamic seat.
  • Biegać:

    $ dm-tool add-nested-seat
    /org/freedesktop/DisplayManager/Seat2
    

    Aktualizacja : w nowszej wersji można kontrolować wymiary nowego okna lub pozwolić, aby był on pełnoekranowy poprzez dodanie parametrów --fullscreenlub --screen XxY, patrz dm-tool --help.

  • Otrzymałem nowe okno z nową sesją (zatytułowane Xephyr on):

    wprowadź opis zdjęcia tutaj

  • Następnie zaloguj się przy użyciu innego pulpitu (LXDE):

    wprowadź opis zdjęcia tutaj

  • Możesz przełączyć, czy mysz i klawiatura mają być przechwytywane w nowej sesji, pisząc Ctrl-Shift.

  • Sprawdź listę miejsc:

    $ dm-tool list-seats
    Seat2
      CanSwitch=false
      HasGuestAccount=true
      Session2
        UserName='sneetsher'
    Seat0
      CanSwitch=true
      HasGuestAccount=true
      Session0
        UserName='sneetsher'
    

  • Aby uruchomić na pełnym ekranie:

    Xephyr :1 -br -fullscreen &
    dm-tool add-local-x-seat 1
    

Odniesienie: Using_Xephyr


to nie jest dokładnie to, czego szukam, ale Xephyrjest to dobre narzędzie, aby wiedzieć o ... więcej niż +1 .. dm-tool add-nested-seatwydaje się, że działa tylko dla mnie, nie można rozpocząć od określonej rozdzielczości lub pełnego ekranu z Xephyr... i zamknąć nie zamyka slave X; Muszę kliknąć przycisk Zamknij (czy to dobrze?) ..
dokładnie

dm-tool add-nested-seatdziała z niektórymi ustawieniami domyślnymi, dlatego uruchamiam Xephyrjako pełny ekran na nowym ekranie, a następnie uruchamiam dm-toolna tym ekranie. „Zamknij nie zamyka slave X”, ponieważ nie jest to wizualizacja systemu, ale nie jestem pewien, czy jest lepszy sposób. Tę sesję można nawet zamknąć jak każde okno za pomocą Alt + F4. I możesz przełączać się między dowolnymi oknami Alt + Tab.
user.dz

2
W międzyczasie dm-tool została zaktualizowana, to teraz akceptuje opcje --fullscreenalbo --screen 800x600więc to chyba nie zawsze jest konieczne do uruchomienia Xephyr bezpośrednio do osiągnięcia tego celu. Wpisz, dm-tool --helpaby zobaczyć to udokumentowane. (Strona podręcznika prawdopodobnie zostanie później zaktualizowana o nowsze opcje).
mit

7

To hipotetyczna odpowiedź, ale być może ktoś z większą wiedzą na ten temat może oprzeć się na moich stwierdzeniach. Jeśli są uruchamiane pod innym wyjściem xserver, możesz przełączać się między nimi, naciskając Ctrl+ Alt+ F1, Ctrl+ Alt+ F2, ... itd. Gdzie F1jest X1, F2X2 itd. Itd. Domyślam się, że polecenia będą wyglądać następująco:

  1. W typie terminala: sudo xhost +

    Uwaga: stanowi to zagrożenie dla bezpieczeństwa, ponieważ właśnie zezwoliłeś na dostęp do dowolnego z x wyjść.

  2. Ctrl+ Alt+F1

    Spowoduje to przejście do wyjścia X 1, domyślny pulpit to f7

  3. Rodzaj: export DISPLAY=localhost:1

    1, ponieważ jesteś na x wyjściu 1, domyślnie jest na 0, a dla dodatkowych wyjść użyjesz wyższych liczb, np .: 2,3,4 itd.

  4. Wpisz: startxfce4(XFCE), startkde(KDE) lub startlxde(LXDE), aby otworzyć pulpit w nowym wyjściu X.

To jeszcze nie działa, myślę, że to dlatego, że musisz go uruchamiać jako inny użytkownik, ponieważ kiedy próbuję, mówi, że pulpit już działa na innym komputerze lokalnym? To jest tak daleko, jak udało mi się to osiągnąć.


1
Spróbowałem, mam tylko Gnome / Unity. startxnie działało Więc uruchamiam go w tle startx &, działa i stworzyłem nową sesję gnome (moja domyślna) z tym samym użytkownikiem na tty8 (Ctrl + Alt + F8). Próbowałem ponownie, sudo xhost -ponieważ myślałem, że to ten sam użytkownik, dlaczego nie, To też działa. Wylogowanie sprowadza mnie z powrotem do tty1.
user.dz

2

Alternatywny punkt widzenia

Możliwe jest uruchomienie innej xsession dla innego użytkownika.

Po prostu utwórz nowego użytkownika

sudo useradd test_test

Teraz wystarczy zablokować konto Ctrl+ Alt+ L, a następnie przejść do nowego dodanego użytkownika i zalogować się. W menu logowania możesz wybrać pomiędzy zainstalowanym środowiskiem pulpitu.

Automatycznie rozpocznie nową xsession w nowym tty. Dla mnie tak jest tty8. Teraz używając Ctrl+ Alt+ F7, mogę wrócić do mojej xsession użytkownika. Używanie Ctrl+ Alt+ z F8powrotem do nowej sesji użytkownika.


1
to po prostu przełączanie się między kontami użytkowników . Szukam sposobu na przejście do innego środowiska w tej samej sesji, w której moje aplikacje powinny zachować swój stan między przełączeniami ...
dokładnie

1
Właśnie tego szukałem, aby zwiększyć wydajność, koncentrując się na jednym przedziale na raz.
Banago,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.