【打工日常】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
相关推荐
且从容.1 小时前
ubuntu安装flink
linux·ubuntu·flink
爱和冰阔落2 小时前
【Linux网络】TCP 服务器如何并发处理多个客户端?从 fork、僵尸进程到双重 fork
linux·运维·服务器·网络
程序员沉梦听雨2 小时前
WSL2的安装与使用
linux·wsl
微小的鱼3 小时前
Linux的渲染与显示系统链路
android·java·linux
lisanmengmeng3 小时前
alertmanger 标签 rules 打上分组标签
linux·运维·服务器
Android系统攻城狮4 小时前
Linux FFmpeg深度解析之av_write_frame调用流程与实战(三十三)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频
上火的金鱼妹4 小时前
k8s生产实际问题排查(网关,数据库读写等)
运维·服务器
孙克旭_4 小时前
k8s基础组件与创建资源
运维·docker·容器·kubernetes
孙克旭_4 小时前
云原生基础之Containerd容器运行时
运维·云原生
分布式存储与RustFS4 小时前
RustFS 自建对象存储实战目录:110 篇按场景分类(持续更新)
运维·云原生·开源·对象存储·分布式存储·s3·性能基准