日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

linux服务器利用rsync快速删除大量小文件方法

發布時間:2023/11/21 综合教程 30 生活家
生活随笔 收集整理的這篇文章主要介紹了 linux服务器利用rsync快速删除大量小文件方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
當我們在linux系統中要刪除數萬或者數十萬甚至數百萬的文件時使用rm -rf *就不太好用,因為要等待很長一段時間。在這種情況之下我們可以使用linux系統命令rsync來巧妙的處理。rsync實際上用的是替換原理,處理數十萬個文件也是秒刪。 1.?rsync安裝,有些系統默認安裝有該命令
ubuntu系統:sudo apt-get install rsync
fedora 系統:sudo yum install rsync
centos系統:?yum? -y? install? rsync

其他的可以源碼安裝,到下面的網站下載

http://rsync.samba.org

Rsync選項

-v      # verbose 詳細模式輸出
-q      # quiet 精簡輸出模式。
-c      # checksum 打開校驗開關,強制對文件傳輸進行校驗
-a      # archive 歸檔模式,以遞歸的方式傳輸文件,并保持所有文件屬性,(-a = -rlptgoD)
-r      # recursive 對子目錄以遞歸模式處理
-R      # relative 保留相對路徑信息
-b      # backup 創建備份,也就是對于目的已經存在有同樣的文件名時,將老的文件重新命名為~filename。可以使用--suffix選項來指定不>同的備份文件前綴
--backup-dir    # 將備份文件(如~filename)存放在在目錄下
-suffix=SUFFIX  # 定義備份文件前綴
-u      # update 僅進行更新,也就是跳過所有已經存在于DST(目標主機),并且文件時間晚于要備份的文件,不覆蓋更新的文件
-l      # links 保留軟鏈接
-L      # copy-links 想對待常規文件一樣處理軟鏈接
--copy-unsafe-links     # 僅僅拷貝指向SRC(源主機)路徑目錄樹以外的鏈結
--safe-links    # 忽略指向SRC(源主機)路徑目錄樹以外的鏈結
-H      # hard-links 保留硬鏈結
-p      # perms 保留文件權限
-t      # times 保持文件時間信息
-g      # group 保持文件屬組信息
-o      # owner 保持文件屬主信息
-D      # devices 保持設備文件信息,表示支持b,c,s,p類型的文件
-A      # 保留acl(訪問控制權限)權限
-S      # sparse 對稀疏文件進行特殊處理以節省DST(目標主機)的空間
-n      # dry-run 現實哪些文件將被傳輸。
-w      # whole-file 拷貝文件,不進行增量檢測
-x      # one-file-system 不要跨越文件系統邊界
-B      # block-size=SIZE 檢驗算法使用的塊尺寸,默認是700字節
-e      # rsh=command 指定使用rsh、ssh方式進行數據同步
--rsync-path=PATH       # 指定遠程服務器上的rsync命令所在路徑信息
-C      # cvs-exclude 使用和CVS一樣的方法自動忽略文件,用來排除那些不希望傳輸的文件
--existing      # 僅僅更新那些已經存在于DST(目標主機)的文件,而不備份那些新創建的文件
--delete        # 刪除那些DST(目標主機)中SRC(源主機)沒有的文件
--delete-excluded       # 同樣刪除接收端那些被該選項指定排除的文件
--delete-after  # 傳輸結束以后再刪除
--ignore-errors # 及時出現IO錯誤也進行刪除
--max-delete=NUM        # 最多刪除NUM個文件
--partial       # 保留那些因故沒有完全傳輸的文件,以是加快隨后的再次傳輸
--force         # 強制刪除目錄,即使不為空
--numeric-ids   # 不將數字的用戶和組id匹配為用戶名和組名
--timeout=time ip       # 超時時間,單位為秒
-I      # ignore-times 不跳過那些有同樣的時間和長度的文件
--size-only     # 當決定是否要備份文件時,僅僅察看文件大小而不考慮文件時間
--modify-window=NUM     # 決定文件是否時間相同時使用的時間戳窗口,默認為0
-T      # temp-dir=DIR 在DIR中創建臨時文件
--compare-dest=DIR      # 同樣比較DIR中的文件來決定是否需要備份
-P      # 等同于 --partial
--progress      # 顯示備份過程
-z      # compress 對備份的文件在傳輸時進行壓縮處理
--exclude       # 指定不傳輸的文件
--exclude=PATTERN       # 指定排除不需要傳輸的文件模式
--include=PATTERN       # 指定不排除而需要傳輸的文件模式
--exclude-from=FILE     # 排除FILE中指定模式的文件
--include-from=FILE     # 不排除FILE指定模式匹配的文件
--version       # 打印版本信息
--address       # 綁定到特定的地址
--config=FILE   # 指定其他的配置文件,不使用默認的rsyncd.conf文件
--port=PORT     # 指定其他的rsync服務端口
--blocking-io   # 對遠程shell使用阻塞IO
-stats          # 給出某些文件的傳輸狀態
--progress      # 在傳輸時現實傳輸過程
--log-format=formAT     # 指定日志文件格式
--password-file=FILE    # 從FILE中得到密碼
--bwlimit=KBPS  # 限制I/O帶寬,KBytes per second
-h      # help 顯示幫助信息

2. 啟動rsync服務

#  systemctl  restart  rsyncd.service             --重新啟動rsync服務
#  netstat  -ntlp  |  grep  rsync                     --查看監聽rsync服務的端口

3.使用以下命令刪除目標目錄

#先創建一個空目錄
mkdir /tmp/null

rsync --delete-before -d /tmp/null/ /目標目錄路徑Path/

# 使用 rsync的 --delete-before 參數刪除

# 這個過程是遞進的,刪除的文件速度會越來越快
# 也可以使用以下命令
rsync -a --delete /tmp/null/ /目標目錄路徑Path/

參考資料:

https://blog.51cto.com/13525470/2063052

http://www.cnblogs.com/linxiyue/p/3536925.html

https://blog.csdn.net/wzqzhq/article/details/70225284

總結

以上是生活随笔為你收集整理的linux服务器利用rsync快速删除大量小文件方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。