使用mmdebstrap
構建最小的debian系統通常涉及在Chroot環境中手動安裝和卸載/dev
訪問。 /dev
>
為什麼自動安裝?
/dev
apt update
> /dev/null
解決方案1:利用
<code>[...] /usr/bin/apt-key: 95: cannot create /dev/null: Permission denied /usr/bin/apt-key: 95: cannot create /dev/null: Permission denied E: gpgv, gpgv2 or gpgv1 required for verification, but neither seems installed Err:3 http://deb.debian.org/debian bookworm-updates InRelease gpgv, gpgv2 or gpgv1 required for verification, but neither seems installed [...]</code>
>
systemd-nspawn
,
>,systemd-nspawn
的自動安裝。
systemd
/dev
步驟1:安裝/proc
/sys
在基於Debian的系統上
:
>步驟2:chroot條目systemd-nspawn
sudo apt update sudo apt install systemd-container創建一個Chroot環境(例如,使用
):
mmdebstrap
mmdebstrap --variant=minbase stable /tmp/debian-rootfs自動管理必要目錄的安裝和卸載。
systemd-nspawn
解決方案2:
sudo systemd-nspawn -D /tmp/debian-rootfs
>
systemd-nspawn
在Chroot環境中的安裝和卸載。 它可以在[ostechnix github gist]上提供(link_to_gist_here-替換為實際鏈接,如果可用)。
chrootmnt
密鑰功能:
chrootmnt
> chroot路徑和命令的靈活輸入處理。
/dev
魯棒錯誤處理。
>自動清理出口。 擬交互式工具的偽末端支持。
使腳本可執行:
chrootmnt.sh
>
#!/usr/bin/env bash CHROOT_DIR="" shift sudo mount --bind /dev "$CHROOT_DIR/dev" sudo mount --bind /dev/pts "$CHROOT_DIR/dev/pts" trap "sudo umount "$CHROOT_DIR/dev/pts"; sudo umount "$CHROOT_DIR/dev"" EXIT sudo chroot "$CHROOT_DIR" "$@"
>
使用創建Chroot環境後,請使用腳本:
請記住用實際的chroot路徑替換
。chmod +x chrootmnt.sh>
選擇正確的解決方案
systemd-nspawn
:非常適合需要容器樣功能的高級用戶。 chrootmnt
腳本:更簡單,很容易自動安裝/卸載。 結論
>自動化/dev
安裝消除了手動干預,從而提高了使用
以上是如何在Linux中的Chroot環境中自動安裝\/Dev的詳細內容。更多資訊請關注PHP中文網其他相關文章!