LINUX.ORG.RU

Установка GNU/Linux на раздел Windows без редактирования таблицы разделов

 , , ,


0

1

Я тут подумал, что для виндузятников, которые очень хотят попробовать линукс, но LiveCD или LiveUSB не дают всей полноты ощущений, а редактировать таблицу разделов боятся, теоретически можно установить линукс на комп с Windows, не трогая разделы вообще. Нужно ли — это вопрос, конечно, но идея такая:

1а. На старом компе ставим grub4dos, загрузку grubldr прописываем в boot.ini (для NT4, 2000, XP) или реестр виндозагрузчика (Vista, 7 и позднее).
PS. А можно ли взять GRUB2 вместо grub4dos? Он по идее fat и ntfs тоже умеет. А может syslinux?

1б. На новом компе просто кидаем grub.efi и grub.cfg в ESP и при необходимости добавляем в меню зарузки, хотя я видел варианты EFI, которые позволяет запустить произвольный EFI-файл через примитивный файл-менеджер.

2. Создаём большой пустой файл, например rootfs.sys на несколько гигабайтов, mkfs-им и распаковываем туда корневую файловую систему из тарболла или debootstrap.

3. Формируем initramfs который будет содержать ntfs-3g и всё прочее для доступа к файлу из пункта 2 и монтирования его как корневой файловой системы.

4. Прописываем запуск ядра и initramfs в конфиге загрузчика из пункта 1.

Всё. По идее линукс должен будет запускаться. Если у вас UEFI, из этого линукса можно попробовать efibootmgr прогнать и добавить boot entry для груба.

Раньше что-то такое было в Ubuntu и Debian, но сейчас вроде от этого варианта установки отказались.

Ещё такой вариант можно применить, например, на взятом на время ноутбуке, где нежелательно сносить изначальную ОС или слишком сильно её ковырять.

Если что, вариант я этот не рекомендую! Если есть возможность поставить на отдельный раздел — это всегда лучше.

Интересно, кто-нибудь так делать пробовал?

★★★★★

Последнее исправление: Xenius (всего исправлений: 4)

Раньше что-то такое было в Ubuntu и Debian, но сейчас вроде от этого варианта установки отказались.

почему бы это

t184256 ★★★★★
()
Ответ на: комментарий от t184256

Ну, потому, что в 97% случаев лучше просто удалить раздел Windows вместе со всем содержимым или ужать его, например?

Xenius ★★★★★
() автор топика
Последнее исправление: Xenius (всего исправлений: 3)
Ответ на: комментарий от t184256

Не везде BIOS поддерживает загрузку с USB. С помощью груба и ядра на разделе Windows можно этот недостаток преодолеть.

Xenius ★★★★★
() автор топика
Ответ на: комментарий от Xenius

Не везде BIOS поддерживает загрузку с USB.

Да-да, примерно с отставанием в 5 лет от этого сей сомнительный способ загрузки инсталлера и умер.

t184256 ★★★★★
()
Ответ на: комментарий от Xenius

Не везде BIOS поддерживает загрузку с USB

В каком культурном слое нужно откапывать такие биосы? У меня с USB умеет грузиться даже бюджетная фоксконновская мать 2005 года под 754 сокет.

qtm ★★★
()
Ответ на: комментарий от qtm

У меня с USB умеет грузиться даже бюджетная фоксконновская мать 2005 года под 754 сокет.

Открою тебе секрет. Компьютеры изобрели задолго до 2005-го года и многие из них до сих пор работают.

На компьютер с Windows или DOS, но без USB и без CD-ROM (или если нет болванок), как предлагаешь линукс ставить?

Xenius ★★★★★
() автор топика
Последнее исправление: Xenius (всего исправлений: 1)
Ответ на: комментарий от Xenius

На компьютер с Windows или DOS, но без USB и без CD-ROM (или если нет болванок), как предлагаешь линукс ставить?

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

andytux ★★★★★
()
Ответ на: комментарий от andytux

Хороший способ, если есть возможность. Но бывает, что переходника IDE-на-USB в наличии нет или в целевом компе не IDE. а например RLL или MFM или что-то экзотическое.

Тогда как?

Xenius ★★★★★
() автор топика
Ответ на: комментарий от Xenius

RLL или MFM

Слышал я такие слова, но никогда не видел. С ними, более вероятно, на первый план выйдет проблема размера. Даже 50-мегабайтный «Damn small linux» может оказаться для них слишком огромным.

andytux ★★★★★
()
Ответ на: комментарий от andytux

