%EB%8A%94%20%EB%8B%A4%EC%8B%9C%20%EC%8B%9C%EC%9E%91%EB%90%98%EC%A7%80%20%EC%95%8A%EC%9C%BC%EB%A9%B0%20%EB%8D%94%20%EC%9D%B4%EC%83%81%20%EC%9E%91%EC%97%85%20%EB%AA%A9%EB%A1%9D%EC%97%90%20%ED%91%9C%EC%8B%9C%EB%90%98%EC%A7%80%20%EC%95%8A%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
터미널이 필요할 때 실행 중이어서 apt upgrade
다시 ctrlz시작하려고 하면( fg
) 작업 목록( )에 더 이상 없기 때문에 다시 시작되지 않습니다 jobs
. (나아니요, disown을 실행합니다). 그런 다음 ps
프로세스 ID 가져오기를 실행했습니다 . (예상대로) 프로세스가 중지된 것으로 나타나 sudo kill -s SIGCONT pid
다시 시작했지만 아무 일도 일어나지 않았습니다. ps
프로세스가 여전히 중지되었음을 나타냅니다. 오류 메시지가 없습니다.
내가 뭘 한거지.
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
나는 그것을 고치려고 노력했다.
- 서명 보내기
apt
서명 보내기
sudo
쉘이 거부하는 프로세스는 어떻게 되나요?
- (더 중요한 것은) 어떻게 다시 시작하나요?
출력은 다음에서 비롯됩니다.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
출력은 다음에서 비롯됩니다.pstree -s -p $(pgrep apt)
systemd(1)───kdeinit5(1038)───ksmserver(1062)───yakuake(1153)───bash(1225)───sudo(22883)───apt(22884)
출력은 다음에서 비롯됩니다.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
⋮
생각: stdout/stdin과의 연결이 끊어졌습니까? 그것이 필요합니까?
시스템 데비안, 배쉬
#↳ 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
답변1
일반적으로 의심되는 범인은 정직한 혼란입니다. 확인해야 할 가장 확실한 곳은 jobs
PID가 예상 PID(1225)와 일치하는 쉘에서 실행 중이라는 것입니다. 댓글에서 터미널이 있다고 언급했지만 "다른 명령"이 다른 쉘을 시작한 것 같습니다. $$
실행 중인 쉘의 이름을 확인하셨나요 jobs
?