我们有一个Ubuntu映像与LTSP,是用来引导大约60教室个人电脑(Ubuntu胖客户端)。
我们面临的最困难的部分是维护可引导的映像(保持最新的安全更改),并让教授在大学外测试这些图像。
我想知道老师是否可以使用Virtualbox安装定制的磁盘映像,该映像可以使用我们的LTSP服务器进行部署。
发布于 2019-04-14 12:27:10
你的问题很有趣。
我使用Ubuntu16.04.6LTS服务器在两个建筑物中运行大约120个LTSP胖客户机。
所有胖客户都使用推荐配偶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使用任何软件在原始磁盘上创建分区。下面是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使用~/ltsp.raw为kpartx文件创建循环设备:
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退出色度
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启动LTSP映像:
kvm -m 1024 -drive file=~/ltsp.raw,format=raw并以ltsp用户身份登录到系统。
不要触摸系统服务,以保持图像与LTSP init脚本兼容.
创建新的VMDK硬盘,链接到原始硬盘:
VBoxManage internalcommands createrawvmdk -filename ~/ltsp.vmdk -rawdisk ~/ltsp.raw然后将其附加到VirtualBox VM并引导它。
然后,您可以尝试修改新虚拟硬盘的内容,并将它们复制回服务器的/opt/ltsp/amd64。然后尝试调用sudo update-ltsp-images amd64将其转换回squashfs文件系统。
很抱歉我没有资源来检查这个。我希望你有这个想法。
https://askubuntu.com/questions/1133313
复制相似问题