Как проверить, имеет ли диск Linux внутри

Вы компилировали свое ядро сами? Попробуйте это...

http://sirlagz.net/2011/07/19/nfs-not-working/

2
01.09.2014, 15:35
2 ответа

Процесс определения того, "работает ли Linux" на диске, состоит из трех элементов.

  1. составить список разделов для проверки
  2. монтировать каждый раздел
  3. проверить каждый раздел на наличие некоторых "волшебные" файлы
  4. размонтируют каждый раздел

Для шага 1 вы можете использовать 'parted', вызванный через subprocess.check_output () , и проанализировать возвращаемое значение.

Для шагов 2 и 4 используйте «mount» соотв. 'umount' через subprocess.check_call () , так как нет необходимости в синтаксическом анализе вывода.

Остается шаг 3, где вы можете использовать os.path.exists () для файлов, которые хотите изменить. Если вы не хотите их обновлять, вы также можете просто open () файлы и перехватить исключение, если они не существуют (в этом случае у вас, вероятно, нет раздела под управлением Linux. ).

Имейте в виду, что любые подкаталоги дерева каталогов Linux могут находиться в собственном разделе. Поэтому проверка, например, /mnt/boot/grub/grub.cfg может не работать ни в разделе 1, ни в разделе 2, поскольку раздел 2 смонтирован в / boot раздела 1.

2
27.01.2020, 22:13

, если вы монтируете разделы, вы сможете проверить, установлен ли внутри Linux Linux. Чтобы узнать, какой дистрибутив, проверьте файлы / etc / os-release , / etc / lsb-release , / etc / issue и / etc. /issue.net . Вы найдете название дистрибутива хотя бы в одном из них.

0
27.01.2020, 22:13

Теги

Похожие вопросы