【打工日常】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
相关推荐
古译汉书11 分钟前
【IoT死磕系列】Day 6:工业控制底层大动脉—CAN总线
linux·网络·arm开发·单片机·物联网·tcp/ip
戴西软件14 分钟前
PreSys在爆炸与多介质流固耦合中的建模方法:从ALE到SPH的工程实践
linux·python·程序人生·cae
果壳~17 分钟前
Docker镜像离线迁移:从下载到本地部署完整实战指南
运维·docker·容器
feng68_18 分钟前
Web服务基础理论
linux·运维·服务器·web服务
打码人的日常分享18 分钟前
双碳智慧园区建设方案(PPT)
大数据·运维·网络·云计算·制造
许愿OvO30 分钟前
Tomcat部署与Nginx整合实战
运维·nginx·tomcat
柳鲲鹏41 分钟前
LINUX下载编译libosmscout
linux·运维·服务器
czxyvX1 小时前
018-Linux-Socket编程-UDP
linux·udp
十五年专注C++开发1 小时前
tiny-process-library:一个用 C++ 编写的轻量级、跨平台(支持 Windows、Linux、macOS)的进程管理库
linux·c++·windows·进程管理
学不完的1 小时前
Nginx
linux·运维·nginx·运维开发