最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Linux自定義防誤刪腳本的思路與測(cè)試

 更新時(shí)間:2021年09月02日 15:03:15   作者:kaliarch  
相信很多朋友都遇到過(guò)在linux下誤刪除文件的時(shí)候,此刻的心中仿佛有無(wú)數(shù)的羊駝在奔騰,下面這篇文章主要給大家介紹了關(guān)于Linux自定義防誤刪腳本的思路與測(cè)試的相關(guān)資料,需要的朋友可以參考下

一、背景

俗話說(shuō)的真好,常在河邊走,怎能不濕鞋,本想刪除服務(wù)器上臨時(shí)的系統(tǒng)掃描文件如下圖:

由于是在root的家目錄,本想這/tmp/下有很多系統(tǒng)掃描文件,系統(tǒng)性的tab了一下,由于是自己的監(jiān)控測(cè)試服務(wù)器也沒(méi)多想,tab了一下應(yīng)該是有多個(gè)文件,之后直接跟*然后刪除全部掃描文件,但發(fā)現(xiàn)回車的一瞬間,發(fā)現(xiàn)/tmp只有一個(gè)掃描文件,瞬間頭皮發(fā)麻,雖然只是自己的測(cè)試服務(wù)器,但下面也有很多腳本和數(shù)據(jù)文件,心里又氣又恨。查看了下測(cè)試服務(wù)器只有一個(gè)根也沒(méi)其他磁盤,此時(shí)ext3grep/extundelete這類工具就沒(méi)辦法了,想想也是有其他辦法,但比較麻煩,算了就當(dāng)買個(gè)教訓(xùn)吧,里面寫個(gè)自定義rm命令腳本,來(lái)避免此類事情的發(fā)生。

二、思路

由于是過(guò)度自信,操作執(zhí)行rm -rf手速感人,也沒(méi)多看,因此自定義rm命令即可

  • 通過(guò)alias rm來(lái)移動(dòng)文件到一個(gè)回收站目錄
  • 定期的在系統(tǒng)磁盤允許可控的使用率情況下來(lái)對(duì)文件進(jìn)行刪除

因此寫了一下腳本來(lái)實(shí)現(xiàn),與其說(shuō)放勿刪,不如說(shuō)是延遲刪除更為確切

git地址

#!/bin/bash
# auth:kaliarch
# function:自定義rm命令,每天晚上定時(shí)清理

# 定義rm刪除命令替換腳本
CMD_SCRIPTS=$HOME/.rm_scripts.sh
# 定義回收站目錄
TRASH_DIR=$HOME/.TRASH_DIR
CRON_FILE=/var/spool/cron/root
BASHRC=$HOME/.bashrc

[ ! -d ${TRASH_DIR} ] && mkdir -p ${TRASH_DIR}

cat > $CMD_SCRIPTS <> $CRON_FILE
echo "刪除目錄:$TRASH_DIR"
echo "刪除腳本:$CMD_SCRIPTS"
echo "請(qǐng)執(zhí)行:source $BASHRC 來(lái)加載文件或退出當(dāng)前shell重新登錄"

三、測(cè)試

運(yùn)行腳本替換rm命令

之后推出重新登錄,或按提示source文件加載生效

腳本生成文件

可以看到在腳本運(yùn)行用戶的家目錄,會(huì)生成回收站目錄和文件刪除腳本,會(huì)創(chuàng)建定時(shí)任務(wù)定時(shí)清理回收站,可以根據(jù)后期磁盤情況,自定義周期清理,

測(cè)試文件刪除

對(duì)文件或目錄進(jìn)行rm命令操作,可以發(fā)現(xiàn)是已經(jīng)成功移動(dòng)到回收站,定時(shí)任務(wù)會(huì)定時(shí)清理該目錄下的東西,延遲我們?nèi)粘m -rf 誤操作命令

四、擴(kuò)展

  • 作為工程師,日常操作一定還是要小心
  • 使用云服務(wù)器,做好定時(shí)快照策略
  • 如果為傳統(tǒng)服務(wù)器做好文件異地備份
  • 安裝使用數(shù)據(jù)恢復(fù)軟件工具ext3grep、extundelete等第一時(shí)間恢復(fù)誤操作數(shù)據(jù)。

附:Linux中利用chattr命令防止文件被刪除

我們都知道,Linux是個(gè)很強(qiáng)大的系統(tǒng)。每個(gè)文件都有一定的權(quán)限,有的用戶可以處理,有的只有root用戶可以刪除。但人總會(huì)有失誤的時(shí)候,比如我們?cè)趓oot用戶里用命令“sudo rm -fr ‘文件夾名' ”,這會(huì)使得我們很沮喪。有時(shí)候,我們把一個(gè)重要的文件夾放在主文件夾里,有時(shí)一不小心,我們就會(huì)把它誤刪了。

哈哈,Linux里有一個(gè)十分有用的命令“chattr”, 它會(huì)很好的解決我們的問(wèn)題。

1. 概述

linux中鍵入“man chattr”,其描述為“chattr changes the file attributes on a Linux file system.”從這我們很容易得出:在Linux文件系統(tǒng)里,chattr是可以改變文件的屬性。

2. 具體的語(yǔ)法格式

chattr [ -RVf ] [ -v version ] [ mode ] files...[1]

注:中括號(hào)是可選選項(xiàng),而 files 表明其為參數(shù),必須要有。如果您加上版本號(hào)(-v),您必須 鍵入版本號(hào)。如:chattr -v 1.8 files

3. 重要選項(xiàng)詳細(xì)解釋

接下來(lái)我們分析,一些對(duì)我們有用的選項(xiàng)

  • -R 對(duì)于本條命令遞歸更改文件的屬性。(即文件夾和文件甚至文件夾里的子文件和子文件夾都附上相同的屬性)
  • -V 輸出詳細(xì)的信息,如果有版本號(hào)的話,并輸出版本號(hào)
  • -v 設(shè)置文件的版本號(hào)

4. 文件屬性

1)mode 選項(xiàng)

就是[1]中,[mode] 選項(xiàng),而此選項(xiàng)格式為 “+文件屬性”或“-文件屬性”或“=文件屬性”

  • “+文件屬性” 就是添加該屬性
  • “-文件屬性”去掉此屬性
  • “=文件屬性” 此文件有且只有這屬性

2)文件屬性

  • a 文件是否只能添加,修改,而不能刪除
  • c 文件夾是否能添加壓縮文件
  • s 安全刪除
  • u 不可刪除

注:c,s,u不能在ext2,ext3,ext4文件系統(tǒng)

如果你的文件系統(tǒng)是其中之一,你就使用a屬性,可以避免你的文件被刪除。

如:sudo chattr -V +a file

解除鎖定:

sudo chattr -V -a file

五、總結(jié)

到此這篇關(guān)于Linux自定義防誤刪腳本的文章就介紹到這了,更多相關(guān)Linux自定義防誤刪腳本內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • shell 中數(shù)學(xué)計(jì)算總結(jié)

    shell 中數(shù)學(xué)計(jì)算總結(jié)

    shell中的賦值和操作默認(rèn)都是字符串處理,在此記下shell中進(jìn)行數(shù)學(xué)運(yùn)算的幾個(gè)特殊方法,以后用到的時(shí)候可以來(lái)看,呵呵
    2012-09-09
  • 詳解adb shell 常用命令

    詳解adb shell 常用命令

    這篇文章主要介紹了詳解adb shell 常用命令,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • linux?shell文件轉(zhuǎn)碼iconv命令的使用

    linux?shell文件轉(zhuǎn)碼iconv命令的使用

    本文主要介紹了linux?shell文件轉(zhuǎn)碼iconv命令的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • shell 使用指定的分割符來(lái)分割字符串的方法

    shell 使用指定的分割符來(lái)分割字符串的方法

    這篇文章主要介紹了shell 使用指定的分割符來(lái)分割字符串的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • 一鍵配置CentOS iptables防火墻的Shell腳本分享

    一鍵配置CentOS iptables防火墻的Shell腳本分享

    這篇文章主要介紹了一鍵配置CentOS iptables防火墻Shell腳本分享,可保存到一個(gè)腳本文件中,在新安裝的CentOS系統(tǒng)時(shí)一條命令搞定iptables配置,需要的朋友可以參考下
    2014-07-07
  • Shell使用Epoch進(jìn)行日期時(shí)間轉(zhuǎn)換和計(jì)算的幾個(gè)小函數(shù)

    Shell使用Epoch進(jìn)行日期時(shí)間轉(zhuǎn)換和計(jì)算的幾個(gè)小函數(shù)

    這篇文章主要介紹了當(dāng)你遇到一個(gè)date命令不給力的系統(tǒng)時(shí),可以試試這幾個(gè)小函數(shù),需要的朋友可以參考下
    2016-12-12
  • linux刪除大量文件的6種方法

    linux刪除大量文件的6種方法

    這篇文章主要介紹了linux刪除大量文件的6種方法,需要的朋友可以參考下
    2014-02-02
  • 5個(gè)實(shí)用的shell腳本面試題和答案

    5個(gè)實(shí)用的shell腳本面試題和答案

    這篇文章主要介紹了5個(gè)實(shí)用的shell腳本面試題和答案,給出的腳本堪稱編碼規(guī)范,麻雀雖小,異常處理,友好提示,一應(yīng)俱全,值得學(xué)習(xí),需要的朋友可以參考下
    2014-06-06
  • Linux vim編輯命令模式

    Linux vim編輯命令模式

    vi(vim)是上Linux非常常用的編輯器,很多Linux發(fā)行版都默認(rèn)安裝了vi(vim)。這篇文章給大家介紹了Linux vim編輯命令模式,非常不錯(cuò),感興趣的朋友參考下吧
    2016-11-11
  • 用shell腳本實(shí)現(xiàn)自動(dòng)切換內(nèi)網(wǎng)和外網(wǎng)實(shí)現(xiàn)高可用

    用shell腳本實(shí)現(xiàn)自動(dòng)切換內(nèi)網(wǎng)和外網(wǎng)實(shí)現(xiàn)高可用

    因?yàn)楣镜姆?wù)器這段時(shí)間內(nèi)網(wǎng)網(wǎng)卡老是出現(xiàn)問(wèn)題,然后就導(dǎo)致了網(wǎng)站的各種問(wèn)題,因?yàn)槲覀兊臄?shù)據(jù)庫(kù)鏈接,redis還有sphinx鏈接都是走的內(nèi)網(wǎng),,所以就寫了這個(gè)腳本,在線上也跑了一段時(shí)間了,,也沒(méi)出過(guò)什么問(wèn)題
    2013-06-06

最新評(píng)論

台北县| 东丰县| 乡宁县| 响水县| 全南县| 仁布县| 青铜峡市| 洪洞县| 昆明市| 响水县| 离岛区| 独山县| 六安市| 尚义县| 淮南市| 花垣县| 得荣县| 湘西| 宝山区| 荥阳市| 崇明县| 乐安县| 古蔺县| 喜德县| 大城县| 霍州市| 晋中市| 时尚| 南丰县| 辉县市| 德令哈市| 洞头县| 贵溪市| 凤阳县| 图们市| 安达市| 丰镇市| 鄂托克旗| 涿鹿县| 富民县| 炎陵县|