W pierwszej kolumnie wyswietlany jest identyfikator procesu (pid)



Podobne dokumenty
W pierwszej kolumnie wyświetlany jest identyfikator procesu (pid)

Temat : Procesy, zmienne, programy, pliki, standardowe wyjscie i wejscie. Wykorzystane polecenia:

Cwiczenie 1. Podstawowe wiadomosci

Technologie Informacyjne - Linux 2

Powłoka I. Popularne implementacje. W stylu sh (powłoki zdefiniowanej w POSIX) W stylu csh. bash (najpopularniejsza) zsh ksh mksh.

Cwiczenia linux konsola

BASH - LINIA POLECEŃ. Bioinformatyka 2018/2019

PRACOWNIA INFORMATYCZNA BASH - PODSTAWOWE INFORMACJE

Uruchamianie programów w systemie Linux, potoki, strumienie, procesy, alias

BASH - WPROWADZENIE Bioinformatyka 4

Wstęp do systemu Linux

Systemy operacyjne. Instrukcja laboratoryjna. Ćwiczenie 1: Polecenia systemu UNIX/LINUX. Opracował: dr inż. Piotr Szpryngier

Konsola Linux. autor: Mariusz Barnaś

SYSTEMY OPERACYJNE I laboratorium 3 (Informatyka stacjonarne 2 rok, semestr zimowy)

Pracownia Informatyczna I ORGANIZACJA ZAJĘĆ, ZASADY ZALICZENIA

1 Przygotował: mgr inż. Maciej Lasota

Znaki globalne w Linuxie

System operacyjny UNIX Ćwiczenie 1. Podstawowe polecenia systemu Unix

PRACOWNIA INFORMATYCZNA CHARAKTERYSTYKA PRZEDMIOTU BASH - PODSTAWOWE INFORMACJE

Niektóre katalogi są standardowymi katalogami zarezerwowanymi do użytku przez system. Znaczenie wybranych katalogów systemowych jest następujące:

Administracja sieciowymi systemami operacyjnymi III Klasa - Linux

Sieci i systemy operacyjne I Ćwiczenie 1. Podstawowe polecenia systemu Unix

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2009/2010

Przekierowanie wejścia wyjścia:

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE. Tryb konsolowy ćwiczenie b

Linux: System Plików

Wstęp do systemu Linux

JĘZYK SHELL JEST PEŁNYM JĘZYKIEM PROGRAMOWANIA

Pracownia Komputerowa wykład III

Ćwiczenia Linux konsola

Powłoka interpreter poleceń systemu UNIX

Temat zajęć: Filtry, strumienie standardowe oraz przetwarzanie potokowe. stderr

Egzamin pisemny z przedmiotu: Systemy operacyjne Semestr I

Wstęp do informatyki. stęp do informatyki Polecenia (cz.2)

Środowisko programisty

Podstawy używania konsoli tekstowej w systemie Linux. Andrzej Zbrzezny

Chemiateoretyczna. Monika Musiał. Ćwiczenia

Prawa dostępu do plików

Ćwiczenie 1. Podstawowe wiadomości

Pracownia Komputerowa wykład III

host name: protokół SSH System plików - wprowadzenie Ścieżki dostępu

Komunikaty System Linux umozliwia uzytkownikom komunikowanie sie miedzy soba. Do tego celu mozna wykorzystac programy mail i write.

System Linux - użytkowanie

Wstęp do systemów wielozadaniowych laboratorium 02 Praca w systemie plików

Zmienne powłoki. Wywołanie wartości następuje poprzez umieszczenie przed nazwą zmiennej znaku dolara ($ZMIENNA), np. ZMIENNA=wartosc.

Wstęp do systemów wielozadaniowych laboratorium 14 Środowisko i aliasy

Systemy operacyjne. System operacyjny Linux - wstęp. Anna Wojak

Prawa dostępu do plików (1)

