Firefox를 사용하여 sshfs 마운트 지점을 통해 일부 파일을 표시하고 있습니다...
그러나 이 마운트 지점의 연결이 끊어집니다. 실수로 페이지를 다시 로드하면 Firefox가 영원히 멈추게 됩니다.죽여도 안 돼..
예를 들어, D
여기에서는 여전히 ""가 포함된 Firefox 프로세스를 볼 수 있습니다.
$ ps aux | grep firefox
plasmab 10269 0.8 4.2 3253252 344216 ? D 18:12 0:51 /usr/lib/firefox/firefox
plasmab 13350 0.0 0.0 21996 1148 pts/3 S+ 19:50 0:00 grep --color=auto firefox
그리고 이것은 killall -9 firefox
. 노력해 kill -9 10269
도 소용이 없습니다 .
이제 나는 팔로우한다파일을 삭제하는 lock
단계.parentlock
, 하지만 이후에도 여전히 "D" 프로세스가 표시됩니다. 그럼에도 불구하고 Firefox를 다시 시작하고 다시 닫았더니 원치 않는 프로세스가 사라졌습니다...
그러니 잠긴 파일을 삭제하세요그리고프로세스가 중단되었음에도 불구하고 Firefox를 다시 시작해도 여전히 작동했습니다. 더 좋은 방법이 있나요?
이 문제가 더 일반적일 수 있다고 생각됩니다. 예를 들어, 간단한 ls
.
답변1
프로세스가 D
중단되지 않은 절전 상태에 있습니다. 대기가 끝날 때까지 어떤 신호도 종료되지 않습니다. 일반적으로 원인은 불완전한 I/O입니다.
귀하의 경우 연결이 끊어졌지만 닫히지 않았습니다. 아직 수행할 재시도가 남아 있거나 CLOSE_WAIT 상태입니다. 충분히 오래 기다리면 작동하지만 포기한 kill
후에만 가능합니다 .sshfs
먼저 프로세스를 종료한 다음 Firefox를 종료 해야 합니다 sshfs
. 기본 파일 시스템이 사라지므로 더 이상 기다릴 필요가 없습니다(더 이상 sshfs
).
따라서 빠른 수정:
- sshf를 죽여라
- 파이어폭스를 죽여라
당신이 조사하고 싶은 -o reconnect
옵션 도 있습니다 sshfs
.