Różnica między instalacją centrum oprogramowania Ubuntu a wierszem poleceń [zamknięte]

8

Cześć, jestem nowy w świecie Ubuntu. Mam kilka pytań dotyczących instalacji oprogramowania w Ubuntu:

  1. Jaka jest różnica między instalacją oprogramowania w centrum oprogramowania Ubuntu a wierszem poleceń?

  2. Dlaczego niektórych programów zainstalowanych za pomocą wiersza polecenia nie można przeszukiwać w centrum oprogramowania (naciśnij klawisz Windows)?

  3. Jakie są prawidłowe polecenia, aby zainstalować oprogramowanie z wiersza poleceń, aby móc je wyszukiwać?

  4. Raz wykonałem kopię zapasową i przywróciłem system, ale niektóre polecenia działały wcześniej (np. „Subl”) po przywróceniu systemu nie działają.

Myślę, że te pytania w jakiś sposób dotyczą $ PATH, ale nie mogę znaleźć na ten temat żadnych materiałów. Wszelkie dodatkowe materiały będą mile widziane. :)

Andy
źródło
1
Które oprogramowanie zainstalowane za pomocą wiersza polecenia nie pojawia się w Software Center? Z jakiej wersji Ubuntu korzystasz?
Anwar
2
@Andy # 2 i 4 potrzebują więcej szczegółów. Dzięki!
Edgy1
1
Witamy w Ask Ubuntu! Przepraszamy, ale Zapytaj Ubuntu nie jest forum, ale witryną z pytaniami i odpowiedziami: najlepiej działa, jeśli zadajesz jedno pytanie, dzięki czemu możesz otrzymać jedną odpowiedź. Kiedy zadajesz wiele pytań, musisz znaleźć jednego eksperta zorientowanego w wielu obszarach, co staje się mało prawdopodobne, im więcej pytań zadajesz, no cóż, jedno pytanie! ;-) Podziel się tym pytaniem na wiele pytań i napisz komentarz, abym mógł odpowiedzieć na jedno z twoich pytań.
David Foerster,

Odpowiedzi:

9

TL; DR : jest wiele szarych obszarów i zależy to od tego, co robisz. W większości przypadków Centrum oprogramowania i metody wiersza polecenia robią podobne rzeczy, jeśli chodzi o .debpakiety, ale inne pakiety oprogramowania mogą wymagać różnych kroków.

Jaka jest różnica między instalacją oprogramowania w centrum oprogramowania Ubuntu a wierszem poleceń?

Oto rzeczywistość: instalacja to nic innego jak wrzucenie plików dostarczonych z pakietem oprogramowania do odpowiednich katalogów. Nie ma znaczenia, czy odbywa się to za pomocą wiersza poleceń, czy Centrum oprogramowania - robią to samo - wrzucają pliki do swoich katalogów. Liczy się jednak paczka i sposób jej obsługi. Tutaj omówię kilka podstawowych pakietów, z którymi możesz sobie poradzić na Ubuntu. Jeśli chodzi o różnicę między wierszem poleceń a Centrum oprogramowania, najbardziej podstawową różnicą jest to, że w Centrum oprogramowania klikasz przyciski; w wierszu poleceń wpisujesz polecenia. Wiem, że Centrum oprogramowania używa dużo kodu Pythona, ale w wierszu poleceń zależy to od używanego narzędzia. Jest także ilość tego, ile Software Center może usunąć (przeczytaj o tym poniżej)

Pakiety oprogramowania dla Ubuntu mogą występować na trzy sposoby: .debplik, .runplik i po prostu surowy kod źródłowy w skompresowanym ziplub tararchiwalnym. W zależności od tego, z którym masz do czynienia, instalacja wiersza poleceń może być mniej lub bardziej bolesna. To nie jest coś, o co jako nowy użytkownik powinieneś się martwić, przynajmniej nie w pierwszym roku korzystania z Linuksa.

Zobaczysz głównie .debpliki - są to wstępnie skompilowane pakiety oprogramowania, gotowe do użycia. Te są mniej bolesne. Bardzo często określają również zależności - inne oprogramowanie, bez którego Twój program nie uruchomi się. Narzędzia wiersza poleceń, takie jak apti, apt-getautomatycznie instalują zależności. W rzeczywistości Software Center używa apt-getjako zaplecza, więc automatycznie instaluje zależności.

.runpliki są zwykle zastrzeżonymi i zakodowanymi plikami binarnymi. Naprawdę nie możesz zobaczyć, co oni robią.

Dzięki surowemu kodowi źródłowemu musisz zrobić wszystko sam - zbudować oprogramowanie i zainstalować zależności.

Istnieją również sposoby instalowania pakietów z innych dystrybucji, takich jak .rpmpakiety, ale odbywa się to bardzo rzadko.

Istnieje również klasa oprogramowania znana jako kontenery. Jest doker i lxdkontenery. Ostatnio Ubuntu wprowadziło coś, co jest znane jako snappakiety. Co jest dobrego w tych wszystkich? Mogą działać w dowolnym miejscu, bezpiecznie odizolowane od głównego systemu i mogą być instalowane / ponownie instalowane dość szybko. Tego typu oprogramowania nie można instalować za pośrednictwem Centrum oprogramowania i ogólnie dla profesjonalnych administratorów systemów lub użytkowników zaawansowanych / zaawansowanych. Jako nowy użytkownik nie musisz się tym martwić, pamiętaj tylko, że istnieją i są niesamowite :)

Wreszcie, coś w rodzaju skryptu (i zwykle pojedynczego pliku) można również uznać za aplikację i ponownie - instalacja to nic innego jak wyrzucenie tego pliku w miejsce, w którym powinien lub powinien należeć.

Dlaczego niektórych programów zainstalowanych za pomocą wiersza polecenia nie można przeszukiwać w centrum oprogramowania (naciśnij klawisz Windows)?

Ponownie, to naprawdę zależy od pakietu. Jeśli twórcy oprogramowania zdecydują się dołączyć .desktopplik do swojego pakietu, będzie można go przeszukać w Dash. .desktoppliki są jak skróty systemu Windows, chociaż robią znacznie więcej. Dobrym przykładem narzędzia wiersza polecenia dostarczanego z .desktopplikiem jest Byobu - bardzo przydatny program do dzielenia terminala na dodatkowe karty / okna.

Możesz jednak utworzyć własny .desktopplik dla każdego programu i umieścić go w ~/.local/share/applications/folderze.

Ponownie, nie ma to nic wspólnego z aplikacją będącą wierszem poleceń lub GUI. To zależy od wyborów dokonywanych przez twórców aplikacji

Jakie są prawidłowe polecenia, aby zainstalować oprogramowanie z wiersza poleceń, aby móc je wyszukiwać?

Znowu zależy od tego, co robisz. Jeśli instalujesz oprogramowanie z oficjalnych repozytoriów Ubuntu, możesz po prostu to zrobićsudo apt-get install my-software

Jeśli instalujesz .debpakiet, możesz użyć dpkgpolecenia lub apt-get. Oto przykład instalacji mojego pakietu deb Google-chrome z apt-get. UWAGA : w momencie instalacji jestem w tym samym katalogu co .debplik, dlatego muszę określić ./część

$ sudo apt-get install ./google-chrome-stable_current_amd64.deb                
[sudo] password for xieerqi: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting 'google-chrome-stable' instead of './google-chrome-stable_current_amd64.deb'
The following NEW packages will be installed:
  google-chrome-stable
0 upgraded, 1 newly installed, 0 to remove and 54 not upgraded.
Need to get 0 B/50.0 MB of archives.
After this operation, 190 MB of additional disk space will be used.
Get:1 /home/xieerqi/下载/google-chrome-stable_current_amd64.deb google-chrome-stable amd64 53.0.2785.101-1 [50.0 MB]
Selecting previously unselected package google-chrome-stable.
(Reading database ... 476104 files and directories currently installed.)
Preparing to unpack .../google-chrome-stable_current_amd64.deb ...
Unpacking google-chrome-stable (53.0.2785.101-1) ...
Processing triggers for menu (2.1.47ubuntu1) ...
Processing triggers for bamfdaemon (0.5.3~bzr0+16.04.20160701-0ubuntu1) ...
Rebuilding /usr/share/applications/bamf-2.index...
Processing triggers for gnome-menus (3.13.3-6ubuntu3.1) ...
Processing triggers for desktop-file-utils (0.22-1ubuntu5) ...
Processing triggers for mime-support (3.59ubuntu1) ...
Processing triggers for man-db (2.7.5-1) ...
Setting up google-chrome-stable (53.0.2785.101-1) ...
update-alternatives: using /usr/bin/google-chrome-stable to provide /usr/bin/x-www-browser (x-www-browser) in auto mode
update-alternatives: using /usr/bin/google-chrome-stable to provide /usr/bin/gnome-www-browser (gnome-www-browser) in auto mode
update-alternatives: using /usr/bin/google-chrome-stable to provide /usr/bin/google-chrome (google-chrome) in auto mode
Processing triggers for menu (2.1.47ubuntu1) .

