Почему изменяется значение inode теневого файла?

Почему изменяется значение inode теневого файла?

Я создал жесткую ссылку для теневого файла. Для удаления пароля пользователя я открыл теневой файл в редакторе vi и удалил зашифрованный пароль, а затем сохранил. Значение инода теневого файла изменилось. Затем я обновил пароль пользователя, и снова значение инода теневого файла изменилось. Почему изменяется инод теневого файла при его редактировании/обновлении?

решение1

Обычная реализация смены пароля включает в себя жесткую ссылку /etc/shadowна /etc/stmp(или какое-либо похожее имя; link()будучи атомарным в локальных файловых системах, это представляет собой своего рода механизм блокировки файла), запись нового во временный файл, затем переименование исходного /etc/shadowв /etc/shadow-или похожее и переименование временного в /etc/shadow. Это делается для надежности: в любое время исходный shadowфайл, неизмененный, все еще существует и может быть легко восстановлен, даже если питание отключится в самый неподходящий момент или произойдет что-то столь же плохое (если только это не уничтожит весь диск).

Связанный контент