Установка и настройка Gentoo linux
Обновлено: 21.11.2024
Если стандартный метод установки с загрузкой с компакт-диска вам не подходит (или вам он просто не нравится), помощь здесь. Этот документ служит для предоставления репозитория альтернативных методов установки Gentoo Linux тем, кто в них нуждается. Или, если хотите, он служит местом для размещения ваших дурацких методов установки. Если у вас есть метод установки, который вы сами находите полезным, или вы придумали забавный способ установки Gentoo, не стесняйтесь написать что-нибудь и прислать мне.
<р>2. Загрузка LiveCD с помощью Smart BootManagerЛибо скомпилируйте пакет из исходного кода, либо просто возьмите двоичный файл. Существует несколько вариантов, которые можно использовать при создании загрузочной дискеты, как показано ниже.
Листинг 2.1: параметры Smart BootManager
Листинг 2.2: Использование sbminst для создания загрузочной дискеты
Примечание: замените fd0 на соответствующее имя дисковода, если оно отличается.
Теперь просто поместите дискету в дисковод компьютера, на котором вы хотите загрузить LiveCD, а также поместите LiveCD в CD-ROM и загрузите компьютер.
Появится диалоговое окно Smart BootManager. Выберите свой компакт-диск и нажмите ENTER, чтобы загрузить LiveCD. После загрузки выполните стандартные инструкции по установке.
Загрузка с Knoppix LiveCD позволяет получить полнофункциональную систему Linux во время компиляции Gentoo. Tux Racer поможет вам скоротать время, пока вы ждете начальной загрузки.
Загрузитесь с компакт-диска Knoppix. Как правило, он действительно хорошо справляется с обнаружением оборудования. Хотя, возможно, вам придется добавить некоторые параметры загрузки.
По умолчанию Knoppix загружается в рабочий стол KDE 3.0. Первое, что я сделал, это открыл консоль и набрал sudo passwd root. Это позволит вам установить пароль root для Knoppix.
Далее я использую su для root и набираю usermod -d /root -m root . Это устанавливает домашний каталог пользователя root в /root (способ Gentoo) из /home/root (способ Knoppix). Если вы этого не сделаете, то при выходе вы будете получать ошибки о "/home/root: not found" или что-то в этом роде.
Затем я набрал exit, а затем su вернулся в root. Это загрузит изменения, сделанные с помощью команды usermod. Теперь создайте точку монтирования /mnt/gentoo с помощью mkdir :
Листинг 3.1: Создание точки монтирования /mnt/gentoo
На этом этапе вы можете ознакомиться со стандартной документацией по установке в части 4. Однако, когда вас попросят смонтировать систему proc, введите вместо этого следующую команду:
Листинг 3.2: Связывание псевдофайловой системы proc
<р>4. Установка с этапа 1 без доступа к сетиЗапишите образ LiveCD.
Следуйте всем инструкциям Руководства по установке Gentoo вплоть до chroot /mnt/gentoo в Главе 6. Если у вас есть только один компакт-диск, не забудьте использовать параметр docache во время загрузки, чтобы вы могли размонтировать LiveCD и смонтировать компакт-диск с моментальными снимками portage. .
Откройте новую консоль (Alt-F2), мы продолжим работу с документом по установке вплоть до запуска сценария bootstrap.sh.
Предупреждение: в старых версиях livecd перед входом в систему вручную требовалось изменить пароль с помощью команды passwd.
Вернитесь к первой консоли (Alt-F1, без chroot) и смонтируйте второй компакт-диск в /mnt/gentoo/mnt/cdrom2. Скопируйте tar-архив portage с cdrom2 и распакуйте его в /mnt/gentoo/usr/portage .
Листинг 4.1: подключение моментального снимка компакт-диска
Вернитесь к консоли F2. Теперь, если вы попытаетесь запустить bootstrap.sh, произойдет сбой, потому что он не сможет загрузить какие-либо файлы. Мы достанем эти файлы из другого места и поместим их в /usr/portage/distfiles (на консоли F2).
Вам нужен список пакетов Stage1: glibc, baselayout, texinfo, gettext, zlib, binutils, gcc, ncurses и их зависимости.
Примечание. Обратите внимание, что версии каждого пакета должны быть синхронизированы с вашим деревом портежей.
Листинг 4.2: Получение списка загрузки
Отнесите дискету на компьютер с быстрым доступом. Если вы посмотрите на файл stage1.list, вы увидите, что он содержит несколько URL-адресов для загрузки. К сожалению, он также перечисляет несколько возможных URL-адресов для каждого пакета, а это не то, что вам нужно. Сначала удалите все URL, кроме одного:
Листинг 4.3: удаление URL-адресов
Теперь используйте wget для получения всех перечисленных источников:
Листинг 4.4: Использование wget для получения пакетов с исходным кодом
После того, как вы получили все файлы, перенесите их на компьютер и скопируйте в /mnt/gentoo/usr/portage/distfiles. После этого вы сможете запустить bootstrap.sh. Повторите эту же процедуру извлечения и размещения wget для этапов 2 и 3.
<р>5. Бездисковая установка с использованием загрузки PXEВам потребуется сетевая карта на бездисковом клиенте, который использует протокол PXE для загрузки, как и многие карты 3com. Вам также понадобится BIOS, поддерживающий загрузку с PXE.
Создание каталогов. Первое, что нужно сделать, это создать каталоги, в которых будет храниться ваша бездисковая система.Создайте каталог с именем /diskless, в котором находится каталог для каждого бездискового клиента. В оставшейся части этого руководства мы будем работать с клиентом 'eta'.
Листинг 5.1: настройка каталога
Настройка DHCP и TFTP: клиент получит загрузочную информацию с помощью DHCP и загрузит все необходимые файлы с помощью TFTP. Просто установите DHCP и настройте его для своих основных нужд. Затем добавьте следующее в файл /etc/dhcp/dhcpd.conf .
Примечание. Это обеспечивает статический IP-адрес для клиента и путь к загрузочному образу PXE, здесь pxegrub. Вы должны заменить MAC-адрес карты Ethernet клиента и каталог, в который вы будете помещать файлы клиента, на тот, который вы используете.
Листинг кода 5.2: dhcp.conf
Для TFTP введите app-admin/tftp-hpa . В /etc/conf.d/in.tftpd поместите следующее:
Листинг 5.3: in.tftpd
Настройка GRUB: для обеспечения загрузки PXE я использую GRUB. Вы должны скомпилировать его самостоятельно, чтобы включить компиляцию образа PXE. но это совсем несложно. Во-первых, получите последнюю версию исходного кода GRUB ( emerge -f grub поместит tar-архив в /usr/portage/distfiles ). Скопируйте tar-архив в /diskless, а затем соберите его, чтобы сделать двоичный файл с поддержкой pxe. Как только двоичный файл будет создан, скопируйте его в загрузочный каталог бездискового клиента. Затем отредактируйте файл конфигурации grub.lst.
Листинг 5.4: настройка grub
Листинг 5.5: grub.lst
Настройка NFS: NFS очень легко настроить. Единственное, что вам нужно сделать, это добавить строку в файл конфигурации /etc/exports:
Листинг 5.6: /etc/exports
Обновите свои хосты. Сейчас важно изменить файл /etc/hosts в соответствии с вашими потребностями.
Листинг 5.7: /etc/hosts
Возможно, вы захотите перезагрузить сервер с помощью Gentoo LiveCD, хотя вы вполне можете продолжить немедленно, если знаете, как выполнить инструкции по установке Gentoo из существующей установки. Следуйте стандартной процедуре установки, как описано в Gentoo Install Howto, НО со следующими отличиями: Когда вы монтируете файловую систему, сделайте следующее (где hdaX — это раздел, в котором вы создали каталог /diskless). Вам не нужно монтировать какие-либо другие разделы, так как все файлы будут находиться в каталоге /diskless/eta.
Листинг 5.8: монтирование файловой системы
Stage tarballs и chroot: в этом примере используется tarball stage3. Смонтируйте /proc в бездисковый каталог и выполните chroot, чтобы продолжить установку. Затем следуйте инструкциям по установке до настройки ядра.
Предупреждение. Будьте очень осторожны при распаковке архива stage. Вы не хотите в конечном итоге извлекать поверх существующей установки.
Листинг 5.9: извлечение архива рабочей области
Конфигурация ядра: когда вы выполняете make menuconfig конфигурации вашего ядра, не забудьте включить следующие параметры вместе с другими, рекомендованными в руководстве по установке.
Листинг 5.10: параметры меню конфигурации
Затем настройте файл /etc/fstab вашего бездискового клиента.
Листинг 5.11: /etc/fstab
Также необходимо запретить клиенту запускать проверку файловой системы:
Листинг 5.12: Запрещение клиенту выполнять проверку файловой системы
Загрузчик. Не устанавливайте другой загрузчик, потому что он у нас уже есть — pxegrub. Просто завершите установку и перезапустите сервер. Запустите службы, необходимые для загрузки нового клиента: DHCP, TFTPD и NFS.
Листинг 5.13: Запуск служб
Чтобы новый клиент загружался должным образом, вам необходимо настроить BIOS и сетевую карту для использования PXE в качестве первого метода загрузки — перед CD-ROM или дискетой. Для получения помощи в этом обратитесь к руководствам по оборудованию или веб-сайту производителя. Сетевая карта должна получить IP-адрес с помощью DHCP и загрузить образ GRUB PXE с помощью TFTP. Затем вы должны увидеть красивое черно-белое загрузочное меню GRUB, где вы должны выбрать ядро для загрузки и нажать Enter. Если все в порядке, ядро должно загрузиться, смонтировать корневую файловую систему с помощью NFS и предоставить вам приглашение для входа в систему. Наслаждайтесь.
<р>6. Установка Gentoo из существующего дистрибутива LinuxЧтобы установить Gentoo из существующего дистрибутива Linux, у вас должна быть установлена команда chroot, а также копия установочного архива Gentoo или ISO-образа, который вы хотите установить. Сетевое подключение было бы предпочтительнее, если вы хотите больше, чем то, что поставляется в вашем архиве. (кстати, tarball — это просто файл, оканчивающийся на .tbz или .tar.gz). В качестве «хостовой» операционной системы автор использовал RedHat Linux 7.3, но это не очень важно. Начнем!
Сначала мы выделим раздел для Gentoo, изменив размер существующего раздела Linux, смонтируем раздел, разархивируем смонтированный tar-архив, chroot внутри псевдосистемы и начнем сборку. Как только процесс начальной загрузки будет завершен, мы выполним окончательную настройку системы, чтобы убедиться, что она загружается, после чего мы готовы перезагрузиться и использовать Gentoo.
Корневой раздел — это файловая система, смонтированная в / . Быстрый запуск mount в моей системе показывает, о чем я говорю. Мы также используем df (disk free), чтобы увидеть, сколько места у меня осталось и как я буду изменять размер. Обратите внимание, что изменять размер корневого раздела не обязательно! Вы можете изменить размер любого другого объекта, поддерживаемого нашим средством изменения размера, но давайте поговорим об этом позже.
Листинг 6.1: Информация о файловой системе
Как мы видим, раздел, смонтированный как / с именем /dev/hdb2, имеет 2,4 гигабайта свободного места. В моем случае я думаю, что изменю его размер, чтобы оставить 400 мегабайт свободного места, поэтому выделяю 2 гигабайта для Gentoo. Неплохо, я мог бы установить кое-что. Однако подумайте, что большинству пользователей достаточно даже одного гигабайта. Итак, давайте разделим эту вещь!
Примечание. Существуют и другие инструменты для изменения размера разделов, но автор не уверен/не заинтересован в том, справится ли с этой задачей PartitionMagic(tm) или другое подобное программное обеспечение. Проверить их — задача читателя
Найдите на этой странице тип файловой системы, размер которой вы хотите изменить, и посмотрите, может ли parted это сделать. Если нет, то вам не повезло, вам придется уничтожить какой-то раздел, чтобы освободить место для Gentoo, и переустановить обратно. Идите вперед, загрузив программное обеспечение, установите его. Здесь у нас есть проблема. Мы хотим изменить размер нашего корневого раздела Linux, поэтому мы должны загрузить с дискеты минимальную систему Linux и использовать предварительно скомпилированный раздел, скопированный на дискету, чтобы изменить размер / . Однако, если вы можете размонтировать раздел еще в Linux, вам повезло, вам не нужно делать следующее. Просто скомпилируйте parted и запустите его на несмонтированном разделе, размер которого вы выбрали. Вот как я сделал это для своей системы.
Важно! Убедитесь, что операции, которые вы хотите выполнять в своем разделе, поддерживаются parted!
Примечание. Еще раз обратите внимание, что Linux является синонимом фразы "Есть еще один способ сделать это". Ваша цель — запустить parted на несмонтированном разделе, чтобы он мог выполнять свою работу. Вы можете использовать другой загрузочный/корневой набор дисков, отличный от tomsrtbt. Возможно, вам вообще не нужно делать этот шаг, то есть нужно только размонтировать файловую систему, которую вы хотите переразбить в сеансе Linux, и запустить на ней parted.
Листинг 6.2: Создание служебного диска
Теперь мы приступим к сборке parted. Если он еще не загружен и не распакован, сделайте это сейчас и перейдите в соответствующий каталог. Теперь выполните следующий набор команд, чтобы собрать утилиту и скопировать ее на дискету.
Листинг 6.3: Сборка служебной дискеты
Поздравляем, вы готовы к перезагрузке и изменению размера раздела. Делайте это только после беглого просмотра документации parted на веб-сайте GNU. Изменение размера самых больших жестких дисков должно занять менее 30 минут, наберитесь терпения. Перезагрузите вашу систему с помощью загрузочного диска tomsrtbt (просто вставьте его внутрь), и как только вы войдете в систему, переключите диск в дисковод с вашим служебным диском, который мы создали выше, и введите mount /dev/fd0 /floppy, чтобы разделиться под / гибкий. Ну вот. Запустите parted, и вы сможете изменить размер раздела. После завершения этого длительного процесса мы готовы повеселиться, установив Gentoo. Перезагрузитесь обратно в свою старую систему Linux. Диск, с которым вы хотите работать, — это диск, содержащий раздел, размер которого мы хотим изменить. Например, если мы хотим изменить размер /dev/hda3, диск будет /dev/hda
Листинг кода 6.4. Команды для запуска после входа в систему tomsrtbt
Важно: будьте терпеливы! Компьютер работает! Просто посмотрите на аппаратный светодиод на вашем корпусе, чтобы убедиться, что он действительно работает. Это может занять от 2 до 30 минут.
После того, как вы изменили размер, снова загрузитесь в свой старый Linux, как описано. Затем перейдите к Руководству Gentoo: Подготовка дисков и следуйте инструкциям. При chroot используйте следующую команду, чтобы очистить вашу среду:
Процедура установки Gentoo включает больше шагов, чем другие дистрибутивы. Это сделано намеренно, чтобы вы могли более четко контролировать шаги. Используя эту стратегию, вы можете начать работу с менее чем 4 ГБ диска и памяти до 256 МБ, 512 МБ, если вы хотите использовать liveDVD. У вас также есть возможность настроить вашу систему так, чтобы она была максимально эффективной. Ваша первая попытка будет медленнее, если вы плохо разбираетесь в Linux и во всех тонкостях, но в итоге вы можете получить очень простую систему.
Выбор медиа
Выбор с чего начать; Пока у вас есть обычное оборудование и часто нестандартное оборудование, для установки следует использовать минимальный установочный компакт-диск. Этот метод также является методом Stage3. Если все пойдет хорошо, вы никогда не будете возиться с Stage1 и Stage2, но они предназначены для экстремальных ситуаций установки.
- Минимальный установочный компакт-диск
- Иногда Gentoo LiveDVD
- Архивные файлы для установки экзотического оборудования или ситуаций.
Архивные файлы
Вы можете загружать сжатые файлы, которые имеют файловую систему с файлами для системы init и базовые пакеты. Выберите тот, который подходит для ваших потребностей. Если вы не уверены, возьмите «системныйД». Это самый распространенный. P>
Другие файлы стадии предназначены для продвинутых пользователей. Разработчики в основном используют файлы Stage1 и Stage2; Если вы нуждаетесь в них, вы уже знаете большинство Gentoo. P>
Первая загрузка H2>
Загрузите минимальный CD и сжечь его на USB-накопителе. Вы должны рассмотреть возможность добавления файла ISO на виртуальную машину и практикуйте оттуда! Файлы на сайте Gentoo. P>
Когда минимальные CD ботинки, он даст вам 15 секунд, чтобы выбрать ядро. Намерение этого состоит в том, чтобы справиться с ситуацией, когда кадр буфер не работает, или возникают некоторые другие нечетные загрузки. Если вы ничего не сделаете, система возвращается к загрузке с внутреннего диска. Если у вас возникли проблемы, вам нужно указать параметры ядра, такие как ниже. P>
Это требует ядра Gentoo 'и отправляет опцию «Scandelay». Другие варианты - это длинный список, который вы должны исследовать, прежде чем начать, хотя это не требуется на самых оборудовании. P>
Вы также можете добавить пользователей на этом этапе. Эти пользователи будут работать только в системе установки, поэтому редко полезно. P>
Сеть h2>
Чтобы начать, вы можете сделать все на консоли, но с помощью терминала есть свои преимущества. Если вы хотите сделать это, начните SSHD и установите пароль для пользователя root. Начните с проверки вашего IP-адреса. P>
Затем начните SSHD: P>
Затем установите пароль для пользователя root, или создайте новый временный пользователь. p>
Вы получаете длинную распечатка, которая предлагает безопасный пароль. Удобно, если у вас низкая энергия или воображение. Теперь, когда у вас обоих, вы можете SSH в вашей системе установки. Одно предупреждение; Когда вы начинаете с компакт-диска, клавиша SSH будет повторно создана! Любой ключ, который вы имеете в вашей другой системе, должны быть удалены. P>
Подготовка дисков h2>
Диски готовятся как со многими другими распределениями. Чтобы облегчить следить за остальной частью их документации, назовите свои разделы в соответствии со стандартом Gentoo. Для системы, которую вы на самом деле используете, у вас должен быть план здесь. Предпочтительно, который имеет размеры для вашего «дома», а также «. Необходимые детали являются «/» и «/ boot». Для UEFI вы должны иметь 350 мегабайт диска для загрузочных файлов. Используйте свой любимый редактор раздела. Для раздела UEFI используйте 'mkfs.vfat -f 32 / dev / sda1' и для основного использования 'mkfs.ext4 / dev / sda2'. P>
Монтаж основных дисков h2>
У вас должен быть хотя бы один загрузочный диск из 350 MIB и один из которых будет проходить вашу систему при запуске. Раздел подкачки тоже приятно иметь. Вы можете установить со стандартной командой. P>
Нет причин устанавливать диск «Boot», пока не войдете в среду Chroot позже. Вы также можете смонтировать пользовательские диски или разделы, но только если вы делаете окончательную систему. P>
Загрузка Tarballs H2>
Вы можете загрузить бланки, прежде чем начать или во время установки. Альтернативно, среда установки имеет браузер «Ссылки», чтобы вы могли сделать это с терминалом. Загрузите файлы на диск Gentoo. P>
Как только у вас есть файлы на диске, распакуйте их с помощью команды tar. p>
Установка базовой системы H2>
у вас на самом деле уже есть очень базовая и общая система; Это то, о чем есть файл Stage3. Например, вы make.conf есть там со стандартными настройками. Это должно быть зеркало, однако, установило один с помощью инструмента. P>
Вам также нужен репозиторий eBuild. Этот репозиторий отслеживает то, что доступно для обновлений. Вы можете изменить это, что вы будете делать, когда вы будете искать производное Gentoo. Вы можете принять по умолчанию из вновь созданного структуры каталогов. P>
$ CD / MNT / Gentoo $ mkdir -warents etc / portage / repos.conf $ CP USR / Share / Portage / config / repos.conf etc / portage / repos.conf / gentoo.conf p>
$ cp -wereference etc / resolv.conf / mnt / gentoo / etc $ mount -types proc / proc / mnt / gentoo / proc $ mount -rbind / sys / mnt / gentoo / sys $ mount - make-rslave / mnt / gentoo / sys $ mount -rbind / dev / mnt / gentoo / dev $ mount-make-rslave / mnt / gentoo / dev p>
Теперь вы готовы перейти в среду, которую вы создаете. P>
Внутри окружающей среды вам также необходимо установить загрузочный раздел. P>
Какой раздел это должно быть понятно с более ранних этапов. На UEFI установите, вы создали ESP, где вы храните всю загрузочную информацию. Далее вы загружаете информацию о репозитории в каталог, определенный вашим файлом REPOS.conf. P>
Здесь вы видите первое упоминание о появлении. Эта команда обрабатывает все ваши обновления и установку. Следующая важная команда, которую вам нужно знать, это EseLect. С EseLect вы читаете последние новости о Portage P>
или выберите свой профиль; p>
Вы выбираете номер из списка или используете все имя, которое вы видите в списке.Теперь вы ДОЛЖНЫ установить набор @world, чтобы система обновлялась в соответствии с вашей системой, а не в соответствии с этапом 3, который вы использовали.
Самая мощная переменная в GENTOO! Переменная USE устанавливает, какая поддержка должна быть скомпилирована в ваши программы. При правильном использовании вы можете сделать свою систему намного компактнее, чем при использовании других методов. Вы можете изменить это, чтобы прекратить поддержку KDE, если вы уверены, что не будете запускать KDE. Затем Gentoo скомпилирует все программы без этой поддержки, уменьшив размер двоичного файла. Если вы решите перейти на KDE, вам придется начать заново и перекомпилировать все ваши приложения.
Все значения установлены по умолчанию, поэтому то, что вы указываете, отличается от нормального. При первой сборке, вероятно, лучше просто запустить систему.
Часовой пояс и регионы
Далее установите часовой пояс. Заполните значения в файлах.
Используйте emerge для правильной настройки времени.
Добавьте данные в файл локалей:
en_GB ISO-8859-1
en_GB.UTF-8 UTF-8
Настройте с помощью только что созданного файла.
Это стандарт для всех установок в мире Linux. Это специфично для Gentoo:
$ eselect список локалей $ eselect набор локалей 3
$ env-update && source / etc / profile && export PS1 = "(chroot) $ "
Автоматическая настройка ядра
Перед запуском сценария необходимо добавить загрузочный раздел в файл /etc/fstab.
В Gentoo у вас есть возможность скомпилировать собственное ядро для каждой машины, которую вы хотите запустить. Для начала лучше всего получить бинарные ядра, соответствующие вашим потребностям. Когда вы почувствуете, что готовы погрузиться в сложности компиляции ядра, сделайте это на своей работающей системе. Чтобы выбрать ядро, запустите emerge как всегда;
Команда emerge установит ваше ядро и все настроит!
Время настроить систему
Создайте сетевые файлы.
/etc/conf.d/net
/etc/conf.d/имя хоста
$ emerge-ask net-misc/dhcpcd
При этом будет установлена программа dhcpcd для работы с dhcp. По умолчанию для Gentoo используется dhcp.
Настройки для dhcpcd с использованием systemd должны включать службу.
Прежде чем вы сможете загрузиться в новую систему, вам необходимо установить загрузчик. Вот как вы выбираете GRUB2.
$ emerge – задайте sys-boot / grub: 2
$ grub-install /dev/sda –efi-directory=/boot
$ grub-mkconfig -o /boot/grub/grub.cfg
Теперь вам нужно обновить файл /etc/fstab для работающей системы.
/dev/sda1/boot ext4 noauto,noatime 1 2
/dev/sda2/ext4 noatime 0 1
Номера ‘/dev/sda’ будут различаться в зависимости от вашей схемы разбиения. Вы также можете использовать уникальные номера UUID. Вам нужно выяснить это с помощью команды «blkid».
Перезапустите новую систему
Теперь вы сможете загрузить свою действующую систему. Удалите установочный носитель и попробуйте. Если вы что-то пропустили, вы всегда можете начать заново с установочного носителя. Многие проблемы являются деталями, поэтому у вас есть все загруженные файлы и вы можете выполнить только часть установки. В этой установке у вас все еще есть доступный «emerge», и это инструмент, который вы используете для обновлений и настройки системы.
Заключение
У Gentoo нет собственного установщика, а это значит, что вам нужно подготовить то, чего вы хотите достичь. Вы можете сделать это, выбрав размер дисков и изучив любые конкретные потребности вашей системы. Если вы хотите быстро приступить к работе, вам следует выбрать производную версию и настраивать ее до тех пор, пока вы не будете уверены, что сможете справиться со всеми деталями начальной настройки системы Linux.
Об авторе
Матс Таге Аксельссон
Я внештатный автор журналов по Linux. Мне нравится узнавать, что возможно в Linux и как мы все можем внести свой вклад в его улучшение. Я также рассказываю о возобновляемых источниках энергии и новом способе работы сети. Вы можете найти больше моих статей в моем блоге.
Существует два способа установки Pleroma. Вы можете использовать выпуски OTP или выполнить установку из исходного кода. Выпуски OTP максимально приближены к бинарным выпускам с Erlang/Elixir. Релиз является автономным и предоставляет все необходимое для его загрузки, его легко администрировать с помощью предоставленного сценария оболочки, чтобы открыть удаленную консоль, запустить/остановить/перезапустить выпуск, запустить в фоновом режиме, отправить удаленные команды и многое другое. . При установке из исходного кода вы устанавливаете Pleroma из исходного кода, то есть вам необходимо установить определенные зависимости, такие как Erlang+Elixir, и самостоятельно скомпилировать Pleroma.
В этом руководстве рассматривается установка из исходного кода. Чтобы установить с помощью выпусков OTP, ознакомьтесь с руководством по OTP.
Установка¶
Необходимые зависимости¶
- PostgreSQL 9.6+
- Эликсир 1.9+
- Одноразовый пароль Erlang 22.2+
- git
- файл / библиотека
- gcc (также может работать clang)
- Сделать GNU
- CMake
Необязательные зависимости¶
- ImageMagick
- FFmpeg
- exiftool
Вы можете добавить USE="uuid" в файл /etc/portage/make.conf, если хотите установить его как глобальный USE-флаг, но этот флаг не имеет отношения к другим пакетам, так что имейте это в виду. если вы решите это сделать.
Дважды проверьте флаги вашего компилятора в /etc/portage/make.conf . Если вам нужны какие-либо специальные флаги компиляции или вы хотите настроить удаленные сборки, сейчас самое время это сделать. Убедитесь, что ваши CFLAGS и MAKEOPTS подходят для используемой вами платформы. Не рекомендуется использовать выше -O2 или флаги рискованной оптимизации для рабочего сервера.
Установка демона cron¶
В Gentoo явно не установлен демон cron, и поэтому рекомендуется установить его, чтобы автоматизировать обновления certbot и разрешить автоматический запуск других задач системного администрирования. В Gentoo есть множество опций cron, но если вам просто нужен Cron, который работает, emerge --ask virtual/cron установит реализацию cron по умолчанию (вероятно, cronie), которая будет работать нормально. Для целей данного руководства мы будем делать именно это.
Необходимые сборки¶
- dev-db/postgresql
- dev-lang/эликсир
- dev-vcs/git
- dev-util/cmake
- системные приложения/файл
Необязательные файлы ebuild, используемые в этом руководстве¶
- www-servers/nginx (предпочтительно, примеры конфигураций для других обратных прокси можно найти в репозитории)
- app-crypt/certbot (или любой другой клиент ACME для сертификатов Let’s Encrypt)
- app-crypt/certbot-nginx (плагин nginx certbot, который позволяет использовать всемогущий флаг --nginx на certbot)
- media-gfx/imagemagick
- медиа-видео/ffmpeg
- медиа-библиотеки/exiftool
Подготовка системы¶
- Сначала убедитесь, что у вас есть последняя копия ebuild-файлов portage, если вы еще не синхронизировали их:
- Полный доступ ко всему необходимому требуемому и рекомендуемому программному обеспечению за один раз:
Если вы не хотите устанавливать дополнительные пакеты, удалите их из этой строки.
Если вы запускаете это с виртуальной машины с низким энергопотреблением, это должно работать, хотя это займет некоторое время. На VPS с одним ядром и 1 Гб оперативной памяти проблем не было; если вы используете еще более ограниченное устройство и сталкиваетесь с проблемами, вы можете попробовать создать файл подкачки или использовать более мощную машину с Gentoo для кросс-сборки. Если у вас впереди ожидание, сейчас самое время сделать перерыв, немного размяться, освежить свой любимый напиток и/или перекусить, а также ответить на сообщения пользователей Arch словами «Я использую Gentoo, кстати». как и мы.
Установите PostgreSQL¶
Статья Gentoo Wiki, а также PostgreSQL QuickStart, возможно, заслуживают беглого просмотра, так как Gentoo обрабатывает postgres немного необычно, со встроенной возможностью иметь две разные базы данных, работающие для тестирования и работы или для любых других целей. Хотя его по-прежнему просто установить, это означает, что номера версий, используемые в этом руководстве, могут измениться для будущих обновлений, поэтому следите за выводом, который вы получаете от emerge, чтобы убедиться, что вы используете правильные.
- Установите postgresql, если вы еще этого не сделали:
Убедитесь, что /etc/conf.d/postgresql-11 имеет нужную вам кодировку (по умолчанию используется UTF8, что, вероятно, вам и нужно) и внесите любые изменения в каталог данных, если сочтете это необходимым. Обязательно скорректируйте число в конце в зависимости от того, какую версию postgres вы фактически установили.
В выходных данных появившегося postgresql должна быть указана команда для инициализации базы данных postgres. В этой команде должен быть указан слот по умолчанию, убедитесь, что он соответствует приведенной ниже команде.
- Запустите postgres и включите системную службу
Установите PleromaBE¶
- Добавьте нового системного пользователя для службы Pleroma и настройте каталоги по умолчанию:
Удалите ,wheel , если вы не хотите, чтобы этот пользователь мог использовать sudo , однако обратите внимание, что возможность sudo от имени пользователя Pleroma несколько облегчит завершение установки и общих задач обслуживания:
Необязательно: если вы используете sudo, проверьте настройки sudo, чтобы убедиться, что они работают для вас. В файле /etc/sudoers есть множество опций и примеров, которые помогут вам, а в руководстве Gentoo sudo содержится дополнительная информация. Завершение этой установки будет несколько проще, если у вас есть способ sudo от пользователя Pleroma, но может быть лучше не позволять этому пользователю использовать sudo во время нормальной работы, и поэтому в конце этого руководства будет напоминание о необходимости дважды проверьте, хотите ли вы заблокировать пользователя Pleroma после первоначальной настройки.
Примечание. Чтобы выполнить одну команду от имени системного пользователя Pleroma, используйте команду sudo -Hu pleroma. Вы также можете переключиться на оболочку с помощью sudo -Hu pleroma $SHELL .Если у вас нет sudo или вы не хотите использовать sudo или хотите использовать систему в качестве пользователя Pleroma для выполнения задач по обслуживанию экземпляра, вы можете просто использовать sup-pleroma, чтобы переключиться на пользователя Pleroma.
- Git клонирует репозиторий PleromaBE и делает пользователя Pleroma владельцем каталога:
- Установите зависимости для Pleroma и ответьте утвердительно, если вам будет предложено установить Hex:
Ответьте да, если вам будет предложено установить rebar3 .
Эта часть предварительно компилирует некоторые части Pleroma, поэтому это может занять некоторое время
После этого он задаст вам несколько вопросов о вашем экземпляре и сгенерирует файл конфигурации в config/generated_config.exs .
Уделите немного времени работе с generate_config.exs, чтобы убедиться, что все в порядке. Если вы планируете использовать сервис, совместимый с S3, для хранения локальных медиафайлов, это можно сделать здесь. Скорее всего, вы будете использовать prod.secret.exs для рабочего экземпляра, однако, если вы хотите настроить среду разработки, сделайте копию в dev.secret.exs и при необходимости настройте параметры.
- Предыдущая команда также создает файл config/setup_db.psql , с помощью которого можно создать базу данных. Убедитесь, что в строке CREATE DATABASE и \c используется правильное имя базы данных, а затем запустите сценарий postgres:
Однако, вероятно, он пока не будет работать в общедоступном Интернете, поскольку нам все еще нужно настроить веб-сервер для прокси-сервера для приложения Pleroma, а также настроить SSL.
Завершить установку¶
Предполагая, что вы хотите открыть вашу только что установленную федеративную социальную сеть для федерации, вы должны запустить nginx или какой-либо другой веб-сервер/прокси-сервер перед Pleroma. Также рекомендуется настроить Pleroma для работы в качестве системной службы.
Nginx¶
- Создайте каталоги для доступных и включенных сайтов:
- Настройте сертификат SSL, используя выбранный вами метод или certbot. Если вы используете certbot, установите его, если вы еще этого не сделали:
а затем настройте его:
Если это не сработает с первого раза, добавьте --dry-run к дальнейшим попыткам избежать ограничения скорости при выявлении проблемы и не удаляйте ее до тех пор, пока пробный прогон не завершится успешно. Если это не сработает, убедитесь, что nginx еще не запущен. Если это все еще не работает, попробуйте сначала настроить nginx (измените ssl «on» на «off» и повторите попытку). Часто решение проблем с certbot заключается в использовании флага --nginx после запуска и запуска nginx.
Если вы используете какие-либо дополнительные субдомены, например, для медиа-прокси, вы можете повторно запустить ту же команду с рассматриваемым субдоменом. Когда позже придет время продлевать, вам не нужно будет запускать несколько раз для каждого домена, с этим справится одно продление.
- Скопируйте пример конфигурации nginx и активируйте его:
- Потратьте некоторое время, чтобы убедиться, что ваша конфигурация nginx верна
Замените все экземпляры example.tld общедоступным URL-адресом вашего экземпляра. Если по какой-либо причине вы внесли изменения в порт, на котором работает ваше приложение Pleroma, убедитесь, что это отражено в вашей конфигурации.
Обратите особое внимание на строку, начинающуюся с ssl_ecdh_curve. Настоятельно рекомендуется прокомментировать эту строку, чтобы OpenSSL использовал все свои возможности, и также возможно, что вы используете OpenSSL 1.0.2, поэтому вам необходимо это сделать.
Если вы используете certbot, НАСТОЯТЕЛЬНО рекомендуем вам настроить задание cron, которое обновляет ваш сертификат, и установить предлагаемый подключаемый модуль certbot-nginx. Если вы этого не сделаете, вы будете винить только себя, когда ваш экземпляр внезапно сломается, потому что вы о нем забыли.
Во-первых, убедитесь, что команда, которую вы будете устанавливать в crontab, работает.
Предполагая, что прошло немного времени с тех пор, как вы запустили certbot несколько шагов назад, вы должны получить сообщение для всех доменов, в которых вы установили сертификаты, о том, что сертификат еще не подлежит обновлению .
Теперь запустите crontab от имени суперпользователя с помощью команды crontab -e или sudo crontab -e в зависимости от ситуации и добавьте в cron следующую строку:
Это запустит certbot первого числа месяца в полночь. Если вы предпочитаете бегать чаще, это неплохая идея, смело дерзайте.
Другой веб-сервер/прокси¶
Если вы хотите использовать другие веб-серверы или прокси-серверы, в /home/pleroma/pleroma/installation/ есть примеры конфигураций некоторых популярных альтернатив. Вы можете, конечно, проверить вики Gentoo для получения дополнительной информации об установке и настройке указанных альтернатив.
Создайте папку для загрузки¶
Даже если вы используете S3, Pleroma нужно место для хранения мультимедиа, размещенного на вашем экземпляре. Если вы используете корневую папку /home/pleroma/pleroma, предложенную в этом руководстве, просто:
Обязательно просмотрите этот служебный файл и убедитесь, что все пути подходят для вашей установки
Включить и запустить плерому:
Создайте своего первого пользователя¶
Если ваш экземпляр запущен и работает, вы можете создать своего первого пользователя с правами администратора, выполнив следующую задачу:
Очистка прав¶
Если вы решили разрешить sudo для пользователя Pleroma, но хотели бы удалить возможность для большей безопасности, сейчас самое время отредактировать /etc/sudoers и/или изменить группы, к которым принадлежит пользователь Pleroma. Не забудьте после этого перезапустить службу Pleroma, чтобы изменения вступили в силу.
Gentoo — это мощный дистрибутив Linux. Вы должны попробовать это хотя бы один раз.
Gentoo — это мощный и расширяемый дистрибутив Linux. Это одна из немногих операционных систем, которые придерживались оригинального управления пакетами на основе исходного кода в Linux. Кроме того, его менеджер пакетов, portage, представляет собой мощную утилиту, которая позволяет вам точно настраивать и настраивать каждый аспект вашего дистрибутива.
Контент
Также прочтите: Как исправить ошибку «Невозможно ввести текст в терминале» в Linux
Зачем использовать исходный дистрибутив?
В настоящее время большинство дистрибутивов Linux предоставляют предварительно скомпилированные пакеты. Это означает, что дистрибутив собирает пакеты на компьютере разработчика.
Хотя компиляция пакетов не обязательно является проблемой в современном мире с высокой пропускной способностью, существует ряд проблем, которые следует учитывать в этой модели распространения:
- Скомпилированные двоичные файлы означают, что вы не можете контролировать, как программа компилируется и какие функции включены в программу.
- Использование двоичных файлов означает, что вы полностью доверяете разработчикам дистрибутива в том, что они не будут включать вредоносный код в свои репозитории.
Зачем использовать Gentoo?
Причина проста: Gentoo — мощный дистрибутив Linux. Это дает вам почти неограниченный доступ и свободу изменять и модифицировать всю систему.
Portage, сердце Gentoo
Portage — это основной компонент, управляющий системой Gentoo Linux. Он устанавливает, управляет и настраивает сторонние пакеты. Кроме того, portage также управляет базовой конфигурацией системы.
Основное отличие, предлагаемое Portage, заключается в том, что он позволяет вам устанавливать пакеты из исходного кода. Хотя это возможно в других дистрибутивах, Portage пошел дальше и сделал его средством получения пакетов по умолчанию.
Также прочтите: Как использовать команду dd в Linux
Получение Gentoo
Вы можете получить копию Gentoo на его веб-сайте. Там вы можете выбрать установщик из нескольких разных платформ. Gentoo поддерживает как amd64, так и arm64.
С загруженным ISO-файлом вы можете использовать программу записи USB, например balenaEtcher, для создания загрузочного флэш-накопителя.
Установка Gentoo Linux
Прежде чем мы продолжим установку Gentoo, важно отметить, что этот процесс выполняется полностью вручную, а это означает, что в процессе будет выполняться множество команд. Поэтому рекомендуется не только обращаться к этому руководству, но и обращаться к официальному руководству Gentoo за дальнейшими указаниями во время установки.
Вставьте флэш-накопитель в компьютер и загрузите его. Это загрузит вас на экран установщика Gentoo.
Настройка сетевого подключения
Для установки Gentoo необходимо подключение к Интернету. Программа установки автоматически подключится к проводному соединению. Оттуда выполните следующую команду, чтобы проверить, находитесь ли вы в сети:
Если вам нужно подключиться к беспроводной сети, вам нужно настроить wpa_supplicant, который подключит вас к вашей беспроводной точке доступа.
После этого вам необходимо перезагрузить демон dhcpcd, чтобы запустить сетевое подключение, выполнив следующую команду:
Также прочтите: Как использовать Python для базового системного администрирования Linux и сетевых задач
Разметка жесткого диска
Далее вам нужно отформатировать диск, на который вы хотите установить Gentoo. Сделать это легко с помощью команды fdisk.
Fdisk — это простой инструмент для создания разделов диска из командной строки. Это позволяет вам разделить жесткий диск и установить объем памяти, который вы хотите для вашей системы. Инициализируйте его, набрав:
Если вы не уверены в существующей структуре разделов диска, проверьте ее с помощью флага -l:
Использование fdisk для разбивки жесткого диска
Оказавшись внутри fdisk, вам нужно сначала очистить диск от всех существующих разделов. Сделайте это, нажав G в подсказке.
После этого вам нужно создать новые разделы на диске:
- Нажмите N, чтобы указать fdisk, что вы хотите создать новый раздел. Fdisk запросит у вас номер раздела, который вы хотите использовать. Нажмите Enter, чтобы использовать значение по умолчанию.
- Fdisk запросит у вас первый и последний сектора раздела. Нажмите Enter для первого сектора и укажите размер для последнего сектора. Общий синтаксис для этого относительно прост:
- Знак + указывает fdisk, что вы хотите, чтобы размер был относительно первого выбранного вами сектора.
- Размер – это число, которое вы указываете сами.
- Последняя опция сообщает fdisk, в каком формате находится этот размер: в ГБ, МБ или КБ.
Разметка для системы UEFI Gentoo
После этого продолжайте разбивать диск на разделы. Этот процесс во многом будет зависеть от того, используете ли вы систему BIOS или UEFI.
Если вы используете современный компьютер с относительно новым оборудованием, скорее всего, вы используете систему UEFI.
Чтобы создать диск, совместимый с UEFI, необходимо сначала создать раздел «Система EFI». Это должен быть первый раздел на вашем диске размером около 100–256 МБ.
После этого установите тип этого раздела на «Система EFI», нажав T . Это сообщит fdisk, что вы хотите изменить тип только что созданного раздела. Оттуда он спросит, какой тип вы хотите установить для раздела. Введите 1 .
Разметка остальной части диска
Следующий раздел, который вам нужно создать, — это раздел «/boot», в котором будут сохранены ядро Linux и загрузчик.
В идеале размер этого раздела должен составлять от 500 М до 1 ГБ. В моем случае я устанавливаю для этого раздела значение 1G.
Оттуда создайте раздел SWAP: часть вашего жесткого диска, к которой ваша оперативная память может получить доступ для динамической подкачки своей памяти, когда на ней заканчивается место.
Общее правило для размера SWAP: от 1/2 до 2 кратного объема памяти, имеющейся в вашей системе. В настоящее время на моем ноутбуке установлено 8 ГБ памяти, поэтому я установил размер подкачки на 16 ГБ.
Кроме того, чтобы правильно установить этот раздел как SWAP, установите его тип на «19».
Наконец создайте корневой раздел, на который будет установлена остальная часть системы. Чтобы выделить оставшуюся часть диска, просто нажмите Enter в опции «Последний сектор» при создании нового раздела.
После этого нажмите P, чтобы проверить только что созданную таблицу разделов.
Нажмите W, чтобы сохранить изменения на диск.
Также прочтите: Как протестировать различные дистрибутивы Linux в Интернете
Форматирование дисков в Gentoo
Следующим шагом будет форматирование жесткого диска. Сначала отформатируйте системный раздел EFI как FAT с помощью следующей команды:
При этом будет создана файловая система FAT, необходимая для загрузки системы EFI. Оттуда создайте файловую систему для раздела «/boot», используя более простую файловую систему ext2.
Далее создайте и включите раздел SWAP, чтобы указать Gentoo, что этот раздел можно использовать для обмена оперативной памятью. Для этого выполните следующее:
Наконец, создайте файловую систему ext4 для корневого раздела, выполнив следующую команду:
Загрузка архива Gentoo Stage 3
Оттуда смонтируйте только что созданный корневой раздел в каталог «/mnt/gentoo», потому что теперь установка будет выполняться на жестком диске вашего компьютера.
Этот архив содержит все программы, необходимые для минимальной установки Linux. Распакуйте его с помощью tar:
Также прочтите: 5 дистрибутивов Arch Linux, которые проще установить и использовать
Выбор зеркала загрузки и копирование информации DNS
Укажите, где вы хотите скачать пакеты для этой системы, выполнив команду mirrorselect:
Откроется программа TUI, в которой вы сможете выбрать ближайший к вам сервер.
Оттуда скопируйте файл репозитория для Gentoo в папку «/etc/portage», которая представляет собой файл конфигурации, содержащий ссылки на то, как Gentoo будет загружать свои пакеты:
Наконец, скопируйте информацию о распознавателе из установщика USB в каталог «/mnt/gentoo», чтобы после изменения корневого каталога на жесткий диск сеть продолжала работать. Для этого выполните следующую команду:
Монтирование файлов устройства и chroot
Начните монтировать специальные каталоги из установщика USB на жесткий диск, чтобы убедиться, что после запуска chroot используемые вами периферийные устройства по-прежнему работают.
Последнее, что нужно сделать в программе установки USB, — запустить команду chroot, чтобы переместить базовый корневой каталог с USB на жесткий диск:
Монтирование раздела /boot и обновление Gentoo
Смонтируйте раздел «/boot» на свой компьютер с Gentoo, чтобы при последующей установке ядра оно было сохранено в правильном месте:
После этого обновите свои репозитории Gentoo, чтобы убедиться, что вы получаете последние пакеты при первом обновлении системы:
Отсюда emerge-webrsync подключится к выбранным вами зеркалам и загрузит последние EBUILDS, доступные для Gentoo.
Ваше первое обновление системы Gentoo
Теперь вы можете обновить свою систему, чтобы она соответствовала последним версиям EBUILDS, выполнив команду emerge:
При этом emerge попросит сравнить ваши пакеты Stage 3 с теми, которые в настоящее время находятся в репозитории Gentoo. Emerge обновит найденные пакеты до более новой версии.
Поэтому этот процесс займет некоторое время, так как Emerge будет получать и компилировать каждый пакет, который необходимо обновить.
Часовой пояс и регионы
Далее вам нужно настроить информацию для конкретного региона, включая часовой пояс и язык системы. Чтобы установить часовой пояс для вашего региона, найдите ближайшее к вам место в папке «/usr/share/zoneinfo».
Оттуда запишите его в файл «/etc/timezone». Например, ближайший ко мне город — «Азия/Манила»:
Теперь установите локаль для Gentoo, которая будет определять системный язык по умолчанию для компьютера. Для этого отредактируйте файл «/etc/locale.gen»:
Оттуда добавьте локаль, которую вы хотите использовать в Gentoo. Вы можете просмотреть полный список доступных локалей, проверив файл «/usr/share/i18n/SUPPORTED». В моем случае я хочу, чтобы система использовала английский язык (США):
Затем запустите locale-gen, чтобы воссоздать языковой стандарт вашей системы.
Установка ядра Linux
Существует несколько способов установки ядра Linux в Gentoo. Либо вручную настройте все его функции, либо используйте готовый от разработчиков Gentoo. Для наших целей мы выбираем последнее.
Чтобы установить предварительно собранное ядро Linux, установите две вещи: пакет installkernel и само ядро, выполнив следующую команду:
Также прочтите: Как понизить версию ядра в Linux
Настройка fstab
Установив ядро, заполните файл fstab: файл, который сообщает Gentoo при запуске, какие разделы монтировать и куда. Запустите эту команду, чтобы отредактировать его:
Укажите все разделы, которые вы создали в fdisk. Например, в системе UEFI ваш файл fstab может выглядеть примерно так:
Установка корневого пароля
Отсюда вы хотите установить пароль root для системы, так как по умолчанию tar-архив Stage 3 устанавливает случайный пароль для учетной записи root.
Если вы не добавите сюда пароль, доступ к нему после перезагрузки будет невозможен. Чтобы изменить пароль root, выполните следующее:
Установка дополнительных инструментов
После этого установите дополнительные сторонние инструменты, которые могут вам понадобиться для вашей системы Gentoo. Например, если вы хотите подключиться как по Ethernet, так и по беспроводной сети, установите следующее:
Кроме того, вы можете установить системный журнал, если хотите отслеживать поведение вашей системы:
Вы также можете установить утилиты файловой системы для наиболее распространенных файловых систем, с которыми вы можете взаимодействовать:
Установка загрузчика
Последним шагом в установке Gentoo является загрузчик, простая программа, расположенная между BIOS и ядром Linux. Его функция состоит в том, чтобы указать BIOS загрузить ядро, которое затем загрузит операционную систему.
Чтобы установить загрузчик GRUB, выполните следующую команду:
После установки выполните следующие команды, чтобы правильно инициализировать и настроить GRUB:
После этого все, что осталось сделать, это размонтировать установщик USB и перезагрузить систему, выполнив следующее:
После перезагрузки системы вас встретит только что установленная система Gentoo Linux. Оттуда начните установку базового программного обеспечения и пакетов для создания собственного пользовательского дистрибутива Linux.
Однако, если вы все еще не уверены, какую среду рабочего стола установить, ознакомьтесь с нашей статьей о том, что мы считаем лучшими средами рабочего стола для Linux.
Также читайте: 17 лучших игр для Linux 2022 года
Часто задаваемые вопросы
1. Есть ли способ ускорить время компиляции в Gentoo?
Да! Вы можете значительно ускорить время компиляции в Gentoo, добавив несколько значений в файл «/etc/portage/make.conf». Например, установите это значение, чтобы позволить вашему компьютеру использовать большую часть своих ядер во время компиляции программы:
2. Моя система не загрузилась! Он показал GRUB, но после загрузки он просто пуст.
Это может быть связано с рядом причин. Одна из наиболее распространенных причин заключается в том, что ваш файл fstab не был правильно настроен. Исправьте это, подключив установщик USB и выполнив шаги, которые мы предприняли для chroot на жесткий диск.
Читайте также: