Uživatelské nástroje

Nástroje pro tento web


system

Systém


SYSTÉM
uname (-s) vypíše typ OS, -r verzi jádra, -v datum vytvoření jádra, -p architekturu procesoru, -n síťové jméno počítače (nodename), -a všechny informace
lsb_release vypíše LSB (Linux Standard Base) verzi
lsb_release -d / cat /etc/redhat-release vypíše distribuci linuxu a její verzi
dmidecode vypíše informace o použitém hardwaru a biosu, -s <klicove_slovo> jen informace o konkrétní položce ze seznamu dostupných klíčových slov
# dmidecode -s system-uuid
(vypíše ID systému)
# dmidecode -s system-product-name | egrep -i 'virtual|vm|bochs'
(vypíše, zda jde o virtuální server)
lscpu vypíše informace o procesoru
cat /proc/cpuinfo vypíše podrobné informace o jednotlivých jádrech procesoru
free zobrazí celkové množství volné a použité fyzické paměti a swapu v systému, stejně jako vyrovnávací paměti používané jádrem v kB (údaje z /proc/meminfo), -m v MB, -t souhrn
nmon zobrazí podrobné statistické informace o CPU, paměti, síti, discích, jádru, souborových systémech, NFS, a hlavních procesech (výpis se mění podle aktuálního stavu)
ulimit vypíše či nastaví daný limit pro užívání zdrojů systému (implicitně použije volbu „-f“), -a vypíše všechny nastavené limity, -H nastaví „tvrdý“ limit, -S nastaví „měkký“ limit, -f <limit> max. velikost vytvářeného souboru v MB, -n <limit> max. počet otevřených souborů, -t <limit> max. čas procesoru v sekundách, -u <limit> max. počet procesů na jednoho uživatele; (trvalé nastavení se provede v /etc/security/limits.conf)
chroot <korenovy_adresar> změní kořen souborového systému na nový, daný parametrem, a spustí nový shell (vhodné při práci v záchranném režimu z externího média)
# chroot /mnt/sysimage
(připojí se přímo na pevný disk s původní instalací, odkud je možné opravit poškozený systém)
setup spustí nástroj pro konfiguraci systému
cal / cal <MM> <RRRR> zobrazí kalendář (aktuální měsíc) / daný měsíc v roce, -m týden začíná pondělím, -y celý rok
$ cal 8 2005
date / date <MMDDhhmmRR>

date +<format>



