Автономная псевдоустановка ArchLinux, шаг за шагом

Эта статья была отправлена ​​мне нашим другом Хьюго Флорентино по электронной почте, где он рассказывает нам о своем опыте попытки установить ArchLinux без какого-либо репозитория, просто используя установочный диск.

Псевдоинсталляция

Пару дней назад я загрузил ISO-образ ArchLinux, чтобы выполнить домашнюю установку. Ранее я использовал другие дистрибутивы, позволяющие установить хотя бы минимальную базу с компакт-диска, и хотел сделать что-то подобное, но любопытно, что процесс установки Arch не предназначен для компьютера, у которого нет доступа в Интернет (побочные эффекты разработчиков, живущих в первом мире).

В моем случае на моем диске уже были Windows 7 (с ее загрузочным и системным разделами) и Fedora (с ее разделом подкачки и ее выделенным / загрузочным разделом). Идея заключалась в том, чтобы установить Arch там, где раньше была Fedora, не разрушая при этом Windows.

Автономная псевдоустановка ArchLinux

Итак, я загрузился с Arch CD, выбрав x86_64, и без особых слов оставил меня за консолью. Я подумал: «Вау, эти парни серьезно относятся к тому, чтобы не быть дистрибутивом для новичков ... ладно, давай поиграем и посмотрим, что из этого получится».

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

Первое, что я сделал, это изменил раскладку клавиатуры на испанскую из Испании, что оказалось проще, чем я ожидал (есть даже странно названный us-акцент):

loadkeys es

Следующим шагом было смонтировать внешний диск, чтобы сохранить копию MBR в случае возникновения проблем и случайно сохранить важную информацию, которая была у меня в Fedora:

mkdir -p / mnt / tmp1 && mount / dev / sdb1 / mnt / tmp1 dd if = / dev / sda of = / mnt / tmp1 / mbr.bin bs = 512 count = 1

К счастью, LiveCD Arch поддерживает NTFS и имеет встроенный Полуночный командир (MC), поэтому в кратчайшие сроки я закончил сохранение остальной информации.

Затем я отключил диск, удалил временный каталог и физически удалил внешний диск, чтобы снизить риск потенциальных «катастроф».

umount /mnt/tmp1 && rmdir /mnt/tmp1

Поэтому я отформатировал свои разделы, смонтировал корневой и загрузочный раздел и включил подкачку:

mkfs -t ext4 / dev / sda3 mkfs -t ext4 / dev / sda6 mount / dev / sda6 / mnt mkdir -p / mnt / boot mount / dev / sda3 / mnt / boot swapon / dev / sda5

Следующим шагом было мое первое препятствие:

pacstrap /mnt base

Arch, естественно, попытался найти базы данных репозиториев на одном из зеркал, и не смог найти ни одного, всего. пакстрап Это было создание структуры каталогов в / mnt, очень организованной, но явно пустой.

По телефону я спросил пару друзей, которые используют Arch, нет ли возможности установить без доступа в Интернет хотя бы те же пакеты, что и на LiveCD, без копирования репозитория на диск, и они сказали мне, что по крайней мере они не знали, как это делать.

Мне показалась интересной техническая «задача», поэтому я подумал: «Если Arch может войти в систему в режиме LiveCD, он должен иметь возможность установить на жесткий диск, по крайней мере, в том же режиме», поэтому я попытался вручную скопировать файлы и остальная часть учебника (с небольшими странными изменениями), чтобы увидеть, что произошло:

rsync -avl / {bin и т.д, home, lib, lib64, opt, root, sbin, srv, usr, var} / mnt arch-chroot / mnt genfstab -p / >> / etc / fstab echo hpc> / etc / имя хоста ln -sf / usr / share / zoneinfo / Cuba / etc / localtime locale-gen

Следующим шагом было мое следующее препятствие:

mkinitcpio -p linux

Эта команда вызвала некоторые ошибки после прочтения руководства по команде и содержимого файлов. /etc/mkinitcpio.conf y /etc/mkinitcpio.d/linux.preset, Я понял, что команда не смогла найти файл vmlinuz-линукс, поэтому я нажал Ctrl + D, чтобы выйти из среды chroot, и поискал любой файл, который выглядел так:

find / -type f -iname "*vmlinuz*"

Бывает, что LiveCD Arch монтирует загрузочные файлы в каталог / бежать /, поэтому я решил скопировать их на свой / boot / чтобы они были под рукой в ​​моей среде chroot:

cp /run/archiso/bootmnt/arch/boot/{memtest,intel_ucode.img} / mnt / boot / cp / run / archiso / bootmnt / arch / boot / x86_64 / * / mnt / boot / arch-chroot / mnt

Еще одна ошибка, которую я обнаружил при экспериментировании с mkinitcpio, заключалась в том, что не удалось найти метку корневого раздела, я записал его UUID (который я определил с помощью команды blkid) для использования с командой, которая в конечном итоге выглядела так:

mkinitcpio -p linux -k /boot/vmlinuz root=UUID=d85938aa-83b8-431c-becb-9b5735264912

На этот раз сборка завершилась успешно, только с парой предупреждений о модулях, которые не удалось найти, но в моем случае они не понадобились. На всякий случай пересобирал fstab, но уже с указанием UUID:

genfstab -U -p / > /etc/fstab

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

passwd grub-install --target = i386-pc --recheck / dev / sda grub-mkconfig -o /boot/grub/grub.cfg

Наконец, чтобы быть методичным, я снова нажал Ctrl + D, чтобы выйти из chrooted окружения, разобрал все и перезапустил, чтобы посмотреть, что произошло:

umount / mnt / boot umount / mnt перезагрузка

Компьютер перезагрузился, показывая меню Grub с Arch (Windows нигде не появлялась), поэтому я выбрал его, и все, казалось, загружалось нормально, пока ... система не указала, что были ошибки, которые я должен проверить с помощью следующей команды:

journalctl -xb

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

Я сразу подумал: «Плимут ??? Какого черта нужно для среды загрузки консоли? Это не похоже на ПОЦЕЛУ, чтобы сказать. Я уж точно не ставил, да и не надо ".

Но чтобы быть практичным, я подумал: «Хорошо, но хотя бы на это нужно ссылаться в каком-то файле, давайте посмотрим ...»:

find /etc -type f -print0 | xargs -0 grep -i "plymouth"

Удивительно, но в каталоге конфигурации не оказалось файла с текстовой строкой «plymouth». Я тогда подумал: «А, так… ты заставляешь себя со мной? тогда давайте посмотрим, как вы усваиваете «пушку» (как мы говорим на Кубе) и «я построил» плимут с нуля:

vi / usr / bin / plymouth chmod 755 / usr / bin / plymouth

Для тех из вас, кому интересно, что я вложил в этот файл, вот его содержимое во всей его великолепной целостности:

#! / bin / sh выход

Я снова перезагрузился, ожидая какой-то ошибки, и ... удивительно, но systemd был счастлив найти этот «важный компонент», потому что он завершил процесс запуска и без дальнейших задержек оставил меня в консоли. Поскольку я не мог поверить своим глазам, я решил «удалить» Plymouth и перезагрузить компьютер, чтобы посмотреть, что произошло:

rm -fr / usr / bin / plymouth перезагрузка

Как ни странно, на этот раз система запустилась тихо, и меня больше не раздражало отсутствие Плимута. (Нет комментариев)

Добавление Windows в GRUB

Затем оставалось добавить запись Windows в GRUB. Поскольку традиционные маршруты не работали (сочетание grub-mkconfig con ОС-тестовыми пробниками похоже, не работает), я решил создать запись вручную, для чего мне нужно было определить строку загрузчика Windows и UUID загрузочного раздела:

mkdir -p / mnt / winboot && mount / dev / sda1 / mnt / winboot grub-probe --target = hints_string / mnt / winboot / bootmgr grub-probe --target = fs_uuid / mnt / winboot / bootmgr

Это вернуло мне, соответственно, эти две строки:

--hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1
DC788F27788EFF8E

Таким образом я убедился, что возвращенный UUID был таким же, как полученный для этого раздела при выполнении команды blkid. Затем было необходимо создать пользовательскую запись grub с указанными данными:

vi /etc/grub.d/40_custom

В его содержании:

#! / bin / sh exec tail -n +3 $ 0 # Этот файл предоставляет простой способ добавления пользовательских пунктов меню. Просто введите # пунктов меню, которые вы хотите добавить после этого комментария. Будьте осторожны, чтобы # не изменить строку 'exec tail' выше. menuentry "Microsoft Windows 7 SP1" --class windows --class os {insmod part_msdos insmod ntfs insmod search_fs_uuid insmod ntldr search --fs-uuid --set = root --hint-bios = hd0, msdos1 --hint-efi = hd0, msdos1 --hint-baremetal = ahci0, msdos1 DC788F27788EFF8E ntldr / bootmgr}

Когда этот шаг был завершен, я решил установить Windows в качестве операционной системы по умолчанию, чтобы моя жена не паниковала, а моя племянница могла поиграть в свои Барби, когда она придет. Для этого я просто отредактировал файл / И т.д. / по умолчанию / GRUB и я установил запуск по умолчанию и тайм-аут всего 3 секунды.

GRUB_DEFAULT = 2 GRUB_TIMEOUT = 3

Оставалось только заново сгенерировать конфигурацию GRUB и перезапустить:

grub-mkconfig -o /boot/grub/grub.cfg перезагрузка

К счастью, все прошло как положено. Я выбрал запись Windows, и все благополучно началось.

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

К счастью, Сэнди (KZKG ^ Gaara) зашла и скопировала репозиторий Arch (за что я очень благодарен), поэтому я планирую в ближайшее время закончить настоящую автономную установку, но это уже другая история. Могу заверить вас, что в течение некоторого времени я немного скучал по этим забавным экспериментам. На самом деле, если бы у меня было время, возможность подключения в доме и определенные материальные условия, я бы, вероятно, попытался сделать собственный дистрибутив на основе LFS, что было бы гораздо более увлекательным проектом. 😉


Оставьте свой комментарий

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

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   Петерчеко сказал

    Надеюсь, вы попробуете FreeBSD Elav.
    Что касается вашего гида, очень, очень хорошо и полно ...

    1.    Ramp сказал

      Какая ты изменчивая. Уверяю вас, через несколько месяцев вам надоест FreeBSD.

      1.    lf сказал

        Интересная информация, но я до сих пор не вижу руководств по установке Arch в системах с UEFI, есть ли у лучников новые ПК?

        1.    Elav сказал

          Установка с UEFI в ArchLinux упрощается путем установки Antergos, вам нужно только создать раздел в Fat32 размером менее 500 МБ, и автоматически (при загрузке USB с UEFI) Antergos пометит раздел как / boot.

      2.    Петерчеко сказал

        Вот почему я меняюсь ... Чтобы больше не меняться, я перехожу с Linux на BSD: D.

    2.    Петерчеко сказал

      Внесены изменения и написано руководство: D.

  2.   г @ у сказал

    Вау, и я думал, что потратил работу https://humanos.uci.cu/2014/11/instalando-arch-linux-en-gpt-con-repositorio-local/

    1.    является Озкан сказал

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

  3.   Алекс сказал

    У меня есть iso Arch Linux на моем usb, я не решился использовать его из-за нехватки времени.
    Я сделаю хороший обзор статьи и воспользуюсь ею!

  4.   Warheart сказал

    Отличная статья, между прочим, она напоминает мне об одиссее, через которую я прошел, чтобы установить Arch через WIFI с помощью BCM4312.

  5.   Калевито сказал

    Элав, извините за вопрос, но я новичок в Linux, я использовал только ubuntu, и мое внимание привлекает arch linux. Мои друзья говорят, что я не смогу установить его, потому что он предназначен для экспертов, но, посмотрев ваш автономный учебник, я думаю, что, следуя шаг за шагом, я смогу это сделать, для меня установить его будет проблемой. Только я хочу сделать это через Интернет, вот и мой вопрос: у вас есть или когда вы сделаете учебник с таким подробным описанием (как этот), чтобы установить его?

    1.    даеко сказал

      Руководство опубликовано на этом сайте. https://blog.desdelinux.net/guia-de-instalacion-de-arch-linux-2014/

      😀 Итак, используя руководство и обращая внимание на то, что сделано, у нас будет установка без осложнений, удачи!

    2.    Elav сказал

      Вы все еще можете установить Antergos, который является Archlinux, но с установкой "в стиле Ubuntu" .. 😀

  6.   афанический сказал

    В Arch есть еще один альтернативный установочный носитель для официальных образов под названием Archboot, который, в отличие от официальных образов, содержит репозиторий [core] (и что-то еще), полезный для автономных установок (это также гибридная архитектура, она используется для i686 и для x86_64).

    Плохо то, что сейчас он занимает 1 ГБ (раньше он занимал гораздо меньше лет назад), который нужно было загружать раньше ... и без стабильного соединения для этого первоначальная загрузка затруднена.

    Вот ссылка на случай, если она вам пригодится: https://wiki.archlinux.org/index.php/archboot

    1.    Elav сказал

      Интересно, я его не знала 😀

    2.    Хьюго сказал

      Что ж, что любопытно, некоторое время назад я пробовал Archboot, и когда я дохожу до части pacstrap, он сообщает мне, что не может найти пакет ntfs-3g

      У него также есть другие особенности, такие как то, что он не поставляется с mc или страницами руководства, и для его установки требуется много оперативной памяти. Это не кажется хорошо отполированным решением.

  7.   Макс Сталь сказал

    По правде говоря, существует очень простой способ установить Arch в автономном режиме, и мне пришлось использовать классический метод проб и ошибок, чтобы установить его на свой домашний компьютер (где у меня нет Интернета).

    Для этого вам, очевидно, понадобится другой компьютер с аркой и подключением к Интернету. Просто сделайте сначала базу pacman -Syu, а затем базу pacman -Sw (плюс все, что вы хотите установить, очевидно). Скопируйте все файлы из кеша pacman на USB-накопитель, а также файлы базы данных (/var/lib/pacman/sync/{core.db, extra.db, community.db}.

    Затем приступайте к обычной установке Arch, но до того, как дойдете до точки создания базы pacstrap - d / mnt (или чего-то еще, я говорю все по памяти>. <) Вы должны отредактировать точно pacstrap (с vi или что бы вы ни предпочли или принесете установочный диск) и почти в конце есть строчка, которая относится к «pacman -Syy», мы ее просто удаляем. После этого мы копируем файлы базы данных pacman в соответствующее место (все файлы .db в / var / lib / pacman / sync), а файлы кеша - в каталог кеша.

    Итак, теперь мы продолжаем с pacstrap -loquenomeaccord / mnt base и всем остальным.

    Все, что я говорю по памяти, поэтому могут быть некоторые детали, которые я пропустил, например файлы кеша, которые я не помню точно, куда они идут, но они должны быть в / var / cache / pacman / pkg или, если это не может быть указано в pacstrap мне кажется.

  8.   Леонель сказал

    Вы можете сделать руководство по cfdisk с двойной или тройной загрузкой 🙁, кроме того, что мне нужно для установки Arch

    1.    Хьюго сказал

      На самом деле особо нечего сказать о cfdisk, поскольку он совсем несложный, и на самом деле руководство по установке, упомянутое выше, в основном показывает, как его использовать. Но если у вас установлены другие системы, вы можете использовать что-то более дружелюбное, возможно, Gparted. Для Windows есть бесплатный инструмент (хотя, к сожалению, не бесплатный) под названием Easeus Partition Master, который вы можете использовать, он работает очень хорошо.

      В остальном я рад, что статья показалась вам интересной, я не увидел больших достоинств своего опыта, но Элав посоветовал мне кое-что подготовить по этому поводу.