Как стать автором
Обновить

Комментарии 36

Пилить статью на Хабр просто про установку Арча? Я бы на такое не отважился - с говном съедят. К тому же, автору с его любовью к роллингу и зашифрованному корню больше показан Tumbleweed. Гораздо меньше головняка, а преимущества почти те же.

Это же "Чудо чудесное..." :Е.М.
Творчество в массы! Еды такой много.

https://www.google.com/search?q=установка+arch
И никто не отменял:
https://wiki.archlinux.org/title/Category:Installation_process
Устаревшие правки
https://wiki.archlinux.org/title/Category:Installation_process_(Русский)

По пунктам про арч, поехали:

  • Минимализм. Не ставится ничего лишнего. Ты сам выбираешь те пакеты которые ты хочешь использовать.

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

  • Rolling base releases. У вас всегда последние версии всех пакетов. Эта модель мне нравится значительно больше, чем выходящие раз в пол года версии

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

  • ArchWiki. Это огромное количество документации, которое покрое любую возникшую проблему

Вот тут безспорно самая крутая вики среди всех дистров хотя бы за то что локализованные страницы обычно не сильно отстают от первоисточника (боль дженту и freebsd)

  • AUR за огромное количество софта

А вот AUR это жирный минус рача. весь софт в системе должен ставиться одним пм из однотипных реп и всё такое. AUR же не является репозиторием пакетов. альтернативы у других дистров есть: у opensuse это мегашикарный OBS, у красношляпоподобных это copr и так далее. Единственные плюс AUR это то что pkgbuild'ы писать сильно проще чем rpm spec который в свою проще чем deb вариант, но как альтернатива ebuild в gentoo пишется плюсминус так же но не является для генты чужеродным как AUR в раче.

Всё вышенаписаное является строго ИМХО и ни в коем случае не навязываю. Сам когда-то считал рач отличным дистрибутивом.

Ну и по поводу тела статьи: LVM немножко устарел, в эпоху btrfs/zfs он уже не особо нужен, опять же ИМХО.

Почему у вас в комментарии везде «рач» а не «арч» ?)))

простите, привычка.. выработанный годами общения в разных cumюнити рефлекс.

Обсуждать Gentoo смысла нет в "разных cumюнити"
пока админ локалхоста не покажет свой make.conf и package.use

cat /etc/portage/make.conf
cat /etc/portage/package.use

шо, будем конфигами меряться? сколько строк примите за труъ? 😁

Не-а. Нет времени и желания.
Продуктивней почитать про иерархию применения use флагов:

profile -> make.conf -> package.use
https://devmanual.gentoo.org/profiles/index.html

НЛО прилетело и опубликовало эту надпись здесь

Олдфажество? ГОРДЫНЯ?
ГОРДЫНЯ, чувство собственной важности, является причиной страданий
и болезней, часто неизлечимых, а также смерти.
Именно гордыня является источником всех пагубных мыслей и эмоций.

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

весь софт в системе должен ставиться одним пм из однотипных реп и всё такое

Когда-то я тоже колупал себе мозг конструкциями типа "Х должен Y, потому что Z", где Y и Z — чисто теоретические домыслы. А потом мне надоела эта аутомозгомойка и я забил онанировать на теории, стал двигаться в сторону прагматизма, где главное — практический результат. И тогда внезапно понял, что мои игры в идеально правильную систему бессмысленны чуть более, чем полностью. Сейчас я использую Manjaro, в системе у меня свалка из дистрибутивных реп, AUR, обмазанных костылями deb и rpm, вручную собранных программ, и знаете — всё прекрасно работает. Надо будет — и виндой попользуюсь, невзирая на то, какая она там кривая под капотом и всё такое :)

А вот AUR это жирный минус рача. весь софт в системе должен ставиться одним пм из однотипных реп и всё такое.

AUR лишь предоставляет метаданные и сборочные скрипты пакета для стандартного менеджера пакетов arch. С этой стороны претензии к нему странны. Реальная проблема в том, что новички не всегда в курсе или несерьезно относятся к тому, что aur никак не модерируется и по сути небезопасен. Я бы не называл AUR "жирным минусом" - скорее это реально удобная фича чем баг, задуманная изначально для профессионалов которые понимают что они делают, ну а новички часто отстреливают себе многое, да.

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

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

мне казалось я понятно написал.. даже не знаю как ещё понятнее.. но попробую:

чтобы минимизировать проблемы с ПО есть несколько "правил" которых стоит придерживаться. одно из них касается поставки ПО, а именно то что поставляться оно должно одним способом. тоесть из реп одинаковых одним единственным ПМ. АУР же не является репозиторием пакетов. То есть АУР чужеродный способ поставки пакетов, если бы ВСЕ пакеты ставились из АУР было бы норм, но это не так. часть пакетов тянутся в бинарном виде, часть тянутся в виде скрипта и собираются локально, досыпать сюда snap, flatpack, appimage, make install и получится идеальный выстрел в ногу замедленного действия.

как пример "правильного" аналога aur я часто привожу obs от opensuse или copr от fedora/centos. там так же любой желающий может сделать пакет, только этот пакет не будет лежать ввиде скрипта, он соберётся в rpm и покладётся в пользовательскую репу которую потом можно добавить в родной системе ПМ и поставить как и любые другие пакеты. конечно есть недостатки. например в сузевом OBS можно собирать только открытое ПО. перепаковать проприетарный софт из deb в rpm например технически возможно, но на практике за такое твою репу удалят а тебя забанят. но и из таких ситуаций есть выход - сторонний obs от коммюнити. более того obs позволяет собирать не только rpm пакеты для одного дистрибутива, там так же можно собрать пакеты и репу для rh'подобных (да они отличаются) и даже для debian или того же arch. таких реп немного, но они есть. собранная в obs репа для арча добавляется в конфиг пакмана и пакман тянет с неё родные для себя пакеты.
другим примером аналога aur можно назвать gentoo. ebuild для gentoo это почти то же самое что pkgbuild для arch. покласть его можно в апсолютно любую git репу и это будет РОДНОЙ системе способ поставки ПО. правда в случае генты родным для системы способом будет и бинарный пакет, там вообще ПМ из коробки весьма многое умеет из покон веков, например меня дико порадовала возможность прикрутить distc.

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

P.S.: я не очень умею объяснять, но надеюсь мысль донёс. я не хейтер арча как такового, мне нравятся в нём некоторые вещи, но из-за таких вот костылей я от него отказался полностью

ebuild для gentoo это почти то же самое что pkgbuild для arch.

Я не юзал gentoo, расскажите, а в чём разница-то? Чем ebuild принципиально лучше чем pkgbuild?


они не осилили KMP

Я не очень понял, что такое KMP? Он как-то умеет магически решать проблему бесконечного числа сборок ядер разных версий и проблему несовместимости API разных версий ядра?


и поставляют модули в виде dkms

Это неправда, для официально поддерживаемых ядер в официальных же репозиториях лежат пакеты с заранее собранными модулями, не требующие использования dkms (например: nvidia, r8168, virtualbox-host-modules-arch)


Если же вам не нравится, что модули из AUR требуют dkms, то как вы предлагаете распространять их для абсолютно любых версий официальных и неофициальных ядер самых разных версий?

Я не юзал gentoo, расскажите, а в чём разница-то? Чем ebuild принципиально лучше чем pkgbuild?

тем что ebuild это родной для emerge формат, а pkgbuild для pacman костыль приделанный сбоку. вроде бы я это выше описал

Я не очень понял, что такое KMP

KMP это когда пакет несёт в себе модуль собранный для того ядра что есть в твоём дистре, dkms это сраный make install в систему со всеми вытекающими

Это неправда

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

pkgbuild для pacman костыль приделанный сбоку

Допустим, а почему это плохо?


KMP это когда пакет несёт в себе модуль собранный для того ядра что есть в твоём дистре

Это в официальных репозиториях Arch есть, да


но я же не сказал что "все", но большинство

Я их поштучно не считал, но лично у меня в системе из dkms-модулей только v4l2loopback — и подозреваю, что это не «не осилили», а просто не нашлось мейнтейнера-добровольца, который не поленился бы заранее собрать его под официальные ядра

Чем ebuild принципиально лучше чем pkgbuild?

Ебилды поддерживают use-флаги, благодаря чему можно повырезать из программ целые куски кода во время сборки - например, собрать всю систему без каких-либо намёков на Qt или GTK.

В реале не всё так просто и там масса нюансов, но в целом вот так. Арч такой гибкости не может обеспечить.

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

Скажу ересь, но именно костыльность AUR и ущербность pacman (в частности слабое отслеживание зависимостей по символам) делают его наиболее жизнеспособным для rolling-release дистрибутива. OBS для Tumbleweed (да и вообще любые бинарные репы для rolling-release с нормально линкуемыми пакетами) использовать сложно из-за регулярно отстающих зависимостей, мешающих обновляться. CORP тоже создает проблемы, по меньшей мере при обновлении до следующего релиза.


А ещё в случае с AUR проще с доверием. Я могу доверять только автору исходного софта, а в части мейнтейнера мне достатояно увидеть, что он не поменял источник, откуда качает сорцы и не добавил патч бармина из самого PKGBUILD. Дифф же мне покажет метакостыль в виде AUR helper'а

А как сейчас обстоят дела в генте? Идея мне в принципе очень нравится, и отсутствие systemd по умолчанию — безусловный плюс тоже. Но когда я генту тыкал палочкой где-то год назад, увидел полное отсутствие linphone (для меня критично, поскольку много времени провожу в путешевствиях; да, я в курсе, что протокол sip — это крайне кривой костыль на UDP-костыле и костылём погоняет, но других open-source (вместе с серверной частью) решений для звуковой связи под linux я не видел) и кривые зависимости, вроде gtk2 рекурсивно зависящего от gtk3. Плюс прямо сейчас на packages.gentoo.org написано © 2001-2021, и это 2021 очень напрягает, как будто проект полностью заброшен и даже эти конкретные баги фиксить некому.

Плюс, когда пробовал, ещё заметил там (х)руст во все поля, даже без всяких браузеров. Это, конечно, мелочь по сравнению со всем остальным. Но, сторого говоря, лишает gentoo гордого в смысле безопасности звания дистрибутива, в котором из бинарников требуется только компилятор c++, способный собрать себя из исходников, а остальное — строго с уровнем доверия source.

Отсутствие системдЫ по умолчанию это миф, ты можешь выбрать изначальный stage3 образ как на systemd так и на openrc по желанию. Насчёт линфона я хз, так как вместо него предпочитаю юзать твинкл, но если чего-то нет из коробки то наверняка есть в оверлеях. Что там с gtk я особо не вкурсе так как предпочитаю qt.

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

Отсутствие системдЫ по умолчанию это миф, ты можешь выбрать изначальный stage3 образ как на systemd так и на openrc по желанию.
OK, скажем аккуратно: отсутсвие systemd как одна из двух равноправных альтернатив по умолчанию. Это лучше, чем если на все баги в systemd-free конфигурации мантейнеры отвечают «не поддерживается».
Насчёт линфона я хз, так как вместо него предпочитаю юзать твинкл
На packages.gentoo.org поиск по «twinkle» тоже ничего не находит. Я не знаю, может его и можно было поставить стандартным путём в прошлом, но в заново устанавливаемой системе — уже нет.
если чего-то нет из коробки то наверняка есть в оверлеях
Вот эта идея мне как раз не нравится. Если два пакета в стандартном репозитории конфликтуют (например, один требует либу версии <= n, а другой >= n+1), то есть надежда, что мантейнеры как-то это разрулят (например, сделают возможность поставить 2 версии одновременно). В случае оверлеев же каждый из двух админов оверлеев может считать главным себя, а майнтерйнеры основоного репозитория — что какие попало оверлеи «не поддерживаются», и в итоге конфликт пакетов так и останется.
Что там с gtk я особо не вкурсе так как предпочитаю qt.
Я тоже в принципе предпочитаю qt, но KDE, на мой взгляд, для виртуалки, где я всё это для начала пробовал, всё же тяжеловато. А в более легковесных средах, вроде lxqt, gtk всё же нужно (было) даже для элементарного текстового редактора.
посоветовать вам calculate
Посмотрел я на сайт этого calculate, и не могу сказать, что увиденное меня полностью обрадовало. В списке пакетов на сайте ни linphone, ни twinkle я не нашёл, а год в футере этого списка пакетов вообще 2018.
у него адекватное русскоязычной коммюнити
Не то, чтобы это было для меня большим преимуществом, я и по английски вполне могу читать-писать. Какие там вообще ещё есть преимущества перед gentoo?

На packages.gentoo.org поиск по «twinkle» тоже ничего не находит.

что-ж, emerge его и правда не нашёл, видимо выкинули на мороз

Если два пакета в стандартном репозитории конфликтуют (например, один требует либу версии <= n, а другой >= n+1), то есть надежда, что мантейнеры как-то это разрулят (например, сделают возможность поставить 2 версии одновременно). В случае оверлеев же каждый из двух админов оверлеев может считать главным себя, а майнтерйнеры основоного репозитория — что какие попало оверлеи «не поддерживаются», и в итоге конфликт пакетов так и останется.

в теории да, на практике я такого не встречал. более того: в серьёзных дистрах (например opensuse) разпедаливать пакеты по большому количеству реп а не хранить в одной общей помойке считается нормой.

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

Какие там вообще ещё есть преимущества перед gentoo?

большое кол-во прекомпилированных пакетов, своя тулза для быстрой конфигурации системы (хотя буду честен - я её не юзал, но говорят очень удобно). для корпоративных сетей это одно из лучших решений в плане "замены AD". в целом все плюсы генты, только сборка со своими USE флагами это возможность а не необходимость.

Вы решили запороть установку с флешки?
Надо читать ArchWiki. Вы сами об этом написали.
Вариантов много.

https://wiki.archlinux.org/title/USB_flash_installation_medium
using dd:
dd bs=4M if=path/to/archlinux-version-x86_64.iso of=/dev/sdx conv=fsync oflag=direct status=progress

of=/dev/sda

Предчувствую новую волну школьников, запоровших системный SATA-диск путём копирования этой команды не глядя)

Боюсь что школьники не юзают арч. У них в приоритете устанавливать кал(и) линух - как основную систему.

я так будучи студентом образ убунты в системную память смартфона записал (хотел на микросд, установить надо было, а флешки под рукой не было)

Есть репозиторий spark: Arch Linux Provisioning with Ansible (Playbook на Ansible для настройки Arch linux). И в нём есть компактная инструкция по установке: https://github.com/pigmonkey/spark/blob/master/INSTALL.md, довольно удобно организована для накатывания.

— в такой установке Swap находится на зашифрованном разделе, а значит, что hibernate не будет нормально работать.
— со своей колокольни конечно, но я бы рекомендовал btrfs вместо lvm, никаких преимуществ последней в домашнем использовании (имхо)
— в указанном archwiki можно делать свои статьи, как например https://wiki.archlinux.org/title/User:Altercation/Bullet_Proof_Arch_Install или вот ещё https://wiki.archlinux.org/title/User:M0p/LUKS_Root_on_Btrfs,
я бы рекомендовал туда пилить такое
— в моем случае, после установки на nvme система не грузилась, пока не прописал в /etc/mkinitcpio.conf MODULES=(vmd)
mkpart ESP fat32 1MiB 512MiB
Странновато выглядит смешение чисто GNU/FSF-ской таблицы разделов gpt и микрософтовской файловой системы FAT32 (для linux, на одном из «системных» разделов /boot файловая система FAT32, я правильно понял? На которую все утилиты работы с фйаловыми системами вроде mkfs мягко ругаются, типа «вы, конечно, можете продолжить, если хотите, но вообще шли бы вы в винду заниматься этой микрософтовщиной и копирайтовщиной»).

А вы знакомы с такой вещью как ESP и UEFI загрузка в целом? И я ещё ни разу не видел чтобы mkfs.vfat на что-то ругалась(как и mkfs.ntfs) А почему GPT вдруг стала частью GNU я и представить себе боюсь

А вы знакомы с такой вещью как ESP и UEFI загрузка в целом?
Всё, что я знаю про UEFI — что это была попытка сторонников копирайта так изменить BIOS в рамках концепции trusted computing, чтобы запретить на новых материнских платах запуск linux и вообще любого не одобренного микрософтом кода, как минимум на bare metall. Поскольку тогда был 2010 примерно год, а не 2022, после выхода нескольких таких моделей матплат и ноутбуков общественность таки возмутилась, и гайки немного пооткрутили. В любом случае я считаю, что этой истории достаточно, чтобы сказать, что это всё, что нужно знать про UEFI, и гнать его поганой метлой, пока возможно, из настроек всех систем, к которым нужно хоть какое-то доверие.
И я ещё ни разу не видел чтобы mkfs.vfat на что-то ругалась(как и mkfs.ntfs)
Сейчас попробовал, не ругается. Как известно, в мире копирайта ты три дня радуешься, а потом постоянно разруливаешь проблемы, а в мире linux наоборот — три дня разруливаешь проблемы, а потом всё летает. Я к тому, что по назначению мне mkfs.vfat использовать давно не приходилось, и возможно, новую версию немного отдебагали и варнинг убрали. Но я даже помню примерно текст этого варнинга, что-то про filesystem creation code in not very robust, so it is recommended to use dos/windows utilities to create dos/windows filesystems unless absolutely necessary.
А почему GPT вдруг стала частью GNU я и представить себе боюсь
Всегда на моей памяти расшифровывалось как GNU Partition table. Насколько я знаю, GPT — ровно такая же попытка избавиться от тяжёлого наследия microsoft на linux-машинах (в данном случае — в виде того, что в linux называется microsoft partition table или msdos partition table), как и ext2/3/4 — способ избавиться от fat/ntfs.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории