2024. április 24., szerda

Gyorskeresés

Útvonal

Cikkek » Számtech rovat

Debiant mindenkinek! 2. rész

  • (f)
  • (p)
Írta: |

Alapvető tool-ok és parancsok

[ ÚJ TESZT ]

Most, hogy már van egy kicsi Debian-unk, ideje átvenni néhány alapvető dolgot, tool-t és parancsot, mielőtt bármit is elkezdenénk telepíteni. Az első és a legfontosabb az apt. Az apt, vagy ha úgy jobban tetszik Advanced Package Tool, a Debian csomagtelepítője, amely, ha megfelelően használjuk nagymértékben megkönnyíti a további munkánkat. Számunkra 2 fő funkciója fontos, az apt-cache és az apt-get. Az előbbit a csomaglista cache manipulálásához, a telepítendő csomag megkeresésére fogjuk használni. Az utóbbi a csomagok beszerzéséhez és telepítéséhez szükséges. A használatuk nagyon hasonló, a parancs után meg kell adnunk, milyen műveletet szeretnénk végrehajtani. Vegyünk is egy gyors példát: Telepíteni szeretnénk egy Apache2 webszervert. Keressük meg, milyen Apache telepítéséhez kínál fel lehetőséget a telepítő:

apt-cache search apache

Egy hatalmas listát ad ki, aminek egy része nem is a nevébe, hanem csak függősége miatt jelenik meg, szűkítsük kicsit tovább a listát, mondjuk a grep segítségével. A grep-et leginkább keresésre és találatszűrésre fogjuk használni, jelen esetben azokra a csomagokra keresünk, amelyeknek a nevében ténylegesen benne is van az apache szó:

apt-cache search apache | grep apache

Az eredmény sokkal rövidebb lista, de még mindig nagyon hosszú. Ha van időnk végigbogarászni, akkor tegyük, de jobb, ha próbáljuk kicsit szűkíteni, mit is szeretnénk pontosan. Ennek utána nézhetünk a www.apache.org oldalon. Ott azt találjuk, hogy a 2.2 a legújabb változata, tehát erre keressünk rá:

apt-cache search apache | grep apache2.2

Máris csak egyetlen csomagot ad ki eredményül. Innen már csak telepíteni kell az apt-get-el. Ne feledjük el, hogy mindig a csomag teljes nevét kell beírni, tehát:

apt-get install apache2.2-common

A Debian-unk már készíti is a függőségi listát, kikeresi, mely csomagok szükségesek, melyeket ajánlja, és hogy esetleg melyek kerülnek eltávolításra. Emellett azt is kiírja nekünk, mennyi adatot fog letölteni, és mennyi helyet foglal majd le a merevlemezünkről. Általában az ajánlás elegendő, ezért más dolgunk innentől nem is marad, mint egy y-nal elindítani a telepítést, és hogy ha valami még később kell, a fentebb említett módon bármikor meg lehet keresni és telepíteni. Itt jegyeznék meg ezzel kapcsolatban 2 fontos dolgot. Az első, hogy nem mindig minden programból létezik a legújabb verzió, mert még nem készítették el belőle a „.deb” - ez a debian telepítési file kiterjesztése - telepítő csomagot, ezért, ha nem találjuk, ne essünk kétségbe, és egy korábbi verziót keressünk. A másik fontos dolog, hogy ugyan a telepítő csomag sok mindent beállít, de nem mindent. Vannak dolgok, amiket nekünk kell kézzel beállítanunk, hogy biztonságos és az igényeinknek megfelelően működjön a Debian szerverünk és a rajta futó programok. Az apache telepítése később bemutatásra kerül részleteivel és kiegészítőivel együtt, ezért most egy n betű lenyomásával utasítsuk el az installálását.

Már tudunk csomagokat telepíteni, ideje megtanulnunk pár fontos utasítást. Az első az init. Működése roppant egyszerű, egyetlen paramétere van, hogy milyen futási szintre szeretnénk eljutni. A legfontosabb paraméterek: 0, 3, 5, 6, a többi egyelőre számunkra nem szükséges.

init 0 - A Linux rendszer leállítása
init 3 - A több felhasználós konzolos futási szint hálózattal
init 5 - Ugyan az, mint a 3-as + a grafikus környezet
init 6 - A Linux rendszer újraindítása

