읽기 전용 재설치를 방해하는 파일/프로세스 식별

읽기 전용 재설치를 방해하는 파일/프로세스 식별

내 시스템은 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는 네 번째 열이고 접미사가 wor 입니다. u이는 파일이 각각 쓰기 또는 읽기+쓰기용으로 열려 있음을 의미합니다.

lsof +f -- / | awk '$4 == "FD" || $4 ~ /[0-9][wu]$/'

테스트 $4 == "FD"는 중단 없이 열 헤더를 통과하는 것입니다.

이는 특정 구현에 맞게 조정되어야 합니다 lsof. 다음 내용을 읽어 보는 것이 좋습니다.다른 프로그램의 출력보다 이식성이 뛰어난 솔루션이 필요한 경우 lsof 매뉴얼 페이지의 해당 섹션을 참조하십시오.

관련 정보