Struktura katalogów. Prawa dostępu



Podobne dokumenty
Przekierowanie wejścia wyjścia:

liczba twardych dowiązań do pliku

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

Linux: System Plików

Typy plików. Oznaczenie f -

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

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

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

Architektura systemów informatycznych WPROWADZENIE DO SYSTEMU LINUX

Wstęp do informatyki Shell podstawy

Znaki globalne w Linuxie

Wstęp do systemu Linux

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

BASH - LINIA POLECEŃ. Bioinformatyka 2018/2019

Egzamin pisemny z przedmiotu: Systemy operacyjne Semestr I

Ćwiczenia Linux konsola

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

PRACOWNIA INFORMATYCZNA BASH - PODSTAWOWE INFORMACJE

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

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

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

2. System uprawnień w linuxie

1 Przygotował: mgr inż. Maciej Lasota

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

System plików Linuxa. Tomasz Borzyszkowski

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

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

Bash - wprowadzenie. Bash - wprowadzenie 1/39

Użytkownicy I. Użytkownik. Głównym celem istnienia użytkowników i grup w systemie jest utrzymanie porządku i separacja uprawnień.

Administracja sieciowymi systemami operacyjnymi III Klasa - Linux

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

Podstawy użytkowania Linux a

POPULARNE POLECENIA SKRYPTY. Pracownia Informatyczna 2

BASH - WPROWADZENIE Bioinformatyka 4

Prawa dostępu do plików

Sieci komputerowe. Wstęp do systemu Linux/UNIX, część I. Ewa Burnecka / Janusz Szwabiński. ewa@ift.uni.wroc.pl / szwabin@ift.uni.wroc.

Linux. Uprawnienia pliku / katalogu, właściciel pliku, UID, GID, sticky bit.

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

Systemy Operacyjne I: Procesy

Środowisko programisty

Systemy Operacyjne I: System plików

Technologie Informacyjne - Linux 2

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

Zespół Szkół Technicznych w Suwałkach. Pracownia Systemów Komputerowych. Ćwiczenie Nr 25 ARCHITEKTURA SYSTEMU LINUX. Opracował Sławomir Zieliński

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

"Klasyczna" struktura systemu operacyjnego:

Przetwarzanie tekstu 2. Operacje na plikach tekstowych w systemie Linux

Wstęp do systemu Linux

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

PRACOWNIA INFORMATYCZNA CHARAKTERYSTYKA PRZEDMIOTU BASH - PODSTAWOWE INFORMACJE

Ćwiczenie 9 Linux - operacje systemu plików

Instalacja Systemu Linux na maszynie writualnej

Wstęp do systemów wielozadaniowych laboratorium 03 Praca z plikami, c.d.

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

Podstawy systemów UNIX

Zastosowanie filtrów w Linuksie

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

Cechy systemu Linux. Logowanie się do systemu. Powłoka systemowa

Współczesne systemy komputerowe

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

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

Utwórz na pulpicie katalog: pierwsza-litera-imienia_nazwisko (np. j_kowalski). W tym katalogu zapisz pliki, które będą tworzone w ramach ćwiczenia

System operacyjny UNIX system plików. mgr Michał Popławski, WFAiIS

Ćwiczenie 1. Podstawowe wiadomości

Pracownia Informatyczna I ORGANIZACJA ZAJĘĆ, ZASADY ZALICZENIA

ZAJĘCIA Komendy Linux WB -> w konsoli tty2 finger exit man pwd pwd finger ls man ls. -> po 2 minusach interpretacja słowa

Prawa dostępu do plików (1)

System Linux - użytkowanie

Temat zajęć: Wprowadzenie oraz obsługa systemu plików.

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

Pracownia Komputerowa wykład III

S P I S POLECEŃ LINUXA

Systemy operacyjne Skrypt do ćwiczeń laboratoryjnych

Elementy wyrażeń regularnych

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

Powłoka bash. Kurs systemu Unix 1

Laboratorium systemów operacyjnych ćwiczenie nr 3. [ilość modułów: 1] Temat zajęć: Procesy w systemie operacyjnym

