Jaki jest najprostszy sposób na rozebranie wersji komputerowej na wersję serwerową?

22

Zainstalowaliśmy wersję Ubuntu Desktop na naszym serwerze programistycznym. Teraz, gdy mamy go w centrum danych, chcielibyśmy go rozebrać do wersji serwerowej.

Czy istnieje prosty sposób, aby to zrobić zamiast wchodzić i odinstalowywać pakiety ręcznie?

Gabriel Solomon
źródło
2
Ponowna instalacja jest najlepsza: płyta CD z serwerem ma ustawione parametry jądra, których brakuje na pulpicie (możesz je również uzyskać z pulpitu, ale jest to więcej pracy niż ponowna instalacja;))
Rinzwind
Ponadto należy również usunąć cruft x11 za pomocą sudo apt-get remove x11 *
Rob K

Odpowiedzi:

16

Można to zrobić na odwrót, ale nigdy nie widziałem nikogo, kto byłby w stanie to zrobić po prostu instalując metapakiet lub coś takiego.

Twój najlepszy zakład to:

  • czysta instalacja
  • ręcznie usuwając niepotrzebne pakiety i instalując potrzebne komponenty serwera
Nathan Osman
źródło
1
Najlepszym rozwiązaniem jest czysta instalacja, ale jeśli chcesz ręcznie usunąć pakiety, uruchom dpkg --get-selections "*"> ~ / applications.txt i usuń to, czego nie potrzebujesz.
majstrować
14

Możesz usunąć ubuntu-desktopi jednocześnie automatycznie usunąć wszystkie osierocone zależności:

sudo apt-get autoremove ubuntu-desktop

Dodaj --purgeopcję, jeśli chcesz również usunąć konfigurację pakietów, których dotyczy problem (i nie zachowuj jej do późniejszej ponownej instalacji).

Jeśli masz inny Pulpit, usuń je również. jeśli po tym zrestartujesz, nie powinieneś mieć GUI do zalogowania się. Jeśli wyczyścisz program, a nie tylko go usuniesz, usuniesz również wszelkie pliki konfiguracyjne, które mogą pozostać.

Jak sugeruje Rinzwind , spróbuj sudo apt-get remove gnome-*.

Przed Ubuntu 16.04 zapewnia także specjalny pakiet jądra do instalacji serwerów linux-image-server:

  • sudo apt-get install linux-image-server i uruchom ponownie.

Następnie sugeruję zainstalowanie aplikacji serwera, takich jak ssh-server.


Ale jak zawsze lepiej jest wykonać czystą instalację. Daje to mniejsze ryzyko błędów i uszkodzonych pakietów.

Alvar
źródło
1
Cóż, usunąłem ubuntu-desktop, ale nic nie zrobił, ponieważ nie zależy od tego żadna paczka. Następnie usunięto wszystkie pakiety, które ubuntu-desktoppolega, który działa lepiej, ale nadal pozostawia trochę bałagan z pakietów, takich jak unity-common, gedit-commonitp
Bart van Heukelom
@BartvanHeukelom dobrze, zrobiłeś purgeto czy tylko removeto? zredagował pytanie.
Alvar
1
iirc sudo apt-get remove gnome-*zajmie się większością paczek. Jedność powinna zostać usunięta wraz z tym (ponieważ zależności). (wymaga jednak potwierdzenia, ponieważ zwykle tego nie robię)
Rinzwind
Usunąłem go (przypadkowo), nie wyczyściłem, ale AFAIK nie powinno mieć znaczenia w odniesieniu do zależności.
Bart van Heukelom,
2
Od 12.04 nie ma różnicy w jądrze między Ubuntu Desktop a Ubuntu Server, ponieważ linux-image-server jest scalony w linux-image-generic. (z Ubuntu ServerFaq)
Amir Ali Akbari
12

Uwaga: jak stwierdzono w komentarzach, tasksel powinien być używany tylko do instalowania zadań, a nie ich usuwania. W tym konkretnym zadaniu (usuń pulpit -> zainstaluj serwer) wydaje się, że działa dobrze. Dlatego używaj go ostrożnie.


Możesz spróbować tasksel. Dzięki niemu możesz robić, co chcesz, wybierając Basic Ubuntu Server i odznaczając Ubuntu Desktop .

sudo apt-get install tasksel

ekran zadań

Salem
źródło
1
Czy ty lub ktoś inny może potwierdzić, że to działa? Mówisz „spróbuj”, ale jeśli to zadziała, to świetna odpowiedź.
djeikyb
1
Fragment strony Ubuntu Tasksel: OSTRZEŻENIE: Użyj Tasksel tylko do instalowania zadań, nigdy ich nie usuwaj! Według launchpad.net/bugs/574287 usunie każdy pakiet z listy tego zadania (i prawdopodobnie uniemożliwi korzystanie z systemu).
Andrejs Cainikovs
Jak wyżej, nie polecam w twoim przypadku używania tasksel.
Andrejs Cainikovs
1
@ djeikyb Próbowałem tego z Ubuntu 9.10 i Ubuntu 11.10 i oba działają (instalacja Wubi, usunięcie pulpitu i instalacja „pakietów serwerów”). W 11.10 jest mała usterka: system uruchamia się, ale nie wyświetla monitu o zalogowanie się.
Salem
@AndrejsCainikovs użyłem tasksel tylko do tego konkretnego zadania (usuń pulpit -> zainstaluj serwer), a w systemach, w których go użyłem, działa. Zaktualizuję odpowiedź
Salem
2

Jeśli chcesz po prostu nie uruchamiać DM i WM podczas uruchamiania, ale zachować możliwość ich uruchamiania do woli, możesz uruchomić:

sudo systemctl set-default runlevel3.target

następnie uruchom ponownie.

System uruchomi się do poziomu 3 (init 3), który nie uruchamia DM i WM i wszystkich innych rzeczy związanych ze środowiskiem pulpitu, ale uruchamia wszystko inne. Gdy system uruchomi się na terminalu tty1 w konsoli, możesz się zalogować

sudo init 5

aby zalogować się do środowiska pulpitu.

Na komputerach ubuntu i xfce4 testowałem za pomocą przycisku wylogowania z GUI, który zawiesił mój system.
Na pulpicie ubuntu przyciski wyłączania i restartowania działały poprawnie; Pulpit xfce4 ma tylko przycisk wylogowania.

Bezpiecznym sposobem na powrót tylko do tty jest otwarcie terminala i uruchomienie:

sudo init 3
Technopeon
źródło