Zrozumienie różnych dystrybucji systemu Linux

12

Mam trochę zamieszania, gdy rozumiem systemy operacyjne oparte na systemie Linux. Kiedy pobieram najnowszą wersję Mint i Ubuntu, czy nie są one „takie same” w swoim rdzeniu (jądrze)? Wygląda na to, że mają różne GUI? Czy GUI nie jest technicznie programem, który działa przy uruchomieniu komputera? Tak samo jak w systemie Windows (dos jest rdzeniem, ale explorer.exe to GUI). Czy ktoś może to wyjaśnić?

Czy za pomocą polecenia sudo apt-get nie mogę zainstalować Ubuntu z nowego terminalu?

Wiem, że jest to bałagan pytań, ale mam nadzieję, że ktoś może wyjaśnić różnice między wieloma dystrybucjami przed pojawieniem się GUI, a następnie po pojawieniu się GUI.

EGHDK
źródło

Odpowiedzi:

10

Po pierwsze: Windows od dłuższego czasu nie był interfejsem graficznym DOS; Windows oparty na NT (NT / 2000 / XP / Vista / 7/8) jest całkowicie niezależny od DOS. explorer.exe też nie jest graficznym interfejsem użytkownika: jest tylko powłoką (można również znaleźć zamienniki powłoki dla systemu Windows)

Zasadniczo wszystkie dystrybucje oparte są na jądrze Linuksa; główne różnice (z punktu widzenia użytkownika końcowego - istnieją różnice np. w systemach init, plikach /etci innych miejscach) - między dystrybucjami są:

  • zarządzanie pakietami

Ubuntu, Mint i wszystkie inne dystrybucje oparte na Debianie używają dpkg / APT jako systemu pakowania. Inne dystrybucje będą korzystać z innych systemów (np. Red Hat, Fedora, SuSE użyje RPM, Arch użyje pacmana).

  • wybór pakietów

W rzeczywistości Mint jest Ubuntu z kilkoma dodatkowymi pakietami (np. Kodekami, nieuwzględnionymi w systemie Ubuntu ze względów patentowych / związanych z prawami autorskimi) i innym motywem (w celu stworzenia niestandardowej tożsamości i uniknięcia pytań dotyczących znaku towarowego / plagiatu oraz pomyłek użytkowników).

Oczywiście możesz zainstalować dowolny inny GUI w Mint: możesz użyć środowiska pulpitu Mint ( Cinnamon ) w Ubuntu i technicznie (rzeczywistość to inna historia: prawdopodobnie wpadniesz na konflikty pakietów) powinieneś być w stanie zainstalować Unity i tożsamość wizualną Ubuntu (motywy, ikony) w Mennicy.

Więc teoretycznie można włączyć do systemu Ubuntu Mint-owski, ale w praktyce jest to bardzo trudne do zrobienia.


Zgodnie z komentarzem na temat różnicy między „interfejsem” a „powłoką”, który może powodować pewne zamieszanie:

W świecie UNIX „powłoka” ma już określone, dobrze przyjęte znaczenie :

Powłoka uniksowa to interpreter wiersza poleceń lub powłoka, która zapewnia tradycyjny interfejs użytkownika dla systemu operacyjnego Unix i systemów podobnych do Unix.

Porównaj z powłoką Windows, która jest zupełnie inną rzeczą :

Powłoka systemu Windows jest głównym graficznym interfejsem użytkownika w systemie Microsoft Windows. Powłoka systemu Windows zawiera dobrze znane składniki systemu Windows, takie jak pasek zadań i menu Start. Powłoka systemu Windows nie jest tym samym co „powłoka wiersza polecenia”, ale te dwie koncepcje są ze sobą powiązane.

W naszym przypadku nazwalibyśmy Cinnamon (lub KDE, GNOME, Unity, XFCE) środowiskiem pulpitu : zestaw aplikacji (menedżer okien, panele, elementy na pasku powiadomień itp.), Które zapewniają wygodę użytkowania.

