Instalacja Ubuntu Server z pełnym GUI

23

Pochodzi z serwera Windows / MacOS ...

Badałem moje pierwsze wdrożenie linuksowe i zdecydowałem się na Ubuntu / GlusterFS dla serwera plików o wysokiej wydajności.

Mam pytanie dotyczące zasobów potrzebnych w GUI. Rozumiem, że jest to serwer i powinno być gołą kością dla wydajności, ale mam sytuację, w której ten serwer może być administrowany od czasu do czasu przez osobę nietechniczną, która nie czuje się komfortowo z wierszem poleceń. Nie chcę lekkich wersji aplikacji, jeśli będą się rozpraszać i oglądać filmy z YouTube'a, przesyłanie do Dropbox, e-maile lub cokolwiek innego, robiąc to na serwerze, co mnie wcale nie przeszkadza. Niepokoi mnie to, że dzwonię, ponieważ youtube / dropbox nie działa na serwerze i nie chcieli opuszczać maszynowni.

W moich badaniach widziałem tylko absolutnie negatywne rzeczy na temat wykorzystania zasobów gui. Niektóre raporty zawierają nawet 50–60% zasobów wykorzystywanych wyłącznie przez GUI. Czy dotyczy to specjalnie zbudowanej maszyny, czegoś takiego jak 36-kieszeniowy supermicro z dwuprocesorowym procesorem top line / 128 GB / 256 GB pamięci RAM, czy jest to związane tylko z minimalnymi specyfikacjami?

Czy dzieje się tak również wtedy, gdy te ciężkie pakiety (mediaplayer / browser / etc) nie są otwarte, czy tylko wtedy, gdy wymagają przetwarzania? Jeśli nie używają zasobów innych niż miejsce na dysku, nic wielkiego. Nawet jeśli używają trochę, to też w porządku, chętnie oddałbym ogólnie 4–8 GB pamięci RAM, co jest zdecydowanie za dużo, ale tak naprawdę nie chcę tego połączenia. Będzie wystarczająca ilość miejsca we wszystkich aspektach zasobów.

Czy byłoby w ogóle korzystne, aby zainstalować serwer Ubuntu, a następnie GUI w górę, czy też pełna wersja GUI Ubuntu w pełni nadaje się jako system operacyjny serwera, jest po prostu rozdęta i ładniejsza?

Nie pochodzę z Linuksa, więc zobaczenie tego rodzaju serwera z komentarzem specyficznym dla GUI jest bardzo niepokojące.

Każda pomoc doceniona, dziękuję wszystkim

spicyboi
źródło
1
Czy Gluster i Samba mają jakieś sensowne GUI konfiguracji?
vidarlo

Odpowiedzi:

21

Ubuntu to Ubuntu. Wersje serwerowa i stacjonarna działają na tej samej bazie i pobierają z tych samych repozytoriów, są tylko wstępnie skonfigurowane inaczej po wyjęciu z pudełka. Ponieważ wskazują one na te same repozytoria, absolutnie dobrze byłoby wykonać sudo apt install ubuntu-desktop na systemie serwera, aby uruchomić GUI.

GUI używają zasobów systemowych, ale niewiele, szczególnie gdy DE jest na biegu jałowym, a zwłaszcza w systemie z setkami GB pamięci RAM i płytą główną z dwoma gniazdami. Jeśli zainstalowanie GUI na twoim serwerze byłoby korzystne i pomoże Twojemu zespołowi w produktywności, nie zaszkodzi to, robiąc to. Osobiście nie lubię uruchamiać GUI na serwerach, ponieważ używają trochę pamięci RAM nawet na biegu jałowym, ale do każdego z nich. W mojej synaptic widzę 4 różne opcje GUI, które można zainstalować bez egzotyki i dodawania dodatkowych źródeł oprogramowania:

  • ubuntu-desktop (Instaluje domyślne środowisko Ubuntu i Gnome Shell, które dostajesz, jeśli pobierasz zwykłe Ubuntu na komputery)
  • kubuntu-desktop (Instaluje domyślną wersję Ubuntu i KDE, więcej w wersji Windows)
  • lubuntu-desktop (instaluje domyślną wersję Ubuntu LXDE, LXDE jest rozliczany jako lekki)
  • xubuntu-desktop (instaluje domyślną wersję Ubuntu XFCE, XFCE jest rozliczany jako lekki)

Aby zainstalować jeden z nich, po prostu uruchom sudo apt install packagename

Pamiętaj tylko, że te pakiety są tak zwane pakiety „meta”, ponieważ same nie zawierają niczego, tylko wskazują całą listę innych pakietów, które ustawiają predefiniowane warunki, takie jak domyślne środowisko pulpitu Kubuntu ze wszystkimi normalnymi aplikacjami, które byłyby z tym związane. Oznacza to, że po zainstalowaniu jednego z nich może się okazać, że pobiera DUŻO dodatkowych pakietów, a konfiguracja może potrwać kilka minut. Możesz również zobaczyć, jak to oznacza twój „serwer” jako Kubuntu, Lubuntu itp. Nie przejmuj się, to tylko logo :-)

Gerowen
źródło
4
Te pakiety nie są „przejściowe”, są to pakiety meta. Pakiety przejściowe to te używane tymczasowo, aby zapewnić bezproblemowe aktualizacje, gdy nazwa pakietu zostanie zmieniona lub w inny sposób zastąpiona. Na przykład ubuntu-gnome-desktopjest teraz oznaczony jako pakiet przejściowy, ponieważ nie jest już potrzebny, jego rolę przejął ubuntu-desktoplub vanilla-gnome-desktop. (A zarówno pakiety „meta”, jak i „przejściowe” są zwykłymi zwykłymi pakietami, nie ma w nich nic specjalnego technicznego poza tym, że zazwyczaj nie zawierają plików.)
Philipp Wendler
Te urządzenia Ubuntu będą częścią lub cztero węzłowym klastrem gluster obsługującym pliki do studia vfx z dużym obciążeniem renderowania. Pójdę na zwykłe korzystanie z pulpitu Ubuntu, może cynamon, ponieważ słyszałem, że to miłe. Podekscytowany, aby zacząć od Linuksa z głębokim nurkowaniem!
spicyboi
Dziękuję za poprawkę Philipp, poprawię błąd w mojej terminologii.
Gerowen
3
„instalacja GUI na serwerze byłaby korzystna i pomogłaby Twojemu zespołowi w produktywności, a wtedy nic ci nie zaszkodzi”. Nie należy jednak ignorować wpływu na bezpieczeństwo. Im więcej zainstalujesz pakietów, tym więcej będzie błędów związanych z bezpieczeństwem. A GUI mają zwykle więcej błędów niż prosty kod serwera.
Voo
8

Ponieważ w ogóle prosisz o pomoc, wkroczę, licząc na to, że nie będzie oceniany :) Znam kogoś, kto instaluje pakiety GUI na takich serwerach, na których zdalny interfejs użytkownika byłby potrzebny do rozwiązywania problemów. Jest to przydatne dla użytkowników, którzy nie znają zbytnio biblioteki cli. Więc to działa. GUI to tylko pakiet, a jego zależności (tak wiele pakietów) to coś w rodzaju apt-get install ubuntu-desktop

Rozumiem, że GUI zużywa X zasobów. Nie zużyje więcej niż potrzebuje. Więc jeśli twoje pudełko ma o wiele więcej zasobów, nie powinno to być szkodliwe.

Oto rzecz, której możesz chcieć użyć. Jeśli instalujesz GUI, nie uruchamiaj go domyślnie. Dlatego celem nie powinien być ten interfejs. Zamiast tego powinieneś skonfigurować serwer tak, aby był serwerem, a także mieć możliwość ładowania interfejsu graficznego za pomocą jednego polecenia. W ten sposób GUI nie będzie działać i większość z tych zasobów nie będzie używana, chyba że będziesz ich potrzebować.

Powodzenia i mam nadzieję, że to pomoże!

edycja: Przegapiłem jeden punkt. Wersja GUI Ubuntu jest w pełni zdolna. Chodzi o to, że na przykład nie będziesz mieć serwera WWW, ponieważ jest on domyślnie dostarczany z pakietami przeznaczonymi do użytku na komputerze. Ale w każdym razie nawet w wersji serwerowej musisz zainstalować serwer sieciowy, a także go skonfigurować, ponieważ możesz używać różnych serwerów internetowych, a zespół Ubuntu nie wie, który z nich chcesz na pewno. Ale na przykład SSH, komputer Ubuntu jest dostarczany z klientem, a nie z serwerem ssh. Jeśli jednak zainstalujesz wersję serwerową, będzie ona domyślnie mieć serwer ssh. Ponownie, nawet na komputerze stacjonarnym, instalacja serwera ssh jest banalna i wymaga tylko jednego linera

George Mohylewski
źródło
4

Ponieważ nikt jeszcze nie odpowiedział na pytanie o zużycie zasobów, zrobię dźgnięcie nożem. Serwer Ubuntu ma następujące wymagania systemowe:

  • Procesor x86 300 MHz
  • 256 MiB pamięci systemowej (RAM)
  • 1,5 GB miejsca na dysku
  • Karta graficzna i monitor o rozdzielczości 640x480

od tutaj

Zainstalowanie pakietu Ubuntu-desktop (zakładam, że mówisz o dodaniu GUI) sprawia, że ​​system zasadniczo przypomina wersję zainstalowaną na komputerze. Wersja komputerowa ma następujące wymagania:

  • Dwurdzeniowy procesor 2 GHz
  • 2 GiB RAM (pamięć systemowa)
  • 25 GB miejsca na dysku twardym
  • VGA z rozdzielczością 1024x768

Również stąd

Z pewnością wykorzystanych jest więcej zasobów, mniej więcej zgodnych z podaną przez ciebie liczbą 50–60%, ale tak naprawdę niewiele, gdy mówisz o zasobach klasy serwerowej.

Przejdźmy do drugiego punktu: czy powinieneś zainstalować wersję serwerową, a następnie dodać pakiet meta Ubuntu-desktop, czy bezpośrednio zainstalować wersję desktopową? Różnice funkcjonalne między nimi są niewielkie i z punktu widzenia wyglądu prawie nie istnieją. Te dwie opcje będą wyglądały prawie identycznie, różnica będzie polegać na tym, jak „spodziewamy się” konfiguracji takich interfejsów sieciowych, wyświetlaczy, dysków twardych itp. Wersja serwerowa nie będzie wyposażona w „narzędzia wygody” do łatwej konfiguracji i zarządzania nimi elementów (NetworkManager, dyski itp.) i zamiast tego założymy, że chcesz mieć pełną ręczną kontrolę konfiguracji i zarządzania tymi rzeczami.

Pomijając niewielką ilość zasobów, wybór sprowadza się do tego, kto będzie zajmował się konfiguracją i zarządzaniem, a także jakiego poziomu umiejętności mają / jaką ręczną kontrolę chcą.

cawwot
źródło
4

Od wielu lat korzystam z różnych wersji Ubuntu Server z lekkim GUI.

Po instalacji podstawowej dodaję minimalne środowisko graficzne za pośrednictwem apt-get install xinit, a następnie dodaję, fluxboxktóry jest menedżerem okien o małym rozmiarze. Następnie dodaję obsługę dźwięku za pośrednictwem apt-get install alsa-utils. Przeglądarki oczekują obecnie, że pulseaudiodźwięk będzie działał, ale istnieje doskonałe narzędzie o nazwie apulseemulujące pulseaudio wystarczająco dobre do np. Oglądania YouTube, bez konieczności instalowania samego pulseaudio (lub oczywiście możesz zainstalować pełny pakiet pulseaudio, jeśli wolisz) .

Jest to bardzo proste i nie zużywa więcej niż kilkaset MB pamięci wirtualnej, gdy żadne aplikacje graficzne nie są aktywne.

Kod Cuspy
źródło
+1 dla lekkiego menedżera okien. Tego chce PO.
mckenzm
„Przeglądarki oczekują obecnie, że pulseaudio będzie obecne, aby dźwięk działał” .. powiedz mi, że nie używasz przeglądarki internetowej na swoich serwerach produkcyjnych.
Voo
Nie uruchomiłbym przeglądarki na serwerze produkcyjnym, chyba że usunę domyślną trasę w tym samym czasie. Ale mam serwer laboratoryjny, który jest używany w ten sposób.
Kod Cuspy
1

Oprócz problemów z wydajnością / specyfikacją systemu opisanych powyżej, ze względów bezpieczeństwa zazwyczaj zaleca się, aby nie uruchamiać interfejsu GUI na serwerze dedykowanym. Argument polega na tym, że GUI obsługuje więcej usług i procesów niż jądro i aplikacje serwera bez systemu operacyjnego, a każda z nich zapewnia potencjalną drogę ataku w systemie. Jestem daleki od eksperta w zakresie wielkości dodatkowego ryzyka, ale w zależności od środowiska możesz to sprawdzić. Mam nadzieję, że inni tutaj mogą doradzić.

