news 2026/8/13 11:45:27

Armbian系统常用命令实战指南:从入门到精通的Linux运维手册

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Armbian系统常用命令实战指南:从入门到精通的Linux运维手册

1. 从零开始:为什么你需要一份自己的Armbian命令备忘录

如果你手头有一台闲置的电视盒子、矿渣开发板,或者任何基于ARM架构的小设备,并且成功刷入了Armbian系统,那么恭喜你,你已经打开了一扇通往低成本、高可玩性Linux服务器世界的大门。Armbian,这个为ARM单板计算机(SBC)量身定制的轻量级Debian/Ubuntu发行版,让这些原本功能单一的硬件瞬间变成了可以跑服务、做实验、甚至当作家用服务器的“瑞士军刀”。

但问题也随之而来。刚从Windows或完整版桌面Linux转战过来的朋友,面对这个精简到极致的命令行环境,常常会感到一丝茫然。系统刷好了,SSH也连上了,黑色的终端窗口闪烁着光标,接下来该敲什么?apt update之后呢?怎么查看硬件信息?如何管理服务?网络配置出错了怎么排查?这些在桌面系统上点点鼠标就能完成的操作,在Armbian上都需要通过命令来完成。

这就是为什么一份“常用命令”清单如此重要。它不是一个冰冷的命令大全,而是一位先行者踩过无数坑后,为你梳理出的“生存指南”。网上的命令大全手册固然全面,但过于庞杂,很多命令在Armbian这个特定环境下可能用不上,或者有更优的替代方案。而基于真实使用场景总结出来的命令,才是真正能帮你解决问题的工具。

我最初玩Armbian时,也经历过反复查阅、反复忘记的阶段。后来,我养成了一个习惯:每解决一个问题,或掌握一个高效的操作,就把那条关键命令连同它的使用场景和注意事项,记录在一个Markdown文件里。这份私人笔记随着时间不断更新,从最初的十几条,慢慢积累到覆盖系统管理、网络调试、文件操作、进程监控、软件安装维护等方方面面。今天,我就把这份持续更新的“生存指南”分享出来,它不仅仅是一份列表,更包含了我在使用RK3128、H96 Max RK3318等各种“妖板”时积累的实战心得和避坑技巧。无论你是想用网心云设备刷Armbian做软路由旁路,还是用电视盒子搭建一个家庭媒体中心,这些命令都能让你在命令行世界里更加游刃有余。

2. 系统信息探查:知己知彼,百战不殆

刚登录进一个陌生的Armbian系统,第一件事就是搞清楚“我在哪”和“这是什么机器”。这对于后续的软件安装、性能优化和故障排查都至关重要。

2.1 核心硬件与系统概览

uname -a是你的第一把钥匙。这条命令会一次性输出内核版本、系统架构、主机名和编译时间等核心信息。在Armbian环境下,你特别需要关注的是aarch64还是armv7l,这决定了你能安装的软件包类型。例如,RK3318芯片的设备通常就是aarch64

uname的信息还不够细。要了解更具体的CPU和内存情况,你需要lscpufree -h

  • lscpu: 以清晰的格式展示CPU架构、核心数、型号、主频、字节序等。对于判断设备性能潜力非常有用。
  • free -h: 以人类可读的方式(GB/MB)显示当前系统的内存使用情况。重点关注available列,它表示实际可被程序使用的内存量,比free列更准确。

很多从网心云刷机过来的朋友,会发现设备识别出的内存比物理内存小。这时候,dmesg | grep -i memory命令可以帮你查看内核启动时识别内存的日志,有时能发现内存映射的问题线索。

2.2 磁盘空间与文件系统监控

Armbian设备通常使用eMMC或SD/TF卡作为存储,空间本就有限,监控磁盘使用情况是日常维护的必修课。

df -h是最常用的命令,它能列出所有已挂载文件系统的使用情况。我习惯加上-T参数,同时显示文件系统类型(如ext4, tmpfs),这样更全面。

注意: 在Armbian中,你可能会看到很多tmpfs类型的挂载点(如/run,/tmp),它们占用的是内存而非磁盘空间,这是正常的,用于提高临时文件的读写速度。

仅仅知道总体使用量还不够,我们常常需要找出是哪个目录或文件占用了大量空间。这时就需要du(disk usage)命令。我最常用的组合是:

sudo du -h --max-depth=1 / | sort -hr | head -20

这条命令的威力在于:

  1. sudo: 确保能读取所有目录的权限。
  2. du -h --max-depth=1 /: 从根目录/开始,只统计一级子目录的大小,并以人类可读格式输出。
  3. sort -hr: 将结果按人类可读的数字大小进行反向排序(从大到小)。
  4. head -20: 只显示最大的前20个结果。

执行后,你就能一目了然地看到/home/var/usr哪个目录是“空间吞噬者”。如果发现/var/log异常巨大,那可能是日志文件没有轮转,可以用logrotate配置或手动清理。

2.3 进程与系统负载洞察

系统卡顿了?服务没响应?top或它的增强版htop(需安装)是你的首选。它们能动态显示CPU、内存占用最高的进程。

对于快速查看,我更喜欢用ps aux --sort=-%mem | head -10ps aux --sort=-%cpu | head -10来分别快速锁定内存和CPU的“消耗大户”。

uptime命令则用一行信息告诉你系统运行了多久、当前有多少登录用户,以及过去1、5、15分钟的系统平均负载。平均负载(load average)是一个关键指标。对于单板机,如果15分钟负载持续高于CPU核心数(比如4核设备高于4),就说明系统长期处于高负荷状态,需要优化或排查问题。

3. 软件包管理:让apt成为你的得力助手

Armbian基于Debian/Ubuntu,因此apt(Advanced Package Tool)是其软件包管理的核心。用好apt,是保证系统健康、软件可用的基础。

3.1 更新源与软件库

任何操作之前,请先更新软件包列表。这不会升级任何已安装的软件,只是从配置的软件源(如 mirrors.tuna.tsinghua.edu.cn)同步最新的软件包信息到本地。

sudo apt update

这个命令必须定期执行。我建议在计划安装新软件前,都先运行一次,确保获取到的是最新信息。

有时安装软件会失败,提示“无法定位软件包”。这通常有几个原因:一是软件源里确实没有;二是软件源地址失效或网络不通;三是你的系统架构(armhf/arm64)不支持。首先检查/etc/apt/sources.list/etc/apt/sources.list.d/下的源文件,确保使用的是国内镜像源(如清华、阿里云、中科大),速度会快很多。修改后记得再次sudo apt update

3.2 软件的安装、升级与移除

安装软件的基本命令是sudo apt install <package_name>。例如,安装网络诊断工具curl和文本编辑器vim

sudo apt install curl vim

apt会自动解决依赖关系,这是它比早期apt-get更友好的地方。

升级所有已安装的软件包到最新版本,这是一个需要谨慎的操作:

sudo apt upgrade

它会列出所有将要升级的包,并询问你是否继续。对于生产环境或稳定运行的服务,建议先查看更新日志(如果有),或在小范围测试后再进行全局升级,以免新版软件引入不兼容问题。

如果只想升级某一个特定软件包,可以sudo apt install --only-upgrade <package_name>

移除软件分为两种:

  • sudo apt remove <package_name>: 删除软件包本身,但保留配置文件。
  • sudo apt purge <package_name>: 彻底删除软件包及其所有配置文件。当你确定不再需要某个软件,且想清空其所有痕迹时使用。

清理无用包可以释放空间:

sudo apt autoremove # 删除自动安装且不再需要的依赖包 sudo apt autoclean # 清理已下载的旧版本软件包缓存 sudo apt clean # 清理所有已下载的软件包缓存(更彻底)

日常维护用autoremoveautoclean即可。

3.3 软件包查询与故障处理

如何知道一个软件是否已安装?用dpkg -l | grep <keyword>apt list --installed | grep <keyword>

想安装一个软件但不确定包名?可以用apt search <keyword>进行搜索。

有时安装过程会被意外中断(比如断网),或者依赖关系出现混乱,导致apt处于一个损坏状态。这时可以尝试修复:

sudo apt --fix-broken install sudo dpkg --configure -a

这两条命令经常能解决大部分因依赖问题导致的安装失败。

个人心得: 在Armbian这类资源有限的设备上,我倾向于保持系统的“精简”。只安装必需的服务和工具,并定期清理。对于不确定是否需要的大型软件(如桌面环境),先用apt show <package_name>查看其详细信息和体积,再决定是否安装。盲目安装Gnome或KDE桌面,很可能瞬间撑满你的存储空间。

4. 文件与目录操作:效率提升的关键

在命令行下,高效地操作文件是基本功。除了最基础的ls,cd,cp,mv,rm,掌握一些进阶用法和替代工具能极大提升效率。

4.1 基础命令的进阶用法

  • ls: 别再只用ls了。ls -la组合是我的标配,-l以长格式显示详细信息(权限、所有者、大小、时间),-a显示所有文件(包括以点开头的隐藏文件)。如果想按文件大小排序,用ls -laSh-S按大小排序,-h以易读格式显示大小。
  • cpmv: 复制或移动整个目录时,一定要加-r(递归)参数。例如cp -r source_dir/ destination_dir/mv命令在目标目录已存在时,会将源目录移动到目标目录里面,这点和cp行为一致,需要注意。
  • rm: 这是最危险的命令之一。rm -rf /的梗大家都知道。在Armbian上,我强烈建议先使用rm -ri <file_or_dir>-r递归删除目录,-i在删除每个文件前交互式询问,确认无误后再执行。养成习惯后,可以改用相对安全的替代品trash-cli(需要安装),它会把文件移到“回收站”。

4.2 文本文件查看与编辑

catmoreless用于查看文件内容。对于长文件,less是更好的选择,它支持上下翻页、搜索(按/然后输入关键词)。

headtail用于查看文件开头或结尾。tail -f /var/log/syslog是一个经典用法,-f参数可以实时追踪日志文件的新增内容,对于调试服务启动问题无比有用。

在Armbian上,默认的文本编辑器可能是nano,它比较简单易用。但如果你需要进行复杂的编辑,vimvi是更强大的选择。虽然学习曲线陡峭,但掌握基本操作(i进入插入模式,Esc退出插入模式,:wq保存并退出,:q!不保存强制退出)后,效率会高很多。

4.3 文件查找、权限与归档

在茫茫文件海中找一个东西,find命令是终极武器。它的参数很多,记住几个最常用的组合:

  • 按文件名查找:find / -name "*.log" 2>/dev/null(在根目录查找所有.log文件,并将错误信息重定向到黑洞)。
  • 按文件大小查找:find /home -size +100M(在/home目录下查找大于100MB的文件)。
  • 按时间查找:find /var/log -mtime +7(查找/var/log下7天前修改过的文件)。

文件权限是Linux安全的基础。chmodchown命令必须掌握。chmod 755 script.sh赋予脚本可执行权限。chown -R user:group /data递归改变/data目录下所有文件的所有者和所属组。在Armbian上,如果你用普通用户操作某些系统目录(如/opt)遇到权限问题,合理使用sudo chown比一直用sudo执行命令更安全。

打包和解压文件也是常事。记住这几个组合:

  • 打包压缩:tar -czvf archive.tar.gz /path/to/dir(创建gzip压缩的tar包)。
  • 解压:tar -xzvf archive.tar.gz(解压gzip压缩的tar包到当前目录)。
  • 仅解压指定文件:tar -xzvf archive.tar.gz path/to/file

对于单纯的.zip文件,用unzip命令。

5. 网络配置与诊断:让设备连上世界

网络是Armbian设备的生命线。无论是获取IP地址、测试连通性还是调试服务,网络命令都不可或缺。

5.1 网络状态查看与配置

ip addr show(或老式的ifconfig)用于查看所有网络接口的IP地址、MAC地址和状态。在Armbian中,你可能会看到eth0(有线网卡)、wlan0(无线网卡)以及lo(本地环回)。

ip route show显示系统的路由表,告诉你数据包默认从哪个接口出去。

对于使用DHCP自动获取IP的设备,如果没拿到地址,可以尝试重启网络服务:sudo systemctl restart networkingsudo systemctl restart NetworkManager(取决于你使用的网络管理器)。更直接的方式是释放并重新获取DHCP租约:

sudo dhclient -r eth0 # 释放 sudo dhclient eth0 # 重新获取

静态IP的配置则需要编辑网络配置文件。对于使用systemd-networkd的较新Armbian版本,配置文件通常在/etc/systemd/network/下。对于使用传统interfaces文件的版本,则编辑/etc/network/interfaces。修改后需要重启网络服务生效。

5.2 连通性测试与端口检查

ping是最基本的连通性测试工具。ping -c 4 8.8.8.8向Google的DNS服务器发送4个包,测试外网连通性。

traceroute(或tracepath)可以追踪数据包到达目标主机经过的每一跳路由,对于诊断网络延迟或中断点在何处非常有用。

curlwget是强大的网络数据传输工具。我更喜欢curl,因为它功能更多且默认输出到标准输出,便于管道处理。curl -I http://example.com可以只获取HTTP响应头,快速检查Web服务是否正常。curl -o file.zip http://example.com/file.zip用于下载文件。

服务部署后,需要检查端口是否监听正确。netstat -tulnp或更现代的ss -tulnp可以列出所有正在监听的TCP/UDP端口以及对应的进程名和PID。例如,如果你部署了一个Web服务在8080端口,就应该能看到类似tcp LISTEN 0 128 *:8080 *:* users:(“python3”,pid=1234)的行。

从外部测试端口是否可访问,可以用telnet(需安装)或nc(netcat):

telnet <your_device_ip> 22 # 测试SSH端口 nc -zv <your_device_ip> 80 # 快速测试TCP 80端口

5.3 防火墙与网络调试

Ubuntu系默认使用ufw(Uncomplicated Firewall)来管理iptables。命令很简单:

  • sudo ufw status: 查看状态。
  • sudo ufw allow 22/tcp: 允许SSH端口。
  • sudo ufw enable: 启用防火墙。
  • sudo ufw disable: 禁用防火墙。

在调试网络问题时,tcpdump是抓包分析的利器。例如,监听eth0接口上所有发往80端口的数据包:sudo tcpdump -i eth0 port 80 -nn-nn表示不解析主机名和端口名,显示更快。

踩坑记录: 有一次在RK3318设备上部署的服务,本地curl能通,但外部无法访问。用ss -tulnp发现服务确实监听在0.0.0.0:8080。最后用sudo ufw status一看,果然是防火墙没开8080端口。还有一个常见坑是,有些Armbian镜像默认的ufw规则是拒绝所有入站连接(除了SSH),所以部署任何新服务后,别忘了在防火墙开个口子。

6. 系统服务与进程管理:让服务稳定运行

在Armbian上,我们经常需要运行一些后台服务,比如Web服务器、数据库、文件同步工具等。systemd是现代Linux系统(包括Armbian)的服务管理器,掌握其用法至关重要。

6.1 使用systemctl管理服务

基本操作都是围绕systemctl命令:

  • sudo systemctl start <service_name>: 启动服务。
  • sudo systemctl stop <service_name>: 停止服务。
  • sudo systemctl restart <service_name>: 重启服务。
  • sudo systemctl reload <service_name>: 重新加载配置文件(如果服务支持)。
  • sudo systemctl status <service_name>: 查看服务状态。这是最常用的命令之一,它会显示服务是否活跃、运行了多久,以及最近的日志片段。
  • sudo systemctl enable <service_name>: 设置服务开机自启。
  • sudo systemctl disable <service_name>: 禁止服务开机自启。
  • sudo systemctl is-enabled <service_name>: 检查服务是否启用自启。

例如,管理SSH服务:sudo systemctl status ssh。如果修改了SSH配置文件(/etc/ssh/sshd_config),需要sudo systemctl reload sshrestart使其生效。

6.2 查看日志以排查问题

服务出问题时,status命令提供的日志可能不够详细。这时需要查询systemd的日志系统——journalctl

  • sudo journalctl -u <service_name>: 查看指定服务的所有日志。
  • sudo journalctl -u <service_name> -f: 实时追踪(follow)该服务的日志输出,相当于tail -f
  • sudo journalctl --since “2023-10-01 09:00:00” --until “2023-10-01 10:00:00”: 查看特定时间段的日志。
  • sudo journalctl -p err: 查看所有优先级为错误(error)及以上的日志。

对于仍未使用systemd管理的传统服务,或者想查看更全局的系统日志,可以查看/var/log/目录下的文件,如syslogmessageskern.log(内核日志)等。

6.3 进程的深入控制

systemctl管理的是服务单元。而对于单个进程,我们还有更多控制手段。

ps aux | grep <process_name>可以找到进程的PID(进程ID)。拿到PID后,可以向进程发送信号:

  • kill <PID>: 发送默认的TERM(终止)信号,要求进程优雅退出。
  • kill -9 <PID>: 发送KILL信号,强制立即结束进程。这是在进程无响应(“卡死”)时的最后手段,因为进程无法捕获此信号,可能导致数据丢失。
  • killall <process_name>: 结束所有同名进程。
  • pkill -f <pattern>: 根据命令模式结束进程,更灵活。

对于需要长时间运行,但又不想占用当前终端会话的脚本或命令,可以使用nohupscreen/tmux

  • nohup ./my_script.sh &: 忽略挂断信号,并将输出重定向到nohup.out文件,使命令在后台持续运行。
  • screentmux: 功能更强大的终端复用器。它们可以创建虚拟终端会话,即使SSH断开连接,会话中的进程也会继续运行。之后重新SSH登录,再screen -rtmux attach就能恢复会话现场。这对于运行一些交互式或需要长时间观察输出的任务(如编译软件)非常有用。

7. 用户、权限与安全基础

即使是个人使用的Armbian设备,良好的用户和权限管理习惯也能避免很多误操作和安全风险。

7.1 用户与组管理

默认的Armbian镜像通常以root用户登录,或者创建一个普通用户(如armbian)。长期使用root是危险的,任何误操作都可能摧毁系统。

创建一个新用户:sudo adduser <username>,按提示设置密码和信息。

将用户加入sudo组,使其拥有管理权限:sudo usermod -aG sudo <username>-aG参数表示“追加到组”,避免覆盖用户原有的其他组。

切换用户:

  • su - <username>: 切换到目标用户,并加载其环境变量。
  • sudo -isudo su -: 切换到root用户。

7.2 文件权限详解

使用ls -l查看文件时,会看到类似-rwxr-xr-x的权限字符串。它分为四部分:

  • 第一位:文件类型(-普通文件,d目录,l链接等)。
  • 后九位:每三位一组,分别代表所有者(user)所属组(group)其他用户(others)的权限。
  • r=读(4),w=写(2),x=执行(1)。

chmod可以用数字或符号模式修改权限。

  • 数字模式:chmod 755 file.sh。7(4+2+1)表示所有者有rwx权限;5(4+1)表示组和其他用户有r-x权限。
  • 符号模式:chmod u+x file.sh给所有者增加执行权限;chmod o-w file.sh移除其他用户的写权限。

对于目录,x权限意味着可以进入(cd)该目录。所以,要让一个目录可被浏览,至少需要r-x权限。

7.3 SSH安全加固

SSH是管理Armbian的主要入口,其安全至关重要。

  1. 禁用root登录: 编辑/etc/ssh/sshd_config,找到PermitRootLogin行,改为PermitRootLogin no。然后重启SSH服务。
  2. 使用密钥登录: 在本地电脑生成密钥对(ssh-keygen),将公钥(~/.ssh/id_rsa.pub)内容添加到Armbian设备的~/.ssh/authorized_keys文件中。之后就可以无需密码登录,且更安全。
  3. 修改默认端口: 将Port 22改为一个非标准的高位端口(如Port 2222),可以减少自动化扫描攻击。改完后别忘了在防火墙(ufw)中开放新端口。
  4. 使用强密码: 如果必须用密码登录,确保密码足够复杂。

完成修改后,务必先开一个新的SSH会话测试,确认能正常登录后,再关闭当前的会话。避免配置错误导致自己也被锁在外面。

8. 性能监控与简单调优

Armbian设备资源有限,了解如何监控性能并在必要时进行简单调优,可以保证服务流畅运行。

8.1 实时监控工具

除了之前提到的top/htop,还有一些轻量级工具:

  • vmstat 1: 每秒输出一次系统概览,包括进程、内存、交换区、IO、CPU中断等。关注r(运行队列长度)和ussy(用户和系统CPU时间)。
  • iostat -xz 1: 监控磁盘IO状况。对于使用SD卡或eMMC的设备,IO瓶颈很常见。关注await(平均等待时间)和%util(设备利用率),如果持续很高,说明磁盘可能成为瓶颈。
  • dstat: 功能更全面的性能监控工具,可以同时查看CPU、磁盘、网络、内存等,需要安装。

8.2 内存与交换空间

使用free -h查看内存。如果available内存长期很少,且swap使用量(Si/Sovmstat中)很高,说明物理内存不足,系统在频繁使用交换空间,这会极大拖慢性能(尤其是SD卡作为交换设备时)。

可以考虑:

  1. 优化运行的服务,关掉不必要的。
  2. 增加交换文件(如果原本没有或太小):
    sudo fallocate -l 1G /swapfile # 创建1G文件 sudo chmod 600 /swapfile sudo mkswap /swapfile sudo swapon /swapfile
    要永久生效,需将/swapfile swap swap defaults 0 0添加到/etc/fstab

8.3 开机自启服务优化

使用systemctl list-unit-files --type=service --state=enabled查看所有开机自启的服务。仔细审视每一项,禁用掉你明确不需要的(sudo systemctl disable <service_name>)。例如,如果不用蓝牙,可以禁用bluetooth.service