Renan
źródło
Interfejs Mint (Cinnamon), czy jest to „interfejs” lub więcej „powłoki”, o której mówiłeś?
EGHDK
W systemach UNIX / Linux termin „interfejs” jest bardziej odpowiedni dla interfejsów GUI, ponieważ „powłoka” ma już określone znaczenie (powłoka wiersza polecenia, taka jak bashlub zsh). Możesz też nazwać to „środowiskiem pulpitu”.
Renan
Więc terminal a jest powłoką?
EGHDK
1
@EGHDK Niezupełnie: powłoka (w znaczeniu UNIX) działa wewnątrz terminala. Jest to wyjaśnione w Jaka jest dokładna różnica między „terminalem”, „powłoką”, „tty” i „konsolą”?
Renan
Doskonały. Odpowiedziałeś na wszystkie moje pytania. Dzięki! Bardzo to doceniam.
EGHDK
8

Aby zrozumieć różnicę między dystrybucjami, może powinieneś ponownie spojrzeć na to, co to jest dystrybucja.

Co za dystrybucja

Prawdopodobnie wiesz o tym wszystkim, ale pomyśl o tym jeszcze raz. Linux to tylko jądro. W większości przypadków jest to całkowicie bezużyteczne. Większość tego, co robi, to po prostu zapewnia interfejs oprogramowania do sprzętu na komputerze, aby inne programy mogły go używać. Dystrybucja jest znacznie bardziej złożona niż ta. Brać pod uwagę:

  • Wybór aplikacji i biblioteki specyficznych dla zastosowania dystrybucji.
  • Narzędzia do zarządzania i utrzymania systemu.
  • Dokumentacja i kanał wsparcia.
  • Cykl wydawniczy i zarządzanie społecznością.

Istnieje wiele warstw oprogramowania dodanych do Linuksa, aby stworzyć coś takiego jak Ubuntu lub Mint, z nieskończonymi możliwościami konfiguracji i dokonywania wyborów.

Powinieneś także wziąć pod uwagę naturę redaktora dystrybucji. Projekty takie jak Red Hat, SuSE lub Ubuntu służą firmom, podczas gdy inne, takie jak Mint, Debian lub Gentoo, są zarządzane przez wolontariuszy.

Jaka jest różnica między dystrybucją a inną

Praktycznie każda aplikacja działająca na dystrybucji jest dostępna (lub łatwo przenośna) dla innej. W końcu wszystkie są bardzo podobnymi systemami uniksowymi. Jednak bez względu na to, co robisz, nie możesz zmienić cyklu wydawania swojej dystrybucji, szybkości, z jaką pakowane są nowe wersje, ani po prostu wyglądu i sposobu działania ich oficjalnego forum. Może przykład pokaże ci lepiej:

Powiedzmy, że z niecierpliwością czekam na nową wersję mojego oprogramowania, na przykład Python-3.3, który ma się pojawić za kilka dni. Jak będzie dostępny dla różnych dystrybucji:

  • Krążące dystrybucje wydań (takie jak Arch Linux lub Gentoo) szybko udostępnią je w swoich repozytoriach. Gdy tylko opiekun zapakuje go i zostaną uruchomione podstawowe testy, jest on dostępny.
  • Dystrybucje dla przedsiębiorstw prawdopodobnie zapewnią to w przypadku „nadchodzących wersji”. W międzyczasie jest nadal dostępny, ale nie będzie na żadnym oficjalnym kanale.
  • Debian nie udostępni go, dopóki nie zostanie dokładnie przetestowany, co może potrwać lata. Jednak sprawia, że repozytorium testów jest bardzo łatwo dostępne publicznie. (Na przykład Ubuntu tworzy swoje wersje z tego repozytorium wersji co 6 miesięcy).

Jaka jest prawdziwa różnica między Mint a Ubuntu.

Dla przypomnienia, powinienem zauważyć, że nie używałem Ubuntu od ponad 2 lat i ledwo używałem Mint przez kilka miesięcy 4 lata temu. To, co tu mówię, może nie być bardzo dokładne.

