linux зачем нужен раздел boot
Зачем держать /boot на отдельном разделе.
Интересует как практическая, так и эволюционно-историческая сторона вопроса в ретроспективе (середина девяностых, конец «нулевых»). З.Ы. Просто в мануале манджаро для новичков они учат как создавать и монтировать раздел в /boot,хотя и сам давненько намеревался спросить. З.З.Ы. Вместо бубны поставил Дебиан, но и эту школоло поделку хочется потестить
GRUB не с каждой ФС умел грузиться, поэтому делали /boot на ext2. Да и сейчас делают, если rootfs на каком-нибудь ZFS.
+ отмонтировать после успешной загрузки или более мягкий вариант поставить на него кучу опций монтирования типа noexec, ro и т.д.
недавно пришлось так делать. Ядро уже умеет f2fs, а вот lilo пока ещё не умеет. Точнее lilo плевать откуда грузить, но настраивать его надо ручками, в hex редакторе. Да ну его нафиг, проще /boot/ сделать.
А вообще, с initrd boot не нужен, даже если FS поддерживается только модулем. ИМХО разумно сделать маленкую rootfs в EXT4. На 1Гб например.
В общем понял, респект. Другие варианты также принимаются. Да и еще: что-то анонов давно не было слышно. В отпуске что-ли? Ау!
отмонтировать после успешной загрузки или более мягкий вариант поставить на него кучу опций монтирования типа noexec, ro и т.д.
зачем? Если твою систему порутали, то хоть обставься, ты труп. А если не порутали, то ничего с boot ты не сделаешь.
И да, у меня оно ВООБЩЕ не монтируется, только для тестов. Отмонтировать его НЕ нужно.
Тонкий троллинг
анонов вообще не слышно. Измельчал анон нынче.
Вот ведь любители в крайности впадать. Можно убивать плохо защищенную систему и без рута. Вот прикинь есть у тебя фс в которой ты можешь файлы создавать. А на этой фс у тебя еще и /boot и /log висит. И начинаешь ты создавать 100500 файлов-однобайтников и директорий внутри директорий и так пока ноды не кончатся или фс не начнет подыхать. Вот что тогда будет с системой?
Самая маленькая проблема, это если процессы не смогут писать в лог. Но знаешь ли ты что после этого начинается с системой?
Slackware Kung-Fu. Понравилось. Ъ
Я всегда так делаю. Скорее по привычке, но можно в этом и всякие плюсы найти.
Да и сейчас делают, если rootfs на каком-нибудь ZFS.
только те, у кого криокамера вышла из строя, и болезнь снова прогрессирует.
А еще так типа безопаснее — read-only /boot дополнительно защищает от бут-китов.
bootkit’ы под Туксом?! Пруф в студию, а то бродит по Европе призрак, призрак secureboot.
Иметь ядро и initrd на случай подыхания ФС
Зачем держать /boot на отдельном разделе.
Абсолютно незачем. Это удел некрофилов и идиотов.
Исторически он происходит от загрузчика, который умел грузиться только с регистрового пульта и содержал в себе драйвер накопителя на перфокартах или на магнитной ленте. Потом появился юникс, и он стал грузиться с ленты и содержал драйвер винчестера, с которого шла основная загрузка системы, а поскольку в юниксах раздел для работы куда-то должен быть примонтирован, ему отвели /boot. Вообще, это позволяло оперативно менять конфигурацию компьютера при минимальных затратах на изменение начального загрузчика.
Вот ведь любители в крайности впадать. Можно убивать плохо защищенную систему и без рута. Вот прикинь есть у тебя фс в которой ты можешь файлы создавать. А на этой фс у тебя еще и /boot и /log висит. И начинаешь ты создавать 100500 файлов-однобайтников и директорий внутри директорий и так пока ноды не кончатся или фс не начнет подыхать. Вот что тогда будет с системой?
ничего не будет. Будет работать, но не очень хорошо.
Ты другое скажи: при чём тут /boot/? Туда ВООБЩЕ ничего не пишется, и не читается. Там запись/чтение только при обновлении/пересборке ядра/настройки загрузчика. У меня так вообще система не пострадает, ежели этот /boot/ прибить нафиг. Да, будет так загружаться. Без /boot/. Ненужный каталог.
На загрузке там есть чтение ядра, но в lilo не из /boot/, а с того места, где БЫЛ этот /boot/.
Самая маленькая проблема, это если процессы не смогут писать в лог. Но знаешь ли ты что после этого начинается с системой?
K.О. докладывает: система не сможет писать в лог. Да, я знаю, неприятно и неудобно. Но таки не фатально.
PS: и по поводу «убивать без рута», то просто не нужно неруту прав давать куда ненужно.
Хорошо ли сделать отдельный раздел для / boot?
Это пережиток «старых», когда у машин были проблемы с большими жесткими дисками. Идея /boot раздела заключалась в том, чтобы сделать раздел всегда доступным для любой машины, к которой подключен диск. Если машина может добраться до начала привода (более низкие номера цилиндров), она может загрузить систему; Оттуда ядро Linux сможет обойти ограничение загрузки BIOS и обойти проблему. Поскольку современные машины сняли это ограничение, более не существует постоянной необходимости /boot разделения, если только вам не требуется дополнительная обработка других разделов, таких как шифрование или файловые системы, которые изначально не распознаются загрузчиком.
Технически, вы можете обойтись без единого раздела и быть в порядке, при условии, что вы не используете действительно очень старое оборудование (до 1998 года или около того).
Если вы решили использовать отдельный раздел, просто предоставьте ему достаточно места, скажем, 200 МБ. Этого будет более чем достаточно для нескольких обновлений ядра (которые потребляют несколько мегабайт каждый раз). Если / boot начинает заполняться, удалите старые ядра, которые вы не используете, и настройте загрузчик, чтобы распознать этот факт.
Одна из причин наличия раздела / boot состоит в том, что он допускает такие вещи, как зашифрованный /, где ядро и initrd загружаются из незашифрованного раздела и затем используются для монтирования зашифрованного корневого раздела, содержащего операционную систему. Это не должно иметь значения для общего использования.
Добавление комментария от Риккардо Мурри :
Существуют также исторические причины наличия отдельной / boot: в прежние времена BIOS мог обращаться только к части большого диска, поэтому все файлы, необходимые для загрузчика ОС, должны были храниться в зоне, доступной для BIOS. Отсюда отдельный раздел / boot. Это больше не применяется, хотя
Основная причина для таких крупных корпоративных дистрибутивов, как Red Hat, и я думаю, что Suse использует отдельный / boot, заключается в том, что они используют LVM по умолчанию, а Grub нельзя использовать для загрузки из LVM. Это так просто.
Последняя причина, менее важная, чем указанная, заключается в том, что она может позволить ПК оставаться загрузочным, если часть диска повреждена. Чем больше разделов у вас есть, тем проще будет просто не монтировать раздел из-за ошибки.
Иногда это может быть полезно, но обычно все равно есть лучший способ.
РЕДАКТИРОВАТЬ: Еще один момент: предполагая, что Linux, использование LVM может быть хорошим способом избежать любых потенциальных проблем, он позволяет легко изменять размеры «разделов» и добавлять новое пространство без всяких проблем.
Отвечая на вопрос «какие проблемы это может вызвать», как и в случае любого разбиения, всегда существует риск того, что вам потребуется больше места, чем было выделено изначально. Хотя это маловероятно, в /boot последнее время возникла проблема с предварительным обновлением в Fedora, вызванная небольшими /boot размерами.
Что касается второй части вопроса, может быть полезно поместить в отдельные разделы все, что не зависит от текущего распределения. Кроме того, оставляя дополнительное место на диске, это позволяет при необходимости в будущем либо установить другой дистрибутив, либо выполнить переустановку текущего дистрибутива, предоставив доступ ко всему, что вы хотели бы видеть на обоих.
Кандидатами Obviuos для отдельных разделов являются / usr / local и / home, а также / root. Лично я считаю более эффективным создание пользовательских разделов, монтирование их в произвольной точке монтирования, например / part / data, а затем переход к символическим ссылкам, как в:
Вопрос по разделу /boot
Форматирование в ext2 было актуальным, когда первый grub ещё не поддерживал ext4. Сейчас в этом нет смысла.
Разницу в скорости вы не заметите.
Например, на диске имеем следующую структуру:
Если мы стираем /linux, то вместе с ним стирается и /linux/boot, что приводит к невозможности загрузки в /linux2
А если /boot отдельно:
lampslave
Да, всё равно. А вот если бы это была, например, Ubuntu, достаточно было бы только перегенерировать конфиг. И при удалении любой из операционок сохранялось бы возможность загрузки в другую.
Lynch
Так вот, если например установлены windows и arch, то когда я переустановлю windows, то grub не загрузится, т.е. как я понимаю он затирается. И придётся всё равно восстанавливать grub. И получается нет разницы где находиться /boot, а хочеться понять, какие плюсы того, что я вынесу /boot в отдельный раздел.
Корневая ФС может быть недоступна загрузчику либо программно или аппаратно.
Пример первого варианта: например F2FS появилась недавно, и даже GRUB2 ещё не научился её читать. Так как F2FS обычно используется на флешках и SSD, на которых нежелательны журеалируемые ФС, выходом может быть создание бут-раздела в ext2.
Пример аппаратной недоступности: корневая ФС может находиться на диске, подключенном через плату контроллера IDE или SATA, и не читаться средствами BIOS. Такой случай был одно время у меня самого. В результате я создал бут-раздел на флешке, установил на неё загрузчик, а саму флешку разместил прямо внутри корпуса.
akorop, в чём преимущества grub4dos? GRUB2 можно устанавливать на любую читаемую им ФС, в том числе фат32. После установки он не зависит от ОС, а настраивается правкой конфига. В общем, по всем известным мне параметрам он превосходит grub4dos.
© 2006-2021, Русскоязычное сообщество Arch Linux.
Название и логотип Arch Linux ™ являются признанными торговыми марками.
Linux ® — зарегистрированная торговая марка Linus Torvalds и LMI.
Разбивка диска для установки Linux
Для установки Windows достаточно просто выбрать раздел диска. Система сама его отформатирует и установит туда все файлы. Но Linux позволяет намного гибче настроить расположение системы и ее файлов. Во время установки вы можете разместить различные папки с системными или пользовательскими файлами на разных разделах.
Это очень интересная функция, повышающая надежность системы, а также удобство ее использования. Наша сегодняшняя статья ориентирована на новичков, мы рассмотрим как нужно выполнять разбивку диска для установки linux. Поговорим зачем это нужно, какие размеры для разделов выбирать и так далее.
Немного теории
Начнем с того, что в Linux не существует дисков, таких какими мы их знаем в Windows. Здесь все намного более прозрачно. Есть разделы диска, а также существует одна корневая файловая система.
В качестве корневой файловой системы подключается выбранный вами для этого раздел, а уже к нему, в подкаталоги подключаются другие разделы. Сюда же подключаются флешки, DVD диски и другие внешние носители. Например, раздел загрузчика подключается в /boot, в качестве /sys, /proc, /dev подключаются виртуальные файловые системы ядра, а в качестве /tmp присоединяется оперативная память.
Но для пользователя все это выглядит как единая файловая система. Складывается впечатление, что все файлы находятся на корневом разделе, а не раскиданы по нескольким. Вообще говоря, можно установить Linux на один раздел, не разбивая файловую систему, но так делать не рекомендуется, ниже мы рассмотрим почему.
Зачем так делать?
У каждого из разделов своя задача. Разбивка диска для linux между несколькими разделами изолирует их один от другого. Если на одном разделе, например, домашнем закончится место, то система все еще сможет нормально работать, потому что это никак не касается корневого раздела.
Вынесение домашнего раздела также очень полезно при переустановках. Так вы сможете переустановить систему но сохранить все свои данные. Или же еще можно использовать одного пользователя в нескольких системах.
На серверах иногда выделяются разделы /var и /usr. Это нужно опять же для изоляции и безопасности, например, вы можете запретить с помощью опции монтирования выполнение файлов с раздела /var.
Разбивка диска для Linux
В стандартной разбивке диска для Linux используется четыре раздела:
Сейчас мы не будем рассматривать как выполняется разбивка диска для установки linux на практике. Все это делается в установщике в пару кликов. Но более детально остановимся на файловых системах и их размерах, чтобы вы точно знали какие значения выбирать.
Раздел /boot
Разбивка жесткого диска linux начинается с создания этого раздела. Здесь все очень просто. На этом разделе размещаются файлы настройки и модули загрузчика, которые считываются при старте Grub, а также ядро и initrd образ. Эти файлы занимают не так много пространства, около 300 Мегабайт, но в некоторых дистрибутивах здесь могут размещаться еще и темы Grub, а также со временем будут накапливаться старые версии ядер, так что лучше запастись местом и выделить 500 Мегабайт. Этого будет вполне достаточно.
Что касается файловой системы, то нам нужна самая быстрая и простая. Задача этого раздела сводится к тому, чтобы как можно быстрее выдать файлы во время загрузки. Журналирование здесь не нужно, поскольку оно только замедлит загрузку, а файлы изменяются очень редко. Поэтому наш выбор ext2.
Раздел /
Это главный раздел вашей системы. На нем будут находиться все системные файлы, и к нему будут подключаться другие разделы. Сюда же мы будем устанавливать все свои программы и игры.
Файловая система должна быть стабильной, потому что в инном случае вы рискуете потерять всю систему при неудачном выключении компьютера. А поэтому нам нужна журналируемая файловая система. Можно брать ext4, resierfs или btrfs. Сейчас последняя стала заметно стабильнее. Но строго не рекомендуется брать что-то вроде XFS, потому что она очень чувствительна к сбоям.
Но нельзя использовать ntfs или fat. Дело в том, что ядро использует некоторые особенности файловых систем для правильной работы, например, жесткие ссылки на конфигурационные файлы или система inotify для уведомления об изменениях в файловой системе. А эти файловые системы таких функций не поддерживают.
Раздел swap
Это раздел для ваших файлов. Здесь будут ваши загрузки, документы, видео, музыка, а также настройки программ. Тут мало места быть не может поэтому берем все оставшееся. Файловая система так же как и для корня нужна стабильная и быстрая. Можно брать ту же ext4 или btrfs, или даже xfs, если вы уверенны что неожиданных сбоев и отключений питания быть не должно. разметка диска для linux для этого раздела выполняется в последнюю очередь.
Динамическое изменение размера разделов
Очень часто бывает, что разметка диска для установки linux уже выполнена система установлена и нормально работает, а через некоторое время мы понимаем, что места под тот или иной раздел было выделено мало. В таких случаях нас ждет долгая переразметка или даже полное удаление разделов, если вы сразу не предвидели такой вариант.
Во-первых, можно создать резервный раздел, после того, для которого в будущем может потребоваться много места, оставить 10 Гб про запас, чтобы потом не было проблем, не такая уж плохая идея.
Во-вторых, можно использовать LVM. Это виртуальная прослойка для работы с дисками в Linux, позволяющая динамически изменять размер разделов независимо от свободного места после и до них.
Выводы
Теперь вы знаете как выполняется разбивка диска linux и сможете справиться этой задачей. Правильная разбивка сэкономит вам потом очень много времени. Если у вас остались вопросы, спрашивайте в комментариях!
Для чего действительно нужен раздел / boot?
Я читаю относительно старый текст о разделах Linux и файловых системах ( Сертификационная Библия LPIC 1 ). Это говорит:
Некоторые версии загрузчиков Linux не могут получить доступ к ядру, которое находится за пределами первых 1024 цилиндров на диске. Поместив раздел / boot в начало диска, вы можете быть уверены в отсутствии проблем при доступе к ядру при загрузке. Эта проблема чаще всего проявляется в случаях двойной загрузки Linux вместе с другой операционной системой, которая находится в первом разделе.
Почему у загрузчика « нет доступа к ядру за пределами первых 1024 цилиндров на диске »?
Кроме того, что означает « поместить раздел / boot в начало диска »?
Это ограничение, налагаемое наличием очень старого BIOS и загрузчика, а не самого Linux. BIOS сможет получить доступ только к первым 1024 цилиндрам диска (см. Здесь дополнительную информацию о том, что такое цилиндры / головки / сектора). Это ограничение распространяется на загрузчики, которые из-за своей простой природы не будут иметь своих собственных драйверов дисков и будут использовать службы BIOS для доступа к диску.
Ограничение больше не является проблемой, поскольку оно применяется только к старым BIOS. Кроме того, многие современные загрузчики (например, GRUB) имеют свои собственные драйверы дисков, поэтому им не нужно полагаться на службы BIOS. Современные загрузчики могут использовать /boot для других целей, но больше не требуется находиться как на отдельном разделе, так и в первых 1024 цилиндрах (хотя во многих случаях необходимо иметь /boot отдельный раздел).
История
Интерфейс BIOS немного изменился за последние три десятилетия или около того, но его ограничения по размеру изо всех сил старались не отставать от размеров диска, в результате чего старые BIOS и загрузчики могли выдавать 32 МБ, 512 МБ, 2 ГБ, 8 ГБ (и, возможно, другие пороги, которые я не помню). Загрузчик должен иметь возможность использовать интерфейс BIOS для загрузки всех частей, необходимых для прямого доступа к диску. Обычно загрузчики не содержат драйверов для всех дисковых контроллеров, поэтому все, что нужно для загрузки ядра Linux (и initrd / initramfs), должно использовать интерфейс BIOS и, следовательно, должно помещаться в начале диска.
Обратите внимание, что это ограничение BIOS или загрузчика, а не самого Linux или дистрибутива.
Отдельно /boot сегодня
В системе с недавним BIOS и недавним загрузчиком, или с UEFI ограничения по размеру больше не актуальны: размеры дисков теперь могут долго догонять. Однако есть и другие варианты использования, которые делают отдельный /boot раздел полезным. Это позволяет основной системе находиться на устройстве RAID, которое не поддерживается загрузчиком, или на типе файловой системы, который не поддерживается загрузчиком. Это позволяет основной системе находиться на зашифрованном устройстве, которое Linux может расшифровать, но не загрузчик.
Если ни одно из этих ограничений и вариантов использования не применимо к вам, хранение /boot в качестве отдельного раздела бесполезно. Но они затрагивают достаточно людей, которые поддерживают большинство дистрибутивов.
Другая причина, помимо упомянутой проблемы BIOS, заключается в том, что отдельный /boot раздел позволяет использовать файловую систему для / тома, который не понимает загрузчик (не ограничиваясь загрузкой списка заблокированных пользователей, как с помощью lilo ).
Загрузка трудна
INT13H
Это серия функций 13H прерывания ( или INT в ассемблере ), которую BIOS предлагает в качестве сервисов для доступа к диску. Они все еще даже используются сегодня для систем BIOS в процессе загрузки, чтобы перейти с прошивки на диск.
ЦЫПЛЕНОК И ЯЙЦО
ЛУЧШЕ И ЛУЧШЕ
Этот барьер встречался и преодолевался много раз. Каждый раз карта абстрагируется и кодируется новым, умным и менее точным способом. И поэтому в настоящее время для BIOS практически невозможно точно сопоставить диск. Адресация логических блоков в настоящее время является стандартом де-факто, хотя некоторые переводы Cylinder / Head / Sector (или CHS) все еще необходимы. То, что микропрограмма материнской платы потеряла в точности / ответственности, такие расширения абстрагировали и добавили к ответственности микропрограммы диска, чтобы заполнить пробелы.
Это игра в кошки-мышки, которая упоминается в вашем вопросе. Когда BIOS не может понять диск за определенной точкой из-за его огромного размера, тогда любые данные, которые вы, возможно, захотите получить для себя при загрузке, например, загрузчик или ядро, лучше не располагать за этой точкой. Это откуда /boot взялось.
МОЖЕТ БЫТЬ АКТУАЛЬНО ЛУЧШЕ
- linux дома но зачем
- linux не видит мышь usb что делать