Linux tilbyder utallige kommandoer og hjælpeprogrammer, som hjælper dig med at udføre dine systemadministrationsopgaver hurtigt og effektivt.
Dit arbejde som systemadministrator omfatter installation og afvikling af software, kontrol af adgang, overvågning, sikring af tilgængelighed, sikkerhedskopier, gendannelse af sikkerhedskopier og selvfølgelig brandslukning. 😜
I denne artikel gennemgår vi nogle af de kommandoer, der ofte bruges af Linux-systemadministratorer i deres daglige arbejde.
Indholdsfortegnelse
unavn
Brug kommandoen uname med flaget -a for at udskrive systemoplysninger. Denne kommando vil vise dig kernenavnet, kerneudgivelsen, kerneversionen, værtsnavnet, processortypen og oplysninger om din hardwareplatform.
[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
Her er hvad dette betyder:
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
Brug kommandoen df til at kontrollere størrelsen af filsystemet og den tilgængelige plads. Denne kommando, der bruges af sig selv, viser output i 1K blokke.
[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% / ....
Mulighed -h viser output i et menneskeligt læsbart format, det vil sige i MB og 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
For at ignorere ethvert filsystem, f.eks. tmpfs, det vil sige et renere output, skal du bruge flag -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
For kun at angive en bestemt filsystemtype, brug -t flag. for eksempel for kun at se ext4 filsystem:
[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
Brug af totalflag tilføjer en linje, der viser totaler:
[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
For at kontrollere forbruget af diskplads i en mappe skal du bruge kommandoen du. For eksempel for at se forbruget af diskplads i mappen /var/log. Brug -h-flag til menneskelæsbart format.
[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
For kun at se det samlede forbrug, brug kun -s (sammendrag) flag.
[email protected]:~$ sudo du -hs /var/log 204M /var/log
ledig
Brug gratis kommando for at se total, brugt og ledig systemhukommelse. Brug -h-flag til menneskelæsbart format.
[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
Brug ps til at vise statusoplysninger om processer, der kører på systemet. For at se alle processer, der ejes af brugeren ubuntu, skal du bruge -u flag med brugernavnet:
[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
For at se alle processer, kør ps med aux-flag:
[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] ....
hvor
Overskrift
Betyder
PID
Procesidentifikationsnummer
%CPU
Procentdel af CPU-tid, som processen bruger
%MEM
Procentdel af RAM-processen bruger
VSZ
Virtuel hukommelse bruges i KB
RSS
Fysisk hukommelse, som processen bruger i KB
TTY
Terminal forbundet med processen
STAT
R – Kører eller klar til at køre, S – Sovende, I – Inaktiv, T – Stoppet, Z – Zombie, D – Venter på disk I/O, X – Død, W – Udskiftet, N – Lav prioritet proces, < – Højt prioriteret proces
top
Mens ps-kommandoen viser et øjebliksbillede af processernes tilstand til enhver tid, viser toppen en løbende opdatering (hvert tredje sekund, som standard) liste over systemprocesser i rækkefølge efter procesaktivitet.
Det øverste kommandooutput består af to hoveddele: Systemoversigten øverst og tabellen over processer sorteret efter CPU-aktivitet.
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_+
Nogle af felterne i systemoversigten er som følger:
op
Oppetid. Tid siden maskinen sidst blev startet.
belastningsgennemsnit
Belastningsgennemsnit refererer til antallet af processer, der venter på at køre, værdi mindre end 1,0 betyder, at maskinen ikke er optaget. Der er 3 værdier. Det første er gennemsnittet af de sidste 60 sekunder, det andet er gennemsnittet af de sidste 5 minutter og det tredje viser gennemsnittet af de sidste 15 minutter.
%Cpu(er)
Denne række beskriver CPU’ens aktiviteter.
0,3 os, bruger
0,3 % CPU bruges til brugerprocesser.
0,0 sy, system
0,0% CPU bruges til systemprocesser.
0,0 ni, flot
0,0% CPU bliver brugt af lavprioriterede (pæne) processer
99,7 id, tomgang
99,7 % CPU er inaktiv
0,0 wa, IO-vent
0,0 % CPU venter på I/O
0,0 hej
tid brugt på hardwareafbrydelser
0,0 si
tid brugt på softwareafbrydelser
0,0 st
tidssten fra denne VM af hypervisoren
Procestabelfelter er som følger:
PID
Procesidentifikationsnummer
BRUGER
Procesejer
PR
Prioritet
NI
God værdi
VIRT
Virtuel hukommelse brugt af processen (KB)
RES
Fysisk hukommelse brugt af processen
SHR
Delt hukommelse brugt af processen
S
Processtatus. R – Løber, S – sover, I – Inaktiv, T – stoppet, Z – zombie, D – venter på disk I/O, W- skiftet ud, X – død
%CPU
CPU-tidsprocessen bruger i procent
%MEM
Den fysiske hukommelsesproces bruger
TID[+]
Samlet CPU-tid brugt af processen
KOMMANDO
Navn på programmet
Mens top kører, kan du udstede en række kommandoer. Tryk på h eller ? for at se kommandoer, som kan køres, mens top kører. Tryk på k for at afbryde en proces. Tryk på q for at afslutte toppen.
grave
dig er et fantastisk værktøj til DNS-forespørgsler. Det bruges som følger:
dig <DNS server> <domain> <query-type>
hvor
er det DNS-servernavn, du ønsker at forespørge på er det domænenavn, du ønsker at forespørge om er navnet på den post, du ønsker at vide – A, MX, NS SOA osv.
For at undertrykke verbose output, brug +short flag.
For at se A record for google.com skal du bruge:
[email protected]:~$ dig google.com +short 172.217.164.174
For at se MX-registreringer for google.com skal du bruge:
[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.
Hvis du har brug for at forespørge på DNS-poster på internettet, kan du bruge DNS-opslagsværktøjet.
hvem og w
der viser brugere, der er logget på.
[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 viser brugere, der i øjeblikket er logget på, og deres processer. Overskriften viser den aktuelle tid, systemets oppetid, antallet af brugere, der er logget på, og systembelastningsgennemsnit.
[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
Den næste del viser brugernavnene, terminalen og den eksterne IP, hvorfra de er logget på, logintid, inaktiv tid, JCPU, PCPU og det program, de kører. JCPU er den tid, der bruges af alle processer knyttet til tty’en, mens PCPU er den tid, der bruges af den aktuelle proces.
tjære
Med GNU tar kan du arkivere flere filer i en enkelt fil.
Som et eksempel, opret en mappe myfiles og tre filer a.txt, b.txt, c.txt i myfiles-mappen:
[email protected]:~$ mkdir myfiles ; touch myfiles/{a.txt,b.txt,c.txt}
Nu for at oprette et arkiv med navnet allfiles.tar, der indeholder alle filer i myfiles-mappen:
[email protected]:~$ tar -cvf allfiles.tar myfiles myfiles/ myfiles/c.txt myfiles/a.txt myfiles/b.txt
Liste over alle filer i den aktuelle mappe. Du kan se myfiles-biblioteket og allfiles.tar-arkivet:
[email protected]:~$ ls allfiles.tar myfiles
Du kan udpakke et arkiv med -x flag. Så for at udpakke allfiles.tar:
[email protected]:~$ tar -xvf allfiles.tar myfiles/ myfiles/c.txt myfiles/a.txt myfiles/b.txt
Du kan også komprimere dette arkiv med -z flag. Dette ville skabe et arkiv komprimeret med 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
For at pakke et komprimeret arkiv ud, brug -z med -x flag.
[email protected]:~$ tar -zxvf allfiles.tar.gz myfiles/ myfiles/c.txt myfiles/a.txt myfiles/b.txt
grep
grep bruges til at søge efter et mønster i en fil eller et sæt filer. Den udskriver alle linjer, der matcher det mønster. For eksempel, for at søge efter linjen, der indeholder “ServerRoot” i /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"
Brug * for at søge i alle filer i en mappe. For at inkludere søgning i undermapper, brug -r (rekursivt) flag. Så for at søge efter alle linjer, der indeholder mønsteret “VirtualHost” i alle filer i /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 er et hurtigt kommandolinjeværktøj til synkronisering af filer og mapper mellem to steder. Kan bruges til både lokal og fjernkopiering og er hurtig, fordi den kun sender forskellene mellem kildefilerne og de eksisterende filer på destinationen.
Det er meget brugt til sikkerhedskopier og som en forbedret kopikommando til daglig brug.
Her er et eksempel:
For at kopiere/rsynkronisere alle filer fra myfiles-mappen til backup-mappen:
[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
For at rsync alle filer fra myfiles-mappen til backup-mappen på en fjernvært skal du inkludere remote_user @remote_host i destinationsnavnet. Så for at rsync myfiles-mappen til en fjernvært med 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
ss-kommandoen bruges til at dumpe socket-statistikker, svarende til det gamle netstat-værktøj. Brug -t flag for at vise TCP sockets.
[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
Dette vil ikke vise stik, der lytter. For at inkludere både lyttende og ikke-lyttede stik, brug -t og -a flag.
[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 *:*
lokalisere
Find kommandoen bruger en database til at søge efter filer og kan faktisk være meget hurtigere end find kommandoen. Meget enkel at bruge, at søge efter en fil, f.eks. apache2.conf:
[email protected]:~$ locate apache2.conf /etc/apache2/apache2.conf /var/lib/dpkg/info/apache2.conffiles
Du kan bruge -c flag, hvis du kun vil have antallet af filer, der matcher søgemønsteret.
[email protected]:~$ locate -c apache2.conf 2
Til tider skal du muligvis opdatere databasen, der bruges af locate, som er mlocate. Brug updatedb kommandoen for at opdatere databasen. Dette ville kræve superbrugerrettigheder.
[email protected]:~$ sudo updatedb
finde
En af de mest brugte kommandoer på Linux. Brug den til at søge efter filer baseret på filnavne, tilladelser, bruger-id, groupid, størrelse, filtype, udover andre kriterier.
For at søge efter en fil efter navn i den aktuelle mappe, brug -name flag efterfulgt af filnavnet for at søge.:
[email protected]:~$ find . -name a.txt ./myfiles/a.txt
For at søge efter mapper, brug -type d flag:
[email protected]:~$ find . -type d . ./.ssh ./myfiles ./.cache ./.gnupg ./.gnupg/private-keys-v1.d ./docker
For at søge efter filer efter størrelse, sig filer større end 20 MB, brug -size flag:
[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
Nu hvor systemd har erstattet SysV init-processen i de fleste Linux-distributioner, skal du bruge systemctl-kommandoen til at administrere systemtjenester og -enheder.
For at starte en tjeneste, for eksempel apache2:
[email protected]:~$ sudo systemctl start apache2.service
Du kan forlade tjenestesuffikset.
Sådan stopper du en tjeneste:
[email protected]:~$ sudo systemctl stop apache2
Brug systemctl status kommandoen for at se servicestatus. Følgende eksempel viser apache2-status, mens den kører:
[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.
ufw kommando
UFW – ukompliceret firewall er en brugervenlig frontend til iptables. Den er tilgængelig som standard på Ubuntu-baserede distributioner. På CentOS kan du installere ufw fra EPEL-lageret.
For at aktivere ufw:
$ sudo ufw enable
Tjek firewall-status med ufw-status:
$ sudo ufw status Status: active
Standard UFW-politikker tillader al udgående trafik og blokerer al indgående trafik.
Følgende kommando tillader indgående trafik på HTTP-porten:
$ sudo ufw allow http Rule added Rule added (v6)
Du kan nægte trafik på enhver havn. Her er et eksempel til at blokere trafik på port 21:
$ sudo ufw deny 21 Rule added Rule added (v6)
journalctl
Brug journalctl til at se logfiler indsamlet af systemd. systemd samler log på en central placering i et binært format. Sådan får du vist disse logfiler:
[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 ...
For det meste ville du foretrække at se logfilerne i omvendt rækkefølge, det vil sige de seneste logfiler først:
[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) ...
For at se logfiler for en specifik tjeneste, for eksempel mysql, brug -u flag:
[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.
dræbe og dræbe
Du skal muligvis dræbe en løbsk proces, eller når du skal frigøre nogle systemressourcer. dræb med -l flag viser alle de signaler, du kan sende til en proces.
[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 ....
To mest almindeligt anvendte signaler er SIGTERM OG SIGKILL. Du kan også bruge -9 til SIGKILL og -15 til SIGTERM. SIGTERM tillader en proces at fuldføre, før den afsluttes og kaldes derfor soft kill. SIGKILL afslutter processen med det samme. Her er et eksempel:
Liste over alle apache2-processer
[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
For at dræbe apache2-processen med proces-id 45525:
[email protected]:~$ sudo kill -9 45525
Se igen listen over apache2-processer:
[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
Brug killall til at dræbe et program ved navn. Hvilket betyder, at killall dræber kontrol(forælder)processen og alle underordnede processer. For at dræbe alle forekomster af apache2-processen i eksemplet ovenfor:
[email protected]:~$ sudo killall apache2
Brug kill and killall med forsigtighed. Disse kommandoer kan efterlade systemet i en ustabil tilstand.
IP
IP-kommandoen erstatter ifconfig i de nyere Linux-distributioner. Brug den til at konfigurere og vise netværksgrænseflader. Bruges også til at vise og ændre IP-adresser, ruter og naboobjekter.
Vis oplysninger om alle netværksgrænseflader:
[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
For at bringe en grænseflade op eller ned, brug ip link set dev efterfulgt af enhedsnavnet. For at bringe grænsefladen eth0 online:
[email protected]:~$ ip link set eth0 up
Og for at få det ned:
[email protected]:~$ ip link set eth0 down
dato
En meget almindeligt brugt kommando, her udforsker vi nogle interessante måder at bruge denne kommando på.
[email protected]:~$ date Tue Aug 11 07:42:49 UTC 2020
For at se næste søndags dato:
[email protected]:~$ date -d 'next sunday' Sun Aug 16 00:00:00 UTC 2020
For at se sidste søndags dato:
[email protected]:~$ date -d 'last sunday' Sun Aug 9 00:00:00 UTC 2020
Du kan også bruge –date i stedet for -d flag:
[email protected]:~$ date --date="last sunday" Sun Aug 9 00:00:00 UTC 2020
For at se datoen for 6 dage siden:
[email protected]ntu18:~$ date --date="6 days ago" Wed Aug 5 08:06:37 UTC 2020
Dato 6 dage fra nu:
[email protected]:~$ date --date="6 days" Mon Aug 17 08:08:37 UTC 2020
Du kan nemt styre datooutputformat. Her er et eksempel:
[email protected]:~$ date '+%d-%B-%Y' 11-August-2020
Resumé
Du som systemadministrator holder verdens computerinfrastruktur kørende. Du skal løse problemer, vedligeholde og holde systemerne kørende optimalt og samtidig sikre sikkerheden.
Håber disse kommandoer vil være nyttige og hjælpe dig med at udføre dit arbejde bedre.
Her er nogle FTP/SFTP-klienter og de bedste Vim-snydeark til udviklere og Sysadmin.