System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux -...

26
System Linux - użytkowanie 1

Transcript of System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux -...

Page 1: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

System Linux - użytkowanie

1

Page 2: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

2

Podstawowe operacje ls

Listuje zawartość bieżącego katalogu

ls -al |more

Listuje zawartość bieżącego katalogu, wszystkie pliki

cd katalog

Zmiana katalogu

./nazwa_programu

Uruchom plik wykonywalny z bieżącego katalogu

wc [opcje] [pliki]

Powoduje zliczanie liczby znaków, słów i wierszy w pliku tekstowym.

Dostępne opcje:

-c tylko liczba znaków

-l tylko liczba wierszy

-w tylko liczba słów

Page 3: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

3

Linux pomoc

Polecenia z opcą -help, --help, lub –h

mc -h

cp --help | more

gzip -help

man systemowe podręczniki (elektroniczne podręczniki) (ang. manuale)

man nazwa_polecenia

whatis Przykład: aby dowiedzieć się co to jest mc, napisz:

whatis mc

info wywołanie wygląda następująco:

info chmod

Page 4: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

4

Drzewo katalogów

Struktura systemu Unix V

Page 5: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

5

Prawa dostępu do pliku

Symbol Oznaczenie

- plik zwykły

d katalog

l dowiązanie symboliczne

p FIFO

c plik urządzenia znakowego

b plik urządzenia blokowego

3-znakowe pola określają prawa dla użytkownika, grupy oraz

pozostałych użytkowników:

r(read) – prawo czytania pliku, wyświetlanie zawartości

katalogu jeśli jest x.

w(write) – prawo pisania w pliku, zapisu do katalogu nowych

plików jeśli jest też x.

x(execute) – prawo wykonania programu lub skryptu

zawartego w pliku, prawo dostępu do katalogu.

-rwxr-x--- oznacza prawa rwx dla użytkownika (odczyt, zapis i wykonanie), prawa

rx dla grupy (odczyt i wykonanie) oraz brak praw dla pozostałych użytkowników.

drwx--x--x oznacza prawa rwx dla użytkownika (odczyt, zapis i wyjście), prawo x

dla grupy i pozostałych (prawo wejścia oznacza możliwość uczynienia danego

katalogu bieżącym).

Page 6: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

6

Liczba dowiązań do pliku

Nazwa użytkownika będącego właścicielem pliku

Nazwa grupy użytkowników pliku

Wielkość pliku w bajtach

Data utworzenia lub modyfikacji

Nazwa pliku + dowiązanie symboliczne (ab, a jest odsyłaczem do b)

Atrybutów plików

Page 7: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

7

Zmiana praw dostępu do pliku

chmod – zmiana praw dostepu do pliku/katalogu

chmod g=rw plik

[ ugoa ] [ + - = ] [ rwxugosXt ]

Kategoria_użytkownika modyfikator_praw plik

Liczbowy modyfikator praw:

4 – prawo odczytu

2 – prawo zapisu

1 – prawo wykonania

[ prawa właściciela ][ prawa grupy ][ prawa pozostałych użytkowników ]

chmod 0004 plik chmod o=r plik

chmod 0644 plik chmod u=rw, go=r plik

chmod u+rw, g+r, o+r plik III

Page 8: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

8

apropos wyświetli listę komend mających coś wspólnego z danym

tematem, wszystkie opisy z podaną nazwą tematu.

apropos pwd

which wypisuje listę plików, które zostałyby uruchomione po wykonaniu

podanych pleceń

usr/doc /usr/local/doc /usr/X11R6/doc /usr/share/doc /usr/share/doc/html

Strona podręcznika z określonej sekcji: man 3 polecenie

Sekcje podręcznika to:

Sekcja 1 - komendy użytkownika;

Sekcja 2 - wywołania systemowe;

Sekcja 3 - wywołania biblioteczne;

Sekcja 4 - urządzenia (Pliki specjalne);

Sekcja 5 - formaty plików;

Sekcja 6 - gry, Sekcja 7 – różne;

Sekcja 8 - Komendy zarządzania systemem,

Sekcja 9 - wywołania jądra,

Sekcja n - nowe.

Page 9: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

9

Nazwy plików mogą mieć do 256 znaków i zawierać litery, liczby, "." (kropki),

"_" (podkreślenia), "-" (myślnik) itd..

Pliki z nazwą, rozpoczynającą się od "." są traktowane jako pliki ukryte

W pliku konfiguracyjnym, linia zaczynająca się od # jest komentarzem

/ korzeń systemu plikowego, separator katalogów w zapisie ścieżki;

*metaznak: dowolny ciąg znaków, ciąg może być pusty;

cp a*b /tmp – polecenie kopiowania plików, których nazwa zaczyna się od małego a, a kończy się małym b

z katalogu bieżącego do katalogu tmp;

rm *

polecenie usunięcia z katalogu bieżącego wszystkich plików za wyjątkiem plików ukrytych,

które rozpoczynają się od kropki;

? Metaznak: pojedynczy znak;

cp ??? /tmp polecenie skopiowania z katalogu bieżącego do katalogu tmp wszystkich plików, których

nazwa ma dokładnie 3 znaki;

Znaki o specjalnym znaczeniu

Page 10: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

10

[. . .] metaznak: dowolny pojedynczy znak spośród wymienionych w

nawiasie;

rm [Aa-f0-9]* polecenie usunięcia z katalogu bieżącego plików, których nazwa rozpoczyna się

literą A lub małą literą od a do f lub cyfrą;

\ znak wycofania znaczenia;

mv gwiazdka\* gw

polecenie zmiany nazwy pliku z gwiazdka* na gw - wycofano znaczenie metaznaku *

. katalog bieżący;

cp /usr/kowalski/dane .

polecenie skopiowania pliku dane do katalogu bieżącego;

.. katalog nadrzędny wobec bieżącego.

c.d.

Page 11: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

11

Zarządzanie plikami

cp –r źródło cel

Kopiownie pliku

mv żródło cel

Przeniesieni lub zmiea nazwy pliku

mkdir katalog

tworzenie katalogu

rmdir katalog

Usuwanie katalogu

rm -r plik

Usuwanie rekursywne

cat filename | more

Wyświetlanie plików

cat filename | less

head filename

10 pierwszych linii

tail filename

10 ostatnich linii

touch filename

stworzenie pustego pliku

find / -name "filename„

Szukanie pliku

locate filename

grep -r 'celeste' . |more

Przeszukanie biezącego katalogu w

poszukiwaniu słowa – celest.

Page 12: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

12

Podstawowe skróty klawiaturowe w

Linuksie i zasadnicze polecenia

<Ctrl><Alt><F1>

Przełącza na pierwszy terminal. W Linuxie możesz mieć wiele (6 w normalnej

instalacji) terminali uruchomionych równocześnie.

<Ctrl><Alt><Fn> (n=1..6)

Przełącza na następne terminale. (Ten sam efekt może być uzyskany przez

rzadko używaną komendę chvt n.)

tty

Drukuje nazwę terminalu, na którym wpisałeś tą komendę.

<Ctrl><Alt><F7>

Przełącza na pierwszy terminal graficzny (jest na tym terminalu uruchomiony jest

X-window).

<Ctrl><Alt><Fn>(n=7..12)

Przełącza na następny terminal graficzny (jeśli terminal GUI jest uruchomiony na

ekranie n-1). Domyślnie nic nie jest uruchamiane na terminalach #8-12, ale

możesz uruchomić tu inne serwery.

<Tab>

(Na terminalu tekstowym) Auto-dokańczanie komendy, jeśli jest tylko jedna

możliwa, albo wyświetlenie wszystkich dostępnych opcji.

Page 13: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

13

c.d.

<Ctrl><Alt><Del>

Zamknięcie systemu i ponowne jego uruchomienie. Jest to zwyczajny sposób

zamknięcia systemu dla użytkownika na konsoli.

<Ctrl>s

Zatrzymuje transfer do terminala