Co jest miłego apt-get? Ma --purgeopcję, która pozwala usunąć wszystko związane z programem. Na przykład, jeśli po prostu usunę go za pomocą sudo apt-get remove google-chrome-stablelub zrobię to za pośrednictwem Centrum oprogramowania, może on pozostawić pliki konfiguracyjne, dzięki czemu po ponownej instalacji oprogramowanie będzie gotowe do użycia, jak wcześniej. --purgeopcja usunie również pliki konfiguracyjne. Jest to wygodne, jeśli oprogramowanie się zepsuło i chcesz całkowicie go zainstalować. Software Center tego nie robi, więc to kolejna różnica.

Jeśli masz do czynienia z .runplikiem, musisz go uruchomić i uruchomić. Lubię to:

$ sudo chmod +x ./software.run
$ sudo ./software.run

Raz wykonałem kopię zapasową i przywróciłem system, ale niektóre polecenia działały wcześniej (np. „Subl”) po przywróceniu systemu nie działają.

Zależy to od rodzaju wykonanej kopii zapasowej. Jeśli twoja kopia zapasowa zawierała wszystkie pliki niezbędne subldo działania, to powinna była działać. Może się również zdarzyć, że kopia zapasowa wystąpiła przed sublzainstalowaniem. Upewnij się, że poprawnie skonfigurowałeś kopię zapasową

Myślę, że te pytania w jakiś sposób dotyczą $ PATH, ale nie mogę znaleźć na ten temat żadnych materiałów. Wszelkie dodatkowe materiały będą mile widziane.

$PATHZmienna jest istotna do muszli (interpretera poleceń, gdzie można umieścić polecenia). Nie dotyczy to Unity Dash. $PATHZmienna to tak naprawdę lista katalogów, w których powłoka będzie szukać programów, które mają ustawione uprawnienia do plików wykonywalnych. Dash naprawdę zajmuje się .desktoptylko plikami. Na przykład mogę mieć program siedzący w /usr/binfolderze i móc go otworzyć za pomocą wiersza poleceń, ale Dash tego nie zrobi, ponieważ nie ma .desktopdla niego odpowiedniego pliku.

Jeśli chcesz znaleźć dodatkowy materiał $PATH, dosłownie wybierz dowolną książkę o skryptach powłoki Linuxa. Jest to jeden z podstawowych elementów wiedzy dla każdego użytkownika Linuksa, który chce korzystać z wiersza poleceń.

Kilka uwag na zakończenie : złożoność instalacji oprogramowania dla Linuksa może czasami być szokująca dla nowych użytkowników pochodzących ze świata Windows lub Mac. W rzeczywistości są to te same zasady - rzuć wszystko tam, gdzie należy, i zadziała. Nie możesz znaleźć skrótu do swojego programu? Zrób jeden - to tylko plik tekstowy! Komputery to maszyny i powinny być obsługiwane. Windows ma również %PATH%zmienną dla swojego wiersza poleceń, po prostu nigdy o tym nie wiedziałeś, ponieważ wiersz poleceń Windows jest mniej wszechstronny i rzadziej używany niż w Linuksie. Krótko mówiąc, nie zastraszaj się wszystkim, co możesz zobaczyć, ponieważ na co dzień stanowi to około 20% najczęściej używanych poleceń lub działań i daje 80% wykonanej pracy.

Sergiy Kolodyazhnyy
źródło
1
W rzeczywistości wiele pakietów to więcej niż niektóre pliki umieszczone w niektórych katalogach. Aspekty instalacyjne, które wykraczają poza to, to zależności, odbudowywanie pamięci podręcznych i innych wyzwalaczy, konfiguracja usług, uruchamianie usług.
Ma ZAKOŃCZENIE - Anony-Mousse,
The complexity of software installation for Linux may sometimes be shocking to new users who come from Windows or Mac worldzależy również od tego, jak ich użyli. „Zainstalowałem” wiele aplikacji, rozpakowując je w systemie Windows i widziałem, że wielu instalatorów dosłownie rozpakowywało gdzieś Program Files. W Linuksie instalacja jest w większości tak prosta, jak powiedzmy w systemie Windows. Tylko zamiast pobierać i uruchamiać .exeplik, zrobisz to za pomocą .deb. Lub cokolwiek. I wykonanie wiersza poleceń właśnie wykonuje ten proces za Ciebie. Software Center to GUI na górze.
VLAZ
5
  1. Jaka jest różnica między instalacją oprogramowania w centrum oprogramowania Ubuntu a wierszem poleceń?