A rendszerben bolyongva az sem lényegtelen, merre járunk éppen, mivel néha elkalandozhatunk, és néha elkavarodhatunk, a pwd parancs mindig megadja, melyik könyvtárban is tartózkodunk pillanatnyilag, paramétere nincsen.

debian-test:~# pwd
/root
debian-test:~#

Azt sem árt tudni, hogy kik vannak bejelentkezve a rendszerbe, erre szolgál a who parancs. Ha magában adjuk ki, válaszul egy listát ad a bejelentkezett felhasználókról. Ha nem tudjuk pontosan, mi melyikek vagyunk a listában, akkor a who am i parancs siet a segítségünkre:

debian-test:~# who
ivanchen tty1 2010-01-16 10:06
behatolo tty2 2010-01-16 10:07
root pts/0 2010-01-16 10:08 (192.168.181.1)
debian-test:~# who am i
root pts/0 2010-01-16 10:08 (192.168.181.1)
debian-test:~#

A tty egy helyi konzol, közvetlenül a szerveren, a pts egy távoli bejelentkezési konzolt jelent. Ha távoli a bejelentkezés, akkor a kliens IP címét is megjeleníti. Ha a who -u parancsot használjuk, akkor kicsit több információhoz jutunk, nevezetesen megkapjuk a kapcsolódási folyamat azonosítóját is. Ez azért fontos, mert ennek az ismeretében ki tudjuk rakni azt a felhasználót, akit csak akarunk, csupán a kill parancsot kell használni. A paramétere a leállítandó folyamat azonosítója.

debian-test:~# who -u
ivanchen tty1 2010-01-16 10:06 00:03 2832
behatolo tty2 2010-01-16 10:07 00:03 2877
root pts/0 2010-01-16 10:08 . 2890 (192.168.181.1)
debian-test:~# kill 2877
debian-test:~# who -u
ivanchen tty1 2010-01-16 10:06 00:04 2832
root pts/0 2010-01-16 10:08 . 2890 (192.168.181.1)
debian-test:~#

A két fontosabb parancs a felhasználó kezeléshez az useradd és a passwd. Míg az előbbivel felhasználókat lehet létrehozni, az utóbbival jelszót lehet változtatni. Az useradd-nak rengeteg paramétere van, mi alapvetően csak egyet fogunk használni:

debian-test:~# useradd -m ivanchen2
debian-test:~# passwd ivanchen2

A passwd jelszó megváltoztatására szolgál, mindenki a sajátját tudja vele megváltoztatni, a root pedig mindenkiét. Az useradd-nak van két „testvére” is, az usermod és az userdel. Ez utóbbi kettőt csak módisításra és törlésre használjuk, ezeket nem nagyon fogjuk használni.

A hálózati kihasználtság figyelésére hasznos program a vnstat, ami egy kicsi hálózatfigyelő program. Sajnos nincs az alap programok között, ezért nekünk kell kézzel telepíteni:

apt-get install vnstat

A használata sem nehéz, -u az adatforgalom jelzéséhez, és –i eht0 a statisztika készítéséhez, ez után az egyszerű vnstat parancsra kiadja a hálózati statisztikát:

debian-test:~# vnstat -u -i eth0
debian-test:~# vnstat
Database updated: Mon Jan 18 10:39:11 2010

eth0

received: 78 kB (nan%)
transmitted: 76 kB (nan%)
total: 154 kB

rx | tx | total
-----------------------+------------+-----------
today 78 kB | 76 kB | 154 kB
-----------------------+------------+-----------
estimated -- | -- | --
debian-test:~#

A pillanatnyi állapot megjelenítéséhez a vnstat –l parancsra van szüksékünk, ami folyamatos információt ad a hálózati forgalomról. CRTL-C-vel lehet magszakítani a futását.

debian-test:/bin# vnstat -l
Monitoring eth0... (press CTRL-C to stop)

rx: 0.03 kB/s 0 p/s tx: 0.06 kB/s 0 p/s

debian-test:/bin#

A szabad terület ellenőrzésére szolgál a df parancs, ha paraméterek nélkül indítjuk, akkor kiírja az aktuális tárolók állományok állapotát, amelyek nem üresek. A könnyebb értelmezhetőség érdekében javaslom a –ah kapcsolót, ami azokat az állományokat is megjeleníti, amik nem tartalmaznak file-okat, és a mennyiségeket is kerekíti:

