1

KOMENDY I PODSTAWY LINUXA

POWŁOKA BOURNE (sh), RED HAT 7.2

23.04.2002

Opracowanie: IDELIX

1. OGÓLNE POLECENIA

(góra)

man costam - info o danym poleceniu

cd nazwa_katalogu - wejście do katalogu

cd .. - wyjście z katalogu

mkdir nazwa_katalogu - tworzy katalog

rmdir nazwa_katalogu - usuwa katalog

rm nazwa_pliku - usuwa plik

rm * - usuwa wszystkie pliki z danego katalogu

rm * -i - usuwa wszystkie pliki z danego katalogu z potwierdzeniem

rm * -f - usuwa wszystkie pliki z danego katalogu i wyłącza potwierdzenia (nawet zabezpieczone przed usunięciem) rm -f - usunięcie plików zabezpieczonych przed kopiowaniem

rm -r - usunięcie plików równieŜ w podkatalogach

rm -rf - usuwa cały system plików

chmod u+r jeden.doc - mogę czytać dany plik

w - mogę zapisywać i edytować dany plik

x - mogę wykonywać dany plik

ls -a - pokazuje ukryte pliki

ls -l - pokazuje więcej info o pliku:

W WYNIKACH POWYśSZEJ KOMENDY NA POCZąTKU Są:

"-" - oznacza zwykły plik

"d" - oznacza katalog

Potem pierwsze 3 znaki oznaczają dostępność do pliku właściciela, następne 3 znaki dla grupy, a następne 3 dla innych uŜytkowników

ls > wynik - wysłanie spisu zawartości katalogu do pliku wynik jeŜeli taki plik istnieje to skasuje się jego poprzednia zawartość ls >> wynik - dopisanie zawartości katalogu do zawartości pliku wynik

mount /mnt/floppy - montuje flopa

umount /mnt/floppy - rozmontowuje flopa

cat jeden.doc > wszystkie.doc - nadpisanie zawartości w pliku wszystkie.doc zawartościami innych plików cat jeden.doc dwa.doc >> wszystkie.doc - dopisanie do pliku wszystkie.doc zawartości innych plików cat nazwa_pliku - czytanie zawartości pliku

cat *.doc - znajdzie np.: dwa.doc sratytaty.doc

cat jeden.doc dwa.doc > wszystkie.doc - wrzuca zawartość plików do jednego

cat < jeden.doc > dwa.doc - wypisze zawartość jeden.doc na ekran (standartowe wyjście) i nadpisze zawartość pliku jeden.doc do pliku dwa.doc

cat parowka.doc | more - wyjście programu cat (parowka.doc) jest przekazywane na wyjście programu more head -42 nazwa_pliku - wyświetla 42 pierwszych wierszy zawartych w pliku

tail -42 nazwa_pliku - wyświetla 42 końcowych wierszy zawartych w pliku (przydaje się w obserwowaniu świeŜo dopisanych logów do pliku)

cp plik_zrodlowy plik_docelowy - kopiuje zawartość z pliku do pliku

cp plik(i)_zrodlowy katalog(i)_docelowy - kopiuje pliki do katalogu

mv stara_nazwa nowa_nazwa - zmiana nazwy pliku

mv nazwa_pliku nazwa_katalogu - przenoszenie pliku do katalogu

lp nazwa_pliku - drukowanie pliku

lpr nazwa_pliku - wstawienie pliku do koleiki drukowania

pwd - pokazuje w jakim jesteś katalogu

. - oznacza katalog bieŜący

.. - oznacza katalog nadrzędny

touch nazwa_pliku - tworzy pusty plik

stty -a - wypisanie skrótów do np. zatrzymania procesu

mail - otwiera plik z poczta

printenv albo export (powłoka C) - zobaczenie zawartości zmiennych środowiska

nazwa=zawartość - pierwsze przypisze zmiennej powłoki odpowiednia zawartość

export nazwa drugie utworzy zmienna o tej samej nazwie i zawartości co zmienna powłoki MOJA_ZMIENNA="jakas_wartosc" - tworzy zmienna środowiska z wartością "jakas_wartosc"

echo $MOJA_ZMIENNA wypisuje zawartość MOJA_ZMIENNA (znakiem dolara poprzedzamy nazwy zmiennych środ. które to nazwy powłoka ma zastąpić zawartością odpowiedniej zmiennej

2

find ścieŜka/nazwa_pliku lub kryterium - wyszukiwanie plików

grep - słuŜy do wyszukiwania plików według zadanego wzorca

2. KRYTERIA SZUKANIA OKRE¦LONYCH STRINGÓW

(góra)

* - zastępuje wiele znaków np.: ls *.doc

*.* - oznacza pliki z kropka w nazwie

*xyz - oznacza pliki w rodzaju xyz albo fghxyz

? - zastępuje jeden znak

[abc] - oznacza a lub b lub c

[a-z] - oznacza od a do z

doc[0-9] - oznacza doc0 do doc 9

*[Aa]dd* - oznacza useradd lub User-Add itd

*[Aa] [Dd] [Dd]* - oznacza userADD lub xxxAdd itd

- R - wszystkie podkatalogi

3. UśYTKOWNICY, PRAWA DOSTĘPU ITD

(góra)

newgrp grupa - zmiana grupy

chmod g+r jeden.doc - dodanie uŜytkownikom grupy do której naleŜy plik jeden.doc

prawa do jego czytania (dołączanie praw):

u - uŜytkownik

o - pozostali uŜytkownicy systemu

- - odebranie danego uprawnienia

chmod u=rw jeden.doc - nadanie tobie wyłącznie czytanie i pisania do pliku jeden.doc (zastępowanie praw) chmod u=rw /katalog - masz prawo do przeszukiwania katalogu jeŜeli nie miałbyś tych praw moŜesz znaleĽć tylko plik którego znasz nazwę (zastępowanie praw)

chmod 777 nazwa_pliku - następny sposób zastępowania praw, numeryczny 777 oznacza akurat przyznanie wszystkich praw wszystkim uŜytkownikom do danego pliku a 666 prawo do odczytu i zapisu pliku dla wszystkich uŜytkownikow PRAWA DOSTĘPU I ICH ODPOWIEDNIKI NUMERYCZNE:

--- 0

--x 1

-w- 2

-wx 3

r-- 4

r-x 5

rw- 6

rwx 7

umask - w momencie tworzenia nowego pliku otrzymuje on domyślne prawa dostępu określone za pomocą parametru umask 4 2 1 - wartości liczbowe odpowiadające określonym uprawnieniom

r w x kaŜda liczba odpowiada koleino uŜytkownikowi -> grupie -> "światu" (reszcie uŜytkowników) umask 421 - oznacza: właściciel moŜe plik czytać grupa moŜe do pliku pisać, a pozostali uŜytkownicy mogą plik wykonywać umask 700 - oznacza pełne prawa dla właściciela i Ŝadnych praw dla grupy i reszty uŜytkowników umask 077 - wyłączy prawa do czytania pisania i wykonywania dla grupy i całego "świata" (reszty uŜytkowników) PO WPISANIU UMASK I WARTO¦CI OD TEJ PORY KAśDY UTWORZONY PLIK BĘDZIE MIAŁ TAKIE PRAWA DOSTĘPU

chown nowy_wlasciciel nazwa_pliku - daje prawa do pliku innemu uŜytkownikowi

chown -r nowy_wlasciciel nazwa_pliku - daje prawa do wszystkich plików w katalogu innemu uŜytkownikowi chgrp nowa_grupa nazwa_pliku - daje prawa do pliku określonej grupie

who - info o wszystkich zalogowanych do systemu, obejmuje nazwę uŜytkownika

finger - to samo co who tylko jeszcze jest imię terminal, i czas zarejestrowania się w systemie who am i - info tylko o tobie

4. KOMUNIKACJA MIĘDZY UśYTKOWNIKAMI

(góra)

write nazwa_uzytkownika - wysyłanie wiadomości do określonego uŜytkownika, tekst pojawia się od razu po wpisaniu, teksty obu uŜytkowników mogą się mieszać

mesg n - zablokowanie przychodzących wiadomości write

mesg y - odblokowanie przychodzących wiadomości write

talk nazwa_uzytkowika - następny program tutaj ekran dzieli się na dwie części a rozmowa się nawiązuje jeśli drugi rozmówca odpowie "talk twoja_nazwa_uzytkownika"

3

conrol-c - zakańcza program talk

5. MAIL

(góra)

mail - otwiera twoja skrzynkę odbiorcza

mail nazwa_uzytkownika1 nazwa_uzytkownika2 - wysłanie maila do danego(ych) uŜytkownika np.: mail user@wp.pl, mail grzes control-d lub ("." sama w wierszu) - zakończenie listu i wysłanie

control-c - opuszczenie programu bez wysyłki listu

/usr/spool/mail nazwa_uzytkownika lub /usr/mail/ nazwa_uzytkownika - tu znajduje się plik w którym są zapisywane nadchodzące listy (nazwa pliku jest tez napisana w zmiennej środowiskowej MAIL moŜna się tam dostać wpisując export i znaleĽć MAIL=...) d2 - wrzuca 2 list do "kosza"

q - usuwa listy z "kosza" i zamyka program

x - opuszczenie programu bez usuwania listów

- - poprzedni list

+ - następny list

p - powtórne wyświetlenie bieŜącego listu

w 1 /home/zachowana_tresc - zachowanie treści listu nr 1 w pliku zachowany_list w katalogu home s 1 /home/zachowany_list - zachowanie listu (nagłówka i treści) nr 1

6. SIEĆ

(góra)

rlogin nazwa_kompa - rejestracja w inny systemie Unix

telnet nazwa_kompa - rejestracja w innych systemach np.: winNT

rcp nazwa_kompa:plik_zrodlowy plik_docelowy - program do przesyłania plików pomiędzy systemami Unix ftp plik_zrodlowy nazwa_kompa:plik_docelowy - program do przesyłania plików pomiędzy dowolnymi systemami KOMENDY FTP:

get plik - pobranie pliku z innego kompa

mget plik(i) - pobranie wielu plików

put plik - wysłanie pliku do innego kompa

mput plik(i) - wysłanie wielu plików

bye - zamkniecie połączenia z innym kompem

ls - spis plików na drugim kompie

cd - zmiana katalogu na drugim kompie

binary - tryb przesłania plików binarnych

ascii - tekstowy tryb przesłania (z tłumaczeniem znaków końca wiersz)

control-] - nie przerywając pracy na zdalnym kompie powrót do swojego systemu lokalnego (W PRZYPADKU SESJI TELNET) return~control-z - to co wyŜej ale dla RCP (działa jeśli twoja powłoka ma wbudowany mechanizm wielozadaniowości zwany "job-control"

7. PROCESY

(góra)

ps - wypisuje stan procesów

ps -l - dokładniejsze wypisanie stanów procesów

ps -aux | more - wypisanie włącznie z procesami nie naleŜącymi do ciebie (| more - udogodnienie) OPIS WYPISANYCH KOLUMN:

PID - identyfikator procesu

TTY - terminal do którego jest podłączony proces

STAT - stan procesu (W=czekający, R=wykonywany lub gotowy do wykonania S=uśpiony, Z=zabity ale wciąŜ przebywający w systemie)

TIME - czas jego wykonywania

COMMAND lub CMD - nazwa programu który wykonuje proces

UID - nazwa uŜytkownika który jest właściciele procesu

PPID - proces nadrzędny który utworzył dany proces

C lub CP - wykorzystanie procesora - uŜywane do szeregowania procesów

PRI - priorytet

NI - wartość uŜywana do obliczania priorytetu

ADDR - adres procesu

SZ - rozmiar procesu w blokach

WCHAN - zdarzenie na które oczekuje proces

4

nice o_ile_nizszy polecenie

- zmiana priorytetu procesu i mniejsza liczba tym wyŜszy priorytet (automatycznie niŜszy priorytet otrzymują procesy intensywnie wykorzystujące CPU) (tylko administrator moŜe podawać liczby ujemne)

cat *.doc > wszystkie.doc &

- znaczek & na końcu polecenia oznacza ze powłoka utworzy dany proces i uruchomi program ale nie będzie czekała na jego zakończenie

kill identyfikator_procesu

- zakończenie procesu

kill -9 identyfikator_procesu

- zakończenie procesów które ignorują zwykłą komendę kill

kill -v nazwa_procesu

- zabija proces po podaniu jego nazwy

at czas "polecenie" control-d

- wykonanie procesu o określonej godzinie np.: "cat 0900a "cat *.doc > razem.doc" control-d" co oznacza ze proces się uruchomi o godzinie 9:00 rano (a=a.m., p=p.m.)

8. EDYTOR VI

(góra)

vi nazwa_pliku - otwiera edytor z plikiem do edycji

vi - uruchamia edytor potem:

: - wierszowy tryb pracy (wiersz staje się poleceniem po naciśnięciu return)

i - drugi tryb pracy gdzie znaki są wstawiane do bufora aŜ do naciśnięcia klawisza esc 10x - usunie 10 znaków pod kursorem

10X - usunie 10 znaków na lewo od kursora

:w - zachowanie pliku na dysku

:q - opuszczenie programu

:wq lub ZZ - zapisuje plik i opuszcza program

:q! - wyjście bez zapisania pliku

10dd - wycina do schowka 10 wierszy od kursora w dół

10yy - kopiuje do schowka 10 wierszy od kursora w dół

p - wklejenie zawartości schowka na lewo od kursora

P - wklejenie zawartości schowka na prawo od kursora

/klocek - znajduje string klocek

/ - następne wyszukanie tego samego stringu

:s/klocek/badylek - zamiana klocek na badylek w bieŜącym wierszu

:1,$s/klocek/badylek/g - zamiana klocek na badylek w całym pliku

:r nazwa_pliku - wczytanie do bufora innego pliku

:set number - numerowanie wierszy

:set no number - nie ponumerowane wiersze

u - cofnięcie skutków ostatniego polecenia

9. EDYTOR EMACS

(góra)

control-h - wypisanie pomocy emacs

na przykład: control-h a file - wypisanie info o funkcji w której występuje słowo file control-h o - przełączanie miedzy oknami

control-h 0 - usunięcie okna pomocy gdy kursor się w nim znajduje

control-h 1 - usunięcie okna pomocy gdy kursor znajduje w oknie z redagowanym tekstem control-x b (i podać nazwę pliku) - wyświetlenie określonego redagowanego pliku emacs nazwa_pliku (w wierszu poleceń) - otwarcie pliku w edytorze emacs

control-x control-s - zapisanie pliku

control-x control-c - opuszczenie emacsa

nazwa_pliku~ - nazwa kopii zapasowej pliku

esc x overwrite-mode - tryb zastępowania tekstu

control-k - wycięcie do schowka tekstu od kursora do końca wiersza

control-@ - zaznaczenie początku przenoszonego bloku tekstu

control-w - zaznaczenie końca bloku przenoszonego tekstu

control-y - wklejenie zawartości schowka

control-s - wyszukiwanie stringa

10. INNE INFORMACJE

(góra)

1) gdzie co jest "standardowo":

