I was running apt upgrade
, when I needed the terminal, so did a ctrlz. When I tried to restart it (fg
), it would not restart, because it was no-longer in the jobs list (jobs
). (I Did not, run disown). I then did a ps
to get process id. It showed the process to be stopped (as expected), so I then did sudo kill -s SIGCONT pid
, to re-start it, but nothing happened. ps
showed that process was still stopped. There was no error message.
What I did.
sudo apt upgrade
«wait a bit»
«ctrl-z»
«some other command» #can't remember, but nothing special.
fg #This command failed, no such job
jobs #No output
What I tried to fix it.
- send sigcont to
apt
send sigcont to
sudo
What happened for the shell to disown the process?
- (more importantly) How do I re-start it?
Output from ps -l -p $(pgrep apt)
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
4 T 0 22884 22883 0 80 0 - 21617 - pts/1 00:00:01 apt
Output from pstree -s -p $(pgrep apt)
systemd(1)───kdeinit5(1038)───ksmserver(1062)───yakuake(1153)───bash(1225)───sudo(22883)───apt(22884)
Output from pgrep bash | xargs -n1 ps -l -p
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
0 S 1000 1225 1153 0 80 0 - 8770 core_s pts/1 00:00:00 bash
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
0 S 1000 3852 3849 0 80 0 - 8404 - pts/7 00:00:00 bash
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
0 S 1000 4449 4445 0 80 0 - 8392 core_s pts/3 00:00:01 bash
⋮
Ideas: has it lost contact with stdout/stdin?, does it need it?
System Debian, bash
#↳ bash --version
GNU bash, version 4.3.30(1)-release (x86_64-pc-linux-gnu)
#↳ uname -a
Linux delorenzi 3.16.0-5-amd64 #1 SMP Debian 3.16.51-3+deb8u1 (2018-01-08) x86_64 GNU/Linux
#↳ sudo --version
Sudo version 1.8.10p3
Sudoers policy plugin version 1.8.10p3
Sudoers file grammar version 43
Sudoers I/O plugin version 1.8.10p3
fg
command in that shell session? – Kusalananda Apr 03 '18 at 13:47ps -l -p $(pgrep apt-get)
? – Mark Plotnick Apr 03 '18 at 15:39apt-get
process and which shell is the one runningfg
. – JdeBP Apr 03 '18 at 17:40ps -l -p $(pgrep apt)
to question. – ctrl-alt-delor Apr 04 '18 at 12:20pstree -s $(pgrep apt)
to the question. – ctrl-alt-delor Apr 04 '18 at 12:23sudo
? If you don't have a job, then you can't continue the task. Sending a SIGCONT won't work since the program will just go back to trying to read from the terminal, and since it is not in the foreground process group, it gets stopped again. – psusi Apr 04 '18 at 12:54jobs
returns nothing (don't know why it was disowned). Can I attach it to another tty, or other stdin/stdout? – ctrl-alt-delor Apr 04 '18 at 12:57echo $$
to each shell to see its pid), then typejobs
to it? – Mark Plotnick Apr 04 '18 at 14:21«ctrl-c»
in your first snippet a typo? Assuming it is, however if it isn't, there was no background job to begin with and this is some otherapt
process. – yahol Apr 06 '18 at 12:09ps
and see that the process is now stopped. It just does not appear in thejob
s list. – ctrl-alt-delor Apr 06 '18 at 15:43sudo
version. – Yurij Goncharuk Apr 09 '18 at 23:34