【打工日常】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
相关推荐
qwy7152292581633 小时前
1-Docker Engine 安装前置环境配置
运维·docker·容器
菜菜艾5 小时前
基于llama.cpp部署私有大模型
linux·运维·服务器·人工智能·ai·云计算·ai编程
重生的黑客5 小时前
Linux开发工具:条件编译、动静态库与 make/makefile 入门
linux·运维·服务器
minji...5 小时前
Linux 线程同步与互斥(三) 生产者消费者模型,基于阻塞队列的生产者消费者模型的代码实现
linux·运维·服务器·开发语言·网络·c++·算法
.柒宇.5 小时前
nginx入门教程
运维·nginx
w6100104666 小时前
cka-2026-ConfigMap
java·linux·cka·configmap
cc_yy_zh6 小时前
Win10 家庭版找不到Device Guard; 无法处理 VMware Workstation与Device Guard不兼容问题
linux·vmware
航Hang*6 小时前
VMware vSphere 云平台运维与管理基础——第2章(扩展):VMware ESXi 5.5 安装、配置与运维
运维·服务器·github·系统安全·虚拟化
嵌入式吴彦祖6 小时前
Luckfox Pico Ultra W WIFI
linux·嵌入式硬件
SPC的存折6 小时前
MySQL 8组复制完全指南
linux·运维·服务器·数据库·mysql