You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu新增硬盘后,如何在不修改代码的情况下让ZoneMinder事件文件存储至该硬盘并将其作为系统盘扩展?

Ubuntu新增硬盘后,如何在不修改代码的情况下让ZoneMinder事件文件存储至该硬盘并将其作为系统盘扩展?

嗨,看了你的情况,给你两个实用方案,都不用改ZoneMinder的代码,你可以根据需求选:

方案一:挂载绑定(直接让ZM事件目录指向新硬盘)

这个方法最简单,相当于把ZoneMinder的事件存储目录“映射”到新硬盘上,系统和ZM都会以为还是在用原来的路径,但实际数据存在新硬盘里。

  1. 先备份现有事件文件,避免操作失误丢失数据:
sudo cp -r /var/cache/zoneminder/events/2 /hdd/zoneminder_events_backup
  1. 清空原目录内容(确认备份完成后再执行):
sudo rm -rf /var/cache/zoneminder/events/2/*
  1. 在新硬盘上创建对应的存储目录:
sudo mkdir -p /hdd/zoneminder/events/2
  1. 设置正确的权限,确保ZoneMinder能正常读写这个目录:
sudo chown -R www-data:www-data /hdd/zoneminder/events/2
sudo chmod -R 755 /hdd/zoneminder/events/2
  1. 临时挂载测试:
sudo mount --bind /hdd/zoneminder/events/2 /var/cache/zoneminder/events/2

测试一下:往/var/cache/zoneminder/events/2里放个测试文件,然后去/hdd/zoneminder/events/2看看是不是同步存在了,没问题就继续下一步。

  1. 设置开机自动挂载:
    编辑/etc/fstab文件:
sudo nano /etc/fstab

在文件末尾添加一行:

/hdd/zoneminder/events/2 /var/cache/zoneminder/events/2 none bind 0 0

保存退出后,执行以下命令验证配置没有错误:

sudo mount -a

如果没有报错,下次开机就会自动挂载了。

方案二:用LVM扩展系统盘(把新硬盘作为系统盘的一部分)

如果你想真正把新硬盘变成系统盘的扩展,让整个/分区都能用到新硬盘的空间,这个方案适合你,但前提是你的系统盘已经是LVM卷(可以先执行sudo lvdisplay看看有没有逻辑卷信息)。

⚠️ 注意:这个操作会清空新硬盘上的所有数据,一定要先备份/hdd里的内容!

  1. 将新硬盘转换成LVM物理卷:
sudo pvcreate /dev/sda1
  1. 找到系统盘所在的卷组:
    执行以下命令,看VG Name那一行的名称(比如常见的ubuntu-vg):
sudo vgdisplay
  1. 把新物理卷加入卷组:
    替换下面的ubuntu-vg为你实际的卷组名:
sudo vgextend ubuntu-vg /dev/sda1
  1. 扩展逻辑卷:
    同样替换ubuntu-vg/ubuntu-lv为你的逻辑卷路径(可以从lvdisplay里找到):
sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
  1. 扩展文件系统:
    如果你的系统盘用的是ext4文件系统:
sudo resize2fs /dev/ubuntu-vg/ubuntu-lv

如果是xfs文件系统:

sudo xfs_growfs /dev/ubuntu-vg/ubuntu-lv

执行完后,再用df -h看看,系统盘/的空间应该已经变大了,ZoneMinder的文件还是存在原来的路径,但实际会自动用到新硬盘的空间,完全不用改任何配置。


备注:内容来源于stack exchange,提问作者Rosie Smith

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 06:33:04