Leap Micro不可变Linux
@[toc](openSUSE Leap Micro不可变Linux))
1、openSUSE Leap Micro简介
openSUSE Leap Micro
是一款稳定发行版
, 此社区版本基于SUSE Linux Enterprise Micro
,并充分利用了 SUSE Linux Enterprise
经过企业级强化
的安全性和合规性组件。这种技术融合提供了一个现代化、不可篡改且开发者友好的操作系统平台。
这个版本的不可变
及回滚
特性,非常适合服务器。
openSUSE Leap Micro
是一个不可变
的 Linux 发行版。利用 Btrfs
的快照
等特性来实现事务性
和原子性
。
https://imbearchild.cyou/archives/2022/09/fedora-kinoite-and-opensuse-microos/
大白话
就是:
不要在这个服务器
上装了mysql
又在上面nginx
,最好
只跑一个服务
,不然这个Linux的变更方式
会让你摸不着头脑
。
如果只跑一个服务
,变更和回滚
非常好用,强烈安利
。
简单来讲,不可变
的Linux
发行版会有一个大体只读
的根分区
。
/usr
、/lib
是只读
挂载 ;
/etc
、 /var
、/home
等路径依然可写
.
只读目录 | 读写目录 |
---|---|
/ | /opt |
/usr | /etc |
/lib | /var |
/home |
openSUSE Leap Micro与openSUSE MicroOS对比
MicroOS
和 Leap Micro
都是 openSUSE
项目下的轻量级、不可变操作系统
(Immutable OS),专为容器化与边缘计算场景设计,但两者在技术基础、更新策略
及目标用户上存在显著差异。以下是核心区别的对比与分析:
对比维度 | openSUSE Leap Micro | openSUSE MicroOS |
---|---|---|
基础代码来源 | 基于 SUSE Linux Enterprise (SLE) 和 Leap | 基于 Tumbleweed(滚动更新版) |
更新模式 | 小幅稳定更新 (追随 SLE SP 版本) | 持续滚动更新 (最新软件包) |
生命周期 | 约 6个月 (EOL 于后续第二个版本发布时) | 无固定生命周期,持续更新 |
目标用户 | 企业边缘计算、嵌入式生产环境 | 开发者、云原生实验环境 |
图形界面支持 | 无桌面环境,可通过 Cockpit 管理 | 可选 Desktop 版(如 KDE、GNOME) |
企业支持路径 | 可平滑迁移至 SLE Micro(最长4年支持) | 社区驱动 |
源的软件数量 | 少 | 多 |
2、ssh登录
SLE
默认不能
以root
登录,没有/etc/ssh/sshd_config
文件;
需要新建一个普通账户
登录SLE服务器,然后提权
到root
# 创建ops用户
useradd ops# 为ops设置密码
passwd ops# 使用ops用户登录sle服务器
ssh ops@sle服务器ip# 提权到ops
sudo -i
3、openSUSE Leap Micro配置国内软件源
官方软件源地址:https://zh.opensuse.org
https://thiscute.world/posts/opensuse-instruction/
openSUSE Leap Micro
的源
是基于tumbleweed
的
# 创建备份软件源 目录
mkdir -p /etc/zypp/repos.d/bak# 备份软件源
mv /etc/zypp/repos.d/*.repo /etc/zypp/repos.d/bak# OSS 更新仓库,用于获取开源软件的安全更新和补丁
## -f: 自动刷新这个仓库。
## -c: 自动接受仓库证书(信任 SSL 证书)。
## -g: 忽略 GPG 检查(通常用于测试或内部镜像,但不推荐在生产环境中禁用)。
## 阿里只保存了sle的5.5
# sudo zypper ar -fcg https://mirrors.aliyun.com/opensuse/update/leap-micro/5.5/sle leap-micro# 添加 SUSE Linux Enterprise (SLE) 的更新仓库
sudo zypper ar -fcg https://mirrors.aliyun.com/opensuse/update/leap-micro/$releasever/sle `leap-micro SUSE Linux Enterprise`# 查看源文件
ls /etc/zypp/repos.d/
#刷新软件包源
zypper ref#查看软件源
zypper ls
zypper并行下载
https://forum.suse.org.cn/t/topic/17192/7
vim /etc/profile.d/aliases.sh
# zypper启用并行下载
alias zypper='ZYPP_PCK_PRELOAD=1 zypper'
4、系统变更
文档参考地址: SUSE Documentation
openSUSE Leap Micro
是不可变服务器
,每安装
一次软件都是一次变更
,变更完成后, /usr
、/lib
登录目录都会变成只读
。保证了系统的原子性
。
transactional-update
SUSE 事务性更新工具命令详解
https://blog.csdn.net/omaidb/article/details/148655666
# 安装软件包
transactional-update -c pkg install tuned open-vm-tools# 应用变更
transactional-update apply
5、openSUSE Leap Micro配置静态ip
Leap Micrio
通过NetworkManager
配置网络,使用nmcli
命令行进行网络配置
https://blog.csdn.net/omaidb/article/details/120028501
系统优化和美化
关闭SELinux
# 关闭selinux
sed -ri 's#(SELINUX=).*#\1disabled#' /etc/selinux/config# 临时关闭SELinux
setenforce 0
启动tuned服务
# 开机自启服务并现在就启动服务
systemctl enable --now tuned## 启用虚拟机方案和低时延方案
tuned-adm profile virtual-guest network-latency
美化vim
# 下载vim配置文件
wget -cP $HOME/ https://raw.gitcode.com/liqiaofei/vim-config/raw/main/.vimrc
ps1变量美化
# 下载ps1美化配置
curl -o /etc/profile.d/ps1.sh https://raw.gitcode.com/liqiaofei/profile.d/raw/main/ps1.sh
配置/etc/motd.d/00-welcome
系统欢迎语
tee /etc/motd.d/00-welcome <<-'EOF'
【法律警告】
本系统仅供授权人员访问。所有登录尝试和系统内的操作行为都将被实时监控、记录和审计。未经授权的访问、使用、修改或传播系统信息属于非法行为,将承担严厉的法律责任,包括但不限于民事赔偿、行政处罚乃至刑事起诉。继续登录表示您已阅读、理解并同意接受上述条款和相关信息安全策略的约束。
EOF
设置中文语言显示
# 查询 LANG 可以设置的值
localectl list-locales |grep -i zh
# 查询 LC_ALL 可以设置的值
locale -a |grep -i zh
配置/etc/locale.conf
vim /etc/locale.conf
# 设置默认语言
LANG=zh_CN.UTF-8
# 覆盖系统所有语言设置
LC_ALL=zh_CN.utf8
使locale.conf
配置生效
# 立即生效
source /etc/locale.conf# 开机自动生效
echo "source /etc/locale.conf" >/etc/profile.d/locale.sh
系统快照管理
基于Btrfs
文件系统的快照管理
https://documentation.suse.com/zh-cn/sle-micro/6.0/html/Micro-transactional-updates/index.html
创建快照
每安装一次
软件包后重启
,就会生成一个快照
snapper create
查看快照列表
# 查看快照列表
snapper list
修改快照描述
# 修改快照12的 描述
snapper modify -d "安装了mosh" 12
回滚快照
# 回滚快照
snapper rollback 快照编号# 回滚到快照5 并添加备注
snapper rollback 5 -d "Emergency_rollback"
对比快照
snapper status 15..16 |less # 查看文件变化
snapper diff 15..16 |less # 内容差异对比
删除快照
# 删除快照
snapper delete 快照编号