<Ctrl>q

Wznawia transfer do terminala.

<Ctrl>z

Wyślij bieżący proces w tło.

~(tylda)

katalog domowy (normalnie /home/nazwa_uzytkownika)

.(kropka)

Katalog bierzący.

..(dwie kropki)

Katalog nadrzędny w stosunku do bieżącego.

Page 14: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

14

Informacje o systemie pwd

Drukuje bieżący katalog roboczy, nazwa katalogu, w którym się znajdujmy

who a mi (w, who, finger)

Drukuje nazwę użytkownika

date

Drukuj albo zmień datę w systemie operacyjnym.

time (time ls)

Określa ilość czasu, który zużywa proces na wykonanie zdania

finger nazwa_użytkownika

Informacje systemowe o użytkowniku.

last

Pokazuje ostatnie nieudane logowanie do systemu

history | more

Pokazuje ostatnie komend wykonanych z linii komend na bieżącym koncie

uname -a

Informacja o lokalnym sewerze

cat /etc/issue

jaka dystrybucja

df -h

Drukuje informacje o wszystkich dyskach w systemie plików

who –a (rwho)???

Określa użytkowników zalogowanych na innych komputerach w sieci

Page 15: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

15

c.d.

•du / -bh | more

•pokazuje ile miejsca na dysku zajmują poszczególne katalogi.

•printenv - pokazuje aktualnie zdefiniowane zmienne środowiskowe

•echo $PATH - wyświetla zawartość zmiennej środowiskowej "PATH".

•set | more - pokazuje ustawienia środowiska użytkownika

•cal - wyświetla kalendarz na aktualny miesiąc.

•cat /etc/issue - wyświetla informacje, jakiej dystrybucji Linuxa używasz

•cat /proc/cpuinfo - informacje o swoim procesorze (procesorach).

•cat /proc/filesystems - pokazuje używane rodzaje systemów plików.

•cat /proc/interrupts - pokazuje informacje o używanych przerwaniach, i nazwy

urządzeń im przypisanych.

•cat /proc/pci - lista informacji o urządzeniach podłączonych do magistrali PCI.

•cat /proc/version - informacje o wersji Linuxa.

Page 16: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

16

Standardowe wejście-wyjście poleceń

0 – standardowe wejście stdin (klawatura terminala)

1 – standardowe wyjście stdout (ekran terminala)

2 – standardowe wyjście diagnostyczne stderr (ekran terminala)

> plik - skierowanie standardowego wyjscia do pliku

>> plik - skierowanie standardowego wyjscia na koniec pliku

2 > plik - skierowanie standarowego wyjscia diagnostycznego do pliku

2>&1 - skierowanie standardowego wyjscia diagnostycznego w miejsce

standardowego wyjścia

< plik - związanie standardowego wejścia z plikiem

Page 17: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

17

Potoki poleceń

Polecenie1 | Poleceni 2 | .... [ | Polecenie n]

filtr

ls –l | more Poleceni1 && Polecenie2

Wykonaj Polecenie 2 jeśli Polecenie1

zakończyło się sukcesem

Poleceni1 || Polecenie2

Wykonaj polecenie2 jeśli polecenie1

Zakończyło się niepowodzeniem

Poleceni1 || Polecenie2; Poleceni3 Poleceni1 || {Polecenie2; Poleceni3}

???

Page 18: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

18

Polecenie cat cat -opcje nazwa_pliku

Stosując opcję -b , obok każdego niepustego wiersza wyświetlony zostanie jego

numer: cat -b /etc/issue.

W przypadku gdy treść pliku nie mieści się na ekranie należy zastosować filtr

more np: cat -b /etc/inittab |more.

Poprzez zastosowanie filtru lpr treść pliku zostanie wysłana do drukarki.

Możliwe jest wyświetlanie kilku plików jednocześnie poprzez wpisanie kolejnych

nazw po cat : cat /etc/issue /etc/inittab

Poprzez zastosowanie operatorów przekierowania strumienia wyjścia, takich jak

