[РЕШЕНО] Переход на systemd
Всем привет!
Пытаюсь перейти с OpenRC на systemd по руководству https://wiki.gentoo.org/wiki/Systemd/ru
Дошёл до раздела "Конфигурация"
Я так понял, из заметки, что нужно сначала перезагрузить комп в systemd, прежде чем конфигурировать...
Загрузка останавливается на ошибке, что вроде
... [] ata2.00: ACPI cmd ef:/10:0:00:00:00:b0 (SET FEATURES) rejected by device (Stat=0x51 Err=0x04) [] ata2.00: ACPI cmd ef:/10:0:00:00:00:b0 (SET FEATURES) filtered out [] ata2.00: ACPI cmd ef:/10:0:00:00:00:b0 (SET FEATURES) rejected by device (Stat=0x51 Err=0x04) [] ata2.00: ACPI cmd ef:/10:0:00:00:00:b0 (SET FEATURES) rejected by device (Stat=0x51 Err=0x04) ... [] sd 1:0:0:0: [sda] 3...5 512-byte logical blocks: (160 GB/149 GiB) [] sd 1:0:0:0: [sda] Write protect is off [] sd 1:0:0:0: Attached scsi generic sg0 type 0 [] sd 1:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA ... [] EXT4-fs (sda4): could't mount as ext3 due to feature incompatibilities [] EXT4-fs (sda4): mounted filesystem with ordered data mode. Opts: (null) [] VFS: Mounted root (ext4 filesystem) readonly on device 8:4. ... [] systemd[1]: systemd 233 runing in system mode. (+PAM ..) [1.278276] systemd[1]: Detected architecture x86-64. Welcome to Gentoo/Linux! [1.282274] systemd[1]: Set hostname to <<тут есть имя хоста!>> [] system-system- (103) used greatest stack depth: 13664 bytes left ( [1.300068] systemd-debug-g (94) used greatest stack depth: 14184 bytes left - этой строки теперь нет) [1.31] systemd-fstab-g (94) used greatest stack depth: 13104 bytes left [1.32] traps: system-gpt-aut[97] trap invalid opcode ip: 7f... sp: 7f.... error:0[1.32] in libsystemd-shared-233.s0[7f...] [1.333] system[92]: /usr/lib64/systemd/system-generators/systemd-gpt-auto-generator terminated by signal ILL. (с вставленной флэшкой тут было gentoo-locale-ge (95) used greatest stack depth: 13240 bytes left) [1.346133] traps: systemd[1] trap invalid opcode ip: 7f45fbf57bc2 sp: 7f.... error:0[1.346195] in libsystemd-shared-233.s0[7f...] [1.347076] systemd[1]: Caught, dumped core as pid 104. [1.347136] systemd[1]: Freezing execution.
Почему то ноут не хочет грузиться с моих загрузочных флэшек. Когда вставляю флэшку зависает сразу после включения.
1) Где посмотреть лог с этой ошибкой?
2) Как исправить загрузку?
Информация о системе:
Профиль systemd
gpt
/dev/sda2 /boot ext2
/dev/sda3 swap
/dev/sda4 / ext4
# emerge --info Portage 2.3.6 (python 3.4.5-final-0, default/linux/amd64/13.0/systemd, gcc-5.4.0, glibc-2.23-r4, 4.9.34-gentoo x86_64) ================================================================= System uname: KiB Mem: 4011436 total, 2476524 free KiB Swap: 14680056 total, 14680056 free Timestamp of repository gentoo: Thu, 03 Aug 2017 16:15:01 +0000 sh bash 4.3_p48-r1 ld GNU ld (Gentoo 2.25.1 p1.1) 2.25.1 app-shells/bash: 4.3_p48-r1::gentoo dev-lang/perl: 5.24.1-r2::gentoo dev-lang/python: 2.7.12::gentoo, 3.4.5::gentoo dev-util/cmake: 3.7.2::gentoo dev-util/pkgconfig: 0.28-r2::gentoo sys-apps/baselayout: 2.3::gentoo sys-apps/openrc: 0.28::gentoo sys-apps/sandbox: 2.10-r3::gentoo sys-devel/autoconf: 2.13::gentoo, 2.69::gentoo sys-devel/automake: 1.11.6-r1::gentoo, 1.14.1::gentoo, 1.15-r2::gentoo sys-devel/binutils: 2.25.1-r1::gentoo, 2.28-r2::gentoo sys-devel/gcc: 5.4.0-r3::gentoo sys-devel/gcc-config: 1.7.3::gentoo sys-devel/libtool: 2.4.6-r3::gentoo sys-devel/make: 4.2.1::gentoo sys-kernel/linux-headers: 4.4::gentoo (virtual/os-headers) sys-libs/glibc: 2.23-r4::gentoo Repositories: gentoo location: /usr/portage sync-type: rsync sync-uri: rsync://rsync.ru.gentoo.org/gentoo-portage priority: -1000 dlang location: /var/lib/layman/dlang masters: gentoo priority: 50 haskell location: /var/lib/layman/haskell masters: gentoo priority: 50 ACCEPT_KEYWORDS="amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=native -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-march=native -O2 -pipe" DISTDIR="/usr/portage/distfiles" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="ftp://gentoo.bloodhost.ru/ http://gentoo.bloodhost.ru/ ftp://xeon.gentoo.ru/mirrors/gentoo/distfiles/" LANG="ru_RU.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j1" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git" PORTAGE_TMPDIR="/var/tmp" USE="acl amd64 berkdb bzip2 cjk cli cracklib crypt cxx dri fortran gdbm iconv ipv6 mmx mmxext modules multilib ncurses nls nptl openmp pam pcre readline seccomp session sse sse2 sse3 ssl ssse3 systemd tcpd udev unicode xattr xinerama zlib" ABI_X86="64" ALSA_CARDS="hda-intel" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="cjk mmx mmxext sse sse2 sse3 ssse3 xinerama" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="ru ru_RU en" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6" POSTGRES_TARGETS="postgres9_5" PYTHON_SINGLE_TARGET="python3_4" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby21 ruby22" USERLAND="GNU" VIDEO_CARDS="intel i965" XFCE_PLUGINS="brightness clock trash" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
PS Решение:
1. При сборке системы на другом компьютере не учёл, что при CXXFLAGS="-march=native", пакеты будут собираться для другого процессора.
2. Не сразу заметил в файле /etc/default/grub
по умолчанию было
GRUB_CMDLINE_LINUX="init=/lib/systemd/systemd"
а надо было исправить на
GRUB_CMDLINE_LINUX="init=/usr/lib/systemd/systemd"
- Для комментирования войдите или зарегистрируйтесь
1. Убедиться, что в make.conf
1. Убедиться, что в
make.conf
вUSE
включен ключsystemd
2. Перекомпилировать
Кстати, п.2.2 обязателен, если хоть что-то хотя бы косвенно затрагивающее системД изменилось! Если не понимаешь почему - просто сделай! :) По-любому ничему не помешает и не испортит ничего....
3. В
/etc/default/grub
раскомментироватьдля типового простого случая (без ЛВМ и прочих примамбасов). При наличии "прибамбасов" - возможны варианты...
4. Сгенерить и установить новую конфигурацию загрузчика:
5. И только потом перегрузиться...
P.S. Профиль не особо важен - Gentoo очень гибкая штука, все можно поменять настройками, лучше покажи
emerge --info dbus
Вроде бы все нормально в
Вроде бы все нормально в общем...
Только бы я посоветовал включить питон2.7 как основной и повторить процедуру, которую я приводил выше, при этом в п.2 не должно быть никаких ошибок. Если будут - покажи, будем разбираться.
P.S. перечитал исходные логи - у тебя там неопределено имя хоста. СистемД требует явное задание имени в
/etc/hostname
пункт 2.1 выполнить пока не
пункт 2.1 выполнить пока не удалось из-за блокировок,
пункт 2.2 и остальное сделал.
Но система пока не грузится. Немного обновил лог загрузки.
Ремонтирую systemd, вставляя ssd в другой комп, поэтому после генерации grub.cfg вручную в нём меняю название sdc на sda.
hostname установлен, просто на форуме не отображается...
Покажи блокировки - будем решать...
п2.2 не имеет практического смысла без п2.1! :)
Покажи блокировки - будем решать...
P.S. Если бы имя хоста было бы определено для системД, то это бы обязательно отразилось в логах! Еще раз: СистемД требует явного задания имени в /etc/hostname, а не в
/etc/conf.d/hostname
, как принято в Генту! Чтобы не было непоняток, покажиИли ты его сам замаскировал?
P.P.S. Убери
-rdynamic
из флагов!# emerge -auND --with-bdeps=y
Большое спасибо за оперативную помощь!
Ноут по прежнему не загружается, немного обновил лог загрузки...
Насчёт hostname - просто не умею в этом форуме угловые скобочки ставить...
Блокировок больше нет.
- не думал, что журналы работают без запущенного systemd.
-rdynamic не стоит ни в make.conf, ни в package.use
вообще у меня в этих файлах минимум флагов, всё из профиля берётся...
В ближайшее время буду пробовать выполнить 2.1 и 2.2
Дай конфиг ядра
dbus
нуждается вrdynamic
, поэтому выставляет его прямо в ебилде.Все пункты сделал, и сделал
Все пункты сделал, и собрал очередное ядро после 2.1, 2.2.
Но результатов это не дало, всё тоже самое.
Нашёл ещё такую ссылку https://freedesktop.org/wiki/Software/systemd/Debugging/
Tы чем там читаешь? :)
Tы чем там читаешь? :)
Постом выше, на который ты, кстати, ответил, я говорил, что ядро надо делать до пп2.1-2.2!
А вообще-то сыстемД/дбус весьма капризные штучки. Я бы еще перебрал все от них зависящее - без фанатизма, конечно! Например,
emacs
и т.п. можно не перебирать. ;) Но, если не очень понимаешь, что к чему, то проще приделать скриптик кequery d [systemd,dbus]
и перекомпилировать все. Как-то раз в особо запущенном случае вылечилось только еще и с предварительной (т.е. доequery d [systemd,dbus]
!) пересборкой зависимостей отequery g [systemd,dbus]
! :)Что же касаемо ссылки, то я предполагал, что теория по теме уже прочитана и освоена! Но, видимо, ты приверженец концепции старого анекдота: "...чукча не читатель, чукча писатель!.." (С)
что ядро надо делать до
Я пересобирал ядро и до, и после. Я же не буду каждый раз весь цикл заново повторять...
Только почему то ошибок в настройках вы у меня не обнаружили... Я уже думал с сообществом случалось что, поотзывчее стало не с того не с сего, а теперь понимаю, что всё впорядке...
А надо бы!
А надо бы! По-крайней мере если не знаешь точно, что изменения не затрагивают системД/дбус, которые довольно сильно завязаны на ядро... но хозяин-барин!..
Чтобы не разрушать твое видение мира более мешать не буду.
Хорошо, большое спасибо за
Хорошо, большое спасибо за ценные советы.
Возможно, проблема была в
Возможно, проблема была в том, что я собирал пакеты на другой машине.
А с флагом -march=native в make.conf, они собирались для архитектуры core i7, а в ноуте стоит Intel Celeron M 723.
Поэтому когда я до конца добил таким способом систему(при запуске программ появляется illegal instruction), возвращался обратно, поставив флаг -mtune=generic, чтобы сначала собрать пакеты, для всех архитектур, но возможно можно было просто убрать и -march и -mtune из флагов.
На systemd пока не проверял, но на openRC почти всё восстановил.
No comments! :)
?!..
No comments! :)
Мы тут изгалялись/головы ломали... а оказывается надо просто быть телепатом!..
/
Описано же:
:wq
--
Live free or die
Проще поставить с нуля,
Проще поставить с нуля, скачав автобилд стейдж 3 системд, далее врубаете процы, флаги и прочее, и делаете все по хендбукам-гуглам. а так надо выпиливать все что с опенрц связаное и его тоже.
и еще вот например
https://github.com/hiroru/gentoo_install
Нет! Не надо.
Нет, а точнее, не всегда. Если система типовая - может быть, а если навороченная - то нет!
Не надо. Все что надо - пересоберется как надо после установки соответствующих флагов. Важно только, чтобы питание не обломилось в процессе. :) Ну и сервисы активировать соответственно не забыть.
РЕШЕНО
Всем спасибо, проблема решена.
Лучше сделай ссылку
Лучше сделай ссылку
поскольку начиная со следущей версии (
sys-apps/systemd-234
) будет именно так!