Это называется в программе System Encryption. Такие вещи делать всегда страшно и я подходил к вопросу почти два месяца, а уж сколько думал о такой возможности подсчетам вообще не поддается.
Данные системы: Vista SP2 Home Basic 32 бита, TrueCrypt 7.1. (01.09.2011).
Оборудование: Компьютер Depo Ego 8321 (материнская плата ECS G31T-M, процессор Intel E2140; аппаратной поддержки шифрования нет)
Оценка системы по метрике Windows 3,3 (процессор 4,7; память 4,8; жесткий диск 5,7).
Производительность по данным TrueCrypt: 100Мб/с
В моем случае были следующие важные моменты:
- Система грузится не с первого диска, а со второго (при этом первый — IDE, а второй SATA — так видит система). Как это ни странно, система обозначила этот диск буквой C, но сомнения были.
- Данные располагаются не на системном диске, а на другом. На него с системного идет куча символических ссылок NTFS, на нем есть разделяемые папки, с него же берутся данные MySQL. Т.е. на момент загрузки службы MySQL диск с данными должен быть уже подключен.
- И система и данные зашифрованы этой программой.
Замечу, что изначально по плану было шифрование только данных, а не системы. Но с учетом работы сервиса и того, что TrueCrypt подключает диски до загрузки служб только если и системный диск зашифрован, пришлось делать полное шифрование всего на свете.
Само собой, этому предшествовал период игр — сначала шифрованный файл контейнер, потом «игрушечный» диск с данными, а потом уже данные и система.
«Побочные эффекты»
Время загрузки и скорость реакции
После перехода на шифрованные диски система стала дольше загружаться и медленнее реагировать. При этом система и раньше грузилась 15 минут до того момента, когда ей реально можно пользоваться (+3 минуты после авторизации).
Сейчас если после ввода пароля TrueCrypt не трогать компьютер 20 минут (до TrueCrypt я давал ему 15), то после ввода пароля пользователя Windows он через минуту сменит надпись «Добро пожаловать» на вид рабочего стола, а еще через 2 минуты загрузит все программки (у меня они в автостарте мелкие — служебный софт, PuntoSwitcher + антивирус). Еще через 5 минут прекратится активное использование дисков (индикатор будет изредка моргать, а не гореть постоянно). Итого 28 минут против 18 до TrueCrypt.
Если компьютер вообще не трогать после ввода пароля TrueCrypt, пока она активно работает с диском, пройдет 25 минут. После ввода пароля пользователя Windows потребуется еще 20 секунд (а не минута, как в первом случае), чтобы показать рабочий стол. Плюс — еще 40 секунд на загрузку софта и антивируса. Еще через минуту дисковая активность прекращается. Итого — теже 28 минут (+-1 минута).
Сунешься раньше, будешь думать чей у тебя компьютер — твой или системы. Толком все равно не поработаешь. Но если что-то нужно сделать срочно — окно с предложением ввести пароль пользователя Windows появляется через 30 секунд.
Загрузка служб Windows
Основная беда пришла от служб Windows. Есть у меня служба собственной разработки на .Net. Она и раньше загружалась через раз — на 20 попыток 1-2 «залета». После TrueCrypt она перестала загружаться вообще.
Использование режима отложенной загрузки службы ни к чему не привело. Просмотр системного лога дал нужные сведения о проблеме — оказалось, что системе не хватает 30 секунд для запуска службы и она «убивает процесс». Пришлось залезть в реестр и создать параметр ServicesPipeTimeout. Поставил 60 секунд и все заработало!
Есть также непонятная ошибка в системном логе — «Используемый по умолчанию диспетчер ресурсов транзакций на томе <мой том>: обнаружил неповторяемую ошибку, и его запуск невозможен. » Что это значит я не знаю.
Занятость диска
Если на компьютере выполняется какая-то вычислительная задача и она занимает 100% процессора, то программы, работающие с диском, могут сообщать о том, что диск занят и ждать, когда он освободится. Само собой, освобождать нужно процессор в таком случае, тогда «освободится» и диск.