Определить OS раздела

1

Кто-нибудь знает способ определения ОС, установленной на отдельном размонтированном разделе, без монтирования ее в Linux? Я пытаюсь определить, какая Windows установлена ​​со сценарием, в то время как Live загружается в Linux, и не могу понять, как.

Он запускается в rc.local, поэтому я не могу легко подсказать пользователю (я мог бы выйти из Плимута, но я бы не стал)

Спасибо

Майкл Бейли
источник

Ответы:

2

Чтобы изучить саму файловую систему, а не просто код типа раздела, вы можете использовать blkidутилиту в Linux. Вы можете передать ему идентификатор раздела или использовать его без опций, чтобы он проверял все дисковые устройства:

$ sudo blkid /dev/sdb1
/dev/sdb1: UUID="66F7-FD24" TYPE="vfat"

Конечно, тип файловой системы не совсем диагностический; FAT может использоваться практически любой операционной системой, например. (В этом примере раздел на самом деле является системным разделом EFI (ESP), который содержит файлы загрузчика.) Раздел NTFS может быть загрузочным разделом Windows, разделом аварийного восстановления Windows или незагружаемым разделом данных. В зависимости от того, насколько надежным должен быть ваш сценарий, вам может понадобиться смонтировать раздел и начать поиск диагностических файлов, чтобы выяснить назначение раздела.

Род Смит
источник
blkidхорошее предложение. Кроме того, у вас есть хороший список соответствующих предостережений. +1
John1024
1

Это получит список разделов NTFS:

fdisk -l | awk '/NTFS/{print $1;}'

Вы не сказали, что вы хотели сделать с этой информацией. Обратите внимание, что не все эти разделы обязательно являются загрузочными.

Род Смит предлагает использовать blkid. Чтобы получить аналогичный список разделов NTFS blkid, используйте:

blkid -t TYPE="ntfs" -o device
John1024
источник
Справедливо. В основном это связано с system32. Благодарю.
Майкл Бэйли
Это просто проверяет код типа раздела, который может быть неточным. Кроме того, до недавнего времени fdiskне работал с GPT-дисками, поэтому этот тест не пройден на GPT-дисках с более старыми версиями fdisk, такими как та, которая все еще используется с Ubuntu 14.04 (последняя долгосрочная версия поддержки Ubuntu).
Род Смит
0

Вы можете посмотреть на таблицу разделов устройства хранения, чтобы найти тип раздела. Если это NTFS, это, вероятно, какой-то вкус Windows. Если это ext4, это, вероятно, какой-то вкус Linux. Если это какая-то разновидность HFS +, то, вероятно, какая-то разновидность OS X.

Spiff
источник