> lub >> możliwe jest skopiowanie lub dołączenie wczytanego tekstu do innego

pliku. Możliwe jest połączenie kilku plików w jeden, przykład: polecenie

cat plik1 plik2 plik3 >trzy

spowoduje utworzenie jednego pliku o nazwie trzy.

Po napisaniu polecenia: cat > zapis wprowadzany tekst z klawiatury będzie

zapisywany do pliku o nazwie zapis . Aby zakończyć wpisywanie tekstu należy

nacisnąć klawisze Ctrl i D .

W następnym przykładzie zawartość pliku plik1 zostanie dopisana do pliku

plik2. cat plik1 >>plik2

Page 19: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

19

Polecenie: mkdir

mkdir [opcje] katalogi

Tworzenie katalogów.

Dostępne opcje:

-m prawą dostępu stworzenie katalogu z podanymi prawami dostępu

-p jeżeli zostanie podana ścieżka, w której poszczególne katalogi nie

istnieją, to zostaną one także utworzone

bash [opcje] [argumenty]

Interpreter poleceń podobny do shelli Bourne’a i Korna

Page 20: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

20

Wprowadzenie do programowania

shella (bash)

Linia początkowa

Definicja zmiennej

Podstawiania jest w to

miejsce wartość zmiennej

Page 21: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

21

Definiowanie zmiennych

użytkownika

Składnia: nazwa_zmiennej=wartość

$ no=10

Reguły dla wyznaczania zmiennych:

Nazwa zmiennych musi zaczynać się od liter lub znaku podkreślenia (_) i

składać się z jednej lub więcej liter.

brak spacji po obu stronach znaku równości

Zmienne rozróżniają wielkości liter

Definiowanie pustych zmiennych $ vech= $ vech=""

Page 22: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

22

Wyświetlanie zmiennych

Składnia: $nazwazmiennej

$ x=10

$ echo $x

Wyświetlić sumę dwóch liczb 66 i 5 ??

$ echo 66 + 5

$ expr 66 + 5

$ expr 66+5

+ dodawanie

- odejmowanie

/ dzielenie

% reszta z dzielenia

\* mnożenie

$x=20

$ y=5

$ expr x / y

$ z=`expr x / y`

$ echo $z

Page 23: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

23

Wyrażenia arytmetyczne

x=1; y=2 # przypisanie wartości liczbowych zmiennym x i y

let "x=x+1" # zwiększane wartości x o 1

echo x = $x # zostanie wypisane: x = 2

(( x = x+y )) # tutaj nie jest potrzebne cytowanie

echo x = $x # zostanie wypisane: x = 4

Page 24: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

24

„Cudzysłów”

Cudzysłów w skryptach występuje w trzech rodzajach:

" - podwójny cudzysłów

' - pojedynczy cudzysłów (apostrof)

` - odwrócony cudzysłów (odwrócony apostrof)

1."Podójny cudzysłów" - Cokolwiek jest zamknięte w podwójny cudzysłów

pozbawiane jest znaczenia tych znaków (z wyjątkiem \ i $).

2. 'Pojedynczy cudzysłów' - Zamknięty ciąg w pojedynczy cudzysłów

pozbawiane jest znaczenia tych znaków bez wyjątków.

3. `Odwrócony cudzysłów` - Wykonuje polecenie.

$ echo "Dzisiaj jest date"

$ echo "Dzisiaj jest” `date`

Page 25: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

25

Argumenty

$ cat > demo

#!/bin/sh

echo "Całkowita liczba argumentów linii poleceń $#"

echo "$0 jest nazwą skryptu"

echo "$1 jest pierwszym argumentem"

echo $2 jest drugim argumentem"

echo "Wszystkie na raz :- $*"

$ chmod +x demo

$ ./demo pierwszy skrypt

Page 26: System Linux - użytkowaniekgrudzi.iis.p.lodz.pl/laboratorium/linux_podstawy.pdf · System Linux - użytkowanie 1 . 2 ... aby dowiedzieć się co to jest mc, napisz: ... > plik -

26

Przykładowy skrypt