Linux nabízí nespočet příkazů a pomůcek, které vám pomohou provádět úkoly správy systému rychle a efektivně.
Vaše práce jako správce systému zahrnuje instalaci a spouštění softwaru, řízení přístupu, monitorování, zajišťování dostupnosti, zálohování, obnovování záloh a samozřejmě hašení požárů. 😜
V tomto článku se podíváme na některé příkazy, které často používají správci systému Linux při své každodenní práci.
Table of Contents
nejmenovat
Pro tisk systémových informací použijte příkaz uname s parametrem -a. Tento příkaz vám zobrazí název jádra, verzi jádra, verzi jádra, název hostitele, typ procesoru a informace o vaší hardwarové platformě.
[email protected]:~$ uname -a Linux ubuntu18 5.3.0-1028-azure #29~18.04.1-Ubuntu SMP Fri Jun 5 14:32:34 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Co to znamená:
kernel name:Linux hostname: ubuntu18 kernel release: 5.3.0-1028-azure kernel version: #29~18.04.1-Ubuntu SMP Fri Jun 5 14:32:34 UTC 2020 machine hardware name: x86_64 processor: x86_64 hardware-platform: x86_64 operating system: GNU/Linux
df
Použijte příkaz df k ověření velikosti souborového systému a dostupného prostoru. Tento příkaz sám o sobě zobrazuje výstup v 1K blocích.
[email protected]:~$ df Filesystem 1K-blocks Used Available Use% Mounted on udev 437208 0 437208 0% /dev tmpfs 91100 692 90408 1% /run /dev/sda1 30309264 2383952 27908928 8% / ....
Volba -h zobrazuje výstup ve formátu čitelném pro člověka, to znamená v MB a GB.
[email protected]:~$ df -h Filesystem Size Used Avail Use% Mounted on udev 427M 0 427M 0% /dev tmpfs 89M 692K 89M 1% /run /dev/sda1 29G 2.3G 27G 8% / tmpfs 445M 0 445M 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 445M 0 445M 0% /sys/fs/cgroup /dev/sda15 105M 3.6M 101M 4% /boot/efi /dev/sdb1 3.9G 16M 3.7G 1% /mnt tmpfs 89M 0 89M 0% /run/user/1001
Chcete-li ignorovat jakýkoli souborový systém, například tmpfs, což je pro čistší výstup, použijte parametr -x
[email protected]:~$ df -h -x tmpfs Filesystem Size Used Avail Use% Mounted on udev 427M 0 427M 0% /dev /dev/sda1 29G 2.3G 27G 8% / /dev/sda15 105M 3.6M 101M 4% /boot/efi /dev/sdb1 3.9G 16M 3.7G 1% /mnt
Chcete-li vypsat pouze určitý typ souborového systému, použijte parametr -t. například pro zobrazení pouze souborového systému ext4:
[email protected]:~$ df -h -t ext4 Filesystem Size Used Avail Use% Mounted on /dev/sda1 29G 2.3G 27G 8% / /dev/sdb1 3.9G 16M 3.7G 1% /mnt
Použitím příznaku celkem přidáte řádek zobrazující celkové součty:
[email protected]:~$ df -h -t ext4 --total Filesystem Size Used Avail Use% Mounted on /dev/sda1 29G 2.3G 27G 8% / /dev/sdb1 3.9G 16M 3.7G 1% /mnt <b>total 33G 2.3G 31G 8% -</b>
du
Chcete-li zkontrolovat využití místa na disku v adresáři, použijte příkaz du. Chcete-li například vidět využití místa na disku v adresáři /var/log. Pro formát čitelný člověkem použijte příznak -h.
[email protected]:~$ sudo du -h /var/log 24K /var/log/Microsoft/Azure/NetworkWatcherAgent/Logs 28K /var/log/Microsoft/Azure/NetworkWatcherAgent 32K /var/log/Microsoft/Azure 36K /var/log/Microsoft 60K /var/log/apt 4.0K /var/log/samba 177M /var/log/journal/0f4f926f583b4691af7de11025b19ff6 177M /var/log/journal ... 204M /var/log
Chcete-li zobrazit pouze celkové využití, použijte příznak -s (souhrn).
[email protected]:~$ sudo du -hs /var/log 204M /var/log
volný, uvolnit
Použijte příkaz free k zobrazení celkové, použité a volné systémové paměti. Pro formát čitelný člověkem použijte příznak -h.
[email protected]:~$ free -h total used free shared buff/cache available Mem: 889M 272M 100M 712K 517M 443M Swap: 0B 0B 0B
total - Total installed memory (memtotal + swaptotal) used - used memory free - unused memory (memfree + swapfree) buffers - memory used by kernel buffers cache - memory used by page caches buff/cache - sum of buffers and cache available - Estimated memory available for starting new applications, without swapping
ps
Použijte ps k zobrazení stavových informací o procesech běžících v systému. Chcete-li zobrazit všechny procesy vlastněné uživatelem ubuntu, použijte příznak -u s uživatelským jménem:
[email protected]:~$ ps -u ubuntu PID TTY TIME CMD 7804 ? 00:00:00 systemd 7805 ? 00:00:00 (sd-pam) 7940 ? 00:00:00 sshd 7941 pts/0 00:00:00 bash 8111 ? 00:00:00 sshd 8112 pts/1 00:00:00 bash 13868 ? 00:00:00 sshd 13869 pts/2 00:00:00 bash 13885 pts/0 00:00:00 man 13895 pts/0 00:00:00 pager 18111 pts/2 00:00:00 man 18121 pts/2 00:00:00 pager 18485 pts/1 00:00:00 ps
Chcete-li zobrazit všechny procesy, spusťte ps s příznakem aux:
[email protected]:~$ ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.7 160076 7020 ? Ss Jun29 0:34 /sbin/init root 2 0.0 0.0 0 0 ? S Jun29 0:00 [kthreadd] root 3 0.0 0.0 0 0 ? I< Jun29 0:00 [rcu_gp] root 4 0.0 0.0 0 0 ? I< Jun29 0:00 [rcu_par_gp] root 6 0.0 0.0 0 0 ? I< Jun29 0:00 [kworker/0:0H-kb] ....
kde
Nadpis
Význam
PID
Identifikační číslo procesu
%PROCESOR
Procento času procesoru, který proces využívá
%MEM
Procento využití paměti RAM
VSZ
Využití virtuální paměti v KB
RSS
Fyzická paměť, kterou proces používá, v KB
TTY
Terminál spojený s procesem
STAT
R – Spuštěné nebo připravené ke spuštění, S – Spící, I – Nečinnost, T – Zastaveno, Z – Zombie, D – Čekání na diskový I/O, X – Mrtvý, W – Vyměněno, N – Proces s nízkou prioritou, < – Proces s vysokou prioritou
horní
Zatímco příkaz ps zobrazuje v každém okamžiku snímek stavu procesů, top zobrazuje průběžně aktualizovaný (ve výchozím nastavení každé tři sekundy) seznam systémových procesů v pořadí podle aktivity procesu.
Horní výstup příkazu se skládá ze dvou hlavních částí: Souhrn systému nahoře a tabulka procesů seřazených podle aktivity CPU.
top - 14:25:32 up 44 days, 11:37, 1 user, load average: 0.00, 0.00, 0.00 Tasks: 114 total, 1 running, 59 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.3 us, 0.0 sy, 0.0 ni, 99.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 910992 total, 101208 free, 274712 used, 535072 buff/cache KiB Swap: 0 total, 0 free, 0 used. 458492 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 50497 ubuntu 20 0 44528 3944 3368 R 0.7 0.4 0:00.15 top 1 root 20 0 160076 7020 4400 S 0.0 0.8 0:34.85 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.08 kthreadd 3 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 rcu_gp 4 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 rcu_par_gp 6 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker/0:+ 9 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 mm_percpu_+
Některá pole v souhrnu systému jsou následující:
nahoru
Doba provozuschopnosti. Čas od posledního spuštění počítače.
zatížení průměr
Průměrná zátěž se týká počtu procesů, které čekají na spuštění, hodnota menší než 1,0 znamená, že stroj není zaneprázdněn. Jsou 3 hodnoty. První je průměr za posledních 60 sekund, druhý je průměr za posledních 5 minut a třetí ukazuje průměr za posledních 15 minut.
%Cpu(y)
Tento řádek popisuje činnosti CPU.
0,3 nás, uživatel
0,3 % CPU se používá pro uživatelské procesy.
0,0 sy, systém
Pro systémové procesy se používá 0,0 % CPU.
0,0 ni, pěkné
0,0 % CPU je využíváno procesy s nízkou prioritou (pěkné).
99,7 id, nečinný
99,7 % CPU je nečinných
0,0 wa, IO-čekejte
0,0 % CPU čeká na I/O
0,0 ahoj
čas strávený hardwarovými přerušeními
0,0 si
čas strávený softwarovými přerušeními
0,0 st
časový kámen z tohoto virtuálního počítače hypervizorem
Pole tabulky procesů jsou následující:
PID
Identifikační číslo procesu
UŽIVATEL
Vlastník procesu
PR
Přednost
NI
Pěkná hodnota
VIRT
Virtuální paměť použitá procesem (KB)
RES
Fyzická paměť používaná procesem
SHR
Sdílená paměť používaná procesem
S
Stav procesu. R – běžící, S – spící, I – nečinný, T – zastavený, Z – zombie, D – čekání na vstup/výstup disku, W- vyměněno, X – mrtvý
%PROCESOR
Proces CPU čas využívá v procentech
%MEM
Proces fyzické paměti se používá
ČAS[+]
Celkový čas CPU použitý procesem
PŘÍKAZ
Název programu
Zatímco top běží, můžete zadávat řadu příkazů. Stiskněte h nebo ? zobrazit příkazy, které lze spustit, když je spuštěn top. Stisknutím k ukončíte proces. Stisknutím q opustíte horní část.
kopat
dig je skvělý nástroj pro DNS dotazy. Používá se následovně:
dig <DNS server> <domain> <query-type>
kde
je název serveru DNS, na který se chcete dotazovat je název domény, na který se chcete dotazovat je název záznamu, který chcete znát – A, MX, NS SOA atd.
Chcete-li potlačit podrobný výstup, použijte příznak +krátký.
Chcete-li zobrazit záznam pro google.com, použijte:
[email protected]:~$ dig google.com +short 172.217.164.174
Chcete-li zobrazit záznamy MX pro google.com, použijte:
[email protected]:~$ dig google.com MX +short 50 alt4.aspmx.l.google.com. 10 aspmx.l.google.com. 20 alt1.aspmx.l.google.com. 40 alt3.aspmx.l.google.com. 30 alt2.aspmx.l.google.com.
Pokud se potřebujete dotazovat na záznamy DNS na internetu, můžete použít nástroj pro vyhledávání DNS.
kdo a w
který zobrazuje přihlášené uživatele.
[email protected]:~$ who ubuntu pts/0 2020-08-14 17:28 (183.83.211.129) ubuntu pts/1 2020-08-14 17:58 (183.83.211.129)
w zobrazuje aktuálně přihlášené uživatele a jejich procesy. V záhlaví je uveden aktuální čas, doba provozu systému, počet přihlášených uživatelů a průměrné zatížení systému.
[email protected]:~$ w 18:07:33 up 46 days, 15:19, 2 users, load average: 0.00, 0.00, 0.00 USER TTY FROM [email protected] IDLE JCPU PCPU WHAT ubuntu pts/0 183.83.211.129 17:28 2.00s 0.10s 0.00s w ubuntu pts/1 183.83.211.129 17:58 9:07 0.05s 0.01s vi
V další části jsou uvedena uživatelská jména, terminál a vzdálená IP adresa, ze které jsou přihlášeni, doba přihlášení, doba nečinnosti, JCPU, PCPU a program, na kterém jsou spuštěny. JCPU je čas používaný všemi procesy připojenými k tty, zatímco PCPU je čas používaný aktuálním procesem.
dehet
S GNU tar můžete archivovat více souborů do jednoho souboru.
Jako příklad vytvořte adresář myfiles a tři soubory a.txt, b.txt, c.txt v adresáři myfiles:
[email protected]:~$ mkdir myfiles ; touch myfiles/{a.txt,b.txt,c.txt}
Nyní vytvořte archiv s názvem allfiles.tar obsahující všechny soubory v adresáři myfiles:
[email protected]:~$ tar -cvf allfiles.tar myfiles myfiles/ myfiles/c.txt myfiles/a.txt myfiles/b.txt
Seznam všech souborů v aktuálním adresáři. Můžete vidět adresář myfiles a archiv allfiles.tar:
[email protected]:~$ ls allfiles.tar myfiles
Archiv můžete rozbalit s příznakem -x. Takže rozbalení allfiles.tar:
[email protected]:~$ tar -xvf allfiles.tar myfiles/ myfiles/c.txt myfiles/a.txt myfiles/b.txt
Tento archiv můžete také komprimovat pomocí parametru -z. To by vytvořilo archiv komprimovaný pomocí gzip.
[email protected]:~$ tar -zcvf allfiles.tar.gz myfiles myfiles/ myfiles/c.txt myfiles/a.txt myfiles/b.txt [email protected]:~$ ls allfiles.tar.gz myfiles
Chcete-li rozbalit komprimovaný archiv, použijte -z s parametrem -x.
[email protected]:~$ tar -zxvf allfiles.tar.gz myfiles/ myfiles/c.txt myfiles/a.txt myfiles/b.txt
grep
grep se používá k hledání vzoru v souboru nebo sadě souborů. Vytiskne všechny řádky odpovídající tomuto vzoru. Chcete-li například vyhledat řádek obsahující „ServerRoot“ v /etc/apache2/apache2.conf:
[email protected]:~$ grep ServerRoot /etc/apache2/apache2.conf # ServerRoot: The top of the directory tree under which the server's #ServerRoot "/etc/apache2"
Chcete-li hledat ve všech souborech v adresáři, použijte *. Chcete-li zahrnout vyhledávání do podadresářů, použijte příznak -r (rekurzivní). Chcete-li tedy vyhledat všechny řádky obsahující vzor „VirtualHost“ ve všech souborech v /etc/apache2:
[email protected]:~$ cd /etc/apache2 [email protected]:/etc/apache2$ grep -r VirtualHost * apache2.conf:# If you do not specify an ErrorLog directive within a <VirtualHost> apache2.conf:# logged here. If you *do* define an error logfile for a <VirtualHost> conf-available/localized-error-pages.conf:# even on a per-VirtualHost basis. If you include the Alias in the global server conf-available/other-vhosts-access-log.conf:# Define an access log for VirtualHosts that don't define their own logfile ports.conf:# have to change the VirtualHost statement in sites-available/000-default.conf:<VirtualHost *:80> ...
rsync
rsync je rychlý nástroj příkazového řádku pro synchronizaci souborů a adresářů mezi dvěma umístěními. Může být použit pro místní i vzdálené kopírování a je rychlý, protože odesílá pouze rozdíly mezi zdrojovými soubory a existujícími soubory v cíli.
Je široce používán pro zálohování a jako vylepšený příkaz pro kopírování pro každodenní použití.
Zde je příklad:
Chcete-li zkopírovat/rsyncovat všechny soubory z adresáře myfiles do adresáře záloh:
[email protected]:~$ rsync -avh myfiles/ /backups sending incremental file list ./ a.txt b.txt c.txt sent 218 bytes received 76 bytes 588.00 bytes/sec total size is 0 speedup is 0.00
Chcete-li rsyncovat všechny soubory z adresáře myfiles do adresáře záloh na vzdáleném hostiteli, zahrňte do názvu cíle remote_user @remote_host. Chcete-li tedy rsyncovat složku myfiles na vzdálený hostitel s IP 10.0.0.50:
[email protected]:~$ rsync -avh myfiles/ [email protected]:/home/vagrant [email protected]'s password: sending incremental file list ./ a.txt b.txt c.txt sent 230 bytes received 76 bytes 47.08 bytes/sec total size is 0 speedup is 0.00
ss
Příkaz ss se používá k výpisu statistik soketů, podobně jako starší nástroj netstat. Chcete-li zobrazit sokety TCP, použijte parametr -t.
[email protected]:~$ ss -t State Recv-Q Send-Q Local Address:Port Peer Address:Port ESTAB 0 0 10.0.0.4:53852 168.63.129.16:8037 ESTAB 0 0 10.0.0.4:ssh 183.83.211.129:64118 ESTAB 0 0 10.0.0.4:33256 169.254.169.254:http ESTAB 0 1080 10.0.0.4:ssh 222.186.30.35:11527 ESTAB 0 0 10.0.0.4:ssh 183.83.211.129:63049
Tím se nezobrazí sokety, které naslouchají. Chcete-li zahrnout naslouchající i nenaslouchající sokety, použijte příznaky -t a -a.
[email protected]:~$ ss -t -a State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 0.0.0.0:ssh 0.0.0.0:* LISTEN 0 80 127.0.0.1:mysql 0.0.0.0:* LISTEN 0 128 127.0.0.53%lo:domain 0.0.0.0:* ESTAB 0 0 10.0.0.4:53852 168.63.129.16:8037 ESTAB 0 0 10.0.0.4:ssh 183.83.211.129:64118 ESTAB 0 0 10.0.0.4:33256 169.254.169.254:http ESTAB 0 1080 10.0.0.4:ssh 222.186.30.35:11527 ESTAB 0 120 10.0.0.4:ssh 183.83.211.129:63049 LISTEN 0 128 [::]:ssh [::]:* LISTEN 0 128 *:http *:*
lokalizovat
Příkaz locate používá k vyhledávání souborů databázi a ve skutečnosti může být mnohem rychlejší než příkaz find. Velmi jednoduché použití, hledání souboru, řekněme, apache2.conf:
[email protected]:~$ locate apache2.conf /etc/apache2/apache2.conf /var/lib/dpkg/info/apache2.conffiles
Parametr -c můžete použít, pokud chcete pouze počet souborů odpovídajících vyhledávacímu vzoru.
[email protected]:~$ locate -c apache2.conf 2
Někdy může být nutné obnovit databázi používanou locate, což je mlocate. Pro aktualizaci databáze použijte příkaz updatedb. To by vyžadovalo oprávnění superuživatele.
[email protected]:~$ sudo updatedb
nalézt
Jeden z nejčastěji používaných příkazů v Linuxu. Použijte jej k hledání souborů na základě názvů souborů, oprávnění, ID uživatele, groupid, velikosti, typu souboru a dalších kritérií.
Chcete-li vyhledat soubor podle názvu v aktuálním adresáři, použijte příznak -name následovaný názvem souboru.
[email protected]:~$ find . -name a.txt ./myfiles/a.txt
Chcete-li vyhledat adresáře, použijte příznak -type d:
[email protected]:~$ find . -type d . ./.ssh ./myfiles ./.cache ./.gnupg ./.gnupg/private-keys-v1.d ./docker
Chcete-li vyhledávat soubory podle velikosti, řekněme soubory větší než 20 MB, použijte příznak -size:
[email protected]:~$ find . -size +20M ./docker/docker-ce-cli_5%3a19.03.12~3-0~ubuntu-bionic_amd64.deb ./docker/docker-ce_5%3a19.03.12~3-0~ubuntu-bionic_amd64.deb
systemctl
Nyní, když systemd nahradil proces SysV init ve většině distribucí Linuxu, použijte ke správě služeb a jednotek systemd příkaz systemctl.
Chcete-li spustit službu, například apache2:
[email protected]:~$ sudo systemctl start apache2.service
Příponu služby můžete ponechat.
Zastavení služby:
[email protected]:~$ sudo systemctl stop apache2
Chcete-li zobrazit stav služby, použijte příkaz systemctl status. Následující příklad ukazuje stav apache2, když je spuštěn:
[email protected]:~$ sudo systemctl status apache2 ● apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Drop-In: /lib/systemd/system/apache2.service.d └─apache2-systemd.conf Active: active (running) since Wed 2020-08-19 11:34:04 UTC; 2s ago Process: 25346 ExecStop=/usr/sbin/apachectl stop (code=exited, status=0/SUCCESS) Process: 18202 ExecReload=/usr/sbin/apachectl graceful (code=exited, status=0/SUCCESS) Process: 25536 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) Main PID: 25555 (apache2) Tasks: 55 (limit: 1024) CGroup: /system.slice/apache2.service ├─25555 /usr/sbin/apache2 -k start ├─25558 /usr/sbin/apache2 -k start └─25559 /usr/sbin/apache2 -k start Aug 19 11:34:04 ubuntu18 systemd[1]: Starting The Apache HTTP Server... Aug 19 11:34:04 ubuntu18 systemd[1]: Started The Apache HTTP Server.
příkaz ufw
UFW – nekomplikovaný firewall je snadno použitelný frontend pro iptables. Je k dispozici ve výchozím nastavení v distribucích založených na Ubuntu. Na CentOS můžete nainstalovat ufw z úložiště EPEL.
Chcete-li povolit ufw:
$ sudo ufw enable
Zkontrolujte stav brány firewall pomocí stavu ufw:
$ sudo ufw status Status: active
Výchozí zásady UFW povolují veškerý odchozí provoz a blokují veškerý příchozí provoz.
Následující příkaz povolí příchozí provoz na portu HTTP:
$ sudo ufw allow http Rule added Rule added (v6)
Můžete zakázat provoz na jakémkoli portu. Zde je příklad blokování provozu na portu 21:
$ sudo ufw deny 21 Rule added Rule added (v6)
journalctl
Použijte journalctl k zobrazení protokolů shromážděných systemd. systemd shromažďuje log v centrálním umístění v binárním formátu. Chcete-li zobrazit tyto protokoly:
[email protected]:~$ sudo journalctl -- Logs begin at Mon 2020-06-29 02:48:31 UTC, end at Wed 2020-08-19 15:07:59 UTC. -- Jun 29 02:48:31 ubuntu kernel: Linux version 5.3.0-1028-azure ([email protected]) (gcc version 7.5.0 (Ubuntu Jun 29 02:48:31 ubuntu kernel: Command line: BOOT_IMAGE=/boot/vmlinuz-5.3.0-1028-azure root=UUID=b0dd9d06-536e-41 Jun 29 02:48:31 ubuntu kernel: KERNEL supported cpus: Jun 29 02:48:31 ubuntu kernel: Intel GenuineIntel ...
Většinou byste preferovali vidět protokoly v opačném pořadí, tedy nejnovější protokoly jako první:
[email protected]:~$ sudo journalctl -r -- Logs begin at Mon 2020-06-29 02:48:31 UTC, end at Wed 2020-08-19 15:10:16 UTC. -- Aug 19 15:10:16 ubuntu18 sudo[31263]: pam_unix(sudo:session): session opened for user root by ubuntu(uid=0) Aug 19 15:10:16 ubuntu18 sudo[31263]: ubuntu : TTY=pts/1 ; PWD=/home/ubuntu ; USER=root ; COMMAND=/bin/journalc Aug 19 15:10:11 ubuntu18 sudo[31213]: pam_unix(sudo:session): session closed for user root Aug 19 15:07:59 ubuntu18 sudo[31213]: pam_unix(sudo:session): session opened for user root by ubuntu(uid=0) Aug 19 15:07:59 ubuntu18 sudo[31213]: ubuntu : TTY=pts/1 ; PWD=/home/ubuntu ; USER=root ; COMMAND=/bin/journalc Aug 19 15:07:56 ubuntu18 sudo[31183]: pam_unix(sudo:session): session closed for user root Aug 19 15:06:47 ubuntu18 sudo[31183]: pam_unix(sudo:session): session opened for user root by ubuntu(uid=0) ...
Chcete-li zobrazit protokoly konkrétní služby, například mysql, použijte příznak -u:
[email protected]:~$ sudo journalctl -u mysql -- Logs begin at Mon 2020-06-29 02:48:31 UTC, end at Wed 2020-08-19 15:11:34 UTC. -- Aug 16 12:30:02 ubuntu18 systemd[1]: Starting MySQL Community Server... Aug 16 12:30:03 ubuntu18 systemd[1]: Started MySQL Community Server. Aug 19 15:03:27 ubuntu18 systemd[1]: Stopping MySQL Community Server... Aug 19 15:03:29 ubuntu18 systemd[1]: Stopped MySQL Community Server.
zabíjet a zabíjet
Možná budete muset zabít běžící proces nebo když potřebujete uvolnit některé systémové prostředky. kill with -l flag zobrazuje všechny signály, které můžete poslat procesu.
[email protected]:~$ kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM 16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP ....
Dva nejčastěji používané signály jsou SIGTERM a SIGKILL. Můžete také použít -9 pro SIGKILL a -15 pro SIGTERM. SIGTERM umožňuje dokončení procesu před jeho ukončením, a proto se nazývá soft kill. SIGKILL okamžitě ukončí proces. Zde je příklad:
Seznam všech procesů apache2
[email protected]:~$ ps aux|grep apache2 root 45521 0.0 0.5 78188 4688 ? Ss Aug08 0:03 /usr/sbin/apache2 -k start www-data 45524 0.0 0.5 830480 4816 ? Sl Aug08 0:00 /usr/sbin/apache2 -k start www-data 45525 0.0 0.7 830480 6856 ? Sl Aug08 0:00 /usr/sbin/apache2 -k start ubuntu 70374 0.0 0.1 14852 1040 pts/0 S+ 07:45 0:00 grep --color=auto apache2
Chcete-li zabít proces apache2 s ID procesu 45525:
[email protected]:~$ sudo kill -9 45525
Znovu si prohlédněte seznam procesů apache2:
[email protected]:~$ ps aux|grep apache2 root 45521 0.0 0.5 78188 4688 ? Ss Aug08 0:03 /usr/sbin/apache2 -k start www-data 45524 0.0 0.5 830480 4816 ? Sl Aug08 0:00 /usr/sbin/apache2 -k start ubuntu 70525 0.0 0.1 14852 1052 pts/0 S+ 07:52 0:00 grep --color=auto apache2
Použijte killall k ukončení programu podle jména. Což znamená, že killall zabije řídicí (rodičovský) proces a všechny podřízené procesy. Chcete-li zabít všechny instance procesu apache2 ve výše uvedeném příkladu:
[email protected]:~$ sudo killall apache2
Používejte kill a killall opatrně. Tyto příkazy mohou ponechat systém v nestabilním stavu.
IP
Příkaz ip nahrazuje ifconfig v novějších distribucích Linuxu. Použijte jej ke konfiguraci a zobrazení síťových rozhraní. Používá se také k zobrazení a úpravě IP adres, tras a sousedních objektů.
Zobrazit informace o všech síťových rozhraních:
[email protected]:~$ ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:0d:3a:9b:88:d6 brd ff:ff:ff:ff:ff:ff inet 10.0.0.4/24 brd 10.0.0.255 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::20d:3aff:fe9b:88d6/64 scope link valid_lft forever preferred_lft forever
Pro zvýšení nebo snížení rozhraní použijte ip link set dev následovaný názvem zařízení. Chcete-li například uvést rozhraní eth0 online:
[email protected]:~$ ip link set eth0 up
A abych to shodil:
[email protected]:~$ ip link set eth0 down
datum
Velmi často používaný příkaz, zde prozkoumáme několik zajímavých způsobů použití tohoto příkazu.
[email protected]:~$ date Tue Aug 11 07:42:49 UTC 2020
Chcete-li zobrazit datum příští neděle:
[email protected]:~$ date -d 'next sunday' Sun Aug 16 00:00:00 UTC 2020
Chcete-li zobrazit datum minulé neděle:
[email protected]:~$ date -d 'last sunday' Sun Aug 9 00:00:00 UTC 2020
Místo parametru -d můžete také použít –date:
[email protected]:~$ date --date="last sunday" Sun Aug 9 00:00:00 UTC 2020
Chcete-li zobrazit datum před 6 dny:
[email protected]ntu18:~$ date --date="6 days ago" Wed Aug 5 08:06:37 UTC 2020
Datum za 6 dní:
[email protected]:~$ date --date="6 days" Mon Aug 17 08:08:37 UTC 2020
Můžete snadno ovládat výstupní formát data. Zde je příklad:
[email protected]:~$ date '+%d-%B-%Y' 11-August-2020
souhrn
Vy jako správce systému udržujete světovou výpočetní infrastrukturu v chodu. Potřebujete řešit problémy, udržovat a udržovat systémy v optimálním provozu a zároveň zajistit bezpečnost.
Doufám, že se vám tyto příkazy budou hodit a pomohou vám dělat vaši práci lépe.
Zde jsou někteří FTP/SFTP klienti a nejlepší cheaty pro Vim pro vývojáře a Sysadmin.