2

Я использую OSX Snow Leopard и домашний каталог, защищенный FileVault, для моего пользователя. Чтобы создать резервную копию моего жесткого диска я сделать резервную копию живого RSync целой файловой системы на внешний жесткий диск:

rsync [parameters] / /Volumes/Backup

Я пропускаю резервное копирование файла FileVault, расположенного в /Users/.username . Кроме того, я делаю резервную копию расшифрованного содержимого моего домашнего каталога (во время этого я вошел в систему):

rsync [parameters] /Users/username /Volumes/Backup/Users/username

Таким образом, на резервном диске у меня есть полная копия файловой системы, но вместо FileVault sparsebundle у меня есть расшифрованное содержимое моего домашнего каталога (я могу жить с опасностями незашифрованного резервного копирования).

Я хочу, чтобы резервная копия использовалась в случае сбоя основного жесткого диска, поэтому я также отмечаю диск как загрузочный. Я могу загрузиться с этого внешнего диска, здесь нет проблем. Тем не менее, я не могу войти в свою учетную запись - я получаю это сообщение об ошибке:

В настоящее время вы не можете войти в учетную запись пользователя FileVault. Вход в учетную запись не выполнен из-за ошибки

Я предполагаю, что OSX предполагает, что это учетная запись FileVault, поэтому он ищет sparsebundle FileVault - и, поскольку его там нет, он терпит неудачу.

Мой вопрос: какие изменения я должен внести в файловую систему резервной копии после rsync чтобы пометить моего пользователя как стандартную учетную запись, которая не использует FileVault? Какой файл / файлы поменять?

1 ответ1

3

Я не проверял это, но я думаю, что вы можете "нормализовать" учетную запись, удалив ее атрибут HomeDirectory.

sudo dscl -f /Volumes/Backup/var/db/dslocal/nodes/Default / -delete /Local/Target/Users/fvtest HomeDirectory

(с вашим именем пользователя вместо "fvtest".) Обратите внимание, что имена атрибутов довольно запутанные; Есть два, относящиеся к домашнему каталогу, один в формате XML, где даются инструкции по его монтированию, а другой - по пути к unix после монтирования:

$ dscl . -read /Users/fvtest | grep HomeDirectory
HomeDirectory: <home_dir><url>file://localhost/Users/fvtest/fvtest.sparsebundle</url></home_dir>
NFSHomeDirectory: /Users/fvtest

При наличии сетевой учетной записи HomeDirectory вместо этого будет иметь информацию о подключении домашнего каталога с сервера. С обычным (локальным, не filevault) аккаунтом его там нет.

Кстати, если вы посмотрите в пользовательских файлах (в /private/var/db/dslocal/nodes/Default/users/username.plist), вы увидите те же значения, но под разными именами атрибутов: HomeDirectory = home_loc, NFSHomeDirectory = Главная.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .