You are on page 1of 29

Ćwiczenie Nr 13

„ARCHITEKTURA SYSTEMU LINUX”


Jakub Stanecki i Olek Pal 2 Ti
Cel: Zapoznanie z budową i funkcjonowaniem systemu Linux
Data wykonywania zadania: 15.12.2023 r.
Zad 1.Korzystając z wiadomości oraz wiedzy nabytej podczas wykonywania
ćwiczenia „Instalacja i konfiguracja systemu Linux”, w środowisku wirtualnym
(Virtualbox) utwórz i skonfiguruj nową maszynę wirtualną, zainstaluj system
Linux Ubuntu Server ze środowiskiem graficznym kubuntu-desktop oraz gnome.
Zmodyfikuj domyślną konfigurację systemu, tak aby za obsługę połączeń
sieciowych odpowiadało narzędzie NetworkManager (wymagana będzie także
instalacja jednego pakietu (network-manager-gnome), a następnie skonfiguruj
nowo zainstalowany system do pracy w sieci i do korzystania z Internetu
(doinstaluj dodatkowo przeglądarkę Chrome).
Przy użyciu przeglądarki internetowej otwórz witrynę systemu Linux Ubuntu
(https://ubuntu.com/). W terminalu zainstalowanego systemu użyj polecenia
ping do przetestowania poprawności połączenia z serwerem strony ubuntu.com.
Zrzuty ekranu potwierdzający wykonanie niniejszego zadania (również etapy
instalacji systemu) umieść w sprawozdaniu z ćwiczenia. Podczas wykonywania
zrzutu ekranu na ekranie monitora należy wyświetlić jednocześnie okno
przeglądarki oraz konsolę z poleceniem ping.
Zad 1 Odp:
Zad 2. Na podstawie notatek z lekcji oraz informacji zawartych w sieci Internet
wyjaśnij, co to znaczy, że system operacyjny Linux jest systemem:
• wielozadaniowym,
• wielodostępowym.
Zad 2 Odp:
• Linux jest systemem wielozadaniowym ponieważ umożliwia wykonanie więcej niż jednego
procesu. Odpowiada za to jądro systemu operacyjnego.
• Linux jest systemem wielodostępowym ponieważ umożliwia pracę wielu użytkownikom na
jednym programie, w tym samym czasie.
Zad 3. Porównaj system Linux z systemem Windows pod kątem wielozadaniowości
oraz wielodostępności.
Zad 3 Odp: Linux w porównaniu z systemem Windows pod kątem wielozadaniowości i
wielodostępności różni się tym, że pomimo tego że dwa systemu są obsługiwane przez model
procesorów i wątków, to Windows ma bardziej rozbudowany system zarządzania zasobami, co
powoduje że może minimalnie lepiej radzić sobie z obsługą wielu aplikacji jednocześnie. Jeśli
chodzi o wielodostępność, to zarówno Linux jak i Windows oferują możliwość tworzeniu wielu
kont użytkowników. Linux wyróżnia się bardzo dobrym zarządzaniem uprawnieniami dostępu do
plików i katalogów za pomocą systemu plików opartego na uprawnieniach. Oba systemu spełniają
następujące funkcję, aczkolwiek różnią się miedzy sobą pod względem preferencji i wymagań
użytkownika.
Zad 4. Wyjaśnij, czym jest w systemie Linux tzw. obszar wymiany (partycja
wymiany) i do czego jest wykorzystywany.
Zad 4 Odp: Patrycja wymiany ( inaczej swap ) to systemowa partycja występująca w systemach
typu UNIX. Jej zadaniem jest tymczasowe przechowywanie danych w sytuacji, gdy ilość
przekracza zasoby wolnej pamięci RAM, lub gdy z różnych powodów korzystniej jest
przechowywać je na dysku twardym.
Zad 5. Przestudiuj notatki z lekcji, a następnie na tej podstawie odpowiedz na
następujące pytania:
• Jakie są nazwy katalogów w systemie Linux i co one reprezentują?
• Na czym polega zamontowanie w systemie nowego dysku? (podaj
przykład)
Zad 5 Odp:
Nazwy katalogów i ich znaczenie:
 Bin – Katalog binarny, który zawiera podstawowe programy i polecenia systemowe, które są
potrzebne do podstawowego działania systemu.
 boot – Znajdują się tam pliki programu rozruchowego.
 cdrom – Katalog który służy za tymczasową lokalizację dla dysków CD-ROM włożonych
do systemu.
 dev – Devices, znajdują się tam pliki urządzeń.
 Etc – Lokalizacja plików konfiguracyjnych. Dawniej znajdowały się tam różne pliki
nieprzynależące do pozostałych kategorii.
 Lib – Biblioteki programów i moduły jądra.
 Media – Domyślne punkt montowań dla pamięci zewnętrznych.
 Mnt – Tymczasowy punkt montowania.
 Opt – Katalog dodatkowego oprogramowania.
 Proc – Wirtualny system plików informujący o stanie systemu.
 Root – Katalog domowy super użytkownika root.
 Run – Informacje o działaniu systemu od ostatniego jego uruchomienia.
 Snap – Katalog odpowiadający za system pakowania.
 Srv – Rzadko używany katalog zawierający dane udostępniane często tylko do odczytu
przez system.
 Lost + Found – Katalog odzyskanych i zagubionych plików.
 Sys – Katalog przechowujący informacje o urządzeniach sprzętowych, które są przypisane
do kategorii.
 Tmp – Miejsce przechowywania plików tymczasowych.
 Usr – Tutaj umiejscowione są główne pliki wykonywalne użytkowników.
 Var – Katalog odpowiadający za często modyfikowane pliki takie jak logi czy bazy danych,
Montaż w systemie nowego dysku polega na przyłączeniu ją pod konkretny katalog, za
pośrednictwem komendy mount. Na przykład mount /dev/sdb1 /media/sdb1. W ten sposób
podłączyliśmy partycję sdb1 do folderu znajdującego się w mediach pod tytułem sdb1.
Zad 6. Korzystając z notatek z lekcji wyjaśnij, czym jest jądro systemu Linux i na
czym polega zaleta jego modularnej budowy.
Zad 6 Odp: Jądro Linux to inaczej bazowy kod systemu operacyjnego Linux. Jądro systemu Linux
nie posiada opłat licencyjnych, więc jest otwarte i dostępne dla każdego kto chce je programować.
Modularność i jej zaleta opiera się na dowolnym dopasowywaniu i przekształcaniu systemu pod
potrzeby użytkowników, dodając, usuwając lub zmieniając różne funkcje sprzętowe.
Zad 7. Wyjaśnij, czym jest powłoka systemowa i do czego jest wykorzystywana.
Zad 7 Odp: Powłoka systemowa jest niczym innym, jak pośrednikiem pomiędzy użytkownikiem a
systemem operacyjnym i aplikacjami. Użytkownik podaje dane wejściowe, powłoka interpretuje
dane wejściowe dla systemu operacyjnego, a następnie obsługuje wszelkie wynikowe dane
wyjściowe z systemu operacyjnego.
Zad 8. Wyjaśnij, czym jest konsola systemu Linux (tzw. terminal). Ile konsol
posiada użytkownik do swojej dyspozycji i w jaki sposób może się pomiędzy
nimi przełączać?
Zad 8 Odp: Konsola systemu Linux to program, umożliwiający nam komunikacje z powłoką.
Powłoka pobiera polecenia z terminala i przekazuje je systemowi operacyjnemu do wykonania jako
instrukcje. Użytkownik posiada do dyspozycji nieograniczoną ilość konsol, ponieważ za pomocą
komendy tmux włączamy tryb zarządzania dzielenia naszych terminali. Ctrl + b” dzieli terminal w
poziomie, Ctrl + b % dzieli terminal w pionie. Za pomocą Ctrl + b i strzałek możemy
przemieszczać się między terminalami.
Zad 9. Uruchom przeglądarkę internetową oraz jednocześnie dwie konsole tekstowe
(dwa terminale). W każdej z nich zaloguj się jako administrator systemu (dla
konta root ustaw hasło Meduza123).
W pierwszej konsoli uruchom polecenie ping adres_ip, gdzie adres_ip jest
adresem IP routera w domu lub pracowni. Umieść zrzut ekranu w sprawozdaniu
obrazujący wynik działania powyższego polecenia.
W drugiej konsoli zbadaj obciążenie i wydajność komputera. Wypisz w
sprawozdaniu szczegółowy opis trzech procesów najbardziej obciążających
procesor.
Dodatkowo, zapisz w sprawozdaniu, na którym miejscu pod względem
obciążenia procesora znalazł się proces obsługujący przeglądarkę internetowa.
Zad 9 Odp:
1. /usr/lib/xorg/xorg -nolisten tcp -auth /var/run/ssdm/{….. – proces związany z otwieram
protokołów internetowych.
2. /usr/bin/kwin_x11 – Proces odpowiadający za zarządzanie pulpitem i oknami w środowisku
graficznym KDE.
3. /usr/bin/plasmashell – To kolejny proces odpowiadający za obsługę środowiska graficznego
Plasma Shell w systemie operacyjnym KDE. Plasma Shell to główny interfejs użytkownika
w środowisku graficznym KDE i odpowiada za wyświetlanie pulpitów paneli zadań,
widżetów, menadżera plików i innych elementów interfejsu. Proces plasmashell zarządza
również efektami wizualnymi, takimi jak animowane przejścia i pulpity wirtualne.
Proces obsługujący przeglądarkę znajdował się na 6 miejscu pod względem zużywalności
procesora.
Zad 10. Podaj nazwę programu w systemie Ubuntu, który jest odpowiednikiem
programu Windows Explorer. Następnie uruchom go i przy jego pomocy
wyświetl i zapisz w sprawozdaniu nazwy wszystkich katalogów widzianych po
otwarciu katalogu /boot.
Zad 10 Odp: Nazwa programu w systemie Ubuntu który jest odpowiednikiem programu Windows
Explorer to Dolphin.
Katalogi w katalogu /boot to grub.
Zad 11. Przy użyciu konsoli wyświetl strukturę katalogów znajdujących się w
katalogu głównym i w katalogu /dev. Następnie zapisz w sprawozdaniu nazwy
czterech wybranych katalogów z katalogu /dev.
Zad 11 Odp:

Nazwy czterech wybranych katalogów: block, bus, bsg, snd.


Zad 12. W pewnej konsoli systemu Linux został wyświetlony poniższy tekst. Na
jego podstawie napisz w sprawozdaniu, jakie uprawnienia do pliku procesy.txt
posiada jego właściciel, grupa oraz wszyscy użytkownicy.
Zad 12 Odp: Uprawnienia do pliku procesy.txt wyglądają następująco:
 Właściciel – zapis i odczyt
 Grupa – odczyt
 Inni użytkownicy – odczyt
Zad 13. Wyjaśnij w sprawozdaniu, jaki będzie efekt wykonania następujących
poleceń w odniesieniu do pliku procesy.txt z poprzedniego zadania.
• chmod 644 procesy.txt
• chmod o-r procesy.txt
Zad 13 Odp:
Chmod 644 procesy.txt:
 Właściciel – wykonanie, zapis, odczyt
 Grupa – zapis i odczyt
 Inny użytkownicy – Odczyt i zapis
Dana komenda dodała właścicielowi wykonanie, a grupie i innym użytkownikom zapis
Chmod o-r procesy.txt – zabierają innym użytkownikom możliwość odczytu.
Zad 14. „Zapisz w pliku procesy.txt aktualnie uruchomione procesy” . Następnie
przy użyciu edytora tekstu wyświetl zawartość pliku procesy.txt.
Zad 14 Odp:
Zad 15. „Zapisz w pliku users.txt zawartość katalogu /home” . Następnie przy użyciu
edytora tekstu wyświetl zawartość pliku users.txt.
Umieść w sprawozdaniu zrzuty ekranu obrazujące zawartość pliku procesy.txt
oraz users.txt
Zad 15 Odp:

Zad 16. Załóż w systemie dwa nowa konta użytkowników zgodnie z danymi z
poniższej tabeli.
Otwórz dwie nowe konsole. Na pierwszej z nich zaloguj się jako jkowalski,
natomiast na drugiej jako anowak.
Zrzuty ekranu potwierdzające wykonanie niniejszego zadania umieść w
sprawozdaniu.
Zad 16 Odp:
Zad 17. Zaloguj się do konsoli jako jkowalski , po czym wyświetl i zapisz w
sprawozdaniu prawa dostępu do wszystkich elementów w katalogu /home.
Zad 17 Odp:
Jako jkowalski mamy dostęp do: jkowalski i directory.

Zad 18. Będąc zalogowanym w konsoli jako jkowalski utwórz plik tekstowy
zawierający aktualnie uruchomione procesy o nazwie procesy.txt. Następnie
zmodyfikuj uprawnienia do tego pliku w ten sposób, aby właściciel, czyli
użytkownik jkowalski, miał prawa odczytu i zapisu do tego pliku. Wszyscy
pozostali użytkownicy oraz grupy użytkowników nie powinni mieć ani prawa
zapisu ani prawa odczytu.
Wykonaj polecenie, dzięki któremu sam sprawdzisz poprawność wykonania
powyższego polecenia, a następnie zapisz w sprawozdaniu, w jaki sposób
zrealizowałeś niniejsze zadanie.
Będąc zalogowanym w konsoli jako jkowalski odbierz właścicielowi pliku
procesy.txt prawa do jego odczytu. Wykonaj polecenie, dzięki któremu
sprawdzisz poprawność wykonania powyższego polecenia, a następnie zapisz w
sprawozdaniu, w jaki sposób to zrobiłeś.
Zad 18 Odp:
Obydwa podpunkty wykonałem za pomocą polecenia chmod, 6 oznacza odczyt i zapis, a 0 brak
dostępu w ogóle.
Zad 19. Odbierz użytkownikowi jkowalski prawo własności do pliku procesy.txt i
przydziel je użytkownikowi anowak. Następnie zmień grupę pliku procesy.txt z
grupy jkowalski na grupę uczniowie. W następnym kroku skonfiguruj
uprawnienia do pliku procesy.txt w ten sposób, aby właściciel (obecnie anowak)
miał zarówno prawo do odczytu i zapisu, członkowie grupy uczniowie prawo do
odczytu, natomiast pozostali użytkownicy nie mieli uprawnień ani do odczytu
ani do zapisu wspomnianego wyżej pliku.
Uwaga! Wykonanie niniejszego zadania wymaga wpierw utworzenia grupy
uczniowie.
Zrzuty ekranu potwierdzające wykonanie zadania umieść w sprawozdaniu.
Zad 19 Odp:
Zad 20. Uruchom w systemie przeglądarkę internetową. Następnie sprawdź i zapisz
w sprawozdaniu, jaki numer procesu PID system nadał programowi przeglądarki.
Zad 20 Odp:
PID=6262
Zad 21. Korzystając z notatek oraz informacji zawartych w sieci Internet odpowiedz
na następujące pytania:
• „Jak nazywa się system plików wykorzystywany w systemach Linux?
• W jaki sposób system Linux odwołuje się do urządzeń?
• Jakie polecenia pozwalają na podłączenie i zdalną pracę w systemie
Linux?
• Co oznaczają skróty PID, UID, GID?
• Jakie stany może przyjmować proces w systemie Linux?
Zad 21 Odp:
 Najczęściej używany system plików wykorzystywany w systemach Linux to Ext4
( Extended File System 4), inne często używane systemy plików to ext3, ext2, XFS, NTFS
czy Btrfs.
 Poprzez Linux odwołuje się do urządzeń poprzez urządzenia blokowe i urządzenia znakowe.
Urządzenia blokowe służą do przesyłania dużych bloków danych, takich jak dyski twarde,
partycje i tym podobne. Urządzenia znakowe za to są używane do przesyłania pojedynczych
znaków, takich jak klawiatura czy mysz. Linux przypisuje każdemu urządzeniu unikalny
identyfikator, tak zwaną ścieżkę urządzenia, na przykład /dev/sda dla pierwszego dysku
twardego.
 Polecenie pozwalające na podłączenie i zdalną pracę w systemie operacyjnym to SSH i
telnet. SSH jest bardziej popularny ze względu na swoje bezpieczeństwo, podczas gdy telnet
jest mniej bezpieczny, ale wciąż stosowany w niektórych przypadkach.
 PD – Process ID, to unikalny identyfikator przypasany do każdego procesu w systemie
Linux.
UID – To User ID, czyli unikalny identyfikator przypisany do każdego użytkownika
systemu.
GID – Group ID, to unikalny identyfikator przypisany do grupy użytkowników.
 Procesy w Linuxie mogą przyjmować następujące stany:
Running (Wykonywanie) – proces jest aktywny i aktualnie wykonuje instrukcje.
Sleeping (Uśpienie) - proces czeka na zdarzenie, na przykład na dane z dysku lub
wprowadzenie interaktywne.
Stopped (Zatrzymywanie) – proces został zatrzymany, na przykład przez wysłanie sygnału
o zatrzymaniu.
Zombie (Zombie) – proces który zakończył działanie, ale jeszcze nie został poprawnie
usunięty z systemu, zazwyczaj oczekuje na zakończenie przez rodzica.
Zombie (Trwa zakończenie) – etap w którym proces jest usuwany z systemu, ale jeszcze nie
zakończył całkowicie.
Ile (Bezczynność) – proces jest aktualnie nieużywany i nie wykonuje żadnych obliczeń.
Waiting (Oczekiwanie) – proces czeka na zasoby, na przykład na dostęp do pliku czy
blokadę.
Orphaned (Sierota) – proces którego rodzic został zakończony, ale sam proces jeszcze
działa.

You might also like