6. Linux - prawa dostępu do plików i katalogów, edytor vi



Podobne dokumenty
Operatory d - kasuj (do bufora tymczasowego) c - zmień y - zapamiętaj (yank) > - przesuń w prawo < - przesuń w lewo. Informatyka MPDI2. np.

2. System uprawnień w linuxie

Zakład Systemów Rozproszonych

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

SOISK- ZS3 Wiskitki Edytor VI VIM Klasa III

Prawa dostępu do plików

vi - Edytor tekstu. 1. To, co każdy powinien wiedzieć o vi!!!

EDYTOR TEKSTOWY VIM WYBRANE POLECENIA. Pracownia Informatyczna 5

Znaki globalne w Linuxie

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

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

CZĘŚĆ A PIERWSZE KROKI Z KOMPUTEREM

Laboratorium 2 Instalacja i podstawy administracji systemem operacyjnym UNIX na przykładzie dystrybucji Ubuntu Linux.

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

Prawa dostępu do plików (1)

Zgrywus dla Windows v 1.12

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

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

Chemiateoretyczna. Monika Musiał. Ćwiczenia

vi - Visual edytor Wymagania.we: przerobione Pliki i kartoteki

Klawisze szybkiego wyboru układu drabinkowego

Instrukcja redaktora strony

INSTRUKCJE WIKAMP Dotyczy wersji systemu z dnia

I. Interfejs użytkownika.

Windows XP Wiersz polecenia

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

Ustalanie dostępu do plików - Windows XP Home/Professional

Informatyka Arkusz kalkulacyjny Excel 2010 dla WINDOWS cz. 1

Szkolenie dla nauczycieli SP10 w DG Operacje na plikach i folderach, obsługa edytora tekstu ABC. komputera dla nauczyciela. Materiały pomocnicze

Informatyka Arkusz kalkulacyjny Excel 2010 dla WINDOWS cz. 1

Wymagania edukacyjne z informatyki dla klasy szóstej szkoły podstawowej.

Dlaczego stosujemy edytory tekstu?

Edytor tekstu MS Office Word

Przedstawię teraz tzw. podstawowe symbole wyrażenia regularne (BRE, Basic Regular Expression)

MGA Sp. z o.o Toruń ul. Piaskowa 6

VinCent Administrator

Klawiatura komputerowa.

Podstawy użytkowania Linux a

System plików Linuxa. Tomasz Borzyszkowski

Klawiatura. Klawisze specjalne. Klawisze specjalne. klawisze funkcyjne. Klawisze. klawisze numeryczne. sterowania kursorem. klawisze alfanumeryczne

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

Technologie Informacyjne - Linux 2

Za pomocą niniejszej instrukcji baza programu MAK zostanie przygotowania do eksportu na METALIB.

Klawisze funkcyjne w OpenOffice.org Writer

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

Praca w systemie WET SYSTEMS

Podstawy pracy z edytorem tekstu. na przykładzie Open Office

Administracja sieciowymi systemami operacyjnymi III Klasa - Linux

Środki Trwałe v.2.2. Producent: GRAF Serwis Roman Sznajder Ustroń ul. Złocieni 4/1 tel ,

Kontrola topto. 1. Informacje ogólne. 2. Wymagania sprzętowe i programowe aplikacji. 3. Przykładowa instalacja topto. 4. Komunikacja.

Automatyzowanie zadan przy uz yciu makr języka Visual Basic

Temat: Organizacja skoroszytów i arkuszy

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

FlowSoft02. Przeznaczenie programu

OBIEKTY TECHNICZNE OBIEKTY TECHNICZNE

System Informatyczny CELAB. Terminy, alarmy

Edytor tekstu Notatnik

2 INSTALACJA OPROGRAMOWANIA. 3 3 GŁÓWNE OKNO PROGRAMU 3 4 MODUŁ OBSŁUGI ARCHIWUM 7

CENTRALNA BAZA DANYCH AKT SĄDOWYCH CEL POWSTANIA I ZASADY FUNKCJONOWANIA

