Linux Kommandos Teil 5 - Useradd, Usermod, Userdel
Indholdsfortegnelse:
- Sådan bruges nohup-kommandoen
- Kør kommandoen i baggrunden
- Omdirigerer output til en fil
- Alternativer
- skærm
- tmux
- fornægte
- Konklusion
nohup
kommandoen udfører et andet program, der er specificeret som dets argument, og ignorerer alle
SIGHUP
(hangup) signaler.
SIGHUP
er et signal, der sendes til en proces, når dens kontrolterminal er lukket.
Normalt, når du kører et program over SSH, hvis din forbindelse falder, eller du logger ud, afsluttes sessionen, og alle processer, der udføres fra terminalen, stopper. Det er her
nohup
kommandoen er praktisk. Det ignorerer alle hangup-signaler, og processen vil fortsætte med at køre.
Sådan bruges nohup-kommandoen
Syntaks for
nohup
kommandoen er som følger:
nohup COMMAND
Kommandoen accepterer ikke andre valgmuligheder undtagen standard
--help
og
--version
.
Lad os se på følgende eksempel:
nohup mycommand
nohup: ignoring input and appending output to 'nohup.out'
nohup
kører
mycommand
kommandoen i forgrunden og omdirigerer kommandoudgangen til filen
nohup.out
. Denne fil oprettes i det aktuelle arbejdsmappe. Hvis brugeren, der kører kommandoen, ikke har skrivetilladelser til arbejdsmappen, oprettes filen i brugerens hjemmekatalog.
Hvis du logger ud eller lukker terminalen, afsluttes processen ikke.
Kør kommandoen i baggrunden
Brug af
nohup
i forgrunden er ikke meget nyttigt, fordi du ikke vil være i stand til at interagere med shell, før kommandoen er afsluttet.
Hvis du vil køre kommandoen i baggrunden, tilføjes
&
symbolet i slutningen af kommandoen:
nohup mycommand &
Outputet inkluderer shell job-ID (omgivet af parenteser) og proces-id:
25177
Du kan bruge job-ID til at bringe kommandoen i forgrunden ved hjælp af kommandoen
fg
.
Hvis du af en eller anden grund ønsker at afslutte processen, skal du bruge
kill
kommandoen efterfulgt af process-ID:
Omdirigerer output til en fil
Som standard omdirigerer
nohup
kommandoudgangen til filen
nohup.out
. Hvis du vil omdirigere output til en anden fil, skal du bruge standard shell omdirigering.
For at omdirigere standardoutput og standardfejl til
mycommand.out
, ville du f.eks. Bruge:
nohup mycommand > mycommand.out 2>&1 &
Sådan omdirigerer du standardoutput og standardfejl til forskellige filer:
nohup mycommand > mycommand.out 2> mycommand.err &
Alternativer
Der er flere alternative programmer, som du kan bruge til at undgå, at en kommando afsluttes, når du lukker terminalen eller bliver afbrudt.
skærm
Skærm- eller GNU-skærm er et terminalmultiplexerprogram, der giver dig mulighed for at starte en skærmsession og åbne et vilkårligt antal windows (virtuelle terminaler) inde i denne session. Processer, der kører i skærmen, fortsætter med at køre, når deres vindue ikke er synligt, selvom du bliver afbrudt.
tmux
Tmux er et moderne alternativ til GNU-skærmen. Med Tmux kan du også oprette en session og åbne flere vinduer inde i denne session. Tmux-sessioner er vedvarende, hvilket betyder, at programmer, der kører i Tmux, fortsætter med at køre, selvom du lukker terminalen.
fornægte
disown
er et shell, der er indbygget, der fjerner et shell-job fra skallets jobkontrol. I modsætning til
nohup
, kan du også bruge
disown
ved kørende processer.
Konklusion
nohup
giver dig mulighed for at forhindre, at kommandoer afsluttes, når du logger ud eller forlader terminalen.
Chmod-kommando i linux (filtilladelser)

I Linux administreres adgang til filerne gennem filtilladelser, attributter og ejerskab. Denne tutorial dækker hvordan man bruger chmod-kommandoen til at ændre adgangstilladelser for filer og mapper.
Chgrp-kommando i linux (skift gruppe)

I Linux er hver fil tilknyttet en ejer og en gruppe og har tilladelser, der bestemmer, hvilke brugere der kan læse, skrive eller udføre filen. Kommandoen chgrpc ændrer gruppeejerskabet for givne filer.
Cp-kommando i linux (kopifiler)

cp er et kommandolinjeværktøj til kopiering af filer og mapper på Unix og Linux-systemer.