اگر اهل دانلود از اینترنت باشید، اغلب ممکن است متوجه شده باشید که یک فایل را با پسوندهای mp3، pdf،epub (و انواع دیگر پسوندهای فایل) را چند مرتبه دانلود کرده و آنها را در دایرکتوریهای مختلفی کپی کرده باشید. اگر با نحوه یافتن و حذف فایلهای تکراری در لینوکس آشنا نباشید، سازماندهی دایرکتوری خانه یا کل سیستم شما میتواند به شدت سخت شود. زیرا با زیاد شدن فایلهای تکراری، فضای ذخیرهسازی سیستم شما با انواع فایلها و موارد غیر قابل استفاده، کاهش مییابد. ( خرید هاست لینوکس )
در این مطلب، شما نحوه یافتن و حذف فایلهای تکراری در لینوکس را با استفاده از ابزارهای خط فرمان و ابزارهایی با رابط کاربری گرافیکی خواهید آموخت. ( دانلود لینوکس اوبونتو ) ابزارهایی که در این مقاله به معرفی آنها پرداختهایم، عبارتند از:
- rdfind
- fdupes
- fslint
قبل از این که به نحوه یافتن و حذف فایلهای تکراری در لینوکس با استفاده از ابزارهای بالا بپردازیم، لازم به ذکر است که همیشه مراقب آنچه که از سیستم خود حذف میکنید باشید؛ زیرا ممکن است به طور ناخواسته باعث از دست دادن اطلاعات خود شوید. اگر از یک ابزار جدید استفاده میکنید، ابتدا آن را در یک دایرکتوری که فایل مهمی در آن ندارید، تست کنید. ( بازیابی اطلاعات حذف شده در لینوکس )
بیشتر بدانید
نحوه یافتن و حذف فایلهای تکراری در لینوکس با استفاده از دستور rdfind
rdfind فایل های تکراری را در لینوکس پیدا می کند. از این ابزار رایگان برای یافتن و حذف فایلهای تکراری در لینوکس، در سراسر یا داخل چندین دایرکتوری استفاده میشود و با استفاده از checksum فایلهای تکراری نه تنها بر اساس نام آنها، بلکه بر اساس اطلاعات فایل نیز پیدا میشوند.
rdfind از یک الگوریتم برای طبقهبندی فایلها استفاده میکند و تشخیص میدهد که کدام یک از فایلها، فایل اصلی است و بقیه را به صورت تکراری در نظر میگیرد. قوانین طبقهبندی rdfind عبارتند از:
- اگر فایل A در هنگام اسکن آرگومان ورودی، زودتر از فایل B پیدا شده باشد، A فایل اصلی در نظر گرفته میشود.
- اگر A در عمق کمتر از B یافت شود، A فایل اصلی در نظر گرفته میشود.
- اگر A زودتر از B پیدا شود، A فایل اصلی در نظر گرفته میشود.
اخرین ویژگی بالا برای زمانیست که هر دو فایل در یک دایرکتوری یافت شوند.
برای نصب rdfind در لینوکس، میتوانید از دستورات زیر با توجه به توزیع لینوکس خود استفاده کنید:
$ sudo apt install rdfind [On Debian, Ubuntu and Mint]
$ sudo yum install rdfind [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
$ sudo emerge -a sys-apps/rdfind [On Gentoo Linux]
$ sudo apk add rdfind [On Alpine Linux]
$ sudo pacman -S rdfind [On Arch Linux]
$ sudo zypper install rdfind [On OpenSUSE]
$ sudo dnf install rdfind [On Fedora 22+]
بیشتر بدانید
برای اجرای rdfind در یک دایرکتوری باید rdfind و دایرکتوری موردنظر خود را تایپ کنید. به عنوان مثال:
rdfind /home/user
همانطور که در تصویر بالا مشاهده میکنید، rdfind نتایج را در یک فایل به نام results.txt ، در همان دایرکتوری که برنامه را اجرا کردهاید ذخیره می کند. فایل حاوی تمام فایل های تکراری است که rdfind پیدا کرده است. در صورت نیاز میتوانید فایل را بررسی کرده و فایلهای تکراری را به صورت دستی حذف کنید.
از دستور rdfind میتوانید به شکل دیگری نیز استفاده کنید. دستور rdfind با استفاده از گزینه dryrun- ، یک لیست از فایلهای تکراری را بدون نیاز به هیچگونه اقدامی به شما ارائه میدهد:
rdfind -dryrun true /home/user
با استفاده از دستور زیر، هنگامی که فایلهای تکراری را پیدا کردید میتوانید آن ها را با hardlinks جایگزین کنید.
rdfind -makehardlinks true /home/user
و اگر می خواهید فایلهای تکراری را حذف کنید میتوانید دستور زیر را اجرا کنید.
rdfind -deleteduplicates true /home/user
برای بررسی گزینههای کاربردی دیگر از rdfind میتوانید از دستور زیر استفاده کنید:
man rdfind
یافتن و حذف فایلهای تکراری در لینوکس با استفاده از دستور fdupes
fdupes ابزار دیگری است که این امکان را برای شما فراهم میکند تا فایلهای تکراری را در سیستم خود شناسایی کنید. fdupes با جستجوی بازگشتی، مقایسه حجم فایلها و شناسایی محتوا، فایلهای تکراری در دایرکتوریها را شناسایی میکند. از روش های زیر برای تعیین فایل های تکراری استفاده می کند:
- مقایسه امضای جزئی md5sum
- مقایسه امضای کامل md5sum
- مقایسه بایت به بایت (byte-by-byte)
fdupes نیز درست مانند rdfind گزینههای مشابهی دارد:
- جستجوی بازگشتی
- نادیده گرفتن فایلهای خالی
- نمایش حجم فایلهای تکراری
- حذف بلافاصله فایلهای تکراری
- فایل هایی که بوجود آورنده آنها متفاوت است را نیز حذف میکند
بدون دیدگاه