openSUSE MicroOS不可变Linux

1、openSUSE MicroOS简介

openSUSE MicroOS是一款滚动发行版, 无版本号概念,用户始终运行最新状态,无需升级系统大版本。

OpenSUSE MicroOS 适用于单一用途服务器应用
https://get.opensuse.org/microos/?type=server

OpenSUSE MicroOS是一个不可变的 Linux 发行版。
MicroOS 则利用 Btrfs快照等特性来实现事务性原子性

https://imbearchild.cyou/archives/2022/09/fedora-kinoite-and-opensuse-microos/

大白话就是:
不要在这个服务器上装了mysql又在上面nginx最好只跑一个服务,不然这个Linux的变更方式会让你摸不着头脑
如果只跑一个服务,变更和回滚非常好用,强烈安利

简单来讲,不可变Linux发行版会有一个大体只读根分区
/etc/var/home 等路径依然可写
但是 /usr/lib只读挂载。

openSUSE MicroOS 基于tumbleweed(风滚草)版本,是一个滚动更新版
这个版本的不可变回滚特性,非常适合服务器。


安装时可能遇到的问题

安装时,先按下F4,选择DVD,才能正常安装.


文章中演示的版本
在这里插入图片描述


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 MicroOS配置国内软件源

官方软件源地址:https://zh.opensuse.org
https://thiscute.world/posts/opensuse-instruction/

openSUSE MicroOS是基于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 检查(通常用于测试或内部镜像,但不推荐在生产环境中禁用)。
sudo zypper ar -fcg https://mirrors.ustc.edu.cn/opensuse/tumbleweed/repo/oss/ repo-oss

# 添加非开源仓库(Non-OSS)
sudo zypper ar -fcg https://mirrors.ustc.edu.cn/opensuse/tumbleweed/repo/non-oss/ repo-non-oss

# update
sudo zypper ar -fcg https://mirrors.ustc.edu.cn/opensuse/update/tumbleweed/ repo-update 

# packman
sudo zypper ar -fcg https://mirrors.ustc.edu.cn/packman/suse/openSUSE_Tumbleweed/ packman
#sudo zypper ar -cf  http://mirrors.aliyun.com/packman/suse/openSUSE_Tumbleweed/ Packman

# 添加 openSUSE_zh 源:https://build.opensuse.org/project/show/home:opensuse_zh
sudo zypper ar -fcg https://download.opensuse.org/repositories/home:/opensuse_zh/openSUSE_Tumbleweed openSUSE_zh

# 添加 m17n obs 源:https://build.openSUSE.org/repositories/M17N
sudo zypper ar -fcg https://download.opensuse.org/repositories/M17N/openSUSE_Tumbleweed m17n

# 添加 SUSE Linux Enterprise (SLE) 的更新仓库
## 阿里只保存了sle的5.5
# sudo zypper ar -fcg https://mirrors.aliyun.com/opensuse/update/leap-micro/5.5/sle leap-micro
# 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 MicroOS不可变服务器,每安装一次软件都是一次变更,变更完成后, /usr/lib 登录目录都会变成只读。保证了系统的原子性

transactional-update SUSE 事务性更新工具命令详解
https://blog.youkuaiyun.com/omaidb/article/details/148655666


5、openSUSE MicroOS配置静态ip

SLE Micrio通过NetworkManager配置网络,使用nmcli命令行进行网络配置

https://blog.youkuaiyun.com/omaidb/article/details/120028501


系统优化和美化


关闭SELinux

# 关闭selinux
sed -ri 's#(SELINUX=).*#\1disabled#' /etc/selinux/config

# 临时关闭SELinux
setenforce 0

sudo配置

# 配置admin用户的权限
echo "admin ALL = (root) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/admin

# 配置admin的sudo配置文件权限
sudo chmod 0440 /etc/sudoers.d/admin

启动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

配置git命令自动补全

# 下载git-completion.sh
wget -cP /etc/profile.d/ https://raw.github.com/git/git/master/contrib/completion/git-completion.bash

配置/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

安全防护


使用fail2ban防止ssh穷举爆破 :

https://blog.youkuaiyun.com/omaidb/article/details/120231345


配置ipset

配置IP白名单IP黑名单
https://blog.youkuaiyun.com/omaidb/article/details/120405741


rm删除到回收站

https://blog.youkuaiyun.com/omaidb/article/details/148346377


Linux服务器防止误关机

https://blog.youkuaiyun.com/omaidb/article/details/148352044


系统快照管理

基于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 rollback last

对比快照

snapper status 15..16 |less  # 查看文件变化
snapper diff 15..16 |less   # 内容差异对比


删除快照

# 删除快照
snapper delete 快照编号
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

教Linux的李老师

赞赏是第一生产力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值