System operacyjny Linux wybrane zagadnienia. Magda Mielczarek Katedra Genetyki Uniwersytet Przyrodniczy we Wrocławiu

tworzenie katalogów Aby utworzyć nowy katalog wpisz: mkdir katalog1 Ta komenda utworzy katalog o nazwie katalog1.

2. System uprawnień w linuxie

Bash - wprowadzenie. Bash - wprowadzenie 1/39

Operatory zmiany sposobu przypisania standardowych strumieni >,<,>> Jeżeli pierwsze polecenie powiodło się to wykona drugie

Moduł 4: Strumienie, potoki, sterowanie procesami

Technologie Informacyjne - Linux 3

SPIS TREŚCI 1. WIADOMOŚCI OGÓLNE ZARZĄDZANIE SYSTEMEM LINUX WIELODOSTĘPNOŚĆ SYSTEMY PLIKÓW I STRUKTURA FOLDERÓW...

Szkolenie AGH Linux. Nie bój się konsoli i zdaj kolosa na 5.0!!! Tytuł wcale nie przesadzony ;)

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

Skrypty powłoki Skrypty Najcz ciej u ywane polecenia w skryptach:

Wstęp do informatyki Shell podstawy

Laboratorium Strumienie w systemach UNIX 4.2 Filtry strumieniowe

Linux cz.3: polecenia systemowe, ćwiczenia

Jądro Powłoka System plików Programy użytkowe

Powłoka, redyrekcja, potok

Sieci i systemy operacyjne I Ćwiczenie 3. Przekierowania strumieni we/wy. Filtry.

Ćwiczenie 9 Linux - operacje systemu plików

Architektura systemów informatycznych WPROWADZENIE DO SYSTEMU LINUX

IP Office J179 Telefon

1. Wyrażenia regularne. Symbole w wyrażeniach regularnych 1 :

Pracownia Komputerowa wyk ad III

Konsola i interpreter poleceń

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE. Tryb konsolowy - ćwiczenia. 012a

POPULARNE POLECENIA SKRYPTY. Pracownia Informatyczna 2

System plików - wprowadzenie. Ścieżki dostępu. Informatyka ćw 1

Wstęp do obsługi Linux a

Systemy operacyjne Programowanie w języku powłoki sh

Ćwiczenie nr 14: System Linux

Strona1. Linux. Skrypty powłoki

skrypt powłoki to plik tekstowy, rozpoczynający się sekwencją: pierwsza linia określa powłokę, w której wykonywany jest skrypt; druga to komentarz

PODSTAWY INFORMATYKI

Systemy operacyjne na platformach mobilnych 2 Podstawy obsługi powłoki Bash

Technologie informacyjne lab. 4

Narzędzia informatyczne w językoznawstwie

Systemy operacyjne / Programowanie w języku powłoki sh str.1/19

Dodatek nr 1: Niektóre polecenia systemu Linux (shell tcsh) A) Informacje wstępne

Programowanie w języku Python. Grażyna Koba

Kurs systemu Unix wykład wstępny. Kurs systemu Unix 1

Powłoka bash. Kurs systemu Unix 1

System operacyjny Linux

Podstawy użytkowania Linux a

Systemy Operacyjne I: Procesy

Stosowanie poleceń związanych z zarządzaniem plikami oraz katalogami: nazwa_polecenia -argumenty ścieżka/ścieżki do katalogu/pliku

Linux: Procesy. Systemy Operacyjne. Mateusz Hołenko. 26 marca 2013

Pracownia Komputerowa wyk ad II

4 Net-Device Monitor. Net-Device Monitor

1. Znajdź za pomocą programu locate wszystkie pliki które zawierają w nazwie słowo netscape locate netscape

Filtry, metaznaki, cytowania. Proste skrypty. Polecenia find, tee, mail.

Polecenia wewnętrzne:

Trochę o plikach wsadowych (Windows)