TABULATORY - DOKUMENTY BIUROWE

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

Instrukcja korzystania z Virtual Box-a i SQLPLUS-a

MATERIAŁY - udostępnianie materiałów dydaktycznych w sieci SGH

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

Pracownia Komputerowa wykład III

QUERY język zapytań do tworzenia raportów w AS/400

Pracownia Komputerowa wyk ad II

Skrócona instrukcja obsługi programu. Mediamanager

Fragment tekstu zakończony twardym enterem, traktowany przez edytor tekstu jako jedna nierozerwalna całość.

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

Instrukcja obsługi systemu elektronicznego katalogu przedmiotów (sylabusów)

Przygotuj za pomocą tabulatorów element formularza. Utwórz pole tekstowe i sformatuj tak, aby dół napisu w polu był dokładnie nad kropkami.

Instrukcja użytkownika

Odczyt zegara ze sterownika do panelu serii TIU z możliwością korekty ustawień zegara w sterowniku

Kalipso wywiady środowiskowe

Archiwum DG 2016 PL-SOFT

Platforma e-learningowa MWSLiT

Przenoszenie, kopiowanie formuł

PIERWSZE URUCHOMIENIE PROGRAMU ITNC PROGRAMMING STATION

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

dokumentacja Edytor Bazy Zmiennych Edytor Bazy Zmiennych Podręcznik użytkownika

Formatowanie c.d. Wyświetlanie formatowania

Opis klawiatury komputerowej

UMOWY INSTRUKCJA STANOWISKOWA

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

Słownik. Instrukcja obsługi programu

Zadanie 11. Przygotowanie publikacji do wydrukowania

Memeo Instant Backup Podręcznik Szybkiego Startu

W oknie na środku, moŝna wybrać język, który będzie językiem domyślnym dla TC. Wybierzmy zatem język polski:

tel fax

Kancelaria rozpoczęcie pracy z programem

dolar tylko przed numerem wiersza, a następnie tylko przed literą kolumny.

System operacyjny UNIX Ćwiczenie 1. Podstawowe polecenia systemu Unix

Analiza i przetwarzanie obrazów

Nawigacja po długim dokumencie może być męcząca, dlatego warto poznać następujące skróty klawiszowe

Systemy operacyjne i sieci komputerowe. 1 SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE. Etapy uruchamiania systemu

Linux cz.3: polecenia systemowe, ćwiczenia

Dokładny opis instalacji programów RFD można znaleźć w pliku PDF udostępnionym na stronie w zakładce Downland > AutoCAD > Instalacja

Europejski Certyfikat Umiejętności Komputerowych. Moduł 3 Przetwarzanie tekstów

MS-DOS polecenia wewnętrzne i

Transkrypt:

6. Linux - prawa dostępu do plików i katalogów, edytor vi 6.1. Zmiana praw dostępu Prawa dostępu do plików i katalogów są jednymi z najważniejszych mechanizmów bezpieczeństwa systemu. Uniemożliwiają one lub umożliwiają innym użytkownikom przeglądanie, zmiany zawartości lub uruchomienia naszych zasobów. Prawa dostępu podzielone są na trzy sekcje: właściciel pliku lub katalogu grupa związana z plikiem lub katalogiem wszyscy inni użytkownicy systemu Polecenie ls -l wyświetla szczegółową listę plików i katalogów wraz z ich prawami dostępu: ls- l drwxr-x--- 7 student users 512 Jul 11 22:47 katalog1 wyjaśnienie tego zapisu jest następujące: identyfikator typu: - zwykły plik b specjalny plik blokowy c specjalny plik znakowy d katalog l link symboliczny p potok s gniazdo prawa dostępu: prawo plik katalog r czytanie zawartości przeszukiwania zawartości w zmiany zawartości zmiany zawartości x uruchomienie przejścia do tego katalogu 1

