Bird
Raised Fist0
Linux CLIscripting~5 mins

nohup for persistent processes in Linux CLI - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does the nohup command do in Linux?
The nohup command runs a process that ignores the hangup signal, so it keeps running even after you close the terminal.
Click to reveal answer
beginner
How do you run a script named backup.sh persistently using nohup?
Use nohup ./backup.sh &. This runs the script in the background and keeps it running after logout.
Click to reveal answer
intermediate
What file does nohup use to save output if no output file is specified?
It saves output to nohup.out in the current directory or home directory if it can't write there.
Click to reveal answer
beginner
Why do we add & at the end of a nohup command?
The & puts the process in the background so you can keep using the terminal immediately.
Click to reveal answer
intermediate
Can nohup keep a process running after a system reboot?
No, nohup only keeps a process running after logout or terminal close. For reboot persistence, use system services or cron jobs.
Click to reveal answer
What happens if you close the terminal after running nohup myscript.sh &?
AThe script keeps running in the background.
BThe script stops immediately.
CThe script pauses until the terminal reopens.
DThe script restarts automatically.
Where does nohup save output if you don't redirect it?
A/dev/null
B/var/log/syslog
Cnohup.out file
DIt discards the output
Which symbol is used to run a command in the background?
A$
B#
C*
D&
Does nohup guarantee a process will survive a system reboot?
ANo, it only survives terminal close or logout.
BYes, it survives reboot automatically.
COnly if combined with <code>cron</code>.
DOnly if run as root.
What is the main reason to use nohup?
ATo speed up a process.
BTo keep a process running after logout or terminal close.
CTo run a process with higher priority.
DTo automatically restart a process if it crashes.
Explain how to use nohup to run a script persistently and why it is useful.
Think about running a long task and closing your terminal without stopping it.
You got /4 concepts.
    Describe the limitations of nohup regarding process persistence.
    Consider what happens when the computer restarts.
    You got /4 concepts.

      Practice

      (1/5)
      1. What is the main purpose of using nohup in Linux command line?
      easy
      A. To speed up the execution of a command
      B. To stop a running process immediately
      C. To display the output of a command in color
      D. To run a command that keeps running after logout or terminal closes

      Solution

      1. Step 1: Understand the function of nohup

        nohup stands for 'no hang up' and is used to run commands that continue running even after the user logs out or the terminal closes.
      2. Step 2: Compare options with this definition

        Only "To run a command that keeps running after logout or terminal closes" matches this purpose. The other options describe unrelated functions.
      3. Final Answer:

        To run a command that keeps running after logout or terminal closes -> Option D
      4. Quick Check:

        nohup = persistent command run [OK]
      Hint: Remember nohup means 'no hang up' to keep process alive [OK]
      Common Mistakes:
      • Thinking nohup speeds up commands
      • Confusing nohup with output coloring
      • Assuming nohup stops processes
      2. Which of the following is the correct syntax to run my_script.sh persistently in the background using nohup?
      easy
      A. nohup my_script.sh &
      B. nohup & my_script.sh
      C. my_script.sh nohup &
      D. nohup my_script.sh

      Solution

      1. Step 1: Recall the correct nohup syntax

        The correct way is to write nohup command & to run the command persistently in the background.
      2. Step 2: Check each option

        nohup my_script.sh & matches the correct syntax. nohup & my_script.sh places & before the command incorrectly. my_script.sh nohup & misplaces nohup. nohup my_script.sh runs nohup but not in background.
      3. Final Answer:

        nohup my_script.sh & -> Option A
      4. Quick Check:

        nohup + command + & = correct syntax [OK]
      Hint: Use nohup command & to run in background [OK]
      Common Mistakes:
      • Placing & before the command
      • Omitting & to run in background
      • Misplacing nohup after the command
      3. What will be the output file created when you run nohup sleep 60 & without redirecting output?
      medium
      A. No file is created
      B. nohup.out
      C. output.txt
      D. sleep.log

      Solution

      1. Step 1: Understand nohup default output behavior

        If no output redirection is given, nohup writes stdout and stderr to a file named nohup.out in the current directory.
      2. Step 2: Match this with options

        Only nohup.out matches the default output file. Others are incorrect or no file.
      3. Final Answer:

        nohup.out -> Option B
      4. Quick Check:

        Default nohup output file = nohup.out [OK]
      Hint: Default nohup output file is nohup.out if not redirected [OK]
      Common Mistakes:
      • Assuming no file is created
      • Thinking output goes to sleep.log
      • Confusing output.txt as default
      4. You run nohup my_script.sh & but the process stops after you logout. What is the most likely reason?
      medium
      A. You did not redirect output, causing terminal hangup
      B. You forgot to add & to run in background
      C. You ran the command without nohup
      D. You closed the terminal before the command started

      Solution

      1. Step 1: Understand nohup and output redirection

        Without redirecting output, nohup writes to nohup.out, but if permissions or disk issues prevent this, the process may stop on logout.
      2. Step 2: Analyze options

        You did not redirect output, causing terminal hangup correctly points to output redirection issues causing hangup. You forgot to add & to run in background is wrong because & was added. You ran the command without nohup is wrong because nohup was used. You closed the terminal before the command started is unlikely as process starts immediately.
      3. Final Answer:

        You did not redirect output, causing terminal hangup -> Option A
      4. Quick Check:

        Output redirection needed to avoid hangup [OK]
      Hint: Always redirect output to avoid hangup with nohup [OK]
      Common Mistakes:
      • Ignoring output redirection importance
      • Assuming & alone keeps process alive
      • Thinking nohup always works without output file
      5. You want to run backup.sh persistently, save all output to backup.log, and avoid terminal clutter. Which command should you use?
      hard
      A. ./backup.sh > backup.log 2>&1 &
      B. nohup ./backup.sh & > backup.log 2>&1
      C. nohup ./backup.sh > backup.log 2>&1 &
      D. nohup ./backup.sh 2>&1 > backup.log &

      Solution

      1. Step 1: Understand output redirection with nohup

        To save both standard output and errors to a file, use command > file 2>&1. The ampersand & runs the command in background.
      2. Step 2: Check each option's correctness

        nohup ./backup.sh > backup.log 2>&1 & correctly places redirection before &. nohup ./backup.sh & > backup.log 2>&1 misplaces & before redirection. ./backup.sh > backup.log 2>&1 & lacks nohup. nohup ./backup.sh 2>&1 > backup.log & reverses redirection order, which is incorrect.
      3. Final Answer:

        nohup ./backup.sh > backup.log 2>&1 & -> Option C
      4. Quick Check:

        nohup + redirect stdout/stderr + & = correct [OK]
      Hint: Redirect output before & to save logs with nohup [OK]
      Common Mistakes:
      • Placing & before output redirection
      • Forgetting nohup for persistence
      • Reversing stderr and stdout redirection order
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard