diff --git a/src/api2/node/disks/zfs.rs b/src/api2/node/disks/zfs.rs index c5d6f6a6..0f0e4220 100644 --- a/src/api2/node/disks/zfs.rs +++ b/src/api2/node/disks/zfs.rs @@ -25,6 +25,8 @@ use crate::server::WorkerTask; use crate::api2::types::*; +use crate::tools::systemd; + pub const DISK_ARRAY_SCHEMA: Schema = ArraySchema::new( "Disk name list.", &BLOCKDEVICE_NAME_SCHEMA) .schema(); @@ -355,6 +357,9 @@ pub fn create_zpool( let output = crate::tools::run_command(command, None)?; worker.log(output); + let import_unit = format!("zfs-import@{}.service", systemd::escape_unit(&name, false)); + systemd::enable_unit(&import_unit)?; + if let Some(compression) = compression { let mut command = std::process::Command::new("zfs"); command.args(&["set", &format!("compression={}", compression), &name]);