Prawa przypisywane plikom lub katalogom mogą być podawane na dwa sposoby: systemem kodów numerycznych : 4 2 1 systemem kodów znakowych : r w x Oto kilka przykładów na porównanie tych systemów: prawa dostępu zapis numeryczny zapis znakowy tylko do czytania 4 r-- tylko do pisania 2 -w- tylko do uruchamiania 1 --x do czytania i pisania 6 rw- do czytania i uruchamiania 5 r-x czytania, pisania i uruchamiania 7 rwx Aby obliczyć zapis numeryczny odpowiedniego prawa dostępu należy posłużyć się przeliczaniem bitowym. Każde prawo utożsamiamy z jednym bitem. Jeśli jest ustawione to odpowiada mu wartość 1, jeśli nie jest ustawione to odpowiada mu wartość 0. Zatem układowi rw- będzie odpowiadała następująca liczba w zapisie dwójkowym: 110, zaś układowi -w-, liczba 010. Następnie liczbę tą przeliczamy na liczbę w systemie dziesiętnym i uzyskujemy w ten sposób odpowiedni zapis numeryczny. Polecenie służące do zmian praw dostępu to chmod. Przykłady: Prawo do czytania dla właściciela pliku chmod 400 nazwa_pliku chmod u+r nazwa_pliku Wszystkie prawa dla właściciela pliku i prawo do czytania dla grupy chmod 740 nazwa_pliku chmod u+rwx,g+r nazwa_pliku W poleceniu chmod z wykorzystaniem systemu kodów numerycznych pierwsza liczba oznacza prawa dla właściciela pliku, druga dla grupy, trzecia dla pozostałych. W poleceniu chmod z wykorzystaniem systemu kodów znakowych u oznacza modyfikację praw dla właściciela pliku, g - modyfikację praw dla grupy, o - modyfikację prawa dla pozostałych, a - modyfikację praw dla wszystkich, + - nadanie prawa, - - usunięcie prawa, = - nadanie nowych praw, bez względu na to jakie były wcześniej, r,w,x - 2

odpowiednie prawa. Zatem zapis u+rwx,g=r będzie oznaczał nadanie wszystkich praw dla właściciela pliku i nadanie tylko prawa czytania dla grupy. 6.2. Domyślne prawa dostępu przy tworzeniu plików i katalogów Domyślne prawa dostępu dla plików i katalogów nadawane są podczas ich tworzenia. Zmianę tych praw uzyskujemy poleceniem umask. Jeśli chcielibyśmy, aby tworzone pliki miały domyślne prawa 644, które zezwalają właścicielowi na czytanie i pisanie, a reszcie tylko na czytanie to od wartości 777 należy odjąć 644, a wynik będzie wartością dla umask: 777-644 ------- 133 umask 133 5.3. suid i sgid - pożyteczne i niebezpieczne narzędzie Zadaniem tego potężnego, a zarazem niebezpiecznego narzędzia jest uruchamianie programu (nie skryptu) z prawami właściciela lub grupy przypisanej temu programowi. Zagrożenie z używania tych flag może wynikać z możliwości przejęcia kontroli nad systemem. Jeśli zwykłemu użytkownikowi uda się tak zawiesić program (którego właścicielem jest użytkownik root i który ma ustawioną flagę suid lub sgid), aby dostać się do powłoki to otrzyma on prawa właściciela programu (czyli w tym przypadku użytkownika root) co stanowi ogromne zagrożenie dla systemu. Dlatego należy z dużym rozsądkiem używać tych flag. Nadawanie plikom suid-a lub sgid-a wygląda następująco: suid : chmod u+s nazwa_plku chmod 4*** nazwa_pliku sgid : chmod g+s nazwa_pliku chmod 2*** nazwa_pliku suid i sgid : 3

chmod 6*** nazwa_pliku *** - tu wstawiamy dowolne prawa dla właściciela, grupy i innych użytkowników. Flaga suid w listingach plików reprezentowana jest przez literkę s lub S w prawach dla właściciela pliku: - rws r-x r-x Flaga sgid w listingach plików reprezentowana jest przez literkę s lub S w prawach dla grupy : - rwx r-s r-x Przykładowe zastosowanie: kiedy chcemy zmienić hasło (za pomocą polecenia passwd), stajemy się na chwilę administratorem. 6.4. Sticky bit Dla pliku ustawienie sticky bitu oznacza, że program, który on przechowuje będzie po jego zakończeniu nadal przechowywany w pamięci komputera. Dla katalogów sticky bit oznacza, że tylko właściciel może go usunąć mimo ustawienia praw na przykład na 777. Ustawienie sticky bitu dla plików wygląda następująco: chmod 1*** nazwa_pliku_katalogu chmod +t nazwa_pliku_katalogu *** - tu wstawiamy dowolne prawa dla właściciela, grupy i innych użytkowników. Reprezentantem tego bitu w listingach katalogów jest literka t lub T w sekcji dotyczącej reszty użytkowników: - rwx r-x r-t 6.5. Edytor vi W każdej implementacji Unixa znajduje się edytor vi. Dla użytkowników przyzwyczajonych do pracy z programami na komputerach osobistych, edytor ten jest dość uciążliwy w używaniu. Dlatego do celów redagowania małych plików, np. listów polecany jest pełnoekranowy edytor pico. Na dole ekranu prezentuje on zestaw dostępnych komend, co znacznie ułatwia prace. Pico nie jest edytorem standardowym i nie znajduje się w każdej instalacji Unixa. Jest rozpowszechniany wraz z programem do obsługi poczty elektronicznej o nazwie pine. W związku z tym, ze edytor vi jest standardowym edytorem w systemie, poniżej przedstawiono w skrócie tryby pracy i ważniejsze komendy tego edytora. 4

Edytor vi pracuje w dwóch trybach: tryb poleceń - każde wciśniecie klawisza interpretowane jest jako polecenie. W tym trybie pracy edytor jest ustawiany zaraz po uruchomieniu, np. vi dane.txt tryb wprowadzania tekstu Dla potrzeb opisu komend przyjmuje się następujące definicje: bieżąca linia linia, w której jest kursor bufor edytora bufor przechowujący aktualnie edytowany tekst bufor tymczasowy bufor przechowujący tekst ostatnio usunięty, zmieniony lub kopiowany za pomocą komendy Y bufory nazwane bufory (do 26 równocześnie) oznaczone małymi literami od a do z, przechowujące ostatnio przesłany tam tekst. Większość komend edytora nie ukazuje się na ekranie podczas wprowadzania z klawiatury. Wykonują się one natychmiast po wpisaniu ostatniego znaku komendy, bez naciskania klawisza Enter. Wyjątek stanowią komendy poprzedzone: (dwukropkiem), wpisane w trybie poleceń. Wyświetlane są na dole ekranu i musza być zakończone naciśnięciem klawisza Enter. Edytor wywołuje się komenda vi nazwapliku, np. vi dane.txt. Po wywołaniu plik dane.txt zostaje skopiowany do bufora. Edytor vi ma jedna bardzo użyteczna cechę, której nie posiadają inne edytory, tj. możliwość odtworzenia edytowanego pliku, jeśli w trakcie edycji nastąpiła przerwa spowodowana, np. awaria systemu. Wywołuje się go wtedy z opcja vi -r nazwapliku. Ważniejsze komendy edytora vi: Operacje na plikach, zakończenie pracy: ZZ lub :x wyjście z edytora z zapisaniem dokonanych poprawek do zbioru nazwapliku :w zapisuje zmiany do zbioru nazwapliku :q! wyjście z edytora bez zachowania poprawek :w nazwa zapisuje zawartość bufora edytora do zbioru nazwa :x,yw nazwa zapisuje linie o numerach od x do y do zbioru nazwa :e nazwa ładuje zbiór nazwa do bufora edytora :e! wymazuje dokonane modyfikacje i udostępnia ponownie ten sam zbiór do edycji :r nazwa wczytuje zbiór nazwa za linie bieżącą Przejście do trybu wprowadzania tekstu: i tekst wstawiany jest przed bieżącą pozycja kursora I przesuwa kursor do początku linii bieżącej i umożliwia wstawianie tekstu od tej pozycji o tworzy nowa linie poniżej bieżącej i umożliwia wprowadzanie tam tekstu O tworzy nowa linie powyżej bieżącej i umożliwia wprowadzenie tam tekstu a umożliwia wprowadzanie tekstu za bieżącą pozycja kursora A przesuwa kursor na koniec linii bieżącej i umożliwia wprowadzanie tekstu od tej pozycji ESC - wyjście do trybu poleceń 5