Różnica między Mint a Ubuntu jest minimalna, w końcu Mint jest całkowicie oparty na Ubuntu. Pierwotnie Mint był po prostu przepakowaniem Ubuntu z 3 różnicami:

  • Zapewniał zastrzeżone technologie w ich domyślnej instalacji (coś, czego nie Ubuntu).
  • Dostarczył kilka narzędzi graficznych, takich jak menu paska zadań lub instalator aplikacji, które załatał na podstawie podstawowej instalacji Ubuntu.
  • Skupiono się bardziej na estetyce. Jego solgan wciąż brzmi „Z wolności przyszła elegancja”.

Kilka lat temu schizma powiększyła się, gdy Ubuntu próbowało przepchnąć środowisko graficzne Unity, społeczność Mint bardzo się starała o jej odrzucenie. Tak powstał Cynamon.

Nigdy tego nie próbowałem, ale nie zdziwiłbym się, gdyby ktoś zmusił Cynamon do uruchamiania na Ubuntu i Unity na mennicy. Argument, który próbuję przedstawić, to:

Różnice między dystrybucjami, takimi jak Mint i Ubuntu, dotyczą bardziej społeczności i subtelnych wyborów niż samego oprogramowania.

Dalsza lektura

rahmu
źródło
Nie mogłem edytować odpowiedzi, ponieważ chcę dodać tylko jedno słowo, a edycja wymaga sześciu znaków .... Chciałbym zaznaczyć, że prawdopodobnie brakuje słowa na początku odpowiedzi, kilka wierszy w dół mówi: „inne programy go używają” powinny być „inne programy tego canużywają”
coś
5

To dobre pytanie. Rozumiem, że teoretycznie możesz, ale może nie działać zgodnie z oczekiwaniami. Mimo że Mint jest oparty na Ubuntu, Ubuntu i Mint używają różnych repozytoriów oprogramowania. Te repozytoria sprawiają, że każda dystrybucja jest wyjątkowa. W dowolnym systemie stacjonarnym Mint lub Ubuntu możesz ustawić repozytoria na dowolne. Tak więc możesz wziąć system zainstalowany jako Mint i zmienić wszystkie repozytoria na repozytoria Ubuntu. Następnie, jeśli ponownie zainstalujesz wszystkie pakiety, zasadniczo masz Ubuntu. Jednak zarówno Ubuntu, jak i Mint dokonują własnych drobnych poprawek w kodzie (który z kolei jest oparty na Debianie). Tak więc, jeśli pakiety Mint oczekują jednego zestawu poprawek, ale pakiety Ubuntu zapewniają zupełnie inny zestaw poprawek, możesz skończyć z bardzo zepsutym systemem.

Nawet niektóre z różnych „wersji” Ubuntu mają naprawdę dziwne poprawki w kodzie. Wynika to z faktu, że Canonical koncentruje się na łatwości użytkowania, a nie na poprawności kodu lub interoperacyjności. Ostatnio próbowałem zainstalować Xfce4 na instalacji „serwerowej” Ubuntu 13.04. Skończyło się na całkowicie zepsutym systemie. To był kompletny bałagan. Skończyłem instalowanie normalnego Ubuntu 13.04, a następnie instalowanie na nim xfce. Wszystko w tajemniczy sposób działało. Niektóre menu i programy wyglądały nawet ładniej, jakby były renderowane przy użyciu zupełnie innego silnika. Jednak użyłem wszystkich tych samych plików konfiguracyjnych i pakietów, których użyłem podczas instalacji serwera (i do instalacji Debiana, która działa bezbłędnie na tym samym komputerze).

To dla ciebie tylko magia kanoniczna. Jeśli pozostawisz wszystko tak, jak to zapewniają, zwykle działa dobrze. Jeśli dotkniesz nawet najdrobniejszej rzeczy, wszystko może stać się naprawdę dziwne.

James Harris
źródło
Nawiasem mówiąc, przepraszam za publikowanie w starym poście, ale to pytanie pojawia się u góry niektórych wyszukiwań w Google.
James Harris,
Witamy w StackExchange w systemach Unix i Linux! Odpowiadanie na stare pytania nie jest w tym przypadku marne. Pamiętaj, aby zatrzymać się w FAQ .
4

Skoncentrowałbym się na celach różnych dystrybucji, a nie na szczegółach, takich jak menedżer pakietów, którego używają lub jakie wersje oprogramowania obecnie wysyłają. Dobry cel może doprowadzić cię od zera do lidera rynku w Twojej przestrzeni, jeśli tego właśnie szukasz (to Ubuntu w momencie premiery, ale wcześniej również Red Hat), a niektóre dość fundamentalne decyzje technologiczne mogą się zmienić, jeśli jest to postrzegane jako ważne dla cel (naleganie Ubuntu na Unity może być przykładem).

  • Red Hat: pierwotnie (wówczas niezwykle nowatorski) sukces komercyjny poprzez zapewnienie płatnych usług użytkownikom darmowego produktu. Niedawno faktycznie pobiera opłatę za ten produkt (nie jestem pewien, jak teraz wygląda wizja). Duża baza klientów korporacyjnych oznacza niechęć do zmian - stabilność przebija innowacje.
  • Debian: wolność i przenośność. „Uniwersalny” oznacza próbę uruchomienia na wielu platformach; silna koncentracja na oprogramowaniu open source oznacza, że ​​wszystko, co ma zamknięte komponenty, jest niepewne. Stabilność jest ważna, dlatego dość powolna i konserwatywna.
  • Fedora: pierwotnie darmowa wersja Red Hata, kiedy pojawiły się w reklamie. W praktyce, podobnie jak Debian z zapałem do otwartego oprogramowania, ale bardziej prawdopodobne jest, że spróbuje odważnych nowych rzeczy. Używany przez Red Hat jako łóżko testowe dla nowych rozwiązań.
  • CentOS: Red Hat za darmo.
  • Ubuntu: dominacja pulpitu. Łatwość użycia (lub przynajmniej łatwość zapoznania się) i ustandaryzowany pakiet aplikacji w celu przyciągnięcia szerokiej bazy użytkowników. Popraw powolne tempo Debiana, utrzymując stały sześciomiesięczny cykl wydawania oparty na testach Debiana.
  • Mennica: Ubuntu bez Unity.
  • Arch: zapewnij najnowszą stabilną wersję każdego pakietu nadrzędnego z minimalnym narzutem na opakowanie itp. I modelem w wersji ruchomej.
  • Slackware: bądź prosty i uniksowy, i zejdź mu z drogi.
  • Gentoo: szczegółowa kontrola nad kompilacją pakietów lokalnych na podstawie nowego menedżera pakietów o nazwie emerge.

Ta lista jest oczywiście skrócona. Wiele popularnych dystrybucji to warianty, spin-offy lub widelce powyższych. Lista dystrybucji Linuksa w Wikipedii jest dość obszerna i ma rozsądną strukturę. Zobacz także https://distrowatch.com/, aby uzyskać szczegółowe informacje, takie jak aktualne statystyki popularności.

Ważnym następstwem jest zarządzanie oczekiwaniami. Dystrybucja, która koncentruje się na uniwersalnej kompatybilności i wolności, może potraktować użyteczność lub kompatybilność z konkretnym obecnie popularnym Gizmo mniej poważnie i odwrotnie. Dystrybucja, która koncentruje się na niewielkich rozmiarach i wydajności na starszych urządzeniach, prawdopodobnie nie będzie chciała wkładać wiele wysiłku w oko, takie jak animowane efekty pulpitu, lub przypadki użycia, takie jak edycja wideo, symulacje 3D lub fotorealistyczne gry, które przesuwają kopertę nawet w najnowszym generacja sprzętu. Dystrybucja, której celem jest zapewnienie prostego i jednolitego środowiska dla osób, które są nowicjuszami w komputerach, nie będzie obchodzić, czy najnowocześniejszy sterownik jądra systemu plików działa w ich systemach. Itp.

Powinno to również stanowić odpowiedź na konkretne pytanie. Prawdopodobnie nie jest zbyt trudne, aby Unity działało na Mint, ale dlaczego wolałbyś to od zwykłego uruchamiania Ubuntu? Oczywiście możliwe jest uruchomienie Ubuntu z Cinnamon, ale skończyłbyś na nowo Mint, a wysiłek jest prawdopodobnie znaczny; w przeciwnym razie dlaczego mieliby wydzielić oddzielny projekt tylko po to, aby to zapewnić? A to faktycznie pokazuje, jak dystrybucja może uznać dany element polityki lub architektury za wystarczająco krytyczny technicznie lub strategicznie, że wpływa on na inne komponenty w górę i w dół łańcucha zależności w nietrywialny sposób, co oczywiście oznacza również, że wiele prób obejścia jest wymaganych, jeśli spróbujesz i tak go usunąć.

A jednak są to dwie ściśle powiązane dystrybucje; jeśli spróbujesz przenosić oprogramowanie między dystrybucjami, tym trudniej będzie im dalej od siebie pod względem celów, zasad i wynikających z nich decyzji architektonicznych, a także wspólnego dziedzictwa i infrastruktury, takich jak sieci dystrybucji pakietów, standardy obsługi np. sprzętowe urządzenia peryferyjne lub internacjonalizacja itp.

potrójny
źródło
Skończyło mi się trochę pary. Zaktualizuj lub dodaj do tego.
tripleee
Ponieważ wszystko zbierasz, możesz także polecić dystrybucje slackware, tj. Porteus.
George Vasiliou,
Sądzę, że openSUSE powinien również znajdować się na liście, ale nie mogę ustalić, czy mają jakiś cel poza „być Niemcem”.
tripleee
0

Dystrybucje Linuksa to znacznie więcej niż jądro. Są to wszystkie aplikacje działające również na jądrze (w tym apt-get), w tym wiele rzeczy na bardzo niskim poziomie, takich jak system init. W rzeczywistości wybór zastosowanych aplikacji jest punktem odniesienia dla wielu dystrybucji.

Nie możesz zainstalować Ubuntu z Mennicy tak, jak nie możesz zabrać swojego Cadilaca do sklepu samochodowego i poprosić go, aby zrobił z niego Porsche, ale nie zmieniaj go. Mogliby z dużym nakładem pracy i kosztem przekształcić Twojego Cadilaca w Porsche: w końcu oba mają podobne silniki pod maską. Podobnie możesz teoretycznie przekonwertować instalację Linux Mint na instalację Ubuntu (nie próbuj tego, to duży wysiłek), ale są to dwa odrębne produkty. Zainstalowanie jednego w tym samym miejscu co drugie nie jest znaczące ani możliwe.

Matthew Scharley
źródło
0

W skrócie: co składa się na tożsamość dystrybucji Linuksa:

  • Konfiguracja jądra: tak: wszystkie dystrybucje pochodzą z tego samego kodu źródłowego, ale między kodem źródłowym a rzeczywistym plikiem binarnym uruchomionym na komputerze jest proces kompilacji, który polega na „konfigurowaniu”, tj. Dokonywaniu wyborów.

  • Wybór oprogramowania tworzącego interfejs między sprzętem a jądrem, wraz z jego konfiguracją w czasie kompilacji

  • Wybór oprogramowania, które tworzy interfejs, z którego będziesz korzystać. Tutaj idzie 99% kodu dystrybucji. Po raz kolejny wszystko sprowadza się do: wybranego oprogramowania oraz sposobu jego konfiguracji i kompilacji.

Wszystkie te opcje są ukryte przed tobą w dystrybucji, ponieważ są już dla ciebie przygotowane i „zapakowane”. W ten sposób dystrybucja Linuksa jest zbudowana w nadziei, że będzie pasować większości użytkowników. Ale efektem ubocznym jest to, że nie jest dostosowany do twoich potrzeb.

Jeśli chcesz dowiedzieć się wielu rzeczy na temat tworzenia dystrybucji Linuksa, sugeruję, aby spróbować zbudować własną dystrybucję. Projekt „Linux From Scratch” bardzo mi pomógł.

Vincent Achard
źródło