내 시스템은 Debian Test를 실행하며 /
일반적으로 읽기 전용으로 설치됩니다.
mount: / is busy
가장 큰 문제는 뭔가를 설치하거나 시스템을 업데이트할 때마다 파일 시스템을 읽기 전용으로 다시 마운트할 수 없다는 것입니다 (오류가 발생합니다 : ).
사용된 명령:mount -o remount,ro /dev/mapper/sda9_crypt /
프로세스 잠금과 파일 잠금을 검색해 봤는데( lsof
/ 를 이용해서 fuser
) 구체적으로 무엇을 검색해야 하는지 모르겠습니다.
읽기 전용 모드에서 시스템을 다시 설치하기 위해 업데이트 후 시스템을 재설정하고 싶지 않습니다. 그래서 저는 이를 달성하기 위해 종료해야 하는 중요한 프로세스를 찾았습니다.
답변1
출력에서 lsof /
쓰기 위해 열려 있는 파일( 위해외에도w
열의 접미사)(deleted)
FD/var
/tmp
/run
파일이 삭제되었지만 열려 있는 경우 해당 디렉토리 항목만 실제로 삭제됩니다. 파일 자체는 디렉토리 항목이 없는 경우에만 삭제됩니다.그리고그것은 열려 있지 않습니다. 읽기 전용으로 마운트된 파일 시스템에서는 삭제의 마지막 부분이 발생할 수 없습니다. 따라서 절반 삭제된 파일은 쓰기 위해 열린 파일처럼 파일 시스템이 읽기 전용으로 다시 마운트되는 것을 방지합니다.
답변2
출력을 구문 분석 lsof
하고 장치에 쓰기 가능한 파일 설명자를 사용하여 프로세스를 필터링할 수 있습니다. 내 시스템에서 FD는 네 번째 열이고 접미사가 w
or 입니다. u
이는 파일이 각각 쓰기 또는 읽기+쓰기용으로 열려 있음을 의미합니다.
lsof +f -- / | awk '$4 == "FD" || $4 ~ /[0-9][wu]$/'
테스트 $4 == "FD"
는 중단 없이 열 헤더를 통과하는 것입니다.
이는 특정 구현에 맞게 조정되어야 합니다 lsof
. 다음 내용을 읽어 보는 것이 좋습니다.다른 프로그램의 출력보다 이식성이 뛰어난 솔루션이 필요한 경우 lsof 매뉴얼 페이지의 해당 섹션을 참조하십시오.