Tryb poleceń: W trybie poleceń wykonuje się komendy naciskając opisane niżej klawisze lub sekwencje klawiszy. Komendy można podzielić na kilka grup: Przesuwanie kursora: 0 przesuwa kursor do pierwszego znaku w linii $ przesuwa kursor do ostatniego znaku w linii b przesuwa kursor w lewo o jedno słowo w przesuwa kursor w prawo o jedno słowo + przesuwa kursor do początku następnej linii - przesuwa kursor do początku poprzedniej linii Enter przesuwa kursor do początku następnej linii j przesuwa kursor do następnej linii w tej samej kolumnie k przesuwa kursor do poprzedniej linii w tej samej kolumnie 1G przesuwa kursor do początku tekstu G przesuwa kursor do początku ostatniej linii tekstu ng przesuwa kursor do linii o numerze n { przesuwa kursor do początku poprzedniego paragrafu } przesuwa kursor do końca bieżącego, lub następnego paragrafu CTRL+f przesuwa tekst o 1 ekran do przodu CTRL+b przesuwa tekst o 1 ekran do tylu H przesuwa kursor do górnego lewego rogu ekranu M przesuwa kursor do środka ekranu L przesuwa kursor do lewego dolnego rogu ekranu Kasowanie: x usuwa 1 znak na bieżącej pozycji kursora nx usuwa n znaków na prawo od bieżącej pozycji kursora X usuwa 1 znak na lewo od bieżącej pozycji kursora nx usuwa n znaków na lewo od bieżącej pozycji kursora D usuwa znaki od bieżącej pozycji kursora do końca linii dd usuwa linie bieżącą ndd usuwa n linii począwszy od linii bieżącej d0 usuwa znaki od początku linii bieżącej do pozycji kursora dh,dm,dl usuwa znaki od pozycji kursora odpowiednio do góry, środka i dołu ekranu dg usuwa znaki od linii bieżącej do końca zbioru d/ abcd Enter usuwa znaki od bieżącej pozycji kursora do podanego ciągu znaków abcd Modyfikacje: r x zamienia znak na pozycji kursora na znak x R text ESC zamienia znaki od pozycji kursora na wpisywany text (nadpisuje) s text ESC usuwa 1 znak na pozycji kursora i wstawia w to miejsce text cc text ESC zamienia całą linie bieżącą na wpisywany text C text ESC zamienia znaki od pozycji kursora do końca linii na wpisywany text c abcd Enter pozwala zamienić znaki od pozycji kursora do zadanego ciągu znaków abcd i wprowadzić w to miejsce inny ciąg znaków wpisanych z klawiatury i zakończony naciśnięciem klawisza ESC ~ na pozycji kursora zamienia literę małą na wielką i odwrotnie 6

ddp zamienia miejscami linie bieżącą z następną Przeszukiwanie tekstu: /abcd Enter szuka (do przodu) ciągu znaków abcd od pozycji kursora do pierwszego znalezionego ciągu, lub do końca zbioru, a następnie od początku zbioru do linii bieżącej? abcd Enter szuka (do tylu) jak wyżej n lub N szuka dalej w tym samym kierunku ( n), lub w przeciwnym ( N) : x, y s/ str1// str2/g w liniach od x do y zamienia ciąg znaków str1 na str2 Przesuwanie tekstu do bufora tymczasowego: d, dd lub D usuwają tekst do bufora tymczasowego zgodnie z opisem komend usuwających yy lub Y kopiuje linie bieżąca do bufora tymczasowego nyy lub ny kopiuje n linii do bufora tymczasowego, począwszy od linii bieżącej Odzyskiwanie tekstu z bufora tymczasowego i wstawienie go do zbioru: p wstawia tekst z bufora tymczasowego za linie bieżącą P wstawia tekst z bufora tymczasowego przed linie bieżącą Manipulowanie blokami tekstu oznakowanymi markerami: m x (x- dowolna mała litera) oznakowuje markerem x miejsce w pliku wskazane kursorem ' x powoduje powrót kursora do pozycji oznaczonej markerem x d' x powoduje usuniecie bloku tekstu od linii oznaczonej markerem x do bieżącej pozycji kursora i przesłanie go do bufora tymczasowego :' a,' bm kopiuje oznakowane linie od a do b za linie bieżącą :' a,' bd usuwa oznakowane linie od a do b :' a,' bw nazwapliku zapisuje oznakowane linie od a do b do nowego pliku nazwapliku :' a,w nazwapliku zapisuje linie od a do linii bieżącej do nowego pliku nazwapliku :' a,' bw! nazwapliku nadpisuje istniejący zbiór nazwapliku liniami a do b :' a,' bw>> nazwapliku oznakowane linie od a do b dopisuje na koniec zbioru nazwapliku Przykłady operacji na buforach nazwanych (nazwa buforu poprzedzona jest podwójnym apostrofem: "): "a3dd usuwa z tekstu trzy linie i przesyła je do bufora o nazwie a "ayy kopiuje linie bieżącą do bufora o nazwie a "ap wstawia zawartość bufora o nazwie a za linie bieżącą "ap wstawia zawartość bufora o nazwie a przed linie bieżącą Inne użyteczne komendy: J łączy dwie linie w jedna, tzn. dopisuje następną do linii bieżącej u kasuje ostatnio wprowadzona modyfikacje. powtarza ostatnio wprowadzona zmianę Zadania: 1. Utwórz następującą strukturę katalogów: 7

2. Skopiuj wszystkie polecenia dwuliterowe zaczynające się od litery d z katalogu /bin do katalogu moje dokumenty 3. Utwórz w katalogu dom (za pomocą edytora vi) dwa pliki tekstowe plik1.txt oraz plik2.txt. Pliki te powinny zawierać przykładowy tekst. 4. Jakie uprawienie domyślne mają pliki1.txt oraz plik2.txt? 5. Ustaw dla pliku plik1.txt uprawnienia rw-r--rw-. 6. Ustaw dla pliku plik2.txt następujące uprawnienia właściciel: odczyt, zapis, wykonanie, grupa: tylko zapis, pozostali: odczyt, zapis. Jak to zrobić korzystając z zapisu numerycznego? 7. Wyświetl uprawnienia plików plik1.txt oraz plik2.txt. 8. Wydaj polecenie chmod 574 dla plik1.txt? Jakie zostaną nadane mu prawa? 9. Wydaj polecenie chmod u=rw, g=r, o-r dla pliku plik2.txt. Jakie zostaną nadane mu prawa? 10. Wyświetl uprawnienia plików plik1.txt oraz plik2.txt. Które polecenie (pkt. 8 i 9) nadpisuje uprawnienia, a które je modyfikuje? 11. Utwórz plik mojedane.txt (za pomocą edytora vi) w katalogu studia i umieść w nim swoje dane. 12. Załóż plik o nazwie email.txt (za pomocą edytora vi), w katalogu studia i umieść w nim swój adres e-mail. 13. Ustaw dla katalogu moje dokumenty i wszystkich podkatalogów następujące uprawnienia właściciel: odczyt, zapis, wykonanie, grupa: brak uprawnień, pozostali: odczyt, zapis. 14. Sprawdź, czy możesz nie nadawać plikowi żadnych praw? 8