約60の教室用PC(Ubuntuファットクライアント)の起動に使用されるLTSPを含むUbuntuイメージがあります。
私たちが直面する最も困難な部分は、ブート可能なイメージを維持し(最新のセキュリティ変更を維持)、大学の敷地外にいる間に教授がイメージをテストすることです。
LTSPサーバーを使用して展開できるVirtualboxを使用して、オーダーメイドのディスクイメージを教師がセットアップできるかどうか疑問に思いました。
あなたの質問は非常に興味深いものです。
Ubuntu 16.04.6 LTSサーバーを使用して、2つの建物で約120のLTSPファットクライアントを実行しています。
すべてのファットクライアントが使用する 推奨MATE DE 。
したがって、私のサーバーには必要なすべてのLTSPコンポーネントがあります。
/opt/ltsp/images/AMD64.img
SquashFSイメージをVirtualBoxハードドライブに変換できることをテストしました。
以下は、VMに変換するために使用した手順です。
マウントポイントを作成する
mkdir ~/ltsp_sfs
squashfs LTSPイメージファイルをマウントします。
Sudo mount -o loop /opt/ltsp/images/AMD64.img ~/ltsp_sfs
空の未加工ハードディスクを作成し、squashfsをそこにコピーします。
20 Gbのスペースを割り当てます。
fallocate -l 20G ~/ltsp.raw
ソフトウェアを使用してrawディスクにパーティションを作成します。以下はfdisk
メソッドです。
(
echo n # new partition
echo p # it is primary
echo # and first
echo # starts at default
echo # ends at end
echo w # write changes
) | fdisk ~/ltsp.raw
kpartx
を使用して~/ltsp.raw
ファイルのループデバイスを作成します。
Sudo kpartx -a -v ~/ltsp.raw
そして、最初のパーティションをフォーマットします(正確なデバイス名をlosetup
で確認します)。
Sudo mkfs.ext4 /dev/mapper/loop1p1 -L LTSP
それをマウントします
mkdir ~/ltsp_ext4
Sudo mount /dev/mapper/loop1p1 ~/ltsp_ext4
Squashfsの内容を新しいext4パーティションにコピーする
Sudo cp -a ~/ltsp_sfs/* ~/ltsp_ext4/
/etc/fstab
に正しいパーティションラベルを設定します。
echo "LABEL=LTSP / ext4 noatime 0 1" | Sudo tee ~/ltsp_ext4/etc/fstab
コピーしたファイルシステムへのChroot:
Sudo mount --types proc /proc ~/ltsp_ext4/proc
Sudo mount --bind /sys ~/ltsp_ext4/sys
Sudo mount --bind /dev ~/ltsp_ext4/dev
Sudo chroot ~/ltsp_ext4/
仮想ドライブにGRUBブートローダーをインストールします:
Sudo grub-install /dev/loop1
grub-mkconfig -o /boot/grub/grub.cfg
新しいltsp
ユーザーをSudo
グループのメンバーとしてパスワード付きで作成します。
useradd -m -G users,audio,Sudo -s /bin/bash ltsp
passwd ltsp
Chrootを終了する
exit
そのパーティションをアンマウントし、ループバックデバイスを切り離します。
Sudo umount ~/ltsp_ext4/proc
Sudo umount ~/ltsp_ext4/sys
Sudo umount ~/ltsp_ext4/dev
Sudo umount ~/ltsp_ext4/
Sudo kpartx -d -v ltsp.raw
QEMU-KVMを使用してLTSPイメージを起動します。
kvm -m 1024 -drive file=~/ltsp.raw,format=raw
ltsp
ユーザーとしてシステムにログインします。
LTSP init-scriptと互換性のあるイメージを維持するために、システムサービスには触れないでください。
未加工のハードディスクにリンクされた新しいVMDKハードディスクを作成します。
VBoxManage internalcommands createrawvmdk -filename ~/ltsp.vmdk -rawdisk ~/ltsp.raw
それをVirtualBox VM=に接続して起動します。
次に、新しい仮想hardriveの内容を変更して、サーバーの/opt/ltsp/AMD64
にコピーして戻すことができます。次に、Sudo update-ltsp-images AMD64
を呼び出して、squashfsファイルシステムに変換し直します。
これを確認するためのリソースがありません。私はあなたがアイデアを得たことを望みます。