<- Poprzedni rodział -- Następny Kurs ->

Rozdział 15: Zarządzanie oprogramowaniem

W tym rozdziale zajmiemy się zarządzaniem oprogramowania. Niezależnie od tego z jakiego systemu operacyjnego korzystamy instalujemy oprogramowanie potrzebne do pracy, nauki lub zabawy. W Kali Linux nie jest inaczej.

Nie będziemy posługiwać się graficznym interfejsem do instalacji oprogramowania tylko korzystać będziemy z konsoli. Nim nauczymy się jak to robić poznajmy strukturę pakietów w Kali Linux.

Pakiet

Pakiet jest to paczka, która ma określony zakres czynności. Jest czymś z wbudowanym zakresem działań jakie może wykonać. Dlatego pakiet można rozumieć jako program wykonujący jakieś działania. Dość często zdarza się, że ma on określoną liczbę zadań jakie wykonuje i aby poprawnie działał potrzebuje innego pakietu. Takie powiązanie zależności jest wygodne ponieważ nie trzeba zawrzeć w kodzie jednego programu wszystkich niezbędnych elementów, tylko rozdzielić kod na mniejsze części. Daje to możliwość wykorzystania niektórych paczek w innych programach. Dzięki takiemu podziałowi zyskujemy również objętościowo mniejszą paczkę, mniejszy program.

Choć na pierwszy rzut oka można przypuszczać, że takie rozwiązanie bardzo utrudnia pracę z oprogramowaniem to jednak twórcy bardzo dobrze dopracowali hierarchię podziału paczek oraz zarządzania nimi.

Rodzaje Pakietów

W systemach Linuksowych mamy dwa rodzaje pakietów:

+ Pakiety źródłowe;

+ Pakiety binarne;

Pakiet źródłowy

Pakietem źródłowym nazywamy pakiet który posiada tylko i wyłącznie pliki z kodem. Aby można było z nich korzystać należy je najpierw skompilować do postaci pakietu binarnego.

Takie działanie ma swój spory plus, a mianowicie jeżeli jesteś programistą masz możliwość dostosowania pakietu do własnych potrzeb. Możesz w dowolny sposób ingerować w kod a następnie skompilować go do postaci programu.

Minusem takiego rozwiązania jest to, że jeżeli coś popsujemy w danym pakiecie możemy doprowadzić do sytuacji w której program lub system nie będzie funkcjonował należycie. Korzystając z systemu wirtualnego mamy taki plus, że dzięki migawkom w łatwy sposób jesteśmy w stanie wrócić do poprzedniej funkcjonalności. Dlatego jeżeli zamierzasz modyfikować jakiś pakiet pamiętaj by zawsze przed ingerencją w kod programu taką migawkę wykonać. Pisałem o tym w artykule pierwsze uruchomienie systemu Kali Linux dlatego jeżeli temat nie jest Ci znany zapraszam do zapoznania się z jego treścią.

Pakiet binarny

Pakietem binarnym nazywamy pakiet który jest już gotowy do instalacji. Jest to wygenerowany program z kodu. Tak naprawdę w ten sam sposób jest napisany każdy program niezależnie od systemu. Oczywiście są spore różnice między pisaniem oprogramowania na poszczególne systemy operacyjne, ale idea taka sama.

Oprogramowanie

Instalacja oprogramowania jest jedną z kluczowych umiejętności w systemach niezależnie jakiego typu. Jeżeli autorzy stworzyliby system który w standardzie posiadałby zainstalowane wszystkie z możliwych narzędzi, zabierałby niesamowicie dużo miejsca. Oczywiście zaspokojenie wszystkich jest niemożliwe dlatego najczęściej po instalacji systemu mamy zainstalowane tylko podstawowe oprogramowanie. W systemie Kali Linux nie jest inaczej. Różnica jest taka, że posiada on oprogramowanie głównie przeznaczone do testów penetracyjnych oraz podstawowe narzędzia do pracy z nim.

Repozytorium

W systemie Windows w większej mierze musimy przeszukiwać zasoby stron internetowych by odnaleźć jakiś program. Następnie ściągnąć go i zainstalować. W Linuksie jest inaczej. Oczywiście wyżej przedstawiona opcja jest również dostępna, ale w większości przypadków zbędna.

Każda dystrybucja Linuksa posiada swoje repozytorium czyli bibliotekę pakietów. W naszej konsoli posłużmy się wcześniej poznanym poleceniem grep jak na przykładzie poniżej.

kali@kali:~$ grep -v '#' /etc/apt/sources.list deb http://http.kali.org/kali kali-rolling main contrib non-free kali@kali:~$

Odbiegając delikatnie od tematu polecenie możemy przetłumaczyć jako:

wyświetl wszystkie linijki z pliku souces.list które nie posiadają znaku #

Wyświetliliśmy dokładny adres repozytorium z którego korzysta Kali Linux. W tym repozytorium znajduje się całe oprogramowanie które weszło w skład systemu. Jest to ważna informacja ponieważ nadal znaleźć w internecie możemy oprogramowanie które zadziała w systemie, ale nie znajduje się na liście w repozytorium. Więcej repozytoriów odnajdziemy w dokumentacji systemowej https://www.kali.org/docs/general-use/kali-linux-sources-list-repositories/ .

