Как не дать сбросить root пароль?
С физическим-то доступом? Никак.
2. Как при загрузке VM проверить целостность некоторых директорий/файлов?
Попытаться записать их хеши и проверять их.
Линукс и защита - понятия несовместимые, код открыт, стандарты известны, а при физическом доступе обойти можно любую защиту.
На вашем месте я бы сделал пароль на root и написал бы скрипт, который бы мониторил /etc/shadow и убивал бы корневой раздел, если рутовый пароль изменится.