8.4 日志轮转与清理

日志文件(/var/log/)可能随时间增长。系统通常有logrotate服务来自动轮转和清理旧日志。你可以检查/etc/logrotate.conf/etc/logrotate.d/下的配置。对于特定应用(如你部署的Web服务)的日志,也需要考虑配置轮转,或定期手动清理。

一个简单的定时清理任务可以添加到crontab

sudo crontab -e # 添加一行,每周日凌晨3点清理7天前的日志(请根据实际情况调整路径和天数) 0 3 * * 0 find /var/log/myapp -name “*.log” -mtime +7 -delete

9. 实用小技巧与高级命令拾遗

最后,分享一些能极大提升日常操作效率的命令和技巧,它们可能不常用,但关键时刻能省下大量时间。

9.1 命令行效率工具

  • 历史命令搜索: 按Ctrl + R,然后输入关键词,可以反向搜索命令历史。找到后按回车执行,或按左右箭头键编辑。
  • 快速跳转目录cd -可以快速回到上一个所在的目录。
  • 命令别名: 在~/.bashrc文件中添加alias ll=‘ls -la’,然后source ~/.bashrc,就可以用ll代替长长的ls -la了。可以为常用命令设置简短别名。
  • 通配符与花括号扩展
    • cp /path/to/file.{txt,bak}等价于cp /path/to/file.txt /path/to/file.bak
    • mkdir -p project/{src,doc,test}一次性创建多层嵌套目录。

9.2 数据操作与流处理

  • grep文本搜索grep -r “error” /var/log/递归搜索目录下所有文件中的“error”关键词。-i忽略大小写,-n显示行号。
  • awk文本分析: 一个强大的编程语言,常用于提取列数据。例如,ps aux | awk ‘{print $1, $4}’打印进程的用户名和CPU占用率。
  • sed流编辑器: 用于对文本进行替换、删除、插入等操作。例如,sed -i ‘s/old_string/new_string/g’ file.txt将文件中所有old_string替换为new_string
  • 重定向与管道
    • command > file: 将标准输出重定向到文件(覆盖)。
    • command >> file: 追加到文件。
    • command 2>&1: 将标准错误重定向到标准输出。
    • command1 | command2: 将command1的输出作为command2的输入。

9.3 系统维护与时间同步

  • 查看系统启动时间who -buptime -s
  • 同步系统时间: Armbian通常默认安装了systemd-timesyncd。使用timedatectl status查看时间同步状态。如果时间不准,可以sudo timedatectl set-ntp true启用NTP同步。
  • 计划任务: 使用crontab -e编辑当前用户的计划任务。格式为:分 时 日 月 周 命令。例如0 2 * * * /path/to/backup.sh表示每天凌晨2点执行备份脚本。系统的计划任务在/etc/crontab/etc/cron.d/目录下。

这份命令清单是我在多年把玩各种Armbian设备过程中,从无数次成功和失败里沉淀下来的。它不是一个终点,而是一个起点。最好的学习方式,就是在你遇到实际问题时,回来查阅相关章节,动手尝试,并理解每条命令背后的逻辑。随着你使用场景的深入,你也会积累属于自己的那份“常用命令”清单。记住,在Linux的世界里,命令行不是障碍,而是赋予你精确控制力的强大工具。从生疏到熟练,需要的只是一点耐心和大量的实践。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/13 11:44:30

从零构建openEuler 22.03 LTS云镜像:OpenStack黄金镜像制作全流程详解

1. 项目概述与核心价值 最近在给公司的私有云平台做镜像标准化&#xff0c;选型定在了openEuler 22.03 LTS。这个活儿听起来简单&#xff0c;不就是做个系统镜像嘛&#xff0c;但真上手了才发现&#xff0c;从零开始为OpenStack这样的云平台制作一个“开箱即用”、性能稳定且符…

作者头像 李华
网站建设 2026/8/13 11:41:22

跨平台游戏模组下载终极方案:WorkshopDL完整使用指南

跨平台游戏模组下载终极方案&#xff1a;WorkshopDL完整使用指南 【免费下载链接】WorkshopDL WorkshopDL - The Best Steam Workshop Downloader 项目地址: https://gitcode.com/gh_mirrors/wo/WorkshopDL 还在为跨平台游戏无法访问Steam创意工坊模组而烦恼吗&#xff…

作者头像 李华