Какова опция “Bootable flag” при установке дистрибутива?

"n спустя недели после того, как дата" легка с датой GNU (1):

$ date -d 'now + 3 weeks'
Tue Dec  6 23:58:04 EST 2011
$ date -d 'Aug 4 + 3 weeks'
Thu Aug 25 00:00:00 EST 2011
$ date -d 'Jan 1 1982 + 11 weeks'
Fri Mar 19 00:00:00 EST 1982

Я не знаю о простом способе вычислить различие между двумя датами, но можно перенести немного логики вокруг даты (1) с функцией оболочки.

datediff() {
    d1=$(date -d "$1" +%s)
    d2=$(date -d "$2" +%s)
    echo $(( (d1 - d2) / 86400 )) days
}
$ datediff '1 Nov' '1 Aug'
91 days

Подкачка d1 и d2 если Вы хотите вычисление даты другой путь или становитесь немного более необычными, чтобы заставить его не иметь значение. Кроме того, в случае, если существует не-DST к переходу DST в интервале, один изо дней будет только 23 часа длиной; можно компенсировать путем добавления ½ дней к сумме.

echo $(( (((d1-d2) > 0 ? (d1-d2) : (d2-d1)) + 43200) / 86400 )) days

31
13.04.2018, 05:43
3 ответа

Флаг начальной загрузки с древних времен, где Вы указали бы на запись раздела MBR как загрузочную, таким образом, Вы могли указать, где загрузчик находился.

На современном OS'es это широко не использовано, поскольку MBR состоит из минимального перегружателя, который загружается или в его собственный раздел или переходит к другой области на диск, где код загрузчика сохранен. (MBR может содержать или исполняемый код или таблицу раздела начальной загрузки среди прочего. См. также эту ссылку на статью о MBR).

Как пример, GRUB записан в MBR и загружает любой раздел, который Вы выбираете.

См. также эту (довольно маленькую) страницу Wikipedia о флаге начальной загрузки: en.wikipedia.org/wiki/Boot_flag

32
27.01.2020, 19:38
  • 1
    GRUB не должен быть записан в MBR, хотя, и может быть загружен MBR прежней версии. –  Ignacio Vazquez-Abrams 30.10.2011, 06:07
  • 2
    @IgnacioVazquez-Abrams Исправляет, все, в чем требуется, загрузчик загрузочного сектора любого раздела. Я не хотел погружаться в функциональность GRUB слишком много, как этот вопрос был о флагах начальной загрузки и MBR, а не о GRUB по сути. –  polemon 30.10.2011, 07:02

Каждая операционная система, которая использует некоторые полученные из ПК аппаратные средства, должна быть загружена.

Это запускается с древнего, независимого от операционной системы поиска начальной загрузки, который инициируется BIOS (базовая система ввода-вывода) ПК или сервера.

Та часть BIOS кода пытается загрузить MBR из первого подходящего устройства загрузки. Поисковый порядок на устройство загрузки настраивается в BIOS Setup: какой (диск) устройство сначала, который затем и так далее.

MBR "прежней версии" пытается найти первый основной раздел, который отмечен как загрузочный и проверяет, существует ли короткий волшебный шестнадцатеричный код того раздела.

Если шестнадцатеричный код найден, остальное (программа начальной загрузки) выполняется BIOS. Здесь начинается, начальная загрузка операционной системы - может это быть DOS, Windows, Linux...

1
27.01.2020, 19:38
  • 1
    1. Это не BIOS, который проверяет, чтобы видеть, является ли раздел загрузочным. –  Ignacio Vazquez-Abrams 30.10.2011, 06:06
  • 2
    BIOS пытается загрузить MBR (отображение No Operating System если надлежащее магическое число не найдено), и затем MBR берет его оттуда. MBR прежней версии ищет активный основной раздел, но другой MBRs (личинка, lilo, и т.д.) может принять решение действовать по-другому. –  Ignacio Vazquez-Abrams 07.11.2011, 00:06

Сначала я думал, что это ошибка в Grub2. Некоторые BIOS, кажется, проверяют, если хотя бы один раздел помечен как загрузочный. После долгого исследования я заметил, что, потому что не было никакого способа загружаться от HDD или USB-Stick вообще. Это означает, что даже если волшебные байты в конце MBR являются правильным, а загрузочный код в MBR действителен, BIOS будет игнорировать это устройство и пропустить его в загрузочной последовательности до тех пор, пока был установлен загрузочный флаг для по меньшей мере одного раздела. Проверено на Fujitsu P772 и HP Probook 6570B.

4
27.01.2020, 19:38

Теги

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