Ian
źródło
0

Jak zauważyli inni, uruchamianie serwera z GUI jest w porządku, choć dość niekonwencjonalne - zwykle sysadmini uniksowi znają się na terminalu (jest szybszy i wiele operacji administracyjnych nie można wykonać z GUI).

To powiedziawszy, osobiście instalowałem GUI na niekrytycznych serwerach kilka razy (z dokładnie tego samego powodu, o którym wspomniałeś - sporadyczne proste operacje wykonywane przez osoby nietechniczne). Ale z własnego doświadczenia - sprawdź parametry sprzętowe i wymagania sprzętowe wcześniej. Zainstalowałem GUI na serwerze DELL z kartą graficzną maxtron 2 MB i nie poszło tak dobrze.

użytkownik1762087
źródło
0

Mówisz, że używasz tego jako serwera plików, co sugeruje mi, że będziesz mieć inny komputer, którego użyjesz jako pulpitu.

Rozważ połączenie w sposób podobny do pulpitu zdalnego za pomocą Xming w systemie Windows lub XQuartz w systemie macOS.

Dawno nie próbowałem tego z systemem Windows i nigdy nie próbowałem tego z systemem macOS, ale w tym artykule jest dobry przegląd tego, jak to zrobić. Jest specjalnie dostosowany do uruchamiania rzeczy na ich serwerach, ale ufam, że możesz odpowiednio dostosować go do własnych celów.

Kluczem do sukcesu jest uruchomienie serwera implementacji X11 na komputerze lokalnym (Xming, XQuartz lub Xorg), SSH na komputerze zdalnym (serwer plików) z włączonym zaufanym przekazywaniem X, a następnie uruchomienie aplikacji GUI na komputerze zdalnym z poziomu muszla.

Będzie to oczywiście wymagać trochę przygotowania po stronie serwera - musisz tam zainstalować klienta implementacji X11. W przypadku serwera Ubuntu najłatwiej to zrobić sudo apt-get install xauth. Wszelkie później zainstalowane aplikacje GUI będą pobierać wymagane zależności i wszystko powinno działać. Zobacz ten artykuł w celach informacyjnych.

Wykonanie powyższych czynności zapewni najlepsze z obu światów - graficzny interfejs użytkownika do administrowania serwerem w dowolnym momencie i bez nakładów na uruchamianie graficznego interfejsu użytkownika, gdy się na niego nie patrzy.

Adam Barnes
źródło
1
Jest to dobra alternatywa dla instalacji, ale uruchamianie programów z terminala jest dokładnym przeciwieństwem tego, co muszę powiedzieć komuś bez doświadczenia w CLI
spicyboi
Z szacunkiem, nie sądzę, że jest to szczególnie dobre podejście do nauki. Terminal to bardzo normalny sposób robienia rzeczy, a unikanie korzystania z niego za wszelką cenę może cię zahamować. Poza tym możesz (myślę) zainstalować coś takiego, jak gnome-session-fallbackuruchomić w terminalu, co da ci program uruchamiający, taki jak menu startowe, którego możesz użyć do uruchomienia innych programów.
Adam Barnes
1
Z poważaniem jestem administratorem systemu Windows. Dotyczy to projektu, który nie może utrzymać usługi w ramach budżetu, ale zasługuje na solidną konfigurację, która działa na ich poziomie umiejętności. Mówienie klientowi, że mają złe podejście do nauki, jest pewnym sposobem, aby nie mieć klienta wszystko. Gdybym to administrował, używałbym tylko CLI, ale to tylko wdrożenie.
spicyboi
Ach, wybacz mi - pracowałem pod nieporozumieniem, że będziesz to administrował. W takim razie wyobrażam sobie, że już sprawdziłeś rozwiązania serwera plików, takie jak FreeNAS, który ma interfejs zarządzania oparty na przeglądarce?
Adam Barnes
Tak, nie jestem fanem darmowego NAS z mojego doświadczenia, ale słyszałem niesamowite rzeczy o Linuksie dla serwerów plików VFX w mieszanym środowisku klienta. Również nie zdaje sobie sprawy z możliwości klastrowania w darmowej pamięci NAS / ZFS. Będzie to konfiguracja wysokiej dostępności z kilkoma węzłami połączonymi przez glusterfs
spicyboi