Nie ma różnicy w sposobie instalacji oprogramowania. Ale kiedyś istniała pewna różnica w tym, które oprogramowanie można zainstalować przed 15.10. Centrum oprogramowania Ubuntu w Trusty umożliwia użytkownikom kupowanie aplikacji za jego pośrednictwem, a aplikacji tych zwykle nie można zainstalować apt-get.

  1. Dlaczego niektórych programów zainstalowanych za pomocą wiersza polecenia nie można przeszukiwać w centrum oprogramowania (naciśnij klawisz Windows)?

Myślę, że masz tu na myśli wyszukiwanie za pomocą Dasha (używając superklucza). Dash ogólnie pokazuje tylko te programy, które są wyposażone w graficzny interfejs użytkownika i mają jakąś ikonę (a konkretnie plik .desktop ). Są dobre do codziennego użytku i mają być wyświetlane w wyszukiwaniu Dash. Ale to nie wszystkie zainstalowane aplikacje; Ubuntu ma wiele aplikacji wiersza poleceń, które nie pojawiają się w Dash, ponieważ nie są one odpowiednie do użycia jako samodzielne aplikacje graficzne (i ponieważ zazwyczaj nie są dostarczane z plikiem .desktop). Na przykład nie zobaczysz tarprogramu w Dash.

Tak więc, jeśli zainstalujesz aplikację z linii poleceń, nie pojawi się ona ogólnie w wyszukiwaniu Dash (klawisz Windows). Ponieważ nie określono, która aplikacja ma się nie pojawiać, może to być ogólna odpowiedź.

Uwaga: Jak zauważył Serg w komentarzu, wygląd ikon w Dash zależy od plików .desktop. Jeśli aplikacja wiersza polecenia jest dostarczana z plikiem .desktop, pojawi się on również w myślniku. Zgadzam się z nim. Ale prawdą jest, że aplikacje wiersza poleceń zwykle nie są dostarczane z plikiem .desktop .

  1. Jakie są prawidłowe polecenia, aby zainstalować oprogramowanie z wiersza poleceń, aby móc je wyszukiwać?

Jak już wspomniano, nie ma polecenia instalacji oprogramowania z wiersza poleceń, które zmusiłoby go do pojawienia się w wyszukiwaniu Dash. Niektóre programy pojawią się automatycznie, inne nie. Jeśli zainstalujesz edytor atom-tekst za pomocą wiersza poleceń, pojawi się. Jeśli zainstalujesz p7zippakiet, nie pojawi się on w wyszukiwaniu Dash. Zależy to od dostępności ikon graficznych oprogramowania (i konfiguracji ikon programu uruchamiającego w środowisku pulpitu, takich jak Unity, Xfce itp.). Nie zależy to od sposobu ich instalacji.

  1. Raz wykonałem kopię zapasową i przywróciłem system, ale niektóre polecenia działały wcześniej (np. „Subl”) po przywróceniu systemu nie działają.

To zależy od tego, jak utworzono kopię zapasową i przywrócono. sublto nazwa programu dla Sublime Text Editor. Jeśli jeszcze go nie zainstalowałeś, zainstaluj go. sublKomenda powinna rozpocząć pracę.

Anwar
źródło
1
Odpowiedź na punkt 2 nie jest do końca poprawna. Dash wyszukuje pliki .desktop. Dobrym przykładem narzędzia wiersza polecenia dostarczanego z plikiem .desktop jest byobu, który można przeszukiwać za pomocą myślnika. Ikony nie mają znaczenia
Sergiy Kolodyazhnyy
@Serg Thanks. Chciałem udzielić możliwie nietechnicznej odpowiedzi. W każdym razie dokonam edycji
Anwar,
@Serg Wygląda na to, że byobu również ma ikonę :)
Anwar
Nawet jeśli przyszedłby bez ikony, nadal byłby możliwy do przeszukiwania w Dash, ze względu na .desktopplik, miałby wtedy tylko ikonę ze znakiem zapytania, ale nadal działałby. Ikona jest naprawdę opcjonalna. Do deweloperów należy dołączanie ikon, czy nie.
Sergiy Kolodyazhnyy
3

Domyślam się, że używasz albo aptlub apt-getz linii poleceń. apt to menedżer pakietów, na którym opiera się centrum oprogramowania GUI. Załóżmy na przykład, że chcesz zainstalować pakiet „gimp”. Aby to zrobić za pomocą wiersza poleceń, którego używasz

sudo apt install gimp

Wszystko, co robi Centrum oprogramowania, to po wybraniu GIMP do zainstalowania uruchamia to polecenie w tle, więc nie trzeba go wpisywać.

Aby wyszukać program do zainstalowania za pomocą wiersza polecenia, użyj tego polecenia:

apt search {search term}
Edgy1
źródło