Szukanie pakietu, programu.

Nim zajmiemy się instalowaniem programów nauczmy się przeszukiwać nasz zbiór. Posłuży do tego polecenie apt-cache.

Bardzo popularnym programem graficznym i darmowym jest Gimp. Możliwe, że spotkałeś się z nim już wcześniej i wiesz, że na stronie https://www.gimp.org/ znaleźć możemy wersje na Windowsa, Linuksa i MacOs. Nas interesować będzie wersja na Linuksa i wystarczyłoby kliknąć w odpowiedni odnośnik i już mamy go na dysku. My tak nie zrobimy. Skorzystajmy z polecenia apt-cache w konsoli jak w przykładzie poniżej:

kali@kali:~$ apt-cache search gimp … gimp - GNU Image Manipulation Program gimp-data - Data files for GIMP gimp-data-extras - Extra brushes and patterns for GIMP gimp-dcraw - GIMP plug-in for loading RAW digital photos gimp-dds - DDS (DirectDraw Surface) plugin for GIMP gimp-gap - animation package for the GIMP gimp-gluas - Lua environment plug-in for GIMP gimp-gmic - GREYC's Magic for Image Computing - GIMP Plugin gimp-gutenprint - print plugin for the GIMP …

Lista jest bardzo długa dlatego pozwoliłem sobie ją skrócić. To co nas interesuje znajduje się w powyższym przykładzie. W repozytorium odnajdujemy paczkę z oprogramowaniem gimp dlatego możemy ją zainstalować bez konieczności ściągania ze strony producenta.

Wyświetlanie informacji o pakiecie

Zanim przejdziemy do samej instalacji poznajmy jeszcze w jaki sposób jesteśmy w stanie dowiedzieć się czegoś więcej o interesującej nas paczce. Spójrzmy na przykład poniżej.

kali@kali:~$ apt-cache show gimp Package: gimp Source: gimp (2.10.18-1) Version: 2.10.18-1+b1 Installed-Size: 22040 ... kali@kali:~$

Mam nadzieję, że nikt z was się nie oburzy na to, że nie wkleiłem całego wyniku polecenia.

Dzięki tej opcji jesteśmy w stanie dowiedzieć się wszystkiego o programie. Jego wersji, co będzie oprócz niego zainstalowane począwszy od bibliotek skończywszy na dodatkowym oprogramowaniu.

Przy każdym z pakietów warto zwrócić szczególną uwagę na suggests. Tłumacząc na polski słowo to oznacza sugestie. W wielu wypadkach dobrze jest zainstalować to co jest tam proponowane. Oczywiście nie brakuje szczegółowego opisu, dlatego jeżeli znalazłeś jakiś program a nie jesteś pewny co robi to właśnie tutaj znajdziesz niezbędne informacje.

Instalacja oprogramowania przy pomocy apt-get

Po zapoznaniu się z tematem moglibyśmy zainstalować gimpa, ale jest on niepotrzebny. Dlatego zainstalujemy sobie inny program z którego w następnym kursie będziemy korzystali. Ale nim to nastąpi poznajmy jeszcze...

Aktualizowanie listy oprogramowania.

Większość oprogramowania ulega aktualizacjom. Jeżeli mamy repozytorium to listę oprogramowania też. Każdy program na tej liście ma zapisaną swoją wersję którą możemy zainstalować. Jeżeli program został zaktualizowany do nowej wersji i dołączony do repozytorium to możemy z niego skorzystać, ale musimy najpierw zaktualizować repozytorium. Robimy to w bardzo prosty sposób:

kali@kali:~$ sudo apt-get update [sudo] password for kali: Get:1 http://kali.koyanet.lv/kali kali-rolling InRelease [30.5 kB] Get:2 http://kali.koyanet.lv/kali kali-rolling/main amd64 Packages [16.6 MB] Get:3 http://kali.koyanet.lv/kali kali-rolling/contrib amd64 Packages [100 kB] Get:4 http://kali.koyanet.lv/kali kali-rolling/non-free amd64 Packages [200 kB] Fetched 17.0 MB in 12s (1,409 kB/s) Reading package lists... Done kali@kali:~$

Właśnie zaktualizowaliśmy naszą listę oprogramowania do najnowszej wersji dostępnej w Kali Linux. Aktualizacja może usuwać jakieś oprogramowanie, zastępować jak i dodawać nowe którego nie było wcześniej. Wspomnę jeszcze, że standardowo instalowana jest zawsze najnowsza paczka oprogramowania. Jeżeli z jakiegoś powodu będziemy chcieli wrócić do wersji wcześniejszej bez problemu jesteśmy w stanie to zrobić.

Wracając do instalacji...

Jak już wspomniałem nie będziemy instalować gimpa tylko program który nazywa się terminator. To oprogramowanie jest emulatorem już poznanego terminala. Różni się tym, że możemy podzielić okno.

Instalacja terminatora

Do zainstalowania paczki posłużymy się poleceniem apt-get. Spójrzmy na przykład:

