Хорошо, я должен сделать некоторые предположения здесь, но я думаю, что у меня есть ответ на ваш вопрос. Я вроде написал это, чтобы любой новичок с той же проблемой мог разумно следовать за ним.
Открытый терминал
В командной строке введите:
diskutil list
Список всех подключенных в данный момент локальных томов должен быть указан. Найдите Идентификатор пользователя FileVault, в который вы не можете войти (должен быть помечен чем-то вроде diskX, где X - число). Вот пример:
/dev/disk0
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *160.0 GB disk0
1: EFI 209.7 MB disk0s1
2: Apple_HFS Macintosh HD 159.7 GB disk0s2
/dev/disk1
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *1.0 TB disk1
1: EFI 209.7 MB disk1s1
2: Apple_HFS Time Machine 376.5 GB disk1s2
3: Apple_HFS Media Disk HD 623.2 GB disk1s3
/dev/disk2
#: TYPE NAME SIZE IDENTIFIER
0: Apple_partition_scheme *319.4 GB disk2
1: Apple_partition_map 32.3 KB disk2s1
2: Apple_HFS main 319.4 GB disk2s2
В приведенном выше примере, где написано Apple_HFS main, main - это учетная запись пользователя FileVault, на которую мы нацелены. Итак, Идентификатор, который мы хотим, это disk2.
В командной строке введите:
diskutil unmountDisk diskX
Убедитесь, что вы ввели соответствующий номер для буквы "X" в вашей ситуации. Это может занять несколько минут, но Терминал должен вернуть сообщение, в котором говорится:
Unmount of all volumes on diskX was successful
Теперь вы сможете снова использовать FUS для этой учетной записи.
Если это не сработает, есть две альтернативы, о которых я могу подумать: перезагрузить компьютер (не самое идеальное решение); или убить процесс, оставив открытыми ваши sparsebundle (это может привести к повреждению данных):
В командной строке терминала введите:
sudo lsof | grep sparsebundle
Система должна вернуть список открытых файлов, к которым обращается процесс, который держит ваш образ FileVault открытым. На снежном барсе это должны быть diskimages. Запишите идентификатор процесса рядом с именем. Вот как выглядело мое:
diskimage 68420 root 4u REG 14,2 8388608 5858242 /Users/main/main.sparsebundle/bands/241
diskimage 68420 root 5u REG 14,2 122880 5856490 /Users/main/main.sparsebundle/token
diskimage 68420 root 6r DIR 14,2 204 5856486 /Users/main/main.sparsebundle
diskimage 68420 root 7r DIR 14,2 56780 5856489 /Users/main/main.sparsebundle/bands
diskimage 68420 root 8u REG 14,2 8388608 5856497 /Users/main/main.sparsebundle/bands/0
В командной строке введите:
sudo kill [process id of diskimages]
(В приведенном выше примере мой PID будет 68240.) Возможно, вам придется повторить шаг 3 выше, но это должно позволить вам FUS в вашей учетной записи. Однако, так как вы уничтожили процесс создания образа диска, возможно, ваш образ диска может пострадать. (Обратите внимание, что я не проверял это). Я использую FileVault на Tiger с мая 2006 года, и несколько раз мне приходилось принудительно отключать мою учетную запись пользователя. Но у меня не было проблем с повреждением FileVault. Но у меня нет большого опыта в версии FileVault Snow Leopard.
Я также пытался посмотреть, смогу ли я отключиться перед выходом из системы, но это не удалось, возможно, потому что файлы были открыты в результате того, что я вошел в систему. Я не сомневаюсь, что вы могли бы написать сценарий и запустить систему после выхода из системы последнего удаленного пользователя, но, к сожалению, это не в моей компетенции.
Одна вещь, которую вы можете сделать, это войти в систему как другой пользователь и выполнить шаг 3 после завершения сеанса, пока вы не сможете автоматизировать его. Если вы можете найти способ автоматизировать его, пожалуйста, опубликуйте его, так как я хотел бы узнать, как это сделать.