インストール失敗 - 無効なパラメータ

インストール失敗 - 無効なパラメータ

SDカードにKali Linuxをインストールし、LVM論理ボリュームを含む暗号化されたLUKSパーティションを作成し、そこにBTRFSファイルシステムを作成しました。ほぼすべてがうまく機能しますが、LUKSボリュームを正常に復号化した後、起動は失敗します。丸太:

Begin: Loading essential drivers ... done.
Begin: Mounting root file system ... Begin: Running /scrypts/local-top ... [ 8.655803] device-mapper: ioctl: 4.28.0-ioctl (2014-09-17) initialised: [email protected]
[ 8.689182] random: lvm urandom read with 113 bits of entropy available
  Volume group "pi" not found
  Skipping volume group pi
Unable to find LVM volume pi/root
Unlocking the disk /dev/mmcblk0p2 (picrypt)
Enter passphrase:
Reading all physical volumes. This may take a while...
  Found volume group "pi" using metadata type lvm2
  ffff0000-ffff1000 r-xp 00000000 00:00 0    [vectors]: mlock failed: Cannot allocate memory
  1 logical volume(s) in volume group "pi" now active
  ffff0000-ffff1000 r-xp 00000000 00:00 0    [vectors]: munlock failed: Cannot allocate memory
cryptsetup: picrypt set up successfully
done.
Begin: Running /scripts/local-premount ... done.
mount: mounting /dev/mapper/pi-root on /root failed: Invalid argument
Begin: Running /scripts/local-bottom ... done.
done.
Begin: Running /scripts/init-bottom ... mount: mounting /de on /root/dev failed: No such file or directory
done.
Target filesystem doesn't have requested /sbin/init.
No init found. Try passing init= bootarg.
modprobe: module i8042 not found in modules.dep
modprobe: module atkbd not found in modules.dep
modprobe: module ehci-pci not found in modules.dep
modprobe: module ehci-orion not found in modules.dep
modprobe: module ehci-hcd not found in modules.dep
modprobe: module uhci-hcd not found in modules.dep
modprobe: module ohci-hcd not found in modules.dep

BusyBox v1.20.2 (Debian 1:1.20.0-7) built-in shell (ash)
Enter 'help' for a list of built-in commands.

/bin/sh: can't access tty; job control turned off

ルートファイルシステムをマウントできないようです。 initramfsでは、実際にfstabに提供されているすべてのオプションを使用してBTRFSパーティションを正しくマウントできます。最初は診断できない奇妙な理由で失敗したようです。

initramfs で次のコマンドを実行します。

mount -t btrfs -o defaults,subvol=@,compress=lzo,ssd,noatime /dev/mapper/pi-root /root

インストールが正しく機能し、ファイルシステムが正しく表示されます。

これは私のものです/etc/fstab

proc                   /proc    proc     defaults                                      0    0
/dev/mmcblk0p1         /boot    vfat     defaults                                      0    2
/dev/mapper/pi-root    /        btrfs    defaults,subvol=@,compress=lzo,ssd,noatime    0    1

これは私のものです/etc/crypttab

picrypt /dev/mmcblk0p2 none luks

これは私のカーネルコマンドラインです。

dwc_otg.fiq_fix_enable=1 console=tty1 console=tty1 root=/dev/mapper/pi-root cryptopts=target=picrypt,source=/dev/mmcblk0p2,lvm=pi rootfstype=btrfs rootwait rootdelay=5 ro rootflags=noload,subvol=@

initramfs.gzが最新であることを確認しました。

繰り返しますが、私の設定は次のとおりです。

  • SDカード
    • VFATファイルシステムの起動
    • LUKS暗号化ファイルシステム(picrypt
    • LVM論理ボリューム(/dev/mapper/pi-root
      • BTRFSファイルシステム
      • BTRFS サブボリューム( subvol=@)

私のメインノートパソコンにも同じ設定があり、非常にうまく機能します。

起動プロセス中に次の状況が発生し、失敗します。

  1. LUKS ボリュームの復号化picrypt: 有効
  2. オープンボリュ​​ームグループpiとLV root:有効
  3. rootfstabを介してLVをマウントしようとするとInvalid argument

Busyboxもttyにアクセスできないため失敗するようですが、これは問題とは関係ありません。

ここで問題のある部分をどのようにデバッグできますか?

答え1

私のカーネルラインの次のパラメータが原因でエラーが発生しました。

rootflags=noload,subvol=@

このパラメータの値は、mountマウントされたルートファイルシステムにファイルシステムオプションとして直接渡されます。デバッグステートメントを挿入することで、/scripts/local(buildから/usr/share/initramfs-tools/scripts/local)マウントパラメータに何が問題を抱えているのかを確認でき、起動コマンドラインを修正できました。

関連情報