- / - katalog główny

- /root - katalog administratora (root-a)

5

- /home - katalogi uŜytkowników

- /usr/bin - programy dla uŜytkowników, pliki wykonywalne (standartowe programy instalowane na początku z systemem)

- /usr/local/bin - programy dodane przez administratora dla konkretnego hosta lub lokalnej sieci

- /usr/local - oddziela pliki dostarczone przez "sprzedawcę" i póĽniejsze rozszerzenia od programów pochodzących z systemu

- /usr/lib - pliki pomocnicze dla standartowych programów linuksowych

- /usr/man - pliki podręcznika systemowego man

- /usr/src - kody Ľródłowe programów

- /var/log - pliki dziennika

- /var/spool - katalogi koleiek dla drukarek, poczty itd.

- /bin lub /sbin - standartowe programy będące częścią systemu, niezbędne do zapewnienia minimalnej funkcjonalności systemu

- /tmp - pliki tymczasowe (usuwane przy starcie systemu)

- /var/tmp - pliki tymczasowe (nie usuwane przy starcie systemu)

- /etc - programy konfiguracyjne, nazwy pozostałych uŜytkowników (w pliku passwd)

- /dev - jądro systemu, pliki odpowiadające urzadzeniom

2) wykonywany program moŜna zakończyć klawiszami: control-c lub zastopować klawiszami control-\ wtedy zostaje stworzony plik core w którym jest zapisany stan programu w momencie stopu (plik core moŜe być duŜy) 3) wypisywanie danych na ekran moŜna zatrzymać: control-s i wznowić: control-q 4) skrypt inicjujący: .profile