LINUX polecenia Uwaga Linux rozróżnia wielkość liter!!!

Pracownia komputerowa. Dariusz wardecki, wyk II

Moduł 4: Strumienie, potoki, sterowanie procesami

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

Wstęp do obsługi Linux a

Okiełznać Pingwina.... czyli podstawy systemu GNU/Linux

Uruchamianie zadań w środowisku CLUSTERIX z wykorzystaniem klienta tekstowego systemu GRMS

Powłoka interpreter poleceń systemu UNIX

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

Linux Polecenia. Problem nadpisywania plików. Zmienna noclobber i noglob. Filtry i metaznaki. Problem nadpisywania plików. Opracował: Andrzej Nowak

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

UNIX SYSTEM PLIKÓW. UNIX System plików

System operacyjny UNIX Ćwiczenie 1. Podstawowe polecenia systemu Unix

Zarządzanie użytkownikami w

Wstęp do obsługi Linux a

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

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

Konsola Linux. autor: Mariusz Barnaś

Narzędzia informatyczne w językoznawstwie

Linux cz.3: polecenia systemowe, ćwiczenia

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

Księgarnia PWN: Emmett Dulaney - Novell Certified Linux Professional (NCLP)

Trochę o plikach wsadowych (Windows)

Transkrypt:

Struktura katalogów /bin podstawowe programy takie jak bash czy cat /boot jądro systemu oraz pliki niezbędne do poprawnego uruchomienia systemu /etc pliki konfiguracyjne (np. /etc/passwd, /etc/group) /root katalog domowy administratora systemu /home katalogi domowe użytkowników (najczęściej na oddzielnej partycji) pliki konfiguracyjne użytkownika (np..bashrc.bash_profile.bashhistory) /lib biblioteki współdzielone /lost+found pliki/katalogi odtworzone podczas naprawiania systemu /tmp pliki tymczasowe programów /mnt, /mount, /media proponowany punkt montowania różnych systemów plików np. zewnętrznych urządzeń/nośników /sbin programy administracyjne /proc pliki, w których zapisane są informacje o działającym systemie np. używanych przerwaniach, wykorzystywanej pamięci /var pliki robocze (np. dzienniki systemowe, poczta, kolejki wydruków) /dev pliki reprezentujące urządzenia, np. Urządzenia blokowe odczyt/zapis danych blokami danych (sektorami/kilobajtami, klastrami) : - hda, hdb, sda... dyski IDE - hda1, hda2, sda1, sda2... - partycje na powyższych dyskach - s*, np. sda, sdb,... dyski SCSI, SATA, USB - fd dyskietka (fd0 partycja na dyskietce) Urządzenia znakowe odczyt/zapis danych znak po znaku/bajt po bajcie - /dev/tty0, /dev/tty1, /dev/pts/0, /dev/pts/1, /dev/pty* terminale i pseudoterminale - /dev//ttys0, ttys1,... - porty COM - /dev/null - czarna dziura - /dev/random, /dev/urandom generatory liczb losowych - /dev/zero generator zer - /dev/modem, /dev/ppp modem,... i wiele innych, w zależności np. od dystrybucji Prawa dostępu $ ls -al właściciel grupa rozmiar -rw------- 1 asawicka staff 6627 22 lut 22:37.bash_history -rw-r--r-- 1 asawicka staff 173 23 sie 2012.bash_profile drwxr-xr-x 2 asawicka staff 68 1 gru 2012 Applications -rw-r--r-- 2 asawicka staff 0 1 mar 06:28 plik.txt -rw-r--r-- 2 asawicka staff 0 1 mar 06:28 plik2.txt lrwxr-xr-x 1 asawicka staff 8 1 mar 06:29 plik_symb.txt -> plik.txt liczba twardych dowiązań do pliku np. d katalog - zwykły plik l dowiązanie symboliczne c urządzenie znakowe b urządzenie blokowe modification time czas zmiany zawartości ls -l access time czas dostępu (np.czytania, zapisu) ls -ul change time czas zmiany informacji o pliku np. zmiany praw dostępu (ale zmiany zawartości też) ls -cl