kali@kali:~$ sudo apt-get install terminator [sudo] password for kali: Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: gir1.2-notify-0.7 The following NEW packages will be installed: gir1.2-notify-0.7 terminator 0 upgraded, 2 newly installed, 0 to remove and 845 not upgraded. Need to get 361 kB of archives. After this operation, 2,308 kB of additional disk space will be used. Do you want to continue? [Y/n] Y Get:1 http://kali.koyanet.lv/kali kali-rolling/main amd64 gir1.2-notify-0.7 amd64 0.7.9-1 [10.4 kB] Get:2 http://kali.koyanet.lv/kali kali-rolling/main amd64 terminator all 1.92-2 [351 kB] Fetched 361 kB in 11s (32.5 kB/s) Selecting previously unselected package gir1.2-notify-0.7:amd64. (Reading database ... 289204 files and directories currently installed.) Preparing to unpack .../gir1.2-notify-0.7_0.7.9-1_amd64.deb ... Unpacking gir1.2-notify-0.7:amd64 (0.7.9-1) ... Selecting previously unselected package terminator. Preparing to unpack .../terminator_1.92-2_all.deb ... Unpacking terminator (1.92-2) ... Setting up gir1.2-notify-0.7:amd64 (0.7.9-1) ... Setting up terminator (1.92-2) ... update-alternatives: using /usr/bin/terminator to provide /usr/bin/x-terminal-emulator (x-terminal-emulator) in auto mode Processing triggers for desktop-file-utils (0.26-1) ... Processing triggers for mime-support (3.64) ... Processing triggers for hicolor-icon-theme (0.17-2) ... Processing triggers for man-db (2.9.3-2) ... Processing triggers for kali-menu (2020.3.2) ... kali@kali:~$

Gdy program apt-get odnajdzie naszą paczkę, oraz wszelkie niezbędne inne pliki do instalacji zapyta czy na pewno chcemy przystąpić do instalacji. Wpisujemy Y, a następnie przyciskamy Enter po czym następuje instalacja.

Po instalacji dobrze jest przeciągnąć ikonę na pasek tak aby mieć swobodny dostęp do programu. Z programu będziemy korzystać bardzo często dlatego warto wyciągnąć skrót do niego na pasek lub pulpit. Jak zapoznasz się z dobrodziejstwami tego programu nie wrócisz do konsoli.

W jaki sposób wyciągnąć ikonę programu pisałem tutaj, dlatego zapraszam do przeczytania jeżeli nie wiesz jak.

Po uruchomieniu programu powinieneś mieć podobną konsolę jak ja poniżej.

terminator

Nie zajmę się teraz opisem programu. Temat dokładnie omówimy kiedy będziemy korzystać z niego.

Opcje polecenia apt-get

Poznajmy kilka istotnych opcji polecenia apt-get

update – aktualizuje repozytorium pakietów;

upgrade – aktualizuje już zainstalowane oprogramowanie do najnowszej wersji;

install – instaluje nową paczkę, program;

reinstall – reinstaluje paczkę, program;

remove – usuwa paczkę;

purge – usuwa paczkę oraz pliki konfiguracyjne;

dist-upgrade – aktualizuje całą dystrybucję do najnowszej wersji;

W przypadku upgrade i dist-upgrade nie polecam korzystać z tych opcji, chyba że robimy częste migawki systemu. Niestety mogą bardziej zaszkodzić niż pomóc dlatego zawsze ostrożnie podchodźcie do aktualizacji. Jeżeli wykonuję aktualizację to zawsze przed robię migawkę by móc wrócić do pierwotnego stanu.

Jeżeli korzystałbyś z innego systemu operacyjnego którego używasz do logowania na przykład do banku czy też po prostu przeglądasz internet takie aktualizacje powinieneś wykonywać ze względów bezpieczeństwa. Jeżeli chodzi o Kali Linux i uruchamianie go jako wirtualną maszynę sytuacja ma się zupełnie inaczej. Powodem jest to, że nie zawsze oprogramowanie służące testom penetracyjnych, hackingowi, zaktualizowane do najnowszej wersji działa tak dobrze jak jego starsze wersje. Dlatego zalecam zawsze w przypadku aktualizacji wykonywać migawkę.

Podsumowanie

Instalacja oprogramowania w systemach Linux jest niemalże identyczna. My korzystamy z Kali Linux i programem odpowiedzialnym za to jest apt-get. Istnieją jeszcze inne dystrybucje, które korzystają z innego oprogramowania. Na łamach tego kursu nie będę się o tym bardziej rozpisywał. Jeżeli jesteś zainteresowany to poszukaj informacji w internecie.

<- Poprzedni rodział -- Następny Kurs ->

Strona stosuje pliki cookies w celu profilowania, oraz analizuje statystykę ruchu. Prosimy o zapoznanie się z naszą polityką prywatności i wyrażenie zgody na podejmowane działania. W przypadku braku zgody i pozostaniu na niej strona może nie działać właściwie.

Akceptuję warunki zawarte w Polityce Prywatności

Nie akceptuję warunków i chcę opuścić stronę