5) przy tworzeniu plików z dziwnymi znaczkami w nazwie trzeba je poprzedzać \ lub umieścić nazwę w "" wtedy znaczki stracą swoje specjalne znaczenia ale wtedy trzeba uwaŜać przy kasowaniu Ŝeby np.: nie wpisać rm * tylko rm"*" bo moŜna skasować wszystkie pliki z katalogu

6) wyrejestrowanie się: control-d - powłoki bourne i korn, logout - powłoka c 7) odświeŜanie ekranu: control-l

8) kaŜdy plik ma dwóch właścicieli uŜytkownika i grupę

- uŜytkownik moŜe być członkiem więcej niŜ jednej grupy

- nowo utworzony plik naleŜy do tej grupy, do której naleŜy katalog, w którym jest tworzony plik

- gdy chcesz cos robić z plikiem system najpierw bada czy jesteś właścicielem pliku, jeśli tak to są sprawdzane prawa dostępu uŜytkownika, w przeciwnym wypadku jest porównywana grupa do której naleŜy plik gdy odp. jest pozytywna system sprawdza grupowe prawa dostępu gdy nie, prawa dostępu pozostałych uŜytkowników

9) po zmontowaniu np.: cdromu jest "tworzony" punkt zamontowania który nie musi mieć nic wspólnego z fizycznymi nośnikami, podrzędny system plików jest "doczepiany" do systemu głównego w punkcie zamontowania 10) Kod Ľródłowy systemu Linux znajduje się w katalogu /usr/src/linux-2.4 w tym katalogu jest tez katalog "kernel" gdzie jest plik

"sched.c" dotyczy on zarządzania procesami

11) Domyślna lokalizacja pakietów na płycie z instalka linuksa jest: /mnt/RedHat/RPMS

12) Programem lpq moŜemy opróŜnić bufor drukarki

shutdown -r now lub reboot - ponowne uruchomienie kompa

shutdown -h now lub halt - zatrzymuje prace systemu

gnomecc - control-panel dla gnome

uname -a - informacje m.in. o wersji jądra którą mamy

df - ilość wolnego miejsca na dysku

du - wielkość katalogów i ich podkatalogów w kilobajtach

file ścieŜka - podaje rodzaj pliku

11. MONTOWANIE CD-ROM, FLOPPY I PARTYCJI Z WINDOWS

(góra)

PAMIĘTAJ śE ¦CIEśKA: /mnt/jakis_katalog MUSI ISTNIEĆ PRZED ZMONTOWANIEM CZYLI MUSISZ NAJPIERW

STWORZYĆ KATALOG W /mnt DO KTÓREGO BĘDZIE PODMONTOWYWANY JAKI¦ SYSTEM PLIKÓW

mount /dev/cdrom/ mnt/cdrom - zamontowanie cdrom-u

umount /dev/cdrom albo umount /mnt/cdrom - odmontowanie cdromu

mount /dev/fd0 /mnt/floppy - zamontowanie flopa

umount /dev/fd0 albo umount /mnt/floppy - odmontowanie flopa

mount /dev/hda1 /mnt/windows - montowanie dysku z windowsem (jeśli masz 2 dyski na pierwszym jest win a na drugim linux jeśli masz inaczej np.: win jest na tym samym dysku co linux moŜe ścieŜka wyglądać inaczej)

umount /dev/hda1 /mnt/windows - odmontowywanie partycji z windowsem

MOśESZ SKONFIGUROWAĆ LINUKSA TAK ABY MONTOWAŁ NP: PARTYCJĘ WINDOWSOWą ZARAZ NA STARCIE -

MUSISZ ZNALE¬Ć TYLKO PLIK /etc/fstab OTWORZYC GO NP: PROGRAMEM gedit I NA SAMEJ GÓRZE WPISAĆ PO

KOLEI:

/dev/hda1 /mnt/windows fat auto 0 0

OCZYWI¦CIE SCIEśKA /dev/hda1 MOśE BYĆ INNA W TWOIM KOMPIE

12. AUTOMATYKA, SKRYPTY W LINUKSIE

(góra)

