中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

防止rm的誤刪除解決辦法

發布時間:2020-06-28 23:38:23 來源:網絡 閱讀:1267 作者:雪的塵埃 欄目:安全技術

 對于rm這個命令相當的邪惡,若沒有備份那是相當難恢復的,但是現在貌似是有一個叫extundelete的工具可以恢復,但是需要卸載分區,若是刪除的根分區,那就不好做了!!但是現在有防止被rm誤刪的方法,方法如下:

     有一個recycle.zip包,其實里面就是recycle腳本和rm腳本兩個腳本,兩個腳本我稍微做了下修改,若機器比較多的話,可以搭建saltstack或者puppet工具,我們當時做的是和saltstack結合的,可以在master salt上將命令推送到salt client上,很方便的,前提需要在服務器上搭建salt mastersalt client,在搭建salt時需要搭建saltyum源,安裝此包epel-release-6-8.noarch.rpm ,即可yum install -y salt

 

     要想使用該recycle程序先手動執行以下兩個命令

mkdir ~/.recycle   ### 建立recycle目錄(這步在腳本中已添加)

alias rm='/usr/local/bin/rm'   ### /usr/local/rm改為附件中rm存放的路徑 (這個可以使用salt推送)

注:rm這個路徑必須是除/bin/rm/sbin/rm,因為它會優先調用的還是/bin/rm/sbin//rm命令,這樣就不生效了。

mv recycle.zip /usr/loca/bin

    cd /usr/local/bin

    unzip recycle.zip

    chmod +x recycle

    chmod +x rm)

 

附件中有rmrecycle兩個命令

1.rm刪除文件和文件夾,用法與自帶rm命令相似

2.recycle顯示回收站里面的內容:可以按名字排序,也可以按刪除時間排序。

            recycle -d可以進入整理回收站的模式: 用法舉例如下

           recycle -d -empty清空回收站

           recycle -d -t 3清空3天前的文件

           recycle -d -s 5清空超過5M的文件

           recycle -d -t 3 -s 5清空3天前且大小超過5M的文件

腳本中改的地方:

為了避免在計劃任務中避免交互,將提示yes or no的腳本刪除了,#行表示的是原有的,下面一行是自己更改的

recycle  : ###yesOrNo "empty the recycle " && $RM -rfv $RECYCLE_DIR/* && echo.ok recycle emptyed || return 0

                 $RM -rfv $RECYCLE_DIR/* && echo.ok recycle emptyed

rm1.判斷~/.recycle目錄是否存在:加在腳本中的:[ -d ~/.recycle ] || mkdir ~/.recycle

 

         2.加了一行溫馨提示去×××回

                        mv  -- "$1" "${RECYCLE_DIR}/${DATE}_${st}_${1}"  \

                        && echo.ok removed $t \`$1\`;

                        echo ------------------------------;

                        echo "如需要恢復請到~/.recycle目錄里找回。"

 在salt主服務器上執行,推送過程:

  cd /srv/salt/filesrm recycle存放目錄)

  salt '*' cp.get_file salt://files/rm /usr/local/bin/rm *代表salt下的所有client

  salt '*' cp.get_file salt://files/recycle /usr/local/bin/recycle

  salt '*' cmd.run 'chmod a+x /usr/local/bin/rm'

  salt '*' cmd.run 'chmod a+x /usr/local/bin/recycle'

  salt '*' cmd.run 'echo "alias rm='/usr/local/bin/rm'" >> /etc/bashrc'

  salt '*' cmd.run 'source /etc/bashrc'

在salt主服務器上添加計劃任務:

  crontab -e

 * 5 */15 * * /usr/bin/salt '*' cmd.run '/usr/local/bin/recycle -d -empty' &> /dev/null

* 1 */15 * * /usr/bin/salt '*' cmd.run '/bin/mv /home/dev/.recycle/* /root/.recycle/' &> /dev/null

* */1 * * * /usr/bin/salt '*' cmd.run '/usr/local/bin/recycle.sh' &> /dev/null

[root@redmine files]# cat recycle.sh

#!/bin/bash

size=`du /root/.recycle/ | awk '{print $1}'`

date=`date +%F`

if [ $size -gt 10485760 ]; then

        recycle -d -empty &> /dev/null

        echo "刪除日期:$date" >> /var/log/recycle.log

fi

 


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

庆元县| 报价| 沈丘县| 且末县| 峨边| 峡江县| 壤塘县| 张家港市| 常德市| 宣武区| 灵台县| 当阳市| 曲水县| 耿马| 衡山县| 武胜县| 南华县| 尉犁县| 台湾省| 霸州市| 东阳市| 鄂托克前旗| 盖州市| 岱山县| 肥西县| 峡江县| 阿克| 林周县| 固镇县| 博野县| 阿合奇县| 遂川县| 汪清县| 伽师县| 盐边县| 仙居县| 新疆| 乐亭县| 阳东县| 彰化县| 肇东市|