421421421 rwxrwxrwx u g o pierwsza trójka uprawnienia dla właściciela druga trójka uprawnienia dla grupy trzecia trójka uprawnienia dla wszystkich pozostałych Plik: r - możliwość czytania zawartości pliku w - możliwość zmiany zawartości pliku x - możliwość wykonywania pliku Katalog: r - możliwość listowania zawartości katalogu (ls katalog TAK, ale ls -al NIE) w - możliwość dodawania i usuwania plików (dodatkowo potrzebne x) x - możliwość dostępu do konkretnego pliku w katalogu (zgodnie z uprawnieniami do tego pliku), nie daje możliwości listowania katalogu, przykładowo: jeśli znamy nazwę pliku i mamy uprawnienia do zapisu możemy wykonać np.cat >>katalog123/plik.txt Polecenia związane z prawami dostępu: chmod zmiana praw dostępu dla pliku/katalogu chmod [u g o a][+ - =][r w x] plik.txt chmod 744 plik.txt -podanie praw w postaci liczby w systemie ósemkowym, co oznacza rwxr--r-- chmod o+w-x plik.txt powoduje dodanie prawa do zapisu i odebranie prawa do wykonywania do pliku dla pozostałych użytkowników chmod go-x plik.txt powoduje odebranie praw do wykonywania pliku dla grupy i pozostałych chmod a+r plik.txt powoduje dodanie prawa do odczytu pliku dla wszystkich chgrp id_grupy plik zmiana grupy pliku chown id_usera:id_grupy plik zmiana właściciela pliku umask zmienia /wyświetla maskę dla nowych plików/katalogów (w systemie Linux uprawnienia dla tworzonego pliku to rw-rw-rw- (bez maski) i dla tworzonego katalogu - rwxrwxrwx (bez maski)) - przykładowo: polecenie umask 022 spowoduje, że nowo utworzone pliki będą miały uprawnienia -rw-r--r--, zaś nowo utworzone katalogi będą miały uprawnienia drwxr-xr-x

SUID - proces ma uprawnienia właściciela pliku (na plikach wykonywalnych) chmod 4764 SGID - proces ma uprawnienia grupy pliku (na plikach wykonywalnych) chmod 2764 lub dziedziczenie grupy właściciela katalogu przez nowo tworzone pliki/katalogi zamiast grupy użytkownika (na katalogach) Sticky - pliki mogą być usuwane/zmieniana nazwa tylko przez właściciela pliku chmod 1764 plik.txt lub katalogu, w którym się znajduje/superusera (zazwyczaj na katalogach) Dowiązania twarde ln plik_zródłowy plik_docelowy dowiązanie twarde jest nierozróżnialne od oryginalnego pliku każda zmiana dokonana w pliku/na pliku jest widoczna we wszystkich dowiązaniach twardych (nie odnoszą się do katalogów) symboliczne ln -s plik_zródłowy plik_docelowy dowiązanie symboliczne zawiera nazwę pliku/katalogu na który wskazuje Zadania (na koncie student na maszynach wirtualnych lub np. w /tmp na mushelce):: utwórz 2 dowiązania twarde do dowolnego pliku tekstowego, wylistuj z opcją -l katalog w którym znajduje się plik i dowiązanie co uległo zmianie? usuń plik oryginalny co uległo zmianie? zmień zawartość jednego z utworzonych dowiązań sprawdź, czy drugie też ma zmienioną zawartość utwórz dowiązanie symboliczne do pliku tekstowego, wyświetl te dowiązanie, następnie usuń plik i spróbuj ponownie wyświetlić dowiązanie. zmień uprawnienia dostępu do pliku, tak by wszyscy mogli czytać i pisać w pliku, ale by wykonywać mogła go tylko grupa i Ty sprawdź jaka jest maska praw dostępu ustaw taką maskę, by nowo tworzony plik miał uprawnienia -rw-r----- Informacje o systemie uname -a wyświetlenie informacji o systemie (o jądrze systemu, komputerze nazwa, typ procesora, nazwa dystrybucji itp.) mount wyświetlenie zamontowanych systemów plików (polecenie służy również do montowania) du wyświetlenie zestawienia informacji na temat miejsca zajętego przez poszczególne katalogi np. du --max-depth=2 -h -x -wyświetlenie w ludzkiej formie (K,M,G) rozmiarów katalogów 2 poziomy w głąb od bieżącego, bez przechodzenia

zamontowanych systemów plików du -s ~/Desktop/ ~/Downloads/-wyświetlenie rozmiaru dla poszczególnych argumentów df - wyświetlenie informacji o zamontowanych systemach plików rozmiar, ilość wolnego i zajętego miejsca, punktach montowania (df -h) lsof - lista otwartych plików Zadania: sprawdź, jakie systemy plików zostały zamontowane sprawdź, które dwa z podkatalogów katalogu domowego zajmują najwięcej miejsca sprawdź, który z dysków mushelki ma największą pojemność Procesy ps polecenie pokazujące procesy w systemie np. ps ax wszystkie procesy w systemie ps axjf wszystkie procesy w postaci drzewa ps xjf własne procesy w postaci drzewa ps -u username - procesy danego użytkownika pstree procesy w postaci drzewa kill nr_procesu zabicie procesu (wysłanie sygnału do procesu, domyślnie TERM) kill 24156 kill -9 24156 wysłanie sygnału KILL top/htop informacje o działających procesach killall nazwa - zabicie wszystkich procesów wykonujących program o danej nazwie uruchamianie procesu w tle - & np. xclock &, sleep 1000 & ^Z wstrzymanie procesu, ^C zakończenie procesu/wysłanie sygnału INT jobs wyświetla zlecenia- job'y bg nr_joba przesłanie zlecenia w tło fg nr_joba przesłanie zlecenia na pierwszy plan Zadania: - uruchom konsolę i edytor tekstu - na drugiej konsoli wyświetl wszystkie swoje procesy, odszukaj numer procesu edytora i spróbuj zabić ten proces uruchom htop, posortuj procesy po właścicielu

uruchom kilkukrotnie w tle sleep liczba_sekund, wyświetl wszystkie procesy, zabij wszystkie procesy sleep jednym poleceniem, ponownie wyświetl wszystkie procesy i upewnij się, że wszystkie sleep zostały zabite Poszukiwanie programów/plików which lokalizacja programów (locate) find znajdowanie plików/katalogów w systemie find -name "*.txt" -type f wyszuka pliki tekstowe w oraz pod katalogiem bieżącym find public_html -xdev -maxdepth 2 -type d wyszuka wszystkie katalogi co najwyżej 2 poziomy pod katalogiem public_html (bez przechodzenia na zamontowane systemy plików opcja xdev) Zadania: znajdź w swoim katalogu domowym (i podkatalogach) wszystkie katalogi, których nazwa zawiera ciąg znaków SOP (wielkość liter nie ma znaczenia odszukaj w manualu do polecenia find jaka opcja to zapewni) Przekierowanie wejścia wyjścia: program ma trzy podstawowe strumienie wejścia-wyjścia - standardowe wejście - standardowe wyjście - standardowe wyjście diagnostyczne przekierowanie standardowego wyjścia ls -1>katalog.txt zapisze listę plików katalogu do pliku wc -l katalog.txt wypisze liczbę linii w pliku oraz jego nazwę na terminal wc -l katalog.txt >>katalog.txt - dopisze powyższą informacje do pliku przekierowanie standardowego wejścia ls -1>katalog.txt zapisze listę plików katalogu do pliku wc -l <katalog.txt wypisze liczbę linii w pliku na terminal wc -l <katalog.txt >>katalog.txt - możemy samą liczbę plików dopisać do pliku przekierowanie standardowego wyjścia diagnostycznego find / -name "sk*" -type f >pliki.txt 2>bledy.txt przekierowanie standardowego wyjścia i wyjścia diagnostycznego find. -name ala.txt >wszystko.txt 2>&1 przetwarzanie potokowe cat >imiona.txt ala ola ala ola ela hela ola

ala ela stefan olek roman ^D sort <imiona.txt >posortowane.txt more posortowane.txt uniq <posortowane.txt >rozne.txt more rozne.txt wc -l <rozne.txt LUB sort <imiona.txt uniq wc -l cat imiona.txt sort uniq wc -l Zmienne środowiskowe : ZMIENNA=123 set env export ZMIENNA set env echo $ZMIENNA $HOME, $USER, $PATH, Pierwszy skrypt plik skryptu plik tekstowy #!/bin/bash #komentarz. echo Pierwszy skrypt echo Mój katalog domowy to $HOME nadanie praw wykonywania chmod u+x skrypt1.sh uruchomienie./skrypt1.sh Polecenie read - czytanie ze standardowego wejścia echo Podaj wartosc zmiennej read zmienna echo Podales $zmienna echo Podaj co najmniej 3 słowa

read pierwsze drugie reszta echo Pierwsze słowo to $pierwsze echo Drugie slowo to $drugie echo A reszta to $reszta Argumenty skryptu: $1, $2,..., $0 nazwa pliku skryptu, $@ - wszystkie argumenty $# - liczba argumentów Obliczanie wartości wyrażeń: $[ ] np. SUMA=$[23+12] echo $SUMA SUMA=$[SUMA+3] echo $SUMA polecenie expr np. WYNIK=`expr 6 + 3` WYNIK=`expr $WYNIK \* 3` echo $WYNIK Wykorzystanie wyniku polecenia: `...` np. echo Moj katalog biezacy to `pwd` rm `find. -name "*.old"` Dodatkowe polecenia przydatne do zadań: grep wzorzec plik wyszukiwanie wzorca w pliku np. -i (bez rozróżniania wielkości liter) -l (tylko nazwy plików), cut - do wycinania fragmentu z każdej linii wejścia np. -c (znaki) -d (separator) -f (pola) wc zliczanie w pliku np.: -c (bajty) -w (słowa) -l (linie) sort sortowanie np. -n (numerycznie)

-t (separator) -k (pozycja klucza) uniq usuwa powtarzające się wiersze () head, tail zwraca początkowe/końcowe n-linii np. -n (liczba linii) tr - zamiana lub usuwanie znaków np. tr -s " " " " zamienia ciągi spacji na pojedyncze spacje. Zadania: napisz skrypt, który zsumuje 4 liczby podane przez użytkownika (1) napisz polecenie, które wypisze same rozmiary i nazwy plików w bieżącym katalogu (2), napisz polecenie, które poda liczbę plików w bieżącym katalogu (3), napisz polecenie, które wyszuka w pliku z kodem linie zawierające słowo while (wielkość liter nie ma znaczenia) wraz z numerami linii (4) napisz polecenie, które wypisze różne czasy modyfikacji katalogów w katalogu domowym (5), napisz polecenie, które wypisze nazwę pliku (lub katalogu), który został zmodyfikowany jako ostatni (6). napisz skrypt, który z 8mej i 10-tej linii pliku podanego jako pierwszy argument utworzy plik o nazwie podanej jako drugi argument (7), napisz skrypt, który wypisze rozmiar największego pliku w w bieżącym katalogu (8), napisz polecenie, które wypisze listę loginów użytkowników wraz z ich numerami (uid) posortowane numerycznie wg uid (9), napisz skrypt, które poda oddzielnie liczbę wszystkich katalogów i plików w katalogu domowym (10), napisz polecenie, które poda pojemność największego zamontowanego systemu plików (11) napisz skrypt, który wypisze łączną liczbę różnych linii we wszystkich plikach z rozszerzeniem.sh oraz wypisze te linie, które się nie powtarzają (12), napisz polecenie, które wypisze wszystkie linie zawierające login użytkownika w plikach w katalogu bieżącym (13)