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
Odpowiedzi:
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:
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 :-)
źródło
ubuntu-gnome-desktop
jest teraz oznaczony jako pakiet przejściowy, ponieważ nie jest już potrzebny, jego rolę przejąłubuntu-desktop
lubvanilla-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.)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
źródło
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:
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:
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ą.
źródło
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ę,fluxbox
który jest menedżerem okien o małym rozmiarze. Następnie dodaję obsługę dźwięku za pośrednictwemapt-get install alsa-utils
. Przeglądarki oczekują obecnie, żepulseaudio
dźwięk będzie działał, ale istnieje doskonałe narzędzie o nazwieapulse
emulują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.
źródło
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ć.
źródło
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.
źródło
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.
źródło
gnome-session-fallback
uruchomić w terminalu, co da ci program uruchamiający, taki jak menu startowe, którego możesz użyć do uruchomienia innych programów.