date -d @<pocet_sekund>
vypíše/nastaví aktuální datum a čas systému
# date 0321120098
vypíše datum v daném formátu, např. %H zobrazí hodinu ve dvojciferném 24hodinovém formátu, %M minutu ve dvojciferném formátu, %d den v měsíci ve dvojciferném formátu, %m měsíc ve dvojciferném formátu, %Y rok ve čtyřciferném formátu
$ date +%H:%M_%d.%m_%Y
převede čas uvedený v sekundách od 1. 1. 1970 do čitelného formátu
$ date -d @123456
ntpdate <server> nastaví datum a čas systému podle NTP serveru; (trvalé nastavení se provede v /etc/ntp.conf)
# ntpdate tak.cesnet.cz
hwclock -r vypíše hardwarové datum a čas, -s nastaví systémový čas podle hardwarového, -w nastaví hardwarový čas podle systémového, --set –date=<RRMMDD hh:mm:ss> nastaví hardwarový čas na danou hodnotu
# hwclock --set --date='780321 22:06:56'
uptime vypíše systémový čas, čas od posledního spuštění počítače, počet přihlášených uživatelů a průměrné zatížení systému za posledních 1, 5 a 15 minut
who -b vypíše čas posledního spuštění systému
dmesg vypíše hlášení jádra systému (vhodné např. ke zjištění, zda systém rozpoznal nové zařízení; údaje z /var/log/dmesg)
$ dmesg | grep usb
sysctl <parametr> vypíše daný parametr jádra a jeho aktuální hodnotu, -a vypíše všechny parametry jádra a jejich aktuální hodnoty, -w <parametr>=<hodnota> nastaví parametry jádra za běhu; (dostupné parametry se nachází v /proc/sys, trvalé nastavení se provede v /etc/sysctl.conf), -p synchronizuje údaje z /etc/sysctl.conf s jádrem
# sysctl -w net.ipv4.icmp_echo_ignore_all=1
(ignoruje požadavek na ping)
# sysctl -w net.ipv4.ip_forward=1
(povolí IP forwarding)
# sysctl -a | egrep "net.ipv4.(tcp_syncookies|icmp_echo_ignore_broadcasts|conf.all.accept_redirects)"
cat /etc/grub.conf (lilo.conf) vypíše nastavení zaváděcího (bootovacího) programu pro spuštění OS
cat /etc/default/grub
(platí pro Red Hat Enterprise Linux 7 – GRUB 2)
vypíše nastavení zaváděcího (bootovacího) programu pro spuštění OS, související skripty se nachází v /etc/grub.d
grub-install <zarizeni> instaluje grub na dané zařízení
# grub-install /dev/sda
mkinitrd <obraz_RAM_disku> <verze_jadra> vytvoří prvotní obraz RAM disku obsahující základní moduly potřebné k připojení souborového systému „/“ (teprve potom je možné zavést moduly obsažené v /lib/modules/<verze_jadra>), --with=<modul> přidá daný modul do obrazu RAM disku, -v podrobný výpis
# mkinitrd /boot/initrd-$(uname -r).img $(uname -r)
(obnoví obraz RAM disku; nutné např. pokud byl SS ext2 změněn na ext3)
# mkinitrd --with=raid1 /boot/initrd-raid1-$(uname -r).img $(uname -r)
(nový obraz RAM disku s daným modulem je třeba doplnit do /boot/grub/grub.conf jako nový odstavec – tzn. zkopírovat předchozí část od řádku „title...“ po „initrd...“ a v posledním řádku upravit nový název obrazu; při startu systému je pak možné zvolit, aby naběhl s tímto obrazem)
lsmod vypíše aktuální moduly (ovladače) zavedené v jádru (údaje z /proc/modules)
modinfo <modul> vypíše informace o daném modulu, -d jen stručný popis
insmod <modul> přidá modul do jádra, pokud nevyžaduje další závislosti
rmmod <modul> odstraní modul z jádra, pokud nevyžaduje další závislosti, -v podrobný výpis
depmod (-a) / depmod <modul> vytvoří seznam závislostí všech/daných modulů v /lib/modules/<verze_jadra>/modules.dep
modprobe <modul> přidá modul do jádra včetně jeho závislostí, -r odstraní modul, -v podrobný výpis
# modprobe usbnet
runlevel / who -r vypíše předchozí a aktuální úroveň běhu systému / vypíše aktuální úroveň běhu systému a čas jejího spuštění
systemctl list-units --type target
(platí pro Red Hat Enterprise Linux 7)
vypíše aktuální úroveň běhu systému (aktivní „target units“)
init / telinit <runlevel> změní úroveň běhu systému, 0 vypnutí systému, 1 jednouživatelský režim bez sítě,
2 víceuživatelský režim bez sítě, 3 víceuživatelský režim s připojením k síti, 4 nevyužito, 5 úroveň 3 + GUI, 6 restart systému; konfiguračním souborem procesu init je /etc/inittab, dojde-li k úpravě souboru, jeho opětovné načtení vyvolá příkaz „init q“
# init 5
systemctl isolate <runlevel>.target
(platí pro Red Hat Enterprise Linux 7)
změní úroveň běhu systému (aktuální „target unit“), runlevel0.target / poweroff.target vypnutí systému, runlevel1.target / rescue.target jednouživatelský režim bez sítě, runlevel2.target / multi-user.target víceuživatelský režim s připojením k síti, runlevel3.target / multi-user.target víceuživatelský režim s připojením k síti, runlevel4.target / multi-user.target víceuživatelský režim s připojením k síti, runlevel5.target / graphical.target víceuživatelský režim s připojením k síti + GUI, runlevel6.target / reboot.target restart systému
# systemctl isolate multi-user.target
# systemctl isolate runlevel5.target
systemctl rescue
(platí pro Red Hat Enterprise Linux 7)
změní úroveň běhu systému na jednouživatelský režim bez sítě, připojí všechny lokální souborové systémy a spustí důležité systémové služby
systemctl emergency
(platí pro Red Hat Enterprise Linux 7)
změní úroveň běhu systému na jednouživatelský režim bez sítě, připojí pouze kořenový souborový systém ke čtení a spustí nejdůležitější systémové služby (používá se v případech, kdy nelze spustit rescue režim)
systemctl get-default
(platí pro Red Hat Enterprise Linux 7)
vypíše výchozí úroveň běhu systému (výchozí „target unit“)
systemctl set-default <runlevel>.target
(platí pro Red Hat Enterprise Linux 7)
změní výchozí úroveň běhu systému (výchozí „target unit“)
# systemctl set-default graphical.target
reboot / init 6 ukončí všechny procesy, uloží nezapsaná data na disk a restartuje OS
systemctl reboot
(platí pro Red Hat Enterprise Linux 7)
ukončí všechny procesy, uloží nezapsaná data na disk a restartuje OS
halt / init 0 ukončí všechny procesy, uloží nezapsaná data na disk a zastaví procesor (pohotovostní režim)
systemctl halt
(platí pro Red Hat Enterprise Linux 7)
ukončí všechny procesy, uloží nezapsaná data na disk a zastaví procesor (pohotovostní režim)
poweroff ukončí všechny procesy, uloží nezapsaná data na disk a vypne OS
systemctl poweroff
(platí pro Red Hat Enterprise Linux 7)
ukončí všechny procesy, uloží nezapsaná data na disk a vypne OS
shutdown ukončí všechny procesy, uloží nezapsaná data na disk a zastaví procesor, -h <cas> vypne OS, -r <cas> restartuje OS, -c zruší běžící či načasovaný shutdown, -k <cas> falešný shutdown, pošle pouze varování uživatelům a znemožní nová přihlášení do systému
# shutdown -h now / shutdown -h 22:00
(vypne ihned / v daný čas)
# shutdown -r +30 "quick reboot"
(restartuje za 30 min. + upozornění)
startx spustí systém X window
xterm spustí terminál v systému X window, -e <prikaz> určí příkaz, který se má v daném terminálu spustit
# xterm -e "tail -f /var/log/secure" &
tty vypíše jméno terminálu přihlášeného uživatele
set vypíše všechny aktuální proměnné (globální + lokální) a funkce, -x pokud se vyskytuje na začátku skriptu, spustí ho v debug režimu (totéž jako $ bash -x skript.sh )
set -o
set -/+o <volba>
vypíše aktuální nastavení voleb shellu
změní nastavení voleb shellu, „-“ volbu nastaví, „+“ zruší
$ set -o vi
(nastaví shellu prostředí editoru „vi“)
unset <promenna> odstraní danou proměnnou, -f <funkce> definici funkce
$ unset x
printenv / printenv <promenna> vypíše všechny/dané globální proměnné
export
export <promenna(=hodnota)>
vypíše seznam všech exportovaných proměnných
exportuje lokální proměnnou tak, aby platila i pro vnořené shelly v rámci stejného sezení; lokální proměnná se trvale nastaví její definicí a exportem v ~/.bash_profile, globální proměnná v /etc/profile
$ export x / export x=y
echo (<text> / $<promenna>) zobrazí uvedený text či hodnotu proměnné, bez parametru zobrazí prázdný řádek, -n potlačí výstup nového řádku za posledním argumentem (využití ve skriptech)
$ echo -n 'Zadejte pozadovanou akci: '
eval <argument> sloučí dané argumenty a spustí je jako příkaz shellu
$ user=david; eval cd ~$user
xargs (<prikaz>) čte a poté rozdělí větší množství argumentů ze STDIN na menší části tak, aby je bylo možné přiřadit následujícímu příkazu, jenž bude vykonán (příkazům totiž nelze přiřadit neomezený počet argumentů), -0 mezera, apostrof, uvozovky či obrácené lomítko ve jméně souboru nemají řídící význam (tuto volbu však musí podporovat i příkaz poskytující vstup pro „xargs“), -t příkaz se před provedením vypíše na STDERR
# find . -name core -print0 | xargs -0 -t rm
# find / -user tom | xargs -t rm -Rf
$ find . -type d | xargs chmod 750
$ find . -atime -1 -type f | xargs ls -lutr | tail -1
expr <vyraz> provede vyhodnocení matematických a jiných výrazů
$ expr 7 + 3
$ expr "(" 6 - 3 ")" "*" 10
$ expr length ABCD
seq <specifikace> vypíše posloupnost čísel (na každý řádek po jednom) definovaných horní a případně i dolní mezí či inkrementem, -w zarovná řádek dosazením nuly před 1ciferné číslo, -s <retezec> vloží mezi číslice místo nového řádku daný řetězec
$ seq 2 5
(definovaná dolní i horní mez)
$ seq 1 .2 3
(definovaná dolní i horní mez včetně inkrementu)
$ seq -w 15
(číslice 01 – 15)
$ seq -s ':' 10
(číslice 1–10 oddělené znakem „:“)
$ for i in $(seq 1 100); do expr $i "*" $i; done
(vypíše druhou mocninu čísel 1–100, každou na zvláštní řádek)
yes (<retezec>) opakovaně vypisuje daný řetězec (na každý řádek po jednom), není-li uveden, zobrazí „y“
time <prikaz> měří čas vykonání daného příkazu
$ time wget google.com
alias
alias <vlastni_prikaz>=<prikaz>
vypíše všechny stávající aliasy
vytvoří alias pro daný příkaz (trvale v ~/.bashrc)
$ alias nopaste='curl -F file=@- nopaste.com/a'
unalias <vlastni_prikaz> zruší daný alias, -a odstraní všechny aliasy
script <soubor> zapíše vše, co se od spuštění programu zobrazí na STDOUT do daného souboru, -a přidá výstup na konec existujícího souboru, -c <prikaz> zapíše jen výstup daného příkazu, ctrl+d ukončí program
history <n> vypíše historii posledních n příkazů, -c smaže historii
fc (<n> / <n m>) edituje poslední (konkrétní) příkaz(y) implicitním editorem, -e <editor> zvolí editor, -l vypíše očíslovaný seznam posledně zadaných (uvedených) příkazů, -r vypíše seznam v opačném pořadí, -s provede poslední (daný) příkaz z historie
$ fc -l -20 | grep cat
(vypíše 20 posledních příkazů obsahujících „cat“)
$ fc -l 210 250
(vypíše seznam příkazů v daném rozpětí)
$ fc -s / fc !!
(provede předchozí příkaz)
$ fc -s 560 / fc !560
(provede daný příkaz)
clear smaže obsah obrazovky terminálu
reset smaže obsah terminálu a nastaví výchozí hodnoty
exit / ctrl+d ukončí shell (odhlásí uživatele)
logout odhlásí uživatele z přihlašovacího shellu
setenforce <rezim> nastaví režim SELinuxu, je-li povolen (0 = tolerantní (permissive) – bezpečnostní politika není aplikována, pouze se případné varovné zprávy zapisují do /var/log/messages, 1 = vynucující (enforcing) – bezpečnostní politika definující přístup k souborům je uplatněna; trvalé nastavení se provede v /etc/selinux/config)
getenforce vypíše aktuální režim SELinuxu ("enforcing", "permissive", či "disabled")
sestatus vypíše aktuální stav SELinuxu, jeho režim a použitou politiku, -v podrobný výpis na základě údajů v /etc/sestatus.conf
chcon <kontext> <soubor> změní bezpečnostní kontext souboru v rámci SELinuxu (bezpečnostní kontext se skládá z 5 částí oddělených dvojtečkou – uživatel:role:typ:citlivost:kategorie, přičemž poslední 2 nemusí být v systému definovány; při kopírování se kontext souboru změní podle nového, nadřazeného adresáře, při přesunu se původní kontext souboru zachová), -u <uzivatel> pro daného uživatele (používá se "root" pro roota, "user_u" pro ostatní uživatele a "system_u" pro procesy), -r <role> pro danou roli (definuje účel daného souboru, procesu nebo uživatele; používá se "object_r" pro soubory a "system_r" pro procesy a uživatele), -t <typ> pro daný typ (definuje, které typy procesů mají přístup ke konkrétním typům souborů; "unconfined_t" znamená, že nespadá pod politiku SELinuxu), --reference <zdrojovy_soubor> nastaví souboru bezpečnostní kontext podle zdrojového souboru, -R rekurzivně, -v podrobný výpis
# chcon --reference /etc/hosts.allow /etc/hosts.deny
restorecon <soubor> nastaví souboru původní bezpečnostní kontext v rámci SELinuxu, -R rekurzivně, -v podrobný výpis
# restorecon /root/*
Poslední úprava: 2019/02/12 19:53 autor: Miroslav Bernát

Nástroje pro stránku

počet návštěv: