random-archer / mkinitcpio-systemd-tool

Provisioning tool for systemd in initramfs (systemd-tool)
https://www.archlinux.org/packages/community/any/mkinitcpio-systemd-tool/
Other
113 stars 27 forks source link

chroot: use explicit checks via systemd-detect-virt #58

Closed vaminakov closed 4 years ago

vaminakov commented 4 years ago

Hello!

~ # systemctl list-unit-files --state=enabled
``` UNIT FILE STATE initrd-cryptsetup.path enabled initrd-dropbear.service enabled initrd-network.service enabled initrd-nftables.service enabled initrd-shell.service enabled initrd-util-usb-hcd.service enabled ```

When I build mkinitcpio-systemd-tool from real root: mkinitcpio -Pvvv:

``` -> Running build hook: [/usr/lib/initcpio/install/systemd-tool] provisioning initrd systemd units processing systemd unit initrd-nftables.service resolved service unit path: /usr/lib/systemd/system/initrd-nftables.service producing initramfs unit file: /usr/lib/systemd/system/initrd-nftables.service provision new binary /usr/bin/nft adding file: /usr/bin/nft adding file: /usr/lib/libnftables.so.1 adding file: /usr/lib/libreadline.so.8 adding file: /usr/lib/libmnl.so.0 adding file: /usr/lib/libnftnl.so.11 adding file: /usr/lib/libjansson.so.4 adding file: /usr/lib/libgmp.so.10 adding file: /usr/lib/libncursesw.so.6 reuse present binary /usr/bin/nft reuse present binary /usr/bin/nft call in-line [add_all_modules /netfilter/nft_*] in unit /usr/lib/systemd/system/initrd-nftables.service adding module: nft_meta_bridge adding module: nf_tables adding module: nfnetlink adding module: bridge adding module: stp adding module: llc adding module: nft_reject_bridge adding module: nft_reject adding module: nf_reject_ipv4 adding module: nf_reject_ipv6 adding module: nft_dup_ipv4 adding module: nf_dup_ipv4 adding module: nft_fib_ipv4 adding module: nft_fib adding module: nft_reject_ipv4 adding module: nft_dup_ipv6 adding module: nf_dup_ipv6 adding module: nft_fib_ipv6 adding module: nft_reject_ipv6 adding module: nft_chain_nat adding module: nf_nat adding module: nf_conntrack adding module: nf_defrag_ipv6 adding module: libcrc32c adding module: crc32c-intel adding module: crc32c_generic adding module: nf_defrag_ipv4 adding module: nft_compat adding module: x_tables adding module: nft_connlimit adding module: nf_conncount adding module: nft_counter adding module: nft_ct adding module: nft_dup_netdev adding module: nf_dup_netdev adding module: nft_fib_inet adding module: nft_fib_netdev adding module: nft_flow_offload adding module: nf_flow_table adding module: nft_fwd_netdev adding module: nft_hash adding module: nft_limit adding module: nft_log adding module: nft_masq adding module: nft_nat adding module: nft_numgen adding module: nft_objref adding module: nft_osf adding module: nfnetlink_osf adding module: nft_queue adding module: nft_quota adding module: nft_redir adding module: nft_reject_inet adding module: nft_socket adding module: nf_socket_ipv4 adding module: nf_socket_ipv6 adding module: nft_synproxy adding module: nf_synproxy_core adding module: nft_tproxy adding module: nf_tproxy_ipv6 adding module: nf_tproxy_ipv4 adding module: nft_tunnel adding module: nft_xfrm call in-line [add_all_modules /netfilter/nf_tables*] in unit /usr/lib/systemd/system/initrd-nftables.service adding module: nf_tables_set replace path /etc/nftables.conf provision new file /etc/mkinitcpio-systemd-tool/config/initrd-nftables.conf -> /etc/nftables.conf adding file: /etc/nftables.conf adding dir: /etc/systemd/system/initrd-network.service.wants adding symlink: /etc/systemd/system/initrd-network.service.wants/initrd-nftables.service -> /usr/lib/systemd/system/initrd-nftables.service processing systemd unit initrd-network.service resolved service unit path: /usr/lib/systemd/system/initrd-network.service producing initramfs unit file: /usr/lib/systemd/system/initrd-network.service processing systemd unit systemd-networkd.service resolved service unit path: /usr/lib/systemd/system/systemd-networkd.service producing initramfs unit file: /usr/lib/systemd/system/systemd-networkd.service provision new binary /usr/lib/systemd/systemd-networkd adding file: /usr/lib/systemd/systemd-networkd adding dir: /etc/systemd/system/multi-user.target.wants adding symlink: /etc/systemd/system/multi-user.target.wants/systemd-networkd.service -> /usr/lib/systemd/system/systemd-networkd.service processing systemd unit systemd-resolved.service resolved service unit path: /usr/lib/systemd/system/systemd-resolved.service producing initramfs unit file: /usr/lib/systemd/system/systemd-resolved.service provision new binary /usr/lib/systemd/systemd-resolved adding file: /usr/lib/systemd/systemd-resolved adding file: /usr/lib/libgnutls.so.30 adding file: /usr/lib/libtasn1.so.6 adding file: /usr/lib/libnettle.so.7 adding file: /usr/lib/libhogweed.so.5 adding symlink: /etc/systemd/system/multi-user.target.wants/systemd-resolved.service -> /usr/lib/systemd/system/systemd-resolved.service reuse present binary /bin/true reuse present binary /bin/sh reuse present binary /bin/sh reuse present binary /bin/sh reuse present binary /bin/sh reuse present binary /bin/sh provision new file /etc/mkinitcpio-systemd-tool/network/initrd-network.network -> /etc/systemd/network/initrd-network.network adding file: /etc/systemd/network/initrd-network.network call in-line [add_checked_modules /drivers/net/] in unit /usr/lib/systemd/system/initrd-network.service adding module: e1000e adding module: r8169 adding module: realtek adding module: libphy adding file: /usr/lib/firmware/rtl_nic/rtl8125a-3.fw adding file: /usr/lib/firmware/rtl_nic/rtl8107e-2.fw adding file: /usr/lib/firmware/rtl_nic/rtl8107e-1.fw adding file: /usr/lib/firmware/rtl_nic/rtl8168fp-3.fw adding file: /usr/lib/firmware/rtl_nic/rtl8168h-2.fw adding file: /usr/lib/firmware/rtl_nic/rtl8168h-1.fw adding file: /usr/lib/firmware/rtl_nic/rtl8168g-3.fw adding file: /usr/lib/firmware/rtl_nic/rtl8168g-2.fw adding file: /usr/lib/firmware/rtl_nic/rtl8106e-2.fw adding file: /usr/lib/firmware/rtl_nic/rtl8106e-1.fw adding file: /usr/lib/firmware/rtl_nic/rtl8411-2.fw adding file: /usr/lib/firmware/rtl_nic/rtl8411-1.fw adding file: /usr/lib/firmware/rtl_nic/rtl8402-1.fw adding file: /usr/lib/firmware/rtl_nic/rtl8168f-2.fw adding file: /usr/lib/firmware/rtl_nic/rtl8168f-1.fw adding file: /usr/lib/firmware/rtl_nic/rtl8105e-1.fw adding file: /usr/lib/firmware/rtl_nic/rtl8168e-3.fw adding file: /usr/lib/firmware/rtl_nic/rtl8168e-2.fw adding file: /usr/lib/firmware/rtl_nic/rtl8168e-1.fw adding file: /usr/lib/firmware/rtl_nic/rtl8168d-2.fw adding file: /usr/lib/firmware/rtl_nic/rtl8168d-1.fw adding module: fjes make symbolic link /etc/resolv.conf -> /run/systemd/resolve/resolv.conf adding symlink: /etc/resolv.conf -> /run/systemd/resolve/resolv.conf replace path /etc/hostname provision new file /etc/hostname -> /etc/hostname adding file: /etc/hostname provision new file /usr/lib/systemd/resolv.conf -> /usr/lib/systemd/resolv.conf adding file: /usr/lib/systemd/resolv.conf provision new binary /usr/lib/libnss_dns.so.2 adding file: /usr/lib/libnss_dns.so.2 adding file: /usr/lib/libresolv.so.2 create empty dir /var/tmp/ adding dir: /var/tmp/ adding dir: /etc/systemd/system/sysinit.target.wants adding symlink: /etc/systemd/system/sysinit.target.wants/initrd-network.service -> /usr/lib/systemd/system/initrd-network.service processing systemd unit initrd-shell.service resolved service unit path: /usr/lib/systemd/system/initrd-shell.service producing initramfs unit file: /usr/lib/systemd/system/initrd-shell.service reuse present binary /bin/true provision new file /usr/lib/mkinitcpio-systemd-tool/initrd-shell.sh -> /usr/lib/mkinitcpio-systemd-tool/initrd-shell.sh 700 adding file: /usr/lib/mkinitcpio-systemd-tool/initrd-shell.sh reuse present binary /usr/bin/sulogin reuse present binary /usr/bin/systemctl provision new binary /usr/bin/systemd-cat adding file: /usr/bin/systemd-cat reuse present binary /usr/bin/journalctl make symbolic link /root/.profile -> /usr/lib/mkinitcpio-systemd-tool/initrd-shell.sh adding dir: /root adding symlink: /root/.profile -> /usr/lib/mkinitcpio-systemd-tool/initrd-shell.sh replace path /etc/group provision new file /etc/group -> /etc/group adding file: /etc/group replace path /etc/passwd provision new file /etc/passwd -> /etc/passwd adding file: /etc/passwd replace path /etc/shadow provision new file /etc/shadow -> /etc/shadow adding file: /etc/shadow invoke command [do_root_shell] for script /usr/lib/mkinitcpio-systemd-tool/initrd-build.sh in unit /usr/lib/systemd/system/initrd-shell.service command success: sed -i -r -e s|(root):([^:]*):([^:]*):([^:]*):([^:]*):([^:]*):([^:]*)|::::::/bin/sh| /tmp/mkinitcpio.5Qf0NA/root/etc/passwd invoke command [do_secret_clean] for script /usr/lib/mkinitcpio-systemd-tool/initrd-build.sh in unit /usr/lib/systemd/system/initrd-shell.service command success: sed -i -r -e /^root:.*|^systemd-.*|^tty:.*|^uucp:.*|^kmem:.|^input:.*|^video:.*|^audio:.*|^lp:.*|^disk:.*|^optical:.*|^storage:.*/!d /tmp/mkinitcpio.5Qf0NA/root/etc/group command success: sed -i -r -e /^root:.*|^systemd-.*|^tty:.*|^uucp:.*|^kmem:.|^input:.*|^video:.*|^audio:.*|^lp:.*|^disk:.*|^optical:.*|^storage:.*/!d /tmp/mkinitcpio.5Qf0NA/root/etc/passwd command success: sed -i -r -e /^root:.*|^systemd-.*|^tty:.*|^uucp:.*|^kmem:.|^input:.*|^video:.*|^audio:.*|^lp:.*|^disk:.*|^optical:.*|^storage:.*/!d /tmp/mkinitcpio.5Qf0NA/root/etc/shadow provision new file /root/.ssh/authorized_keys -> /root/.ssh/authorized_keys 600 adding file: /root/.ssh/authorized_keys make symbolic link /usr/bin/halt -> /usr/bin/systemctl overwriting symlink /usr/bin/halt -> /usr/bin/systemctl make symbolic link /usr/bin/reboot -> /usr/bin/systemctl overwriting symlink /usr/bin/reboot -> /usr/bin/systemctl make symbolic link /usr/bin/shutdown -> /usr/bin/systemctl adding symlink: /usr/bin/shutdown -> /usr/bin/systemctl provision new binary /usr/lib/libnss_compat.so adding file: /usr/lib/libnss_compat.so adding symlink: /etc/systemd/system/sysinit.target.wants/initrd-shell.service -> /usr/lib/systemd/system/initrd-shell.service processing systemd unit initrd-dropbear.service resolved service unit path: /usr/lib/systemd/system/initrd-dropbear.service producing initramfs unit file: /usr/lib/systemd/system/initrd-dropbear.service processing systemd unit initrd-shell.service resolved service unit path: /usr/lib/systemd/system/initrd-shell.service replacing initramfs unit file: /usr/lib/systemd/system/initrd-shell.service reuse present binary /bin/true reuse path /usr/lib/mkinitcpio-systemd-tool/initrd-shell.sh reuse present binary /usr/bin/sulogin reuse present binary /usr/bin/systemctl reuse present binary /usr/bin/systemd-cat reuse present binary /usr/bin/journalctl make symbolic link /root/.profile -> /usr/lib/mkinitcpio-systemd-tool/initrd-shell.sh overwriting symlink /root/.profile -> /usr/lib/mkinitcpio-systemd-tool/initrd-shell.sh replace path /etc/group provision new file /etc/group -> /etc/group adding file: /etc/group replace path /etc/passwd provision new file /etc/passwd -> /etc/passwd adding file: /etc/passwd replace path /etc/shadow provision new file /etc/shadow -> /etc/shadow adding file: /etc/shadow invoke command [do_root_shell] for script /usr/lib/mkinitcpio-systemd-tool/initrd-build.sh in unit /usr/lib/systemd/system/initrd-shell.service command success: sed -i -r -e s|(root):([^:]*):([^:]*):([^:]*):([^:]*):([^:]*):([^:]*)|::::::/bin/sh| /tmp/mkinitcpio.5Qf0NA/root/etc/passwd invoke command [do_secret_clean] for script /usr/lib/mkinitcpio-systemd-tool/initrd-build.sh in unit /usr/lib/systemd/system/initrd-shell.service command success: sed -i -r -e /^root:.*|^systemd-.*|^tty:.*|^uucp:.*|^kmem:.|^input:.*|^video:.*|^audio:.*|^lp:.*|^disk:.*|^optical:.*|^storage:.*/!d /tmp/mkinitcpio.5Qf0NA/root/etc/group command success: sed -i -r -e /^root:.*|^systemd-.*|^tty:.*|^uucp:.*|^kmem:.|^input:.*|^video:.*|^audio:.*|^lp:.*|^disk:.*|^optical:.*|^storage:.*/!d /tmp/mkinitcpio.5Qf0NA/root/etc/passwd command success: sed -i -r -e /^root:.*|^systemd-.*|^tty:.*|^uucp:.*|^kmem:.|^input:.*|^video:.*|^audio:.*|^lp:.*|^disk:.*|^optical:.*|^storage:.*/!d /tmp/mkinitcpio.5Qf0NA/root/etc/shadow reuse path /root/.ssh/authorized_keys make symbolic link /usr/bin/halt -> /usr/bin/systemctl overwriting symlink /usr/bin/halt -> /usr/bin/systemctl make symbolic link /usr/bin/reboot -> /usr/bin/systemctl overwriting symlink /usr/bin/reboot -> /usr/bin/systemctl make symbolic link /usr/bin/shutdown -> /usr/bin/systemctl overwriting symlink /usr/bin/shutdown -> /usr/bin/systemctl reuse present binary /usr/lib/libnss_compat.so overwriting symlink /etc/systemd/system/sysinit.target.wants/initrd-shell.service -> /usr/lib/systemd/system/initrd-shell.service processing systemd unit initrd-network.service resolved service unit path: /usr/lib/systemd/system/initrd-network.service replacing initramfs unit file: /usr/lib/systemd/system/initrd-network.service processing systemd unit systemd-networkd.service resolved service unit path: /usr/lib/systemd/system/systemd-networkd.service replacing initramfs unit file: /usr/lib/systemd/system/systemd-networkd.service reuse present binary /usr/lib/systemd/systemd-networkd overwriting symlink /etc/systemd/system/multi-user.target.wants/systemd-networkd.service -> /usr/lib/systemd/system/systemd-networkd.service processing systemd unit systemd-resolved.service resolved service unit path: /usr/lib/systemd/system/systemd-resolved.service replacing initramfs unit file: /usr/lib/systemd/system/systemd-resolved.service reuse present binary /usr/lib/systemd/systemd-resolved overwriting symlink /etc/systemd/system/multi-user.target.wants/systemd-resolved.service -> /usr/lib/systemd/system/systemd-resolved.service reuse present binary /bin/true reuse present binary /bin/sh reuse present binary /bin/sh reuse present binary /bin/sh reuse present binary /bin/sh reuse present binary /bin/sh reuse path /etc/systemd/network/initrd-network.network call in-line [add_checked_modules /drivers/net/] in unit /usr/lib/systemd/system/initrd-network.service make symbolic link /etc/resolv.conf -> /run/systemd/resolve/resolv.conf overwriting symlink /etc/resolv.conf -> /run/systemd/resolve/resolv.conf replace path /etc/hostname provision new file /etc/hostname -> /etc/hostname adding file: /etc/hostname reuse path /usr/lib/systemd/resolv.conf reuse present binary /usr/lib/libnss_dns.so.2 reuse path /var/tmp/ overwriting symlink /etc/systemd/system/sysinit.target.wants/initrd-network.service -> /usr/lib/systemd/system/initrd-network.service provision new binary /bin/dropbear adding file: /bin/dropbear adding file: /usr/lib/libutil.so.1 reuse present binary /bin/kill invoke command [do_dropbear_keys] for script /usr/lib/mkinitcpio-systemd-tool/initrd-build.sh in unit /usr/lib/systemd/system/initrd-dropbear.service provide host server ssh keys use existing dropbear host key: /etc/dropbear/dropbear_rsa_host_key use existing dropbear host key: /etc/dropbear/dropbear_ecdsa_host_key provision new dir /etc/dropbear adding dir: /etc/dropbear adding file: /etc/dropbear/dropbear_ecdsa_host_key adding file: /etc/dropbear/dropbear_rsa_host_key adding file: /etc/dropbear/root_key reuse path /var/run/ reuse path /var/run/utmp create empty dir /var/log/ adding dir: /var/log/ create empty file /var/log/btmp adding file: /var/log/btmp create empty file /var/log/wtmp adding file: /var/log/wtmp create empty file /var/log/lastlog adding file: /var/log/lastlog adding symlink: /etc/systemd/system/sysinit.target.wants/initrd-dropbear.service -> /usr/lib/systemd/system/initrd-dropbear.service processing systemd unit initrd-util-usb-hcd.service resolved service unit path: /usr/lib/systemd/system/initrd-util-usb-hcd.service producing initramfs unit file: /usr/lib/systemd/system/initrd-util-usb-hcd.service reuse present binary /bin/true call in-line [add_module xhci_hcd] in unit /usr/lib/systemd/system/initrd-util-usb-hcd.service call in-line [add_module xhci_pci] in unit /usr/lib/systemd/system/initrd-util-usb-hcd.service call in-line [add_module ehci_hcd] in unit /usr/lib/systemd/system/initrd-util-usb-hcd.service call in-line [add_module ehci_pci] in unit /usr/lib/systemd/system/initrd-util-usb-hcd.service call in-line [add_module hid_generic] in unit /usr/lib/systemd/system/initrd-util-usb-hcd.service provision new file /etc/mkinitcpio-systemd-tool/config/initrd-util-usb-hcd.conf -> /etc/modprobe.d/initrd-util-usb-hcd.conf adding file: /etc/modprobe.d/initrd-util-usb-hcd.conf adding symlink: /etc/systemd/system/sysinit.target.wants/initrd-util-usb-hcd.service -> /usr/lib/systemd/system/initrd-util-usb-hcd.service processing systemd unit initrd-cryptsetup.path resolved service unit path: /usr/lib/systemd/system/initrd-cryptsetup.path producing initramfs unit file: /usr/lib/systemd/system/initrd-cryptsetup.path processing systemd unit initrd-cryptsetup.service resolved service unit path: /usr/lib/systemd/system/initrd-cryptsetup.service producing initramfs unit file: /usr/lib/systemd/system/initrd-cryptsetup.service processing systemd unit initrd-shell.service resolved service unit path: /usr/lib/systemd/system/initrd-shell.service replacing initramfs unit file: /usr/lib/systemd/system/initrd-shell.service reuse present binary /bin/true reuse path /usr/lib/mkinitcpio-systemd-tool/initrd-shell.sh reuse present binary /usr/bin/sulogin reuse present binary /usr/bin/systemctl reuse present binary /usr/bin/systemd-cat reuse present binary /usr/bin/journalctl make symbolic link /root/.profile -> /usr/lib/mkinitcpio-systemd-tool/initrd-shell.sh overwriting symlink /root/.profile -> /usr/lib/mkinitcpio-systemd-tool/initrd-shell.sh replace path /etc/group provision new file /etc/group -> /etc/group adding file: /etc/group replace path /etc/passwd provision new file /etc/passwd -> /etc/passwd adding file: /etc/passwd replace path /etc/shadow provision new file /etc/shadow -> /etc/shadow adding file: /etc/shadow invoke command [do_root_shell] for script /usr/lib/mkinitcpio-systemd-tool/initrd-build.sh in unit /usr/lib/systemd/system/initrd-shell.service command success: sed -i -r -e s|(root):([^:]*):([^:]*):([^:]*):([^:]*):([^:]*):([^:]*)|::::::/bin/sh| /tmp/mkinitcpio.5Qf0NA/root/etc/passwd invoke command [do_secret_clean] for script /usr/lib/mkinitcpio-systemd-tool/initrd-build.sh in unit /usr/lib/systemd/system/initrd-shell.service command success: sed -i -r -e /^root:.*|^systemd-.*|^tty:.*|^uucp:.*|^kmem:.|^input:.*|^video:.*|^audio:.*|^lp:.*|^disk:.*|^optical:.*|^storage:.*/!d /tmp/mkinitcpio.5Qf0NA/root/etc/group command success: sed -i -r -e /^root:.*|^systemd-.*|^tty:.*|^uucp:.*|^kmem:.|^input:.*|^video:.*|^audio:.*|^lp:.*|^disk:.*|^optical:.*|^storage:.*/!d /tmp/mkinitcpio.5Qf0NA/root/etc/passwd command success: sed -i -r -e /^root:.*|^systemd-.*|^tty:.*|^uucp:.*|^kmem:.|^input:.*|^video:.*|^audio:.*|^lp:.*|^disk:.*|^optical:.*|^storage:.*/!d /tmp/mkinitcpio.5Qf0NA/root/etc/shadow reuse path /root/.ssh/authorized_keys make symbolic link /usr/bin/halt -> /usr/bin/systemctl overwriting symlink /usr/bin/halt -> /usr/bin/systemctl make symbolic link /usr/bin/reboot -> /usr/bin/systemctl overwriting symlink /usr/bin/reboot -> /usr/bin/systemctl make symbolic link /usr/bin/shutdown -> /usr/bin/systemctl overwriting symlink /usr/bin/shutdown -> /usr/bin/systemctl reuse present binary /usr/lib/libnss_compat.so overwriting symlink /etc/systemd/system/sysinit.target.wants/initrd-shell.service -> /usr/lib/systemd/system/initrd-shell.service reuse present binary /usr/lib/mkinitcpio-systemd-tool/initrd-shell.sh replace path /etc/crypttab provision new file /etc/mkinitcpio-systemd-tool/config/crypttab -> /etc/crypttab adding file: /etc/crypttab replace path /etc/fstab provision new file /etc/mkinitcpio-systemd-tool/config/fstab -> /etc/fstab adding file: /etc/fstab create empty dir /sysroot/ adding dir: /sysroot/ provision new binary /usr/bin/swapon adding file: /usr/bin/swapon adding file: /usr/lib/libsmartcols.so.1 provision new binary /usr/bin/swapoff adding file: /usr/bin/swapoff provision new binary /usr/bin/dmsetup adding file: /usr/bin/dmsetup call in-line [add_module dm-crypt] in unit /usr/lib/systemd/system/initrd-cryptsetup.service adding module: dm-crypt adding module: dm-mod call in-line [add_all_modules /crypto/] in unit /usr/lib/systemd/system/initrd-cryptsetup.service adding module: aegis128-aesni adding module: crypto_simd adding module: cryptd adding module: aesni-intel adding module: glue_helper adding module: blake2s-x86_64 adding module: libblake2s-generic adding module: blowfish-x86_64 adding module: blowfish_common adding module: camellia-aesni-avx-x86_64 adding module: camellia-x86_64 adding module: camellia-aesni-avx2 adding module: cast5-avx-x86_64 adding module: cast_common adding module: cast5_generic adding module: cast6-avx-x86_64 adding module: cast6_generic adding module: chacha-x86_64 adding module: libchacha adding module: crc32-pclmul adding module: crct10dif-pclmul adding module: curve25519-x86_64 adding module: libcurve25519-generic adding module: des3_ede-x86_64 adding module: libdes adding module: ghash-clmulni-intel adding module: nhpoly1305-avx2 adding module: nhpoly1305 adding module: libpoly1305 adding module: nhpoly1305-sse2 adding module: poly1305-x86_64 adding module: serpent-avx-x86_64 adding module: serpent_generic adding module: serpent-avx2 adding module: serpent-sse2-x86_64 adding module: sha1-ssse3 adding module: sha256-ssse3 adding module: sha512-ssse3 adding module: twofish-avx-x86_64 adding module: twofish-x86_64 adding module: twofish_common adding module: twofish-x86_64-3way adding module: 842 adding module: 842_compress adding module: 842_decompress adding module: adiantum adding module: aegis128 adding module: aes_ti adding module: af_alg adding module: algif_aead adding module: algif_hash adding module: algif_rng adding module: algif_skcipher adding module: ansi_cprng adding module: anubis adding module: arc4 adding module: libarc4 adding module: asym_tpm adding module: trusted adding module: tpm adding module: pkcs8_key_parser adding module: tpm_key_parser adding module: async_memcpy adding module: async_tx adding module: async_pq adding module: async_xor adding module: xor adding module: raid6_pq adding module: async_raid6_recov adding module: authenc adding module: authencesn adding module: blake2b_generic adding module: blake2s_generic adding module: blowfish_generic adding module: camellia_generic adding module: ccm adding module: cfb adding module: chacha20poly1305 adding module: chacha_generic adding module: cmac adding module: crc32_generic adding module: crypto_engine adding module: crypto_user adding module: curve25519-generic adding module: deflate adding module: des_generic adding module: ecc adding module: ecdh_generic adding module: echainiv adding module: ecrdsa_generic adding module: essiv adding module: fcrypt adding module: keywrap adding module: khazad adding module: lrw adding module: lz4 adding module: lz4hc adding module: lz4hc_compress adding module: md4 adding module: michael_mic adding module: ofb adding module: pcbc adding module: pcrypt adding module: poly1305_generic adding module: rmd128 adding module: rmd160 adding module: rmd256 adding module: rmd320 adding module: salsa20_generic adding module: seed adding module: sha3_generic adding module: sm3_generic adding module: sm4_generic adding module: streebog_generic adding module: tcrypt adding module: tea adding module: tgr192 adding module: twofish_generic adding module: vmac adding module: wp512 adding module: xcbc adding module: xxhash_generic adding module: amlogic-gxl-crypto adding module: atmel-ecc adding module: atmel-i2c adding module: atmel-sha204a adding module: n5pf adding file: /usr/lib/firmware/cavium/cnn55xx_se.fw adding module: ccp-crypto adding module: ccp adding module: ccree adding module: chcr adding module: cxgb4 adding file: /usr/lib/firmware/cxgb4/t6fw.bin adding file: /usr/lib/firmware/cxgb4/t5fw.bin adding file: /usr/lib/firmware/cxgb4/t4fw.bin adding module: crypto_safexcel adding module: padlock-aes adding module: padlock-sha adding module: qat_c3xxx adding module: intel_qat adding file: /usr/lib/firmware/qat_c3xxx_mmp.bin adding file: /usr/lib/firmware/qat_c3xxx.bin adding module: qat_c3xxxvf adding module: qat_c62x adding file: /usr/lib/firmware/qat_c62x_mmp.bin adding file: /usr/lib/firmware/qat_c62x.bin adding module: qat_c62xvf adding module: qat_dh895xcc adding file: /usr/lib/firmware/qat_895xcc_mmp.bin adding file: /usr/lib/firmware/qat_895xcc.bin adding module: qat_dh895xccvf adding module: virtio_crypto adding module: libblake2s adding module: libchacha20poly1305 adding module: libcurve25519 provision new file /usr/lib/udev/rules.d/10-dm.rules -> /usr/lib/udev/rules.d/10-dm.rules adding file: /usr/lib/udev/rules.d/10-dm.rules provision new file /usr/lib/initcpio/udev/11-dm-initramfs.rules -> /usr/lib/udev/rules.d/11-dm-initramfs.rules adding file: /usr/lib/udev/rules.d/11-dm-initramfs.rules provision new file /usr/lib/udev/rules.d/13-dm-disk.rules -> /usr/lib/udev/rules.d/13-dm-disk.rules adding file: /usr/lib/udev/rules.d/13-dm-disk.rules provision new file /usr/lib/udev/rules.d/95-dm-notify.rules -> /usr/lib/udev/rules.d/95-dm-notify.rules adding file: /usr/lib/udev/rules.d/95-dm-notify.rules provision new file /usr/lib/systemd/system/cryptsetup.target -> /usr/lib/systemd/system/cryptsetup.target adding file: /usr/lib/systemd/system/cryptsetup.target provision new file /usr/lib/systemd/system/cryptsetup-pre.target -> /usr/lib/systemd/system/cryptsetup-pre.target adding file: /usr/lib/systemd/system/cryptsetup-pre.target provision new binary /usr/lib/systemd/systemd-cryptsetup adding file: /usr/lib/systemd/systemd-cryptsetup provision new binary /usr/lib/systemd/system-generators/systemd-cryptsetup-generator adding file: /usr/lib/systemd/system-generators/systemd-cryptsetup-generator reuse present binary /usr/lib/systemd/system-generators/systemd-fstab-generator provision new binary /usr/bin/systemd-ask-password adding file: /usr/bin/systemd-ask-password provision new binary /usr/lib/systemd/systemd-reply-password adding file: /usr/lib/systemd/systemd-reply-password provision new binary /usr/bin/systemd-tty-ask-password-agent adding file: /usr/bin/systemd-tty-ask-password-agent provision new binary /usr/lib/libgcc_s.so.1 adding file: /usr/lib/libgcc_s.so.1 replace path /usr/lib/systemd/system/systemd-ask-password-console.path create empty file /usr/lib/systemd/system/systemd-ask-password-console.path adding file: /usr/lib/systemd/system/systemd-ask-password-console.path replace path /usr/lib/systemd/system/systemd-ask-password-wall.path create empty file /usr/lib/systemd/system/systemd-ask-password-wall.path adding file: /usr/lib/systemd/system/systemd-ask-password-wall.path adding symlink: /etc/systemd/system/sysinit.target.wants/initrd-cryptsetup.path -> /usr/lib/systemd/system/initrd-cryptsetup.path ```

When I try to build it from chroot (arch-chroot), log have only:

``` -> Running build hook: [/usr/lib/initcpio/install/systemd-tool] provisioning initrd systemd units processing systemd unit initrd-network.service resolved service unit path: /usr/lib/systemd/system/initrd-network.service producing initramfs unit file: /usr/lib/systemd/system/initrd-network.service adding dir: /etc/systemd/system/sysinit.target.wants adding symlink: /etc/systemd/system/sysinit.target.wants/initrd-network.service -> /usr/lib/systemd/system/initrd-network.service processing systemd unit initrd-shell.service resolved service unit path: /usr/lib/systemd/system/initrd-shell.service producing initramfs unit file: /usr/lib/systemd/system/initrd-shell.service adding symlink: /etc/systemd/system/sysinit.target.wants/initrd-shell.service -> /usr/lib/systemd/system/initrd-shell.service processing systemd unit initrd-dropbear.service resolved service unit path: /usr/lib/systemd/system/initrd-dropbear.service producing initramfs unit file: /usr/lib/systemd/system/initrd-dropbear.service adding symlink: /etc/systemd/system/sysinit.target.wants/initrd-dropbear.service -> /usr/lib/systemd/system/initrd-dropbear.service processing systemd unit initrd-util-usb-hcd.service resolved service unit path: /usr/lib/systemd/system/initrd-util-usb-hcd.service producing initramfs unit file: /usr/lib/systemd/system/initrd-util-usb-hcd.service adding symlink: /etc/systemd/system/sysinit.target.wants/initrd-util-usb-hcd.service -> /usr/lib/systemd/system/initrd-util-usb-hcd.service processing systemd unit initrd-cryptsetup.path resolved service unit path: /usr/lib/systemd/system/initrd-cryptsetup.path producing initramfs unit file: /usr/lib/systemd/system/initrd-cryptsetup.path adding symlink: /etc/systemd/system/sysinit.target.wants/initrd-cryptsetup.path -> /usr/lib/systemd/system/initrd-cryptsetup.path ```

I have that problem on all machines, clear install too. In what way I should look?

Andrei-Pozolotin commented 4 years ago

can you use systemd-nspawninstead of chroot: https://github.com/random-archer/mkinitcpio-systemd-tool/wiki/System-Recovery

lachesis commented 4 years ago

I also hit this problem when using arch-chroot but systemd-nspawn works fine. The problem is that systemctl cat $unit now exits with code 0 if in a chroot, so the fallback code here is never executed.

https://github.com/random-archer/mkinitcpio-systemd-tool/blob/master/src/mkinitcpio-install.sh#L103-108

Andrei-Pozolotin commented 4 years ago

@lachesis Eric:

  1. please confirm this is in fact is the case (i.e. not due to your local misconfig):

    The problem is that systemctl cat $unit now exits with code 0 if in a chroot
  2. and what systemctl --version says?

Andrei-Pozolotin commented 4 years ago

please confirm if v33 resolves this https://github.com/random-archer/mkinitcpio-systemd-tool/releases/tag/v33 https://www.archlinux.org/packages/community/any/mkinitcpio-systemd-tool/

Andrei-Pozolotin commented 4 years ago

assume resolved

lachesis commented 4 years ago

Confirmed resolved on my system with v35 at least.

I rebuilt the initramfs after using arch-chroot /mnt to chroot instead of using systemd-nspawn as recommended, yet the system booted this time. Here's confirmation that systemctl cat no longer returns a sane error code in this case.

[root@archiso /]# systemctl cat initrd-shell.service
Running in chroot, ignoring request: cat
[root@archiso /]# echo $?
0

Using systemd 245.

Andrei-Pozolotin commented 4 years ago

@lachesis Eric: thank you.

vaminakov commented 4 years ago

Hello! Sorry for awaiting. I'm confirm that too.

Andrei-Pozolotin commented 4 years ago

@vvl-rulez Vladislav: thank you