Одним из требований к Windows 11 является наличие микросхемы TPM 2.0. Думаю, именно благодаря Windows 11 многие пользователи узнали о существовании TPM.
Данная статья расскажет, как в Linux узнать, имеется ли TPM и какая её версия. Кстати, если у вас Windows, то смотрите статью «Как проверить, есть ли на вашем компьютере микросхема доверенного платформенного модуля (Trusted Platform Module, TPM)».
TPM: Trusted Platform Module 2.0 — данная микросхема распространена на материнских платах, выпущенных после 2016 г.
Оборудование TPM обеспечивает защищённый от несанкционированного доступа способ хранения ключей шифрования на компьютере. В Windows 11, 10, 8 и 7 TPM обычно требуется для включения и использования функций шифрования, таких как BitLocker.
Как узнать, есть ли TPM на компьютере с Linux
В относительно свежих (выпущенных после 2016 года) ноутбуках и материнских платах уже должна быть припаяна микросхема TPM. Чтобы убедиться в этом наверняка с помощью sysfs, выполните команду:
[[ -d $(ls -d /sys/kernel/security/tpm* 2>/dev/null | head -1) ]] && echo "TPM доступно" || echo "TPM отсутствует"
Начиная с ядра 5.6 номер версии можно посмотреть в файле sysfs:
cat /sys/class/tpm/tpm*/tpm_version_major
Как вы можете увидеть на скриншоте, на тестовой машине имеется вторая версия TPM (данный ноутбук выпущен в 2018 году).
Все TPM устройства должны иметь /dev/tpm0, поэтому ещё одним способом является проверка /dev/tpm0 или /dev/tpmrm0.
/dev/tpmrm0 доступен только для TPM 2.0, но он был добавлен в v4.12-rc1. Если у вас вторая версия, то следующая команда выведет соответствующее сообщение:
[ -c /dev/tpmrm0 ] && echo "TPM 2.0"
Эта команда выведет сообщение если у вас версия 1.2 или 2.0:
[ -c /dev/tpm0 ] && echo "TPM 1.2 или 2.0"
TPM может быть отключён
Если предыдущие команды показывают, что у вас отсутствует TPM, то это не обязательно означает, что модуль TPM отсутствует вовсе — возможно, он просто отключён. Зайдите в БИОС и поищите настройки, в названии которых присутствует TPM. Если вы их найдёте, то включите.
Настройка TPM отсутствует в БИОСе, UEFI
Означает ли что если настройка TPM отсутствует в БИОСе, то модуль TPM не установлен? Нет, это не так — примеры выше, из которых следует, что в тестовой машине установлен TPM 2.0, сделаны на ноутбуке, у которого упоминание TPM вовсе отсутствует в БИОСе.
Программы для работы с TPM в Linux
В Linux для работы с TPM установите пакет TrouSerS. В нём поставляется утилита tcsd.
Как проверить, загружены ли модули ядра для работы с TPM
Чтобы убедиться, что загружены модули ядра для работы с TPM выполните следующую команду:
lsmod | grep tpm
Связанные статьи:
- Как удалить метаданные файла на Linux (50%)
- Bokken: проект с открытым исходным кодом для обратного инжиниринга (50%)
- Опасные команды Linux (50%)
- Какие есть полезные инструменты с интерфейсом командной строки для системных администраторов Linux (50%)
- Защита контента веб-сайта (50%)
- dnf-automatic — автоматическая установка обновлений безопасности в CentOS 8 (RANDOM - 50%)
не хватает []
Приветствую! Да, всё верно — я перепроверил и поправил статью.
Но до сих пор не могу понять, почему опция -d неправильно работает с [ ]? В книжке William E. Shotts, Jr. The Linux Command Line. Second Internet Edition (это моя библия по командной строке) есть такая фраза «This makes [[ ]] useful for evaluating file and pathnames», но из этой же книжки следует, что [ ] должна работать с опцией -d. Буду разбираться…