VMware虚拟机安装armbian24.5.1_minimal换国内源并使用教程
使用的Armbian版本:Armbian_24.5.1_Uefi-x86_bookworm_current_6.6.31-homeassistant_minimal
VMware:16.2.2 build-19200509
更换国内源
新版本25.1为:DEB822 格式(/etc/apt/sources.list.d/debian.sources)格式的源
#编辑``/etc/apt/sources.list文件;
sudo nano /etc/apt/sources.list`打开文件;
删除或注释以前的内容,换成下面的源:(复制-vm菜单“编辑”-粘贴)
#deb http://mirrors.tuna.tsinghua.edu.cn/armbian/ buster main buster-utils buster-desktop |
修改/etc/apt/sources.list.d/armbian.list
下的文件
deb [signed-by=/usr/share/keyrings/armbian.gpg] https://mirrors.tuna.tsinghua.edu.cn/armbian bookworm main bookworm-utils bookworm-desktop |
可以参考清华大学开源软件镜像站用命令进行修改:
sed -i.bak 's#http://apt.armbian.com#https://mirrors.tuna.tsinghua.edu.cn/armbian#g' /etc/apt/sources.list.d/armbian.list |
修改完成之后,使用Ctrl+O
然后按Enter键,Ctrl+X
关闭文件;
也可以按ctrl+x ctrl+y Enter
保存退出文件修改:
当完成以上所有操作后,你的Armbian就换成了清华源,但是还需要执行下面的命令使之生效:
sudo apt-get update
这个命令会访问软件源列表里的每个网址,然后更新软件列表索引并保存在本地。如果在安装软件A的过程中用到了软件B,那么就会自动到软件列表里拉取。如果我们没有执行该命令,就可能会导致找不到相关的软件包而出错。所以在安装新的软件之前(宝塔、nginx、php、mysql等)都要先执行这个操作(不过也不用太频繁地执行该命令,一次安装多个软件,执行一次即可,太频繁了也没什么可以更新的)。执行完之后再装软件一般就不会报错了(当然,该出错的还是会错)。
换源后 就可以更新包了sudo apt update && apt upgrade
智能安装
使用 aptitude
aptitude 是一个更智能的包管理工具,可以自动解决依赖关系问题
安装 aptitude:sudo apt-get install aptitude
使用 aptitude 安装软件包:sudo aptitude install <packagename>
更新包遇到的tzdata_2025b-0+deb11u1_all.deb安装问题
dpkg: error processing archive /var/cache/apt/archives/tzdata_2025b-0+deb11u1_all.deb (--unpack): |
检查 Debian 版本
首先确认您的系统版本是否为 armbina 12 (bookworm):
lsb_release -a |
如果不是 armbina 12,请相应调整后续步骤。
修正 APT 软件源
确保 /etc/apt/sources.list 指向 armbina 12 的软件源,内容应类似:
deb http://deb.debian.org/debian bookworm main |
移除所有对 bullseye (Debian 11) 的引用。
更新软件包列表
apt-get update |
清理部分安装
apt-get clean |
重新配置 tzdata 及其依赖
apt-get install -f |
安装正确的 tzdata 版本
apt-get install tzdata |
这将确保安装适用于 Debian 12 的正确软件包,解决文件路径冲突问题。 如果问题仍然存在,可以手动删除有问题的文件/目录(确保备份后操作),但这种情况很少需要。
更新包遇到的files list file for package ‘xxx’ missing; assuming package has no files currently installed问题
currently installed |
将终端的命令内容输出到文件: sudo apt reinstall sl > dpkg-warning.txt
或 sudo apt upgrade sl > dpkg-warning.txt
这2个命令都可以。
在 root
目录下创建一 个fix.sh
文件,将以下代码输入其中:
#!/bin/bash |
运行chmod +x pi.sh && ./pi.sh proxy
对警告文件进行修复。
解决 dpkg 被中断的问题
当你在更新包时,突然有事,中断包的更新以后,会遇到 dpkg was interrupted, you must manually run ‘sudo dpkg –configure -a’ to correct the problem. 错误,表示在使用 dpkg 进行软件包管理时出现了中断,需要手动修复。
sudo dpkg –configure -a
步骤
- 运行修复命令
首先,按照提示运行以下命令来修复问题:
sudo dpkg –configure -a
- 检查锁文件
如果上述命令未能解决问题,可能是因为存在锁文件。你可以通过以下步骤来解决:
查看锁文件
sudo lsof /var/lib/dpkg/lock-frontend
杀死相关进程 找到占用锁文件的进程ID,然后使用以下命令杀死该进程:
sudo kill -9
删除锁文件
sudo rm /var/lib/dpkg/lock-frontend
- 再次运行修复命令
删除锁文件后,再次运行以下命令:
sudo dpkg –configure -a
通过以上步骤,你应该能够成功解决 dpkg 被中断的问题,并恢复正常的软件包管理功能。
安装armbian-config
设置面板
Armbian24.5本身没有自带armbian—config
设置面板,需要自行安装,这个也可以不安装。apt install armbian-config
项目处理脚本
Armbian提供了丰富的自定义脚本能力,例如自动化更新和配置脚本。
#!/bin/bash |
将此脚本保存为``update-system.sh,并给予执行权限:
chmod +x update-system.sh`
运行脚本以自动完成系统升级过程:./update-system.sh
File Browser 安装
安装并启动文件管理器FileBrowserwget -qO pi.sh https://cafe.cpolar.top/wkdaily/zero3/raw/branch/main/zero3/pi.sh && chmod +x pi.sh && ./pi.sh
选3进行安装
请输入选项的序号(输入q退出): 3 |
- 将filebrowser加入到开机启动中
sudo systemctl enable filebrowser.service
- 至此配置完成,然后我们启动filebrowser:
sudo systemctl start filebrowser.service
- 附带查看filebrowser状态和停止命令:
sudo systemctl status filebrowser.service
sudo systemctl stop filebrowser.service
IPanel面板
在**1Panel 文档文档的2安装部署中选择Debian**,复制在线安装命令:curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && bash quick_start.sh
root@uefi-x86:~# curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && bash quick_start.sh |
1panl卸载
停止服务:首先确保1Panel服务已停止运行,可以使用以下命令:
sudo systemctl stop 1panel
卸载服务:使用1Panel自带的命令行工具1pctl卸载服务:sudo 1pctl uninstall
清理残留文件:卸载后,还需要清理残留的配置文件和数据文件:sudo rm -rf /var/lib/1panel /etc/1panel /usr/local/bin/1pctl
清除日志文件:清除与1Panel相关的日志文件:sudo journalctl --vacuum-time=3d
验证卸载:确认1Panel是否已完全卸载,可以使用以下命令: sudo systemctl list-unit-files | grep 1panel
如果在卸载过程中遇到数据库损坏的问题,可以通过以下步骤解决: 进入1panel的数据库文件位置,通常为/opt/1panel/db。
docker容器
安装Docker
我用的这个版本包含了docker,可以用命令docker info
查看版本信息。
如果你过去安装过 docker,先删掉:sudo apt-get remove docker docker-engine docker.io
更新源 sudo apt-get update
安装依赖: 安装包允许 apt-get 通过 https 使用仓库sudo apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common
信任 Docker 的 GPG 公钥: 添加 docker 官方 GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - |
通过SSH连接到您的Armbian系统。在命令行中输入以下命令来安装Docker:
sudo apt update |
系统会提示您确认安装,输入y并按下回车键。安装过程可能需要一些时间,请耐心等待直到安装完成。
安装完成后,您可以通过输入以下命令来验证Docker是否成功安装:docker --version
如果安装成功,您将看到Docker的版本信息。您还可以使用以下命令来查看Docker的帮助内容:docker --help
这将显示Docker的可用命令和选项。
在Armbian系统上,Docker通常会在系统启动时自动启动。如果您需要手动启动Docker,可以使用以下命令:sudo systemctl start docker
如果您希望Docker在系统启动时自动启动,可以使用以下命令:sudo systemctl enable docker
现在,您已经成功在Armbian系统上安装了Docker,可以开始使用它来构建、运行和管理容器了。您可以参考Docker的官方文档或其他教程来了解如何使用Docker。
解决Docker镜像无法拉取问题
修改Docker
/etc/docker/daemon.json
下的配置文件,打开后添加以下内容:# "https://registry.docker-cn.com", //这是原版的地址
{
"registry-mirrors": [
"https://2a6bf1988cb6428c877f723ec7530dbc.mirror.swr.myhuaweicloud.com",
"https://docker.1ms.run",
"https://docker.1panel.live/",
"http://hub-mirror.c.163.com",
"https://docker.mirrors.ustc.edu.cn",
"https://cr.console.aliyun.com",
"https://mirror.ccs.tencentyun.com",
"https://registry.cn-beijing.aliyuncs.com",
"https://docker.m.daocloud.io",
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com",
"https://dockerhub.icu",
"https://docker.registry.cyou",
"https://docker-cf.registry.cyou",
"https://dockercf.jsdelivr.fyi",
"https://docker.jsdelivr.fyi",
"https://dockertest.jsdelivr.fyi",
"https://mirror.aliyuncs.com",
"https://dockerproxy.com",
"https://mirror.baidubce.com",
"https://docker.m.daocloud.io",
"https://docker.nju.edu.cn",
"https://docker.mirrors.sjtug.sjtu.edu.cn",
"https://docker.mirrors.ustc.edu.cn",
"https://mirror.iscas.ac.cn",
"https://docker.rainbond.cc",
"https://docker.1panel.live"
],
"dns": ["8.8.8.8","8.8.4.4"]
}重新加载 Docker 配置并重启 Docker 服务
sudo systemctl daemon-reload
sudo systemctl restart docker查看配置是否成功:
docker info
Insecure Registries:
::1/128
127.0.0.0/8
Registry Mirrors:
https://docker.1ms.run/
https://docker.1panel.live/
http://hub-mirror.c.163.com/
https://docker.mirrors.ustc.edu.cn/
https://cr.console.aliyun.com/
https://mirror.ccs.tencentyun.com/
https://registry.cn-beijing.aliyuncs.com/
Live Restore Enabled: false
docker安装镜像
安装drpy-node项目示例
拉取docker镜像(如果不设置上面的源,拉取是非常慢)
docker pull eulac/my-drpys:latest
克隆项目到本地(记住项目目录, 可用pwd查看):
git clone https://github.com/hjdhnx/drpy-node.git
启动项目:自己确认映射路径 -v 本地目录:容器目录[固定为/root/drpy-node]
docker run -d --name drpyS -p 5757:5757 -v /drpy-node:/root/drpy-node eulac/my-drpys:latest
- docker run:用于创建并启动一个新的容器。
- -d :表示以“分离模式”(detached mode)运行容器,即在后台运行。
- –name drpyS:为容器指定一个名称drpyS,方便后续管理(如启动、停止、删除等)。
- -p 5757:5757:端口映射,格式为主机端口:容器端口。主机的5757端口会映射到容器的5757端口,允许外部通过主机的5757端口访问容器内的服务。
- -v /drpy-node:/root/drpy-node:卷(volume)挂载,格式为主机目录:容器目录。将主机的
/drpy-node
目录挂载到容器的/root/drpy-node
目录,实现数据持久化或文件共享。 - eulac/my-drpys:latest:指定使用的Docker镜像名称及标签。``eulac/my-drpys
是镜像名称,
latest`是标签(表示最新版本)。eulac/my-drpys是用户eulac构建的镜像。
手动更新项目:
- 进入项目目录([可选]自己确认目录, 如果已经在目录下可忽略):
cd drpy-node
- 更新代码(网络不佳自己使用代理, 优先使用普通拉取提示文件冲突再使用强制拉取)
普通拉取:git pull
强制拉取:git fetch --all && git reset --hard origin/main
- 更新依赖(根据自己需要选择更新依赖方式)
通过普通更新([推荐]自己确认容器名):docker exec -it drpyS npm install
通过镜像更新:docker pull eulac/my-drpys:latest
- 重启服务(自己确认容器名):
docker rm -f drpyS; docker restart drpyS
容器命令:
- 查看容器日志:
docker logs drpyS
- 进入容器终端:
docker exec -it drpyS /bin/bash
- 停止/启动容器:
docker stop drpyS
- 删除容器:
docker rm drpyS
- 查看容器日志: