07. november 2009 - 14:52Der er
7 kommentarer og 1 løsning
Følge et program ?
Når man starter et program i linux kan man følge hvad programmet laver hele tiden i en terminal. men hvis man lukker terminalen køre programmet stadig. Hvilket det egentlig også skal. Men hvis man gerne vil se hvad programmet laver igen hvis man åbner en ny terminal hvad kan man så gøre ?
prøv at starte programmet med kommandoen nohup <cmd> &
Uddata fra programmet vil så blive skrevet i file $HOME/nohup.out
Når du lukker terminalen vil uddata stadeg blive tilføjet filen.
Starter du en ny terminal op kan du kigge i filen og se hvordan det går.
Der er måske et buffer problem. Normalt vil linux flushe efter der er skrevet en block (på min er det 4096 bytes) eller at filen lukkes, der kan således godt være flere data som du så først kan se når programmet afslutter.
skulle gerne være et eller andet hvor man kan følge det live. jeg har set det blive gjort engang jeg blev fjernstyret af en supporter. men kan ikke huske hvad han gjorde.
når man køre en terminal og starte f.eks en ftp server. så skriver den hele tiden hvad den laver og hvad der sker (live). det kan du så blive ved med at se end til du lukker terminalen. det må da være muligt at fortsat at kunne se hvad der sker løbende ved at skabe kontakt igen på en måde. hvad der er sket imens den har været lukket er lige meget
Prøv at kigge på screen kommandoen (skal muligvis installeres) hvis du starter programmer med screen kan du altid disconnecte og reconnecte til dit program.
screen har ydermere den fordel, at hvis dit program af og til kræver at du interagerer med det (svarer på spørgsmål eller lign) så kan du reconnecte til dit program og svare.
Nohup gør at når du logger ud overtager initprocessen ejerskabet af dit program - du kan derfor ikke bagefter reconnecte, du kan rigtigt nok se i en logfil at dit program beder om et eller andet men du har ingen muligheder for at svare. Det er en af grundene til at screen er en bedre løsning.
nohup gør at dit program ikke dør når du logger ud, & tegnet i enden betyder at programmet kører i baggrunden - og hvis du kan skal se hvad der foregår er det måske en bedre løsning - men hvis du vil reconnecte og ha fuld kontrol - så er screen din ven
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.