彼时达达,OK 👍
当成 全新 Debian 12,我们就按你 LifeOS 的风格来一个 最干净、最少依赖、一步完成 的流程。
👉 目标
除 /dev/sdj 外所有盘 → 一个 LVM → 挂载 /root/storage
✅ 一、需要安装的依赖(Debian 12)
只需要一个包:
apt update
apt install -y lvm2
👉 Debian 12 默认内核已经支持 LVM,不需要额外模块。
可选但强烈推荐(你多盘环境)
apt install -y gdisk smartmontools
👉 用于你 LifeOS 的硬盘巡检 / MinIO inventory。
✅ 二、确认系统盘
lsblk -o NAME,SIZE,MOUNTPOINT
确认 /dev/sdj 是 /。
⚠️ 不要动它。
🚀 三、最简单一键脚本(适配 Debian 12)
直接复制执行👇
#!/bin/bash
set -e
DISKS="sda sdb sdc sdd sde sdf sdg sdh sdi sdk sdl"
VG=vg_storage
LV=lv_storage
MP=/root/storage
echo "===== 安装依赖 ====="
apt install -y lvm2 >/dev/null
echo "===== 清空签名 ====="
for d in $DISKS; do
wipefs -a /dev/$d || true
done
echo "===== 创建 PV ====="
pvcreate $(for d in $DISKS; do echo /dev/$d; done)
echo "===== 创建 VG ====="
vgcreate $VG $(for d in $DISKS; do echo /dev/$d; done)
echo "===== 创建 LV ====="
lvcreate -l 100%FREE -n $LV $VG
echo "===== 格式化 ====="
mkfs.ext4 /dev/$VG/$LV
echo "===== 挂载 ====="
mkdir -p $MP
mount /dev/$VG/$LV $MP
echo "===== 写入 fstab ====="
UUID=$(blkid -s UUID -o value /dev/$VG/$LV)
echo "UUID=$UUID $MP ext4 defaults 0 2" >> /etc/fstab
echo "===== 完成 ====="
df -h $MP
运行:
chmod +x storage.sh
./storage.sh
✅ 四、执行后结果
df -h
你会看到:
/dev/vg_storage/lv_storage ~39T /root/storage
👉 11 × 3.6T ≈ 39TB
✅ 五、检查命令
pvs
vgs
lvs
⚠️ 六、LifeOS 环境提醒
因为你是:
👉 MinIO
👉 机器人日志
👉 数据湖
LVM linear 没有冗余,建议:
/root/storage/
├── tmp_dataset
├── robot_logs
├── minio_cache
不要放唯一重要数据。
你可以同步到:
👉 其他服务器 ZFS
👉 MinIO EC 集群
👍 七、如果你想更自动
我可以给你一个:
👉 自动识别非系统盘
👉 支持 NVMe + SATA 混合
👉 DRY-RUN 模式
👉 输出 MinIO 推荐结构
就像你之前的 oneclick_minio_ec_plus_data.sh 那种 😄
直接说:“给 LifeOS storage_auto.sh” 就行。