在CentOS系统中,可以通过配置文件系统来设置回收站策略。以下是一些常见的方法:
trash-cli
工具安装trash-cli
:
sudo yum install trash-cli
配置回收站大小:
trash-cli
默认使用~/.local/share/Trash/files
和~/.local/share/Trash/info
作为回收站目录。你可以通过修改这些目录的权限和大小来控制回收站的容量。
# 设置回收站最大容量(以字节为单位)
echo "1073741824" > ~/.trashrc
配置回收站保留时间:
trash-cli
默认没有设置回收站保留时间,但你可以使用trash-put
命令的--keep
选项来指定保留时间。
trash-put --keep=7 /path/to/file
inotify
和自定义脚本安装inotify-tools
:
sudo yum install inotify-tools
编写自定义脚本: 创建一个脚本来监控文件删除操作,并将删除的文件移动到回收站。
#!/bin/bash
TRASH_DIR="$HOME/.trash"
mkdir -p "$TRASH_DIR/files"
mkdir -p "$TRASH_DIR/info"
inotifywait -m -e delete --format '%w%f' /path/to/monitor | while read FILE
do
TIMESTAMP=$(date +%s)
mv "$FILE" "$TRASH_DIR/files/$TIMESTAMP-$(basename "$FILE")"
echo "[$TIMESTAMP] $FILE" > "$TRASH_DIR/info/$(basename "$FILE")"
done
运行脚本:
chmod +x /path/to/script.sh
/path/to/script.sh
systemd
服务创建systemd
服务文件:
创建一个systemd
服务文件来管理回收站。
[Unit]
Description=Trash Service
After=network.target
[Service]
ExecStart=/usr/local/bin/trash-service.sh
Restart=always
[Install]
WantedBy=multi-user.target
编写服务脚本: 创建一个脚本来管理回收站。
#!/bin/bash
TRASH_DIR="$HOME/.trash"
mkdir -p "$TRASH_DIR/files"
mkdir -p "$TRASH_DIR/info"
inotifywait -m -e delete --format '%w%f' /path/to/monitor | while read FILE
do
TIMESTAMP=$(date +%s)
mv "$FILE" "$TRASH_DIR/files/$TIMESTAMP-$(basename "$FILE")"
echo "[$TIMESTAMP] $FILE" > "$TRASH_DIR/info/$(basename "$FILE")"
done
启用并启动服务:
sudo systemctl enable trash-service.service
sudo systemctl start trash-service.service
通过以上方法,你可以在CentOS系统中设置回收站策略,以满足你的需求。