Так зачем брать дистрибутив с GUI? Хотя были 300-мегабайтные MFM

Первая дискета Slackware 1.01 содержит в себе ядро и все базовые утилиты линукс — то есть считай уже дистрибутив.

Xenius ★★★★★
() автор топика
Последнее исправление: Xenius (всего исправлений: 2)

Жесткий изврат, конечно, но занятно.

crutch_master ★★★★★
()

Puppy вполне можно на раздел винды поставить и использовать

irton ★★★★★
()
Ответ на: комментарий от Xenius

Открою тебе секрет, на компьютерах, выпущенных до 2005 года современный линукс нормально работать не будет.

qtm ★★★
()
Ответ на: комментарий от qtm

Что ты понимаешь под нормальной работой? Если без иксов — вполне себе всё работает. А иксы нужны далеко не для всех задач.

С иксами, в принципе, тоже, но тут уже с оговорочкой. Современный firefox на Servo не запустится, например.

С KDE5 и Gnome3 скорее всего тоже будет не всё гладко, но Xfce работает.

Xenius ★★★★★
() автор топика
Последнее исправление: Xenius (всего исправлений: 2)
Ответ на: комментарий от Xenius

такое дерьмо обычные люди уже повыкидывали. а лоровские плюшкины и так осилят туда линупс вкатать без костылей

anonymous
()
Ответ на: комментарий от Xenius

А без поддержки процев тех времен тоже будет работать? А то, знаешь, из ядра регулярно выпиливают никому ненужный мусор.

qtm ★★★
()

booty формирует squashfs-образы, а initrd проверяет все диски, откуда squashfs может быть подключён и загружен. таким образом booty является готовым решением для установки линукса на ntfs раздел.

вообще, booty формирует iso-образы, а благодаря uefi содержимое образа может быть просто скопировано на раздел и оно будет работать.

то есть, запускаешь booty, получаешь iso, копируешь его содержимое на диск fat32 / ntfs и успешно загружается через uefi без предварительной установки всяких загрузчиков.

Spoofing ★★★★★
()
Ответ на: комментарий от t184256

что жесть? так делают все livecd образы.

вот ты записал ISO на диск, откуда загруженный vmlinuz/initrd узнает, что ему надо взять файлы с диска? файлы лежат на диске, а им может быть любое /dev устройство.

он щупает /dev/sr0, а это может быть /dev/sr1, и так далее. вот он и пробует их все подряд.

вот ты записал iso образ на флешку, откуда линуксу узнать, какое /dev устройство является флешкой? правильно! он будет делать mount /dev/sdX где X это все разделы всех устройств подряд.

и методом, который предлагает ТС, можно загрузиться с любой файловой системы. если ядро поддерживает mount -t ntfs, значит он сможет смонтировать условное /dev/sda4, где лежат файлы /media/system/*.squashfs, и booty успешно загрузит систему. вот.

Spoofing ★★★★★
()
Последнее исправление: Spoofing (всего исправлений: 1)
Ответ на: комментарий от Spoofing

файлы лежат на диске, а им может быть любое /dev устройство.

Еще скажи "c произвольным, заранее неизвестным label, partlabel, uuid или partuuid ".

вот ты записал iso образ на флешку, откуда линуксу узнать, какое /dev устройство является флешкой? правильно! он будет делать mount /dev/sdX где X это все разделы всех устройств подряд.

Неправильно / не будет. Смонтирует нужный.

t184256 ★★★★★
()
Ответ на: комментарий от t184256

Неправильно / не будет. Смонтирует нужный.

дистрибутивы разные. может в какой-нибудь Ubuntu заранее устанавливают LABEL, чтобы затем через /dev/by-label его смонтировать, но очень много дистрибутивов которые так же брутфорсом пробуют все блочные устройства из /dev подряд на попытку выполнить mount.

Еще скажи «c произвольным, заранее неизвестным label, partlabel, uuid или partuuid ».

про это я не подумал, спасибо. я реально не видел другого варианта, кроме как монтировать все подряд. теперь допишу в свою booty чтобы можно было смонтировать один конкретный label/uuid.

Spoofing ★★★★★
()
Ответ на: комментарий от qtm

А без поддержки процев тех времен тоже будет работать? А то, знаешь, из ядра регулярно выпиливают

i486 ещё не выпилили, а i386 найти с требуемым объёмом памяти для запуска хотя бы самого ядра — задача нетривиальная. На такие компы только FreeDOS или совсем старый дистрибутив.

Xenius ★★★★★
() автор топика
Ответ на: комментарий от Spoofing

но очень много дистрибутивов которые так же брутфорсом пробуют все блочные устройства из /dev подряд на попытку выполнить mount.

боюсь, что оба твои.

t184256 ★★★★★
()
Ответ на: комментарий от Xenius

Поддержка - это не только про архитектуру.

qtm ★★★
()
Ответ на: комментарий от Spoofing

он будет делать mount /dev/sdX

Кстати, пишу тебе с хоста, где никаких /dev/sdXY, только /dev/nvmeXnYpZ и /dev/mmcblkXpY. Тупо обычный ноут, каких многие миллионы.

t184256 ★★★★★
()
Ответ на: комментарий от t184256

а ещё раньше были /dev/hdX, а в виртуалках это /dev/vdX, а через дцать лет /dev/nvmeXnYpZ тоже станет деприкейтед.

я это к тому, что это всё естественно и само собою разумеющееся. софт не заброшен и он будет развиваться в ногу со временем.

Spoofing ★★★★★
()
Ответ на: комментарий от Spoofing

это я к тому, что ты себе сам проблем создал на пустом месте. мог не создавать, /dev/disk/by-* были и будут смотреть на тебя с укоризной.

t184256 ★★★★★
()

Редактировать таблицу разделов боятся, но ставить левый загрузчик не страшно?

xmikex ★★★★
()
Ответ на: комментарий от Shadow

По сети же

Ну, если ты найдёшь где-то вторую сетевую карту с коаксиальным разъёмом, коасиальный кабель, T-коннектор и парочку терминаторов...

Xenius ★★★★★
() автор топика
Ответ на: комментарий от Spoofing

можно загрузиться с любой файловой системы. если…

И главное слово здесь - «если». Пример с DSL привел выше. Даже с самой казалось-бы родной - ext4, могут быть накладки. Например, *бунту 14 не загрузится с раздела, созданного *бунту 18.

andytux ★★★★★
()

Ты предлагаешь откопать wubi что ли? Там как раз делался файл-образ на NTFS, куда ставилась убунта.

Radjah ★★★★★
()
Ответ на: комментарий от Radjah

Если взглянуть чуть шире, то wubi - это немного измененный режим «persistent».

andytux ★★★★★
()
Ответ на: комментарий от Radjah

Ты предлагаешь откопать wubi что ли? Там как раз делался файл-образ на NTFS, куда ставилась убунта.

Не, я предлагаю вручную сделать то же самое в любом дистрибутиве, не ограничиваясь убунтой.

Xenius ★★★★★
() автор топика
Ответ на: комментарий от Xenius

А практический смысл этого какой?

Если чешутся руки потыкать линуксы, но боязно за данные, то проще поставить на виртуалку.

Если чешутся руки потыкать на живом железе, то можно поставить хоть на ненужный диск, хоть на флешку.

Так и так получается дуалбут, только твой вариант чуток замудрённее и с той же опасностью запороть данные.

Radjah ★★★★★
()
Ответ на: комментарий от Radjah

Если речь о ноутбуке, то там может быть только встроенный диск и всё. И может не быть USB-порта для флешки. И даже если есть, может не быть поддержки загрузки с флешки.

Xenius ★★★★★
() автор топика

Секретная информация

Систему можно грузить из vhd/img-файла. И linix и windows. Продвинутые виндоводы такое используют ради нескольких разных версий windows на одном диске (например win 7 32 bit + win 10 64 bit).

Образы можно держать на ntfs. Дальше гугли.

anonymous
()

Свали на винфак к своим.

anonymous
()

Раньше что-то такое было в Ubuntu и Debian, но сейчас вроде от этого варианта установки отказались.

Думаю что при помощи Unetbootin, указав какой-нить livecd iso можно загрузиться в него без флеша и двд минуты за 3-4. Во всяком случае на старые ноуты без возможности загрузки с флеша я при помощи него ставлю linux на винду.

пысы типа вот такого https://i.stack.imgur.com/ZlfAy.png

vtVitus ★★★★★
()
Последнее исправление: vtVitus (всего исправлений: 1)
Ответ на: комментарий от Xenius

без USB и без CD-ROM (или если нет болванок), как предлагаешь линукс ставить?

С дискеток, очевидно же.

LamerOk ★★★★★
()
Ответ на: комментарий от Xenius

вот так: https://i.stack.imgur.com/ZlfAy.png ( UNetbootin ) Правда последние версии не работают уже из под winxp, но взяв релиз за 2018-2019 год - легко и очень быстро без геморроя и смс.

vtVitus ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.