debian-test:/bin# df
Fájlrendszer 1K-blokk Foglalt Szabad Fo.% Csatl. pont
/dev/sda1 7850996 912996 6539188 13% /
tmpfs 128200 0 128200 0% /lib/init/rw
udev 10240 632 9608 7% /dev
tmpfs 128200 0 128200 0% /dev/shm
debian-test:/bin# df -ah
Fájlrendszer Méret Fogl. Szab. Fo.% Csatl. pont
/dev/sda1 7,5G 892M 6,3G 13% /
tmpfs 126M 0 126M 0% /lib/init/rw
proc 0 0 0 - /proc
sysfs 0 0 0 - /sys
procbususb 0 0 0 - /proc/bus/usb
udev 10M 632K 9,4M 7% /dev
tmpfs 126M 0 126M 0% /dev/shm
devpts 0 0 0 - /dev/pts
debian-test:/bin#

Fontos parancs még a ps, ami a futó folyamatokat listázza ki. Paraméterek nélkül csupán a felhasználók által kézzel indított folyamatokat írja ki, -ef paraméterrel pedig minden folyamatot. Ez utóbbit érdemes grep-pel szűrni, a jobb átláthatósághoz.

debian-test:/bin# ps
PID TTY TIME CMD
3215 pts/0 00:00:00 bash
3508 pts/0 00:00:00 ps
debian-test:/bin# ps -ef | grep bash
root 2876 2856 0 09:20 tty1 00:00:00 -bash
root 3080 3073 0 10:33 tty2 00:00:03 -bash
root 3215 3212 0 11:08 pts/0 00:00:00 -bash
root 3510 3215 0 12:25 pts/0 00:00:00 grep bash
debian-test:/bin#

Az elsőnél csak az általam futtatott ps és bash van a listában, a másodiknál pedig az összes felhasználó által indított bash, ez alapján 3 felhasználónál fut, ketten lokálisan (tty) és én remote (pts) vagyok bejelentkezve.

Az erőforrások vizsgálatára a top parancsot használjuk, kicsit hasonlít a Windows-os Task Manager-re. CTRL-C-vel lehet kilépni belőle.

top - 12:30:33 up 3:12, 3 users, load average: 0.00, 0.00, 0.00
Tasks: 51 total, 1 running, 50 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 0.0%sy, 0.0%ni, 99.3%id, 0.0%wa, 0.0%hi, 0.7%si, 0.0%st
Mem: 256400k total, 142648k used, 113752k free, 44556k buffers
Swap: 409616k total, 0k used, 409616k free, 58524k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 2100 688 588 S 0.0 0.3 0:03.26 init
2 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kthreadd
3 root RT -5 0 0 0 S 0.0 0.0 0:00.00 migration/0
4 root 15 -5 0 0 0 S 0.0 0.0 0:00.16 ksoftirqd/0
5 root RT -5 0 0 0 S 0.0 0.0 0:00.00 watchdog/0
6 root 15 -5 0 0 0 S 0.0 0.0 0:01.76 events/0
7 root 15 -5 0 0 0 S 0.0 0.0 0:00.02 khelper
39 root 15 -5 0 0 0 S 0.0 0.0 0:00.18 kblockd/0
41 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kacpid
42 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kacpi_notify
173 root 15 -5 0 0 0 S 0.0 0.0 0:00.04 kseriod
206 root 20 0 0 0 0 S 0.0 0.0 0:00.00 pdflush
207 root 20 0 0 0 0 S 0.0 0.0 0:00.22 pdflush
208 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kswapd0
209 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 aio/0
755 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 ata/0
756 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 ata_aux
769 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 ksuspend_usbd
770 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 khubd
901 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 scsi_eh_0
1055 root 15 -5 0 0 0 S 0.0 0.0 0:00.84 kjournald
1131 root 16 -4 2288 780 488 S 0.0 0.3 0:01.00 udevd
1655 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kgameportd
1730 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kpsmoused
2026 daemon 20 0 1892 508 416 S 0.0 0.2 0:00.00 portmap
2037 statd 20 0 1956 720 620 S 0.0 0.3 0:00.34 rpc.statd
2192 root 18 -2 2180 608 484 S 0.0 0.2 0:00.02 dhclient3
2266 root 20 0 27536 1532 932 S 0.0 0.6 0:01.24 rsyslogd
2277 root 20 0 1764 584 496 S 0.0 0.2 0:00.16 acpid
2292 root 20 0 5416 1024 668 S 0.0 0.4 0:00.14 sshd
2335 root 20 0 2832 1320 1088 S 0.0 0.5 0:00.02 mysqld_safe
2374 mysql 20 0 124m 16m 4768 S 0.0 6.5 0:05.82 mysqld
2375 root 20 0 1748 540 464 S 0.0 0.2 0:00.00 logger
2730 Debian-e 20 0 6276 932 616 S 0.0 0.4 0:00.00 exim4
2748 daemon 20 0 2048 436 316 S 0.0 0.2 0:00.00 atd
2768 root 20 0 3468 988 808 S 0.0 0.4 0:00.10 cron
2782 root 20 0 13248 2752 1336 S 0.0 1.1 0:00.96 apache2

Arról, hogy milyen processzorunk van, a cpuinfo, a memóriáról pedig a meminfo ad tájékoztatást. Ezek nem parancsok, hanem szövegesen értelmezhető file-ok, amik a /proc könyvtárban van, ebben a könyvtárban más rendszerinformáció is található, például a mdstat, ami a raid állapotát mutatja. Megtekintésükhöz a cat-ot használjuk:

debian-test:~# cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 13
model name : Intel(R) Pentium(R) M processor 1.73GHz
stepping : 8
cpu MHz : 1728.922
cache size : 2048 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pat clflush dts acpi mmx fxsr sse sse2 ss nx up pebs bts
bogomips : 3474.17
clflush size : 64
power management:

debian-test:~# cat /proc/meminfo
MemTotal: 256400 kB
MemFree: 113828 kB
Buffers: 44556 kB
Cached: 58528 kB
SwapCached: 0 kB
Active: 82896 kB
Inactive: 39964 kB
HighTotal: 0 kB
HighFree: 0 kB
LowTotal: 256400 kB
LowFree: 113828 kB
SwapTotal: 409616 kB
SwapFree: 409616 kB
Dirty: 0 kB
Writeback: 0 kB
AnonPages: 19804 kB
Mapped: 9272 kB
Slab: 14596 kB
SReclaimable: 11376 kB
SUnreclaim: 3220 kB
PageTables: 772 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 537816 kB
Committed_AS: 608660 kB
VmallocTotal: 770040 kB
VmallocUsed: 2600 kB
VmallocChunk: 767020 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 4096 kB
debian-test:~#

Jogosultságok kezelésére a chmod és a chown parancsok szolgálnak, az előbbi megváltoztatja a file hozzáférhetőségét, a második a tulajdonosát.

debian-test:~/test# ls -lrt
Összesen 8
-rwxr-xr-x 1 root root 2021 jan 13 16.10 a.sh~
-rwxrwxrwx 1 root root 2025 jan 13 16.10 a.sh
debian-test:~/test# chmod 777 a.sh~
debian-test:~/test# ls -lrt
Összesen 8
-rwxrwxrwx 1 root root 2021 jan 13 16.10 a.sh~
-rwxrwxrwx 1 root root 2025 jan 13 16.10 a.sh
debian-test:~/test# chown ivanchen a.sh~
debian-test:~/test# ls -lrt
Összesen 8
-rwxrwxrwx 1 ivanchen root 2021 jan 13 16.10 a.sh~
-rwxrwxrwx 1 root root 2025 jan 13 16.10 a.sh
debian-test:~/test#

Most már rendelkezünk minimálisan elegendő tudással a további szolgáltatások telepítéséhez. Talán még egy dolog lehet így első körben említésre méltó, de már inkább esztétikai kérdés, mint sem ténylegesen fontos dolog. Bejelentkezésnél megjelenik egy csúnya kiírás, ami mindenféle infókat ad a szerverünkről. Ez két részből adódik össze, az első, ami lefut, és kiírja a szerver paramétereit, az az /etc/issue illetve /etc/issue.net fileban található, attól függően, hogy lokálisan, vagy távoli kapcsolattal csatlakozunk. A másik egy leírás a felhasználási feltételekről, és hogy semmilyen garanciát nem vállalnak a szoftverért. Ez utóbbi az /etc/motd fileban található, és mivel text alapú file, ezért szövegszerkesztőben egyszerűen módosítható.

Azóta történt

Előzmények

Hirdetés

Copyright © 2000-2024 PROHARDVER Informatikai Kft.