老“机”伏枥——3代i5折腾PVE虚拟机之四——LXC和VM拾遗
上周在“82年”的HP2570p上安装了LXC,并且在LXC中顺利部署了Docker。
到目前为止,PVE中运行了一个LXC和一个VM(Window10)

不过在顺利运行的过程中遭遇了些许挫折,在这里记录给各位同好!

内容涵盖:
换国内源
民间工具的一项主要功能就是将PVE默认的软件海外源换成国内源,不过在这台2570p上换源总不是那么顺利。
在网上搜了好久发现是版本的问题。首先键入以下指令了解自己的PVE版本:
cat proc/version

笔记本中Debian的版本号是12.2.0-14,而工具中给我们更换的源大都是版本11或者更早。而版本12的昵称是bookworm,因此需要找到bookworm相关的源。

曾经找到这个网址:https://developer.aliyun.com/mirror/debian,其中就没有bookworm。网上铺天盖地的是清华源,肯定很可靠。
编辑 /etc/apt/sources.list 文件,将内容替换为:
deb https://mirrors.tuna.tsinghua.edu.cn/debian bookworm main contrib
deb https://mirrors.tuna.tsinghua.edu.cn/debian bookworm-updates main contrib
deb https://mirrors.tuna.tsinghua.edu.cn/debian-security/ bookworm-security main contrib
编辑 /etc/apt/sources.list.d/ceph.list 文件,将内容替换为:
deb https://mirrors.tuna.tsinghua.edu.cn/ceph/debian-quincy/ bookworm no-subscription
编辑 /etc/apt/sources.list.d/pve-enterprise.list 文件,将内容替换为:
deb http://download.proxmox.wiki/debian/pve bookworm pve-no-subscription
换源完成,切记键入以下命令:
apt update
apt upgrade
安装Docker-ce
Ubuntu提供自己团队维护的Docker.io,而Docker-ce是官方版本。

如果你想要 Docker 的最新稳定版本,那么可以从其官方仓库安装 Docker。
步骤 1:删除任何现有的 Docker 包
使用以下命令卸载:
sudo apt remove docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc

步骤 2:安装依赖项
Docker-ce不在Ubuntu官方提供的软件包中,需要把Dockers-ce及相关软件先放进去:
sudo apt install ca-certificates curl gnupg lsb-release
步骤 3:添加 Docker仓库的 GPG 密钥并将其添加到sources.list
现在,通过apt包管理器创建一个具有特殊权限的目录,用于存储加密密钥以进行包验证:
sudo install -m 0755 -d /etc/apt/keyrings
下载并导入 Docker 的 GPG 密钥环:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
使用 chmod 命令更改文件权限,以便系统上的每个用户都可以读取 GPG 密钥:
sudo chmod a+r /etc/apt/keyrings/docker.gpg
最后,将 Docker 仓库添加到 sources.list.d 文件中:
echo
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" |
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
步骤 4:安装 Docker 和 Docker Compose
更新系统仓库:
sudo apt update
使用以下命令获取最新版本的 Docker 以及其他 Docker 组件和依赖项:
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
要检查已安装的版本,请使用以下命令:
docker info

Docker(engine,server)版本:24.0.7
推荐阅读 基本 Docker 命令列表:
21 个基本 Docker 命令linuxhandbook.com/essential-docker-commands/
Docker更换国内源
Docker使用中拉取镜像时,连接到海外站,除了缓缓慢慢以外,一起顺利。

可以更换国内源提升拉去的苏菲。
创建或修改 /etc/docker/daemon.json 文件,修改为如下形式:
{
"registry-mirrors": [
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com",
"https://docker.mirrors.ustc.edu.cn",
"https://kfwkfulq.mirror.aliyuncs.com"
]
}
加载重启docker:
service docker restart
查看是否成功
docker info
PVE目录挂载到LXC
考虑到集中管理下载数据的需要,创建LXC的时候没有分配过多的磁盘空间。

利用PVE主机上的samba服务,可以将PVE的目录挂载到LXC。

在PVE上创建目录 /home/lxc
mkdir -p /home/lxc
chmod 777 /home/lxc
在lxc下再创建一个准备挂载的目录:
mkdir -p /home/lxc/superng6_qbittorrentee
利用以下命令将刚刚创建的目录挂载到LXC的 /home/superng6_qbittorrentee
pct set 100 -mp1 /home/lxc/superng6_qbittorrentee,mp=/home/superng6_qbittorrentee
执行完成后不需要重启即可生效。

为了这个挂载随机启动,需要编辑 /etc/pve/lxc/LXC的ID.conf ,添加一行:
mp1: /home/lxc/superng6_qbittorrentee,mp=/home/superng6_qbittorrentee
挂载更多就需要mp2, mp3, mp4..........
VM直通USB硬盘闪存盘
笔记本的SATA接口有限,USB接口较为丰富,但Linux的一大遗憾就是USB设备无法做到即插即用。

不过PVE有一个优势就是允许将USB设备直通给VM的Windows。

首先查找需要直通设备的ID:
ls /dev/disk/by-di
笔记本磁盘相关设备的列表如下,其中标注的是准备直通的读卡器。

键入命令:
qm set -scsi2 /dev/disk/by-id/usb-Generic-_USB3.0_CRW_-SD_201404081410-0:1
其中-scis2根据自己安装的虚拟机调整,by-id是那个需要直通的设备号。

就是那么简单!
总结
安装运行PVE比安装运行Windows的难度高了不少,需要的知识储备也更多!也许是一个非常好的机会粗浅地学习Linux相关知识。

下一步是否在PVE中在安装一个Linux发行版——Ubuntu、Manjaro、Fedora、Deepin........Open Harmony?

大家有什么看法?

丶悠
校验提示文案
泉水里的水
校验提示文案
泉水里的水
校验提示文案
丶悠
校验提示文案