Wstęp do systemów wielozadaniowych laboratorium 03 Praca w powłoce UNIX-owej

Transkrypt:

Cwiczenie 2 Cel cwiczenia: Poznanie mechanizmów wejscia/wyjscia, zapoznanie sie ze sposobami wyswietlania plików tekstowych i wyszukiwania informacji, podstawowe operacje na plikach tekstowych, zmienne srodowiskowe. Wykorzystane polecenia: more plik - wyswietla tekst zajmujacy wiecej niz jeden ekran less plik- podobnie jak more, lecz z mozliwoscia przewijania tekstu tail plik - wyswietla ostatni fragment pliku tekstowego (standardowo 10 linii) grep tekst plik - wypisuje wiersz pliku zawierajacy podany fragment tekstu head plik - podobnie jak tail, lecz wyswietla poczatek chmod [opcje] plik- zmienia prawa dostepu do pliku chown uzytkownik.grupa plik - zmienia wlasciciela pliku grep - wyszukuje w pliku podany fragment tekstu i wyswietla linie zawierajace ten fragment echo komunikat - wyswietla komunikat na ekranie set - wyswietla zmienne srodowiskowe oraz ich wartosci ps - wyswietla procesy obecne w systemie top - wyswietla procesy CPU cal - wyswietla kalendarz find - wyszukuje pliki wedlug podanego wzorca kill - wysyla odpowiedni sygnal do procesu & - dodane na koncu polecenia uruchamia proces w tle fg - przenosi proces na pierwszy plan unset - czysci wartosc zmiennej, nie usuwajac jej readonly - ustawia wartosc zmiennej tylko do odczytu $? - zwraca kod zakonczenia polecenia pierwszoplanowego Procesy. Proces to inaczej mówiac program dzialajacy w systemie. W systemie Linux mozliwe jest uruchomienie wielu procesów, procesy moga byc uruchomione w tle, moga tez posiadac priorytety dzieki którym zyskuja odpowiednio duzo czasu procesora na swoje dzialanie. Do wyswietlenia procesów dzialajacych w systemie sluzy polecenie ps. ps - wyswietla procesy uzytkownika ps -a - wyswietla procesy uruchomione na wszystkich konsolach ps -ax - wyswietla procesy na wszystkich konsolach lacznie z procesami ukrytymi. W pierwszej kolumnie wyswietlany jest identyfikator procesu (pid) Aby zakonczyc proces mozna uzyc polecenia kill, które wysyla odpowiedni sygnal do procesu. Polecenia uzywa sie nastepujaco: kill pid kill sygnal pid jako sygnal mozna podac numer sygnalu lub jego nazwe. Aby uzyskac pelna nazwe sygnalów wraz z nazwami nalezy uzyc polecenia

kill -l Polecenie kill z sygnalem numer 9 nie moze zostac zignorowane przez zaden proces. Domyslne jest wysylany sygnal TERM (15) nakazujacy procesowi zapisanie danych oraz zakonczenie pracy. Uruchomienie procesu (programu) w tle mozliwe jest przez dodanie na koncu linii znaku &. Po uruchomieniu polecenia w tle powloka macierzysta nie oczekuje na zakonczenie polecenia, a zwracany kod wykonanego polecenia wynosi 0. 1 Po uruchomieniu programu w tle otrzymujemy informacje o numerze zadania (w nawiasach kwadratowych) oraz identyfikator procesu. Aby przeniesc zadanie na pierwszy plan nalezy uzyc polecenia fg numer_zadania Kod zakonczenia $? Polecenie, które zakonczylo sie powodzeniem zwraca zerowy kod zakonczenia. Niezerowy kod oznacza niepowodzenie. Kod zakonczenia jest wiekszy od zera, jesli polecenie nie powiodlo sie z powodu bledu podczas interpretacji lub przekierowania. Polecenia wbudowane zwracaja kod 2 dla wskazania niepoprawnego uzycia. Jezeli polecenie nie zostalo znalezione, proces potomny powolany do jego wykonania zwraca kod 127. Jezeli zas polecenie zostalo znalezione, ale nie jest wykonywalne, kod zakonczenia jest równy 126. Jezeli polecenie skutkuje bledem krytycznym poziomu N, powloka przyznaje wartosc 128+N jako kod zakonczenia. Zmienne. W systemie Linux mozna tworzyc zmienne, które pózniej moga byc wykorzystane w poleceniach lub skryptach. Ustanowienie wartosci zmiennej uzyskuje sie przez proste przypisanie: ZMIENNA= Na przyklad tekst aby odwolac sie do zmiennej nalezy jej nazwe poprzedzic znakiem $. Na przyklad echo $ZMIENNA Przyjelo sie, ze nazwy zmiennych pisane sa duzymi literami. Zmiennych mozna uzywac w linii polecen jako parametry, opcje. Wtedy zamiast zmiennej zostanie podstawiona jej wartosc. Wydajac polecenie: unset ZMIENNA wyzerujemy jej wartosc. Natomiast readonly ZMIENNA spowoduje, ze wartosc zmiennej bedzie tylko do odczytu i nie bedzie mozna jej zmienic. 1 Pamietajmy, ze polecenia oddzielane znakiem srednika ; wykonywane sa sekwencyjnie, tj. powloka oczekuje na zakonczenie pracy kazdego z nich po kolei. Zwracany kod jest kodem zakonczenia ostatniego wykonanego polecenia.

Uruchamianie programów. Do uruchomienia pliku znajdujacego sie w dowolnej lokalizacji okreslonej w zmiennej srodowiskowej PATH wystarczy podanie jego nazwy. Jesli chcemy uruchomic jakis program lub polecenie, a nie ma do niego ustalonej sciezki w zmiennej srodowiskowej PATH to nalezy podac cala sciezke dostepu do pliku. Nawet jesli znajdujemy sie w katalogu, w którym znajduje sie program, który chcielibysmy uruchomic nalezy przed nazwa podac symbol sciezki biezacej, czyli:./program W jednej linii komend mozna wydac kilka polecen od razu. Nalezy je wtedy rozdzielic od siebie srednikiem. Na przyklad: ls *s2* ; mkdir dokum ; cp /home/kat1/*./ ; rm -f /home/kat/* Standardowe wyjscie i wejscie. Z kazdym poleceniem systemu Linux jest zwiazane standardowe wyjscie (stdout), standardowe wejscie (stdin) oraz standardowe wyjscie bledu (stderr). Standardowe wejscie to zródlo pobierania danych, wyjscie to miejsce wyswietlania wyników, wyjscie bledu - miejsce wyswietlania komunikatów o wykonaniu polecenia. Standardowe wyjscie/wejscie moze byc zmienione za pomoca pewnych symboli: Oto skierowanie standardowego wyjscia do pliku w dwóch równowaznych postaciach: >plik 1>plik - alternatywna postac z jawnym podaniem deskryptora Skierowanie standardowego wyjscia na koniec pliku (dopisanie): >>plik Skierowanie komunikatów o bledach do pliku: 2>plik Skierowanie komunikatów o bledach na standardowe wyjscie: 2>&1 2>/dev/stdout Powiazanie standardowego wejscia z plikiem (pobranie danych z pliku): <plik 0<plik - alternatywna postac z jawnym podaniem deskryptora, /dev/stdin<plik - alternatywna postac z wyspecyfikowaniem pliku Zauwaz, ze kolejnosc przekierowan jest znaczaca. Na przyklad ls > plik 2>&1 skieruje zarówno standardowe wyjscie jak i wyjscie bledu do pliku plik, zas

ls 2>&1 > plik skieruje tylko standardowe wyjscie do pliku plik, poniewaz wyjscie bledu jest zduplikowane jako standardowe wyjscie przed przekierowaniem do pliku. Bash w sposób specjalny traktuje niektóre pliki: /dev/stdin - duplikuje deskryptor pliku 0 /dev/stdout - duplikuje deskryptor pliku 1 /dev/stderr - duplikuje jest deskryptor pliku 2 /dev/fd/fd - oznacza deskryptor pliku fd, gdzie fd jest poprawna liczba calkowita /dev/tcp/host/port - bash otwiera polaczenie TCP do odpowiedniego gniazda, gdzie host jest poprawna nazwa hosta lub adresem internetowym, a port jest liczba calkowita okreslajaca numer portu /dev/udp/host/port- jak wyzej, tylko ze otwiera polaczenie UDP. Dzieki mozliwosci przenoszenia standardowego wyjscia i wejscia mozliwe jest przetwarzanie potokowe. Wyniki dzialania jednego polecenia moga byc zródlem danych dla kolejnego. Na przyklad: ls less spowoduje wyswietlenie listy plików w programie less. Przetwarzanie potokowe mozna wykorzystac w programach, które nie potrzebuja pliku jako swojego parametru Prawa dostepu do pliku. Do zmiany praw dostepu do pliku sluzy polecenie chmod. Jego format to: chmod [ugo][+-][xwr] plik Jako parametry uzywane sa litery: u - wlasciciel pliku g - grupa o - inni x - prawo do wykonywania w - prawo do zapisu r - prawo do odczytu + - nadaje uprawnienia - - zdejmuje uprawnienia Na przyklad: chmod ug+xr-w plik2 spowoduje nadanie wlascicielowi pliku oraz grupie prawo do wykonania oraz odczytu pliku. Zdejmie natomiast dla nich prawo do zapisu. Uprawnienia mozna tez nadawac podajac odpowiednia liczbe ósemkowo. Na przyklad chmod 777 plik2

Spowoduje nadanie pelnych uprawnien dla wszystkich. kazda cyfra okresla jedna grupe uprawnien rwx kolejno dla wlasciciela, grupy i innych. Kazda z liter ma nastepujaca wage: r - 4 w - 2 x - 1 rwx = 4+2+1=7 Uprawnienia rwxr-x--- beda przedstawione w postaci liczbowej jako 750 Cwiczenia. 1. Przeczytaj pomoc man dla wszystkich polecen wykorzystanych w cwiczeniu. 2. Wyswietl plik /etc/inetd.conf 3. Wyswietl wszystkie procesy obecne w systemie (polecenie ps). Jakie parametry sa potrzebne do takiego wyswietlenia. 4. Utwórz w katalogu domowym pliki o nazwie informacja, wprowadz do niego swoja nazwe uzytkownika. Ustaw prawa do odczytu i zapisu tylko dla wlasciciela pliku. Spróbuj odczytac pliki informacja z katalogów domowych innych uzytkowników. Jaki skutek? 5. Ustaw prawo do odczytu i zapisu pliku informacja dla wszystkich za pomoca zapisu ósemkowego. 6. Utwórz pliki o nazwach studia, informatyka, linux. Dla pierwszego pliku ustaw prawa na rwxr-xr-- dla drugiego na rw-rw-rw dla trzeciego r--r-----. Wykonaj to za pomoca polecenia chmod i parametrów tekstowych. 7. Utwórz pliki o nazwach politechnika, czestochowa. Dla pierwszego pliku ustaw prawa na rw-rw-r-- dla drugiego na rw-r--r-- dla trzeciego r--r--r--. Wykonaj to za pomoca polecenia chmod i parametru w postaci liczby ósemkowej. 8. Utwórz katalog o nazwie cwiczenie2, przenies do niego pliki z powyzszych dwóch punktów. Zmien prawa dostepu dla katalogu na rw------- Czy jestes w stanie przejrzec zawartosc katalogu? 9. Dodaj uprawnienia do wykonywania dla katalogu cwiczenie2. Jednak przy poleceniu chmod omin opcje dotyczace uzytkowników. Jaki efekt? 10. Postaraj sie zmienic uprawnienia dla wszystkich plików w katalogu cwiczenie2 jednoczesnie. Czy udalo sie to zrobic? 11. Wykonaj nastepujace polecenie >stud Jaki dalo efekt? 12. Spróbuj zmienic wlasciciela katalogu /sbin na student. Jaki efekt? Jesli byl jakis komunikat o bledzie wyprowadz go do pliku err 13. Utwórz plik o nazwie wlasciciel w swoim katalogu. Zmien wlasciciela na root. Czy operacje zmiany wlasciciela moze wykonywac kazdy uzytkownik? 14. Wyswietl pierwsze 7 linii pliku /etc/services 15. Wyswietl ostatnie 15 linii pliku /etc/services 16. Pokaz wszystkie linie zawierajace tekst http w pliku /etc/services 17. Sprawdz przy pomocy ps i grep (przetwarzanie potokowe) czy w uruchomionych procesach w systemie sa procesy o nazwie bash. 18. Uzyj polecenia ps -ax i postaraj sie zakonczyc proces o numerze 100. 19. Uruchom w tle program top. Zakoncz go uzywajac polecenia kill.

20. Uruchom w tle program top. Przenies go na pierwszy plan za pomoca fg. Wyjscie z programu top po wcisnieciu klawisza q. 21. Wyswietl plik /etc/termcap uzywajac polecen cat, more, less 22. Zapisz do pliku zawartosc katalogu /usr/doc. Do tego samego pliku dolacz zawartosc katalogu /usr/local. Zobacz plik z wynikami. 23. Sprawdz zawartosc zmiennej TERM za pomoca echo oraz set i grep. Jakie sa róznice w wynikach? 24. Wyswietl kalendarz na rok 2002 i pokaz wszystkie linie zawierajace wyrazy Su, December, January. 25. Stwórz zmienna o dowolnej nazwie oraz wartosci. Wyswietl jej wartosc i wyprowadz ja do pliku. 26. Czy wsród zmiennych srodowiskowych istnieja zmienne USER, UID, DIR, HOSTNAME, PWD. Jesli tak wyprowadz ich wartosc oraz nazwy do pliku (polecenia set i grep). 27. Wyswietl komunikat Test dzialania polecenia echo 28. Sprawdz dzialanie polecenia top. Jaki proces zuzywa najwiecej czasu procesora? 29. Za pomoca man znajdz opis polecenia find i wyszukaj wszystkie pliki w katalogu domowym zawierajace litere s. Wyniki przeslij do pliku o nazwie lista 30. Utwórz plik o dowolnej nazwie i nadaj mu uprawnienia do wykonywania. Uruchom go. Jaki efekt? 31. Usun wszystkie pliki z katalogu domowego (oprócz ukrytych). Czy udalo sie usunac wszystkie pliki? Jesli nie to zmien odpowiednie uprawnienia i usun. Pytania: 1. Jaka komenda wyswietlic wszystkie procesy dzialajace w systemie. 2. Jak zapisac bledy powstale w wyniku dzialania polecenia? 3. Czy w linii komend moze znajdowac sie tylko jedno polecenie? 4. Jaka komenda mozna sprawdzic który proces najbardziej obciaza procesor. 5. Czy polecenie cat plik1 > plik2 da taki sam efekt jak cp plik1 plik2? 6. Czy polecenie cat $Z wyswietli wartosc zmiennej Z? Dlaczego? 7. Jak wyswietlic plik zawierajacy ilosc tekstu nie mieszczaca sie na jednym ekranie. Do sprawozdania: Opisac przebieg cwiczen wraz z odpowiedziami na pytania. Wypisac 3 wybrane polecenia i dla kazdego opisac 3 parametry.