섀도우 파일에 대한 하드 링크를 만들었습니다. 사용자의 비밀번호를 제거하기 위해 vi 편집기에서 섀도우 파일을 열고 암호화된 비밀번호를 제거한 후 저장했습니다. 섀도우 파일의 inode 값이 변경되었습니다. 그런 다음 사용자의 비밀번호를 업데이트하고 섀도우 파일의 inode 값이 다시 변경되었습니다. 편집/업데이트될 때 섀도우 파일의 inode가 변경되는 이유는 무엇입니까?
답변1
비밀번호 변경의 일반적인 구현에는 하드링크 /etc/shadow
( /etc/stmp
또는 유사한 이름, link()
로컬 파일 시스템에서 원자성, 일종의 잠금 파일 메커니즘 구성), 새 파일을 임시 파일에 쓴 다음 원본 파일의 이름을 /etc/shadow
또는 /etc/shadow-
유사한 이름으로 바꾸는 작업이 포함됩니다. 임시로 /etc/shadow
. 이는 견고성을 위해 수행됩니다. 항상 shadow
수정되지 않은 원본 파일이 여전히 존재하며 잘못된 시간에 정전이 발생하거나 그에 준하는 문제가 발생하더라도(전체 디스크가 파괴되지 않는 한) 쉽게 복구할 수 있습니다.