Tartalomjegyzék
Rendszergazdai parancsok
- Szerző: Sallai András
- Copyright © 2011, Sallai András
- Szerkesztve: 2011, 2014, 2015, 2016
- Licenc: CC BY-SA 4.0
- Web: https://szit.hu
Bevezetés
Olyan parancsok kerültek ide, amelyek nem lettek besorolva egyik témakörbe sem.
shutdown
Leállítás
halt
Ha a halt leállítja a gépet, de nem kapcsolja azt ki, használjuk a „-p” kapcsolót.
halt -p
Ehhez minimum ATX-es ház és APM kerneltámogatás kell a kernelben.
Újraindítás
reboot
Processzor szóhossza
Lekérdezés:
getconf LONG_BIT
runlevel
Az aktuális futásiszint megjelenítése.
ulimit
Felhasználói korlátok
A felhasználók erőforrásokhoz való hozzáférésének szabályozása. A felhasználók csak lekérdezésre tudják használni.
Szintaktika
ulimit [-acdfHlmnpsStuv] [limit]
Kapcsolók:
-S | Soft limit cseréje és lekérdezése erőforrásoknál |
-H | Hard limit cseréje és lekérdezése erőforrásoknál |
-a | Az összes, aktuális limit lekérdezése |
-c | A core fájlok maximális mérete |
-d | Egy folyamat adatszegmensben elfoglalt maximális mérete |
-f | A shellben létrehozott fájlok maximális mérete |
-l | A memóriában zárolható maximális méret |
-m | A memóriában egy rezidens folyamat maximális mérete |
-n | A maximálisan nyitva-tartható fájlleírók száma |
-p | A pipe buffer mérete |
-s | A maximális veremméret |
-t | A maximális CPU idő másodpercben |
-u | Egy felhasználó által indítható folyamatok száma (beleértve a szálakat is) |
-v | A folyamatok számára hozzáférhető virtuális memória |
Például az összes beállítás lekérdezése:
ulimit -a
A felhasználók által futtatható folyamatok és szállak száma:
ulimit -u
A rendszergazda a következő fájlban állíthatja be a határokat:
/etc/security/limits.conf
A fájlban egy sorban négy oszlopból áll egy beállítás. Először meg kell mondjuk kinek fogjuk beállítani (felhasználók, csoportok). Ez után megadjuk milyen típusú lesz. Lehet hard, soft vagy semmi. A harmadik oszlopban adjuk meg mit szeretnénk beállítani. Az utolsóban pedig milyen értékre állítjuk be. Az első oszlop tartalmazhat „*” karaktert is, amely az összes felhasználót jelenti.
* hard nproc 5
Próbáljuk meg például a fenti beállításokkal az összes felhasználónak 5 indítható folyamat beállítását. Ha meg van, lépjünk be egyik felhasználó nevében, majd próbáljunk meg több folyamatot indítani mint a limitben beállított öt.
A következő üzenetet kapjuk:
-bash: fork: retry: Erőforrás átmenetileg nem érhető el
amit ötször megismétel. A beállítások mindig csak újrabelépés után lesznek érvényesek.
A rendszerszintű beállításokat itt is elvégezhetjük.
/etc/profile
A felhasználók is tehetnek bejegyzést a .bashrc fájlba. A rendszerbeállításokat viszont nem írhatják felül.
Érdemes például a virtuális memória méretét korlátozni. Így az olyan programok amelyek fogyasztják a memóriát nem okozzák majd annak belassulását is. Állítsuk be például 512 MiB-ot:
ulimit -Sv 524288
Próbáld ki a következő programmal:
- eszik.c
#include <stdio.h> #include <stdlib.h> main() { void *ptr; long meret = 1048576; while(1) { ptr = malloc(meret); if(ptr == NULL) { printf("Nincs több lefoglalható memória!\n"); break; } else { ptr = realloc(ptr, meret + meret ); } usleep(10000); } free(ptr); printf("Vége\n"); return 0; }
Fordítás:
gcc -o main main.c
Figyeljük a „top” nevű programmal a memória fogyását.
Modulkezelés
Betölthető modulok listája:
modprobe -l
Betöltött modulok listája:
lsmod
Egy modul betöltése
modprobe modulnev
Egy eszköz milyen modulhoz tartozik? Legyen egy eth0 eszköz, ekkor:
dmesg | grep eth0
[ 1.861224] forcedeth 0000:00:05.0: ifname eth0, PHY OUI 0x3f1 @ 1, addr 00:50:8d:7c:ab:04
Ebből kiderül, hogy a forcedeth modult használja az eth0.
Modul újraindulás után ne töltődjön be:
echo "blacklist forcedeth" >> /etc/modprobe.d/blacklist.conf
Démonok kezelése
/etc/init.d
A démonok indítására, leállítására, újraindítására használható parancs.
Például adott egy postfix levelezőszerver, akkor a következő módon állíthatom le:
/etc/init.d/postfix stop
invoke-rc.d
A démonok indítására, leállítására, újraindítására használható parancs.
Például adott egy postfix levelezőszerver, akkor a következő módon állíthatom le:
invoke-rc.d postfix stop
service
A démonok indítására, leállítására, újraindítására használható parancs.
Például adott egy postfix levelezőszerver, akkor a következő módon állíthatom le:
service postfix stop
Eszközfájlok létrehozása
Az eszközfájlok lehetnek karakteres, blokk és FIFO típusúak. Az mknod paranccsal hozhatjuk őket létre.
mknod -m 666 /dev/zero c 1 5
mknod -m 644 /dev/random c 1 8
mknod -m 666 /dev/null c 1 3
Soros port beállítása:
mknod /dev/ttyS0 c 4 64 chmod 0644 /dev/ttyS0 chown root.dialout /dev/ttyS0 ls -l /dev/ttyS0 crw-rw---- 1 root dialout 4, 64 2012 márc 4 /dev/ttyS0
Dátum, idő beállítása
date --set 1998-11-02 date --set 21:08:0
Időzóna
cat /etc/timezone Europe/Budapest
Az időzónát be kell állítani, mert a Unix típusú számítógépek Universal Time (UTC) szerint szoktak járni, amelyből ki kell számítania a helyi időt.
Az UTC, másként Greenwichi középidő (GMT), mert a meridián 0 fokán van Greenwichnél, amely London része (Anglia).
Beállítása a tzconfig paranccsal lehetséges:
tzconfig
Több információért lásd a tzconfig(8) kézikönyvet.
$ date Sun Nov 1 19:49:38 EET 1998 $ export TZ=PST $ date Sun Nov 1 17:49:59 PST 1998
Esetleg:
dpkg-reconfigure tzdata
Mikor volt nyári időszámítás:
zdump -c 2012 -v Europe/Budapest | less
Hardveróra
A hardverórát a hwclock utasítással tudjuk beállítani.
# date Sun Nov 1 18:56:50 EET 1998 # hwclock --systohc --utc
Több információért lásd a hwclock(8) kézikönyvet.
timedatectl
A timedatectl a systemd csomaggal kerül telepítésre.
A parancs használható önállóan:
timedatectl
Ekkor kiírja az dátumhoz és időhöz tartozó beállításokat.
$ timedatectl Local time: h 2020-02-24 12:32:25 CET Universal time: h 2020-02-24 11:32:25 UTC RTC time: h 2020-02-24 12:32:25 Time zone: Europe/Budapest (CET, +0100) Network time on: yes NTP synchronized: no RTC in local TZ: yes Warning: The system is configured to read the RTC time in the local time zone. This mode can not be fully supported. It will create various problems with time zone changes and daylight saving time adjustments. The RTC time is never updated, it relies on external facilities to maintain it. If at all possible, use RTC in UTC by calling 'timedatectl set-local-rtc 0'.
Ha a Network time on: yes értékre van állítva, a date paranccsal az idő nem változtatható meg. Beállítás:
timedatectl set-ntp no
Az idő szinkronizálása NTP protokollon
rdate hostnev.domain.and
Beállítás rendszerindításnál
Készítsünk egy fájlt: <code bash /etc/init.d/rdate> #! /bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin HOST=iskolazo
# Set operating system time from other host in LAN. if [ -x /usr/sbin/rdate ] then
/usr/sbin/rdate $HOST
fi chmod a+rx /etc/init.d/rdate
Készítsünk egy szimbolikus linket a következő könyvtárba:
/etc/rc2.d
Lépjünk be:
cd /etc/rc2.d ln -s ../init.d/rdate S19rdate
Indítsuk újra a renszert:
reboot
Esetleg:
apt-get install ntpdate
Duplikátumok kezelése
A felhasználók szeretik a megosztásokat és saját könyvtáraikat redundanciában tartani. Duplikált fájlokat törölhetjük a fdupes paranccsal.
Telepítés:
apt-get install fdupes
Használat:
fdupes könyvtárnév
Segítség:
man fdupes
A hardver lekérdezése
Rendszergazdaként futtassuk a következő parancsot:
dmidecode
A „-t” kapcsolóval szabályozhatjuk mire vagyunk kíváncsiak.
A „-t” után a következők egyikét kell megadni:
- bios
- system
- baseboard
- chassis
- processor
- memory
- cache
- connector
- slot
Használhatjuk az lshw parancsot is. Például a memória lekérdezése:
lshw -class memory
lshw -class disk -class storage
A hardverek:
lshw -short
Irodalom
Linkek
- http://tldp.fsf.hu/HOWTO/sag-hu/ (Régi, de azért használható)