Hi,
I am trying to run duperemove out of a systemd timer, using a templated unit. Here:
[1/2803]mh@spinturn:~ $ cat /etc/systemd/system/[email protected]
[Unit]
Description=Deduplicate btrfs/xfs path %I with duperemove (hashfile /var/lib/duperemove/dr-%i.hashes)
Documentation=man:duperemove(1)
ConditionPathExists=/%I
ConditionPathExists=!/run/lock/systemd-duperemove-%i.lock
[Service]
Type=oneshot
ExecStartPre=/usr/bin/touch /run/lock/systemd-duperemove-%i.lock
ExecStart=/usr/bin/duperemove -r -d --hashfile=/var/lib/duperemove/dr-%i.hashes /%I
ExecStopPost=/usr/bin/rm -f /run/lock/systemd-duperemove-%i.lock
[2/2804]mh@spinturn:~ $
When I use --hashfile=/var/lib/duperemove/%i.hashes, duperemove aborts with sqlite errors:
sudo duperemove -r d --hashfile=/var/lib/duperemove/-srv-dak-.hashes //srv/dak/
create_indexes()/8054: Database error 1 while creating database index: SQL logic error
dbfile_prepare()/8054: Database error 1 while creating indexes: SQL logic error
[44/2683]mh@spinturn:~ $
When I use a hash file that doesn't have its name start with -, it works.
If that's a bug, then duperemove should accept hash files with file names that begin with -. If it's intended behavior, the error message should be less misleading and the file name restriction should be documented.
Greetings
Marc
Hi,
I am trying to run duperemove out of a systemd timer, using a templated unit. Here:
When I use --hashfile=/var/lib/duperemove/%i.hashes, duperemove aborts with sqlite errors:
When I use a hash file that doesn't have its name start with -, it works.
If that's a bug, then duperemove should accept hash files with file names that begin with -. If it's intended behavior, the error message should be less misleading and the file name restriction should be documented.
Greetings
Marc