6

at - moŜna tym poleceniem zlecić systemowi wykonywanie jakiegoś polecenia o określonej godzinie ( jeśli ma być wykonywane cyklicznie moŜna je dodać do pliku cron danego uŜytkownika)

(CHCEMY ABY O 16:05 BYŁ WYSYŁANY LIST NA OKRE¦LONY ADRES) PO kolei:

at teatime + 5 minutes - zaznaczmy o której ma to nastąpić (teatime oznacza 16:00) czas moŜna tez określić np. tak: at 2:14pm Jan9, at now + 5 minutes (hour, week, day, year), at teatime next day

mail -s "temat wiadomości" dzony@poczta.onet.pl - piszemy co ma być wykonywane i wciskamy enter

"co tam słychać" - wpisujemy treść listu i wciskamy enter

naciskamy control-d - i tym samym kończymy

mail dzony@poczta.onet.pl <~/nazwa_pliku - wysyła na podany adres zawartość pliku atq - wyświetla wszystkie polecenia oczekujące na wykonanie

atrm numer - usuwa polecenie o określonym numerze

cron - automatyczne uruchamianie poleceń w określonych odstępach czasu (np.: przypomnienie co tydzień o zrobieniu kopii zapasowej)

/var/spool/cron - pliki cron wszystkich uŜytkowników. Pliki cron moŜna stworzyć w linux configuratorze history n > nazwa_skryptu - "tworzy" skrypt z ostatnich n komend

chmod u+x nazwa_skryptu - PAMIĘTAJ śEBY NADAWAĆ SKRYPTOM MOśLIWO¦Ć WYKONYWANIA

TWORZENIE SKRYPTÓW POWŁOKI (PRZYKŁADOWE SPOSOBY):

1) SPOSÓB - Gnotepad

Uruchom jakikolwiek edytor np. gnotepad

Na samej górze wpisz (musi zawierać pełną ścieŜkę do "programu" w którym będzie wykonywany):

#!/bin/bash

potem np.:

echo -e "dzwonek! \a"

następnie zapisz plik np.: pod nazwą: skrypt aby uruchomić skrypt np.: wejdĽ do katalogu gdzie jest i wpisz: bash skrypt

2) SPOSÓB - vi

Wpisz w linii komend:

vi nazwa_skryptu (np.: skrypt) naciśnij:

i

wciśnij:

control-c wpisz:

:wq i aby uruchomić skrypt wpisz:

bash skrypt (ale jeśli jesteś w tym samym katalogu co skrypt)

licznik = 0 - deklaracja zmiennej

nazwa = "Stefan Telefan" - równieŜ deklaracja w tekście wystąpiła spacja wiec jest otoczony cudzysłowem licznik = $mojazmienna - przypisanie jednej zmiennej wartości drugiej (mojazmienna przejęła wartość) $1, $2 itd. - dzięki tym argumentom ich wartości moŜna przekazywać po uruchomieniu skryptu z wiersza poleceń SKRYPT - WY¦WIETLANIE ARGUMENTÓW Z WIERSZA POLECEŃ

if [$# -eq 0]

then

echo "Podaj identyfikator uŜytkownika"

else

echo "Witaj" $1

fi

$# - oznacza wszystkie argumenty które moŜna podać z wiersza poleceń

$# -eq 0 - porównanie (jeśli $# jest równe 0 )

fi - zakończenie instrukcji warunkowej if

$# - oznacza wszystkie argumenty które moŜna podać z wiersza poleceń

$0 - nazwa programu powłoki

$* - pojedynczy tekst utworzony ze wszystkich argumentów przekazanych w wierszu poleceń

= - równe (łańcuchy znaków)

!= - nierówne (łańcuch znaków)

-eq - równe (liczby)

-ge - większe lub równe (liczby)

-le - mniejsze lub równe (liczby)

-ne - roŜne (liczby)

-gt - większe niŜ (liczby)

7

-lt - mniejsze niŜ (liczby)

for...do...done

while...do...done

until...do...done

select...element...in...lista_elementów...do...done

if...elif...else...fi

case

JĘZYK AWK

PoniŜszy skrypcik jest pisany w linii komend i ma wypisać ilość liter w kaŜdym wierszu pliku z tekstem (język Awk najlepszy jest właśnie do przetwarzania tekstu)

cat nazwa_pliku | gawk '{print NF ": " $0}'

JĘZYK PERL

Perl moŜe być uruchamiany na prawie kaŜdym systemie operacyjnym, słuŜy m.in. do obsługi stron WWW za pomocą mechanizmów CGI lub np.: automatyzacji zadań administracyjnych.

SKRYPT - WY¦WIETLA NUMER IDENTYFIKACYJNY UśYTKOWNIKA

Wszystko podobnie jak w tworzeniu skryptów powłoki tylko Ŝe tu wpisujemy po kolei w pliku:

#! /usr/bin/perl

print"Twój numer identyfikacyjny to $< \n"

print "-------------------------------------- \n"

Uruchom powyŜszy skrypt wpisując po prostu jego nazwę

$< - zmienna która zawiera numer identyfikacyjny uŜytkownika

JĘZYKI PYTHON I TCL

Python obsługuje klasy wyjątki i dynamiczne typy danych moŜe pracować interaktywnie lub interpretując kod zapisany w modułach.

Programy w tym języku mogą korzystać ze środowiska graficznego np.: Gnome.

TCL jest prostym językiem skryptowym przeznaczonym głownie do osadzania w innych językach, ma za zadanie spajać biblioteki i języki programowania o większych moŜliwościach.

JĘZYK C

PONIśEJ OPISUJĘ CO TRZEBA ZROBIĆ śEBY STWORZYĆ PROGRAM W POJEDYNCZYM PLIKU (oczywiście są na to inne sposoby):

wpisujemy: vi progs.c - otwiera nowy plik "progs.c" w edytorze vi

naciskamy i - wchodzimy w tryb wpisywania programu

wpisujemy np. taki program:

#include

int main()

{

printf("Pararara \n");

exit(0);

}

po wpisaniu programu naciskamy ctr-c - dzięki temu wejdziemy w tryb wpisywania na terminalu wpisujemy: :wq - czyli zapisz i zamknij edytor

wpisujemy: touch program - tworzymy pusty plik

wpisujemy: gcc progs.c -o program - dzięki temu nasz program z pliku progs.c zostaje skompilowany do pliku wynikowego program wpisujemy: ./program - uruchamia nasz program

13. INSTALACJA PAKIETÓW - GnoRPM

(góra)

WejdĽ do Main Menu / System / GnoRPM

naciśnij przycisk Install

naciśnij przycisk Add

teraz (jeśli chcesz cos zainstalować z cdromu) wejdĽ do (nie koniecznie musisz mieć taka sama ścieŜkę) /mnt/cdrom/... i znajdĽ pliki z rozszerzeniem .rpm, który chcesz zainstalować, jak juŜ cos wybierzesz naciśnij Add i zamknij to okno na tym oknie co pozostało powinieneś widzieć ikonkę paczki i nazwę wybranego przez siebie pakietu teraz juŜ po prostu naciśnij Install

8

Jeśli chcesz uzyskać dokładniejsze info o pakiecie naciśnij na niego prawym klawiszem i wybierz Query, jeśli chcesz sprawdzić czy nie ma błędów naciśnij Verify. MoŜesz tez instalować pakiety z internetu - do tego słuŜy przycisk Web Find.

Pakiety RPM

Aby zainstalować pakiet RPM wpisujemy polecenie:

rpm -ivh nazwa_pakietu.rpm

uŜyte opcje:

-i -polecenie instalacji pakietu

-v - podaje nazwę instalowanego pakietu

-h - pokazuje postęp instalacji za pomocą znacznika #

Aby uaktualnić zainstalowany pakiet naleŜy wydać polecenie:

rpm -Uvh nazwa_pakietu.rpm

Zastosowana tutaj opcja -U usuwa poprzednią wersję programu i instaluje nową.

Odinstalowanie programu moŜemy wykonać wydając polecenie:

rpm -e nazwa_pakietu.rpm

śeby zainstalować pakiety Ľródłowe RPM, mające rozszerzenie *.src.rpm, naleŜy je wcześniej skompilować poleceniem: rpm --rebuild nazwa_pakietu.src.rpm

Po tej operacji, jeŜeli nie wystąpiły jakieś błędy podczas kompilacji, powinniśmy uzyskać ( Red Hat ) w katalogu /

usr/src/redhat/RPMS/i386 gotowy do zainstalowania pakiet binarny.

Instalacja programów spakowanych programami tar, gzip i bzip2

Aby rozpakować dany plik musimy wydać odpowiednią komendę:

dla plików z rozszerzeniem *.tgz lub *.tar.gz odpowiednia jest komenda: tar -xvzf nazwa_pliku.tar.gz dla plików *.tar.bz2 musimy uŜyć komendy: tar -xvjf nazwa_pliku.tar.bz2

Teraz moŜemy przystąpić do instalacji programu, wykonuje się to zazwyczaj ciągiem poleceń wydanych w katalogu ze Ľródłami programu:

./configure

9

make

make install

Przed instalacją warto jest przeczytać pliki README i INSTALL, zazwyczaj znajdujące się w katalogu ze Ľródłami. MoŜna w nich dowiedzieć się waŜnych informacji dotyczących programu i sposobu jego konfiguracji i instalacji.

Inne pliki instalacyjne

Czasami moŜe się zdarzyć, Ŝe programy wymagają odmiennego podejścia do ich instalacji. Przykładem moŜe być ostatni hit -

StarOffice - udostępniany jako plik instalacyjny zakończony rozszerzeniem *.bin. W tym wypadku naleŜy nadać plikowi moŜliwość uruchomienia poleceniem chmod. Zdarzają się teŜ inne programy, które posiadają gotowe skrypty lub programy instalacyjne Częstym problemem początkującego uŜytkownika Linuksa jest ustawienie wyświetlania polskich znaków diaktrycznych. Do ustawienia polskich ustawień moŜemy uŜyć programu locale_config dołączonego standardowo do dystrybucji Linuksa, w efekcie czego powinniśmy uzyskać w pliku /etc/sysconfig/i18n wpis:

LANG="pl_PL"

LC_ALL="pl_PL"

LINGUAS="pl_PL"

SYSFONT=lat2u-16

UNIMAP=lat2u

SYSFONTACM=iso02

MoŜemy równieŜ wpisać je tam ręcznie, korzystając z powyŜszego wzoru. Po czym wydajemy polecenia:

/sbin/setsysfont

loadkeys pl

W Midnight Commanderze powinniśmy takŜe wybrać w opcji ustawień wyświetlania znaków ISO-8599-1 oraz pełne 8-bitowe wejście.

Aby uzyskać polskie znaki w X-sach naleŜy je najpierw zainstalować, moŜna je ściągnąć z "Polskiej strony ogonkowej". W większości nowych dystrybucji czcionki te juŜ są, wystarczy je zaznaczyć podczas instalacji.

Czcionki powinny znaleĽć się w katalogu:

/usr/share/fonts/ISO8859-2/

lub

/usr/X11R6/lib/X11/fonts/ISO8859-2/

W poszczególnych katalogach z czcionkami powinien znajdować się plik fonts.dir, jeŜeli go nie ma to musimy go utworzyć poleceniem mkfontdir. Następnie dopisujemy ścieŜkę dostępu do czcionek do pliku /etc/X11/fs/config, powinno to wyglądać mniej więcej tak:

catalogue = /usr/share/fonts/ISO8859-2/misc:unscaled,

/usr/share/fonts/ISO8859-2/75dpi:unscaled,

/usr/share/fonts/ISO8859-2/100dpi:unscaled,

/usr/share/fonts/ISO8859-2/misc,

10

/usr/share/fonts/ISO8859-2/Type1,

/usr/share/fonts/ISO8859-2/75dpi,

/usr/share/fonts/ISO8859-2/100dpi

/usr/X11R6/lib/X11/fonts/misc:unscaled,

/usr/X11R6/lib/X11/fonts/75dpi:unscaled,

/usr/X11R6/lib/X11/fonts/100dpi:unscaled,

/usr/X11R6/lib/X11/fonts/misc,

/usr/X11R6/lib/X11/fonts/Type1,

/usr/X11R6/lib/X11/fonts/Speedo,

/usr/X11R6/lib/X11/fonts/75dpi,

/usr/X11R6/lib/X11/fonts/100dpi,

/usr/share/fonts/default/TrueType,

/usr/share/fonts/default/Type1,

WaŜne jest aby polskie czcionki znalazły się na początku listy.

Wyświetlanie polskich znaków - GNOME Aby polskie znaki poprawnie się wyświetlały powinniśmy mieć juŜ ustawione polskie LOCALE i zainstalowane czcionki ISO8859-2. Następnie uruchamiamy Centrum Sterowania GNOME i w sekcji Wybór motywu zaznaczamy wykorzystanie czcionki uŜytkownika i wybieramy czcionkę z filtrem ISO8859-2. Po tych zabiegach GNOME powinien juŜ

przemówić do nas po polsku.

Wyświetlanie polskich znaków - KDE

Robimy to następująco: wchodzimy w Ustawienia, następnie Desktop i Czcionki. Dla wszystkich czcionek ustawiamy kodowanie na ISO-8859-2, zaś w sekcji Język ustawiamy jako pierwszy język polski (pl). Po zapisaniu zmian i restarcie KDE powinniśmy zobaczyć polski interfejs z poprawnie wyświetlającymi się polskimi znakami.

Pliki i katalogi w Linuksie.

Pliki podobnie jak w innych systemach umieszczone są w katalogach. Układ katalogów przypomina strukturę drzewa, czyli jest katalog główny - korzeń ( root direktory ), a gałęzie to podkatalogi i pliki.

Katalog główny czyli root, jest katalogiem specjalnym ułoŜonym podczas instalacji Linuksa, większość z nich są to katalogi systemowe i muszą występować w określonej hierarchii, w zaleŜności od dystrybucji mogą występowąć pewne róŜnice.

MoŜesz tworzyć nowe katalogi oraz pliki, w ich nazwach zabronione jest uŜywanie ukośników, znaków zapytania oraz gwiazdek. Nazwa moŜe mieć długość do 256 znaków.

W nazwach plików moŜesz uŜywać rozszerzenia, jest to część nazwy po kropce. Rozszerzenia stosuje się w celu określenia kategorii pliku, np nazwa kelwin.mp3 oznacza: plik ten jest plikiem muzycznym, a read.txt jest plikiem tekstowym. MoŜesz tworzyć własne rozszerzenia lub uŜywać nazw bez rozszerzeń.

Istnieją takŜe specjalne pliki ukryte, poprzedzone kropką (dot files), są to najczęściej pliki inicjujące i konfiguracyjne.

Opis niektórych katalogów w Linuksie. (Redhat)

/home

- zawiera katalogi domowe (osobiste) uŜytkowników

/bin

- znajdują się tu standardowe polecenia i programy

/lib oraz /usr/lib

- wszelkiego rodzaju biblioteki

/usr/doc oraz /usr/share/doc - zawiera dokumentację Linuksa oraz programów

/etc

- zawiera pliki konfiguracyjne

/sbin

- polecenia administracyjne ( powinny być uŜywane tylko przez roota )

/var

- pliki zmienne np. logi systemowe, poczta, kolejki wydruków i inne.

/usr

- polecenia i programy dla uŜytkowników (zawiera wiele podkatalogów)

/dev

- pliki odpowiadające urządzeniom

/root

- katalog domowy administratora

/usr/man oraz /usr/share/man - pliki podręczników elektronicznych

/tmp

- zawiera pliki tymczasowe

/boot

- pliki niezbędne do uruchomienia systemu

11

Niektóre polecenia, uŜywane do zarządzania katalogami oraz plikami

ls

- polecenie do wyświetlania nazw plików i katalogów

ls -R

- wylistowanie katalogu wraz z podkatalogami.

mkdir

- polecenie słuŜy do stworzenia nowego katalogu np. mkdir dokumenty

rmdir

- do usunięcia katalogu np. rmdir dokumenty

cd nazwa

- zmiana katalogu na zadany katalog,

katalogu

cd

- powrót do katalogu domowego

cd..

- przejście do katalogu nadrzędnego

- kopiowanie pliku. Polecenie jako argumenty przyjmuje oryginalną nazwę pliku i nazwę jego kopii, np. cp nazwa cp

nowa-nazwa

mv

- przeniesienie lub zmiana nazwy pliku lub katalogu

ln

- tworzenie dowiązań do plików lub katalogów

rm

- usuwanie plików

pwd

- wyświetlenie nazwy ścieŜki bieŜącego katalogu

du

- wyświetlenie ilość zajętego miejsca przez katalogi

df

- wyświetla ilość zajętego miejsca na wszystkich dyskach i partycjach

more

- wyświetlanie pliku w kilku częściach, gdy nie mieści się na ekranie.

chmod

- zmienia atrybuty plików.

chown

- zmienia właściciela pliku i przynaleŜność do grup

gzip i gunzip

- gzip- kopmresuje pliki, a gunzip dekompresuje.

tar

- tworzy archiwum plików z jednego lub kilku katalogów.

fdformat

- formatuje dyskietki

fsck

- sprawdza i naprawia systemy plików wyszczególnione w pliku /etc/fstab

Niektóre pliki konfiguracyjne Systemu Linux

- plik zawiera nazwy dysków, partycji, inne systemy plików które mają być zamontowane w

/etc/fstab

czasie startu systemu

- głowny plik startowy systemu. Zawiera listę terminali, z których moŜliwe jest otwarcie sesji,

/etc/inittab

oraz listę procesów do uruchomienia w czasie ładowania systemu.

/etc/ld.so.conf

- plik zawiera nazwy ścieŜek bibliotek

/etc/lilo.conf

- plik konfiguracyjny LILO (Linux Loadera)

/etc/man.config

- plik konfiguracyjny elektronicznych podręczników (manuali) Man, dla aplikacji

/etc/mime.types

- plik konfiguracji skojarzeń

/etc/modules.conf

- plik konfiguracyjny modułów

/etc/printcap

- konfiguracja drukarek

/etc/profile

- konfiguracja powłoki BASH

/etc/resolv.conf

- plik zawiera adresy serwerów DNS

/etc/X11/XF86Config lub /

- plik konfiguracyjny X Window System

etc/X11/XF86Config-4

/etc/X11/fs/config

- plik konfiguracyjny font serwera

/etc/httpd/conf/httpd.conf

- plik konfiguracyjny serwera Apache

/etc/issue

- w tym pliku znajduje się domyślne powitanie twojego systemu

/etc/crontab

- zawiera plan zadań do wykonania o określonej porze, przez system

/etc/httpd/conf/httpd.conf

- plik określa ogólne atrybuty serwera Apache

/etc/httpd/conf/access.conf

- plik konfigurujący dostęp do serwera WWW

- plik konfiguracyjny zasobów serwera Apache - dokumentów i innych informacji,

/etc/httpd/conf/srm.conf

udostępnionych przez serwer uŜytkownikom

Szczegółowe informacje na temat sposobu zastosowania poszczególnych poleceń, uzyskasz w elektronicznych podręcznikach man, np.

polecenie man cp, wyświetli Ci wszystko na temat polecenia cp.

W man-ie tekst przeglądasz za pomocą kursorów, góra, dół. Wyjście z podręcznika za pomocą klawisza Q.

Document Outline

    • Pliki i katalogi w Linuksie.Pliki podobnie jak w innych systemach umieszczone są w katalogach. Układ katalogów przypomina strukturę drzewa, czyli jest katalog główny - korzeń ( root direktory ), a gałęzie to podkatalogi i pliki. Katalog główny czyli root, jest katalogiem specjalnym ułożonym podczas instalacji Linuksa, większość z nich są to katalogi systemowe i muszą występować w określonej hierarchii, w zależności od dystrybucji mogą występowąć pewne różnice. Możesz tworzyć nowe katalogi oraz pliki, w ich nazwach zabronione jest używanie ukośników, znaków zapytania oraz gwiazdek. Nazwa może mieć długość do 256 znaków. W nazwach plików możesz używać rozszerzenia, jest to część nazwy po kropce. Rozszerzenia stosuje się w celu określenia kategorii pliku, np nazwa kelwin.mp3 oznacza: plik ten jest plikiem muzycznym, a read.txt jest plikiem tekstowym. Możesz tworzyć własne rozszerzenia lub używać nazw bez rozszerzeń. Istnieją także specjalne pliki ukryte, poprzedzone kropką (dot files), są to najczęściej pliki inicjujące i konfiguracyjne.