【打工日常】Linux实现可回滚的回收站功能

1.为什么创建可回滚的回收站功能?

为了让运维人员可以有回旋的余地,但是也要保证可以清理不需要的文件。

2.涉及到的文件安全概念?

Linux的文件安全概念主要涉及到文件权限和文件系统安全两个方面。 那什么是文件权限?

在Linux系统中,每个文件(或目录)都包含有访问权限,这些权限决定了谁能访问以及如何访问这些文件。而Linux中有三种用户类型,包括文件宿主(创建该文件的用户)、同组用户(拥有该文件的用户组中的任何用户)以及每种用户都有读写执行的权限。

这些权限可以通过"ls -l"命令查看,命令输出结果中的第2至10位表示权限,其中9个字母分成3组,分别代表属主权限、属组权限和其他权限。

Linux文件系统中,用户可以分为三种类型:普通文件、目录文件、特殊文件(包括符号链接文件、设备文件、管道文件、socket文件等)。普通文件不包含有文件系统的结构信息,如图形文件、数据文件、文档文件、声音文件等都属于这种文件。目录文件则用于存放文件名及其相关信息,是内核组织文件系统的基本节点。

为了维护文件系统的安全,Linux还提供了一系列的文件和目录操作命令,如chmod、chown、chgrp等,用于修改文件或目录的权限、属主和属组等信息。这些命令可以更好地控制文件和目录的访问权限,从而提高系统的安全性。

3.部署安装可回滚的回收站

a.在root目录创建一个文件夹,用来保存删除的文件

bash 复制代码
mkdir -p ~/.Recycle_bin

b.修改.bashrc文件

bash 复制代码
vim ~/.bashrc

c.在.bashrc文件后面添加下面这些

bash 复制代码
alias de=Recycle_bin
alias dl='ls ~/.Recycle_bin'
alias dr=undelfile
undelfile()
{
mv -i ~/.Recycle_bin/$@ ./
}
Recycle_bin()
{
mv $@ ~/.Recycle_bin/
}
clearall()
{
read -p "Clear Recycle_bin?[n]" confirm
[ $confirm == 'y' ] || [ $confirm == 'Y' ] && /usr/bin/rm -rf ~/.Recycle_bin/*
}

d.执行source命令生效

bash 复制代码
`source ~/.bashrc`

4.使用可回滚的回收站

你现在可以使用 de(删除) dr(撤销) dl(列出回收站) cleardall(清空回收站)命令了。

css 复制代码
删除一个文件夹,123下面的文件均被移到回收站中
de 123

删除一个文件321.txt
de 321.txt

撤销一个文件321.txt
dr 321.txt

撤销123文件夹
dr 123

列出回收站
dl

清空回收站
clearall
相关推荐
Archy_Wang_11 天前
LVS+KeepAlived+Nginx实现企业级业务高可靠部署的实战教程
运维·nginx·lvs
张文君1 天前
docker使用代理拉取镜像
运维·docker·容器
ltl1 天前
纠删码原理与存储效率
linux
ltl1 天前
MinIO 原理和架构:机制、AGPL 与上游 archived 风险
linux
陌路201 天前
Docker教程从入门到精通(0基础)
运维·docker·容器
林浩杨_1 天前
linux搜索命令(grep+sed)
linux·命令模式
W.W.H.1 天前
将驱动编译成模块并安装到rootfs
linux·物联网·wifi·rootfs·驱动
ltl1 天前
io_uring 在生产环境翻车实录:内核 bug、资源泄漏和你不知道的限制
linux
ltl1 天前
内存分配器擂台:jemalloc vs tcmalloc vs mimalloc vs glibc
linux
ltl1 天前
Zero Copy 的肮脏秘密:在什么时候反而更慢
linux