🐧 نحوه همگام سازی پرونده ها و دایرکتوری ها در لینوکس و ویندوز با استفاده از Zaloha.sh – Squad Security Security Squad

Zaloha.sh یک هماهنگ کننده فهرست است که کوچک و ساده است.

این در واقع یک اسکریپت BASH است.

این فقط شامل یک پرونده Zaloha.sh است ، که اندازه آن 125 KB است.

نیمی از این پرونده مستندات است ، نیمی دیگر کد برنامه است.

Zaloha.sh "از جعبه خارج کار می کند."

با این حال ، به عنوان skrpit پوسته ها ، به راحتی پیکربندی می شود تا راه حل های غیر استاندارد ممکن را ایجاد کند.

با استفاده از Zaloha ، ما ما به راحتی می توانیم پرونده ها و دایرکتوری ها را در لینوکس ، یونیکس و مایکروسافت ویندوز همگام سازی کنیم.

لطفا توجه داشته باشید که Zaloha.sh به اندازه راه حل های پشتیبان گیری رقیب نیست ، اما این راه حل های رقیب نیز بزرگتر ، پیچیده تر و شبیه جعبه سیاه هستند.

داخلی ، Zaloha.sh فقط از دستورات استاندارد یونیکس مانند یافتن ، مرتب سازی ، awk استفاده می کند.

Zaloha.sh در ابتدا در لینوکس ، یونیکس و ویندوز کار می کند (البته Cygwin لازم است).

نصب Zaloha.sh

نصب Zaloha بسیار مهم است. [19659003] کافیست پرونده Zaloha.sh را از مخزن GitHub بارگیری کرده و آن را به عنوان مثال / usr / local / bin /.►19659008 022 مخزن کلون Zaloha مخزن GitHub منتقل کنید. si و با استفاده از دستورات پرونده Zaloha.sh را به $ PATH منتقل کنید:

 $ git clone https://github.com/Fitus/Zaloha.sh.gitociation19659016†$ sudo mv Zaloha.sh/Zaloha.sh/ usr / local / bin / zaloha.sh 

سرانجام ، آن را عملی کنید:

 $ sudo chmod + x /usr/local/bin/zaloha.shociation19659019† روی ویندوز ، اسکریپت را در یک فهرست محلی مناسب قرار دهید. [19659020] تصمیم گرفتم آن را در فهرست C:  TOOLS قرار دهم. 

در ویندوز ، CygWin باید به عنوان یک مرحله اضافی نصب شود.

من قبلاً CygWin را روی لپ تاپ خود نصب کردم.

اگر هنوز CygWin را نصب نکرده اید ، رسمی را بررسی کنید.

همگام سازی پرونده ها و دایرکتوری ها در لینوکس با نرم افزار توسط Zaloha.sh

استفاده معمولی از Zaloha.sh به شرح زیر است.

 $ zaloha.sh --sourceDir =  --backupDir = 

بگذارید یک مثال ساده را به شما نشان دهم.

من می خواهم دو دایرکتوری ، یعنی test1 و test 2 ایجاد کنم.

 $ mkdir test1 test2 

من دو پرونده متنی به نام file1 و file2 در دایرکتوری test1 دارم.

 $ ls test1 /
file1 file2 

و فهرست test2 خالی است.

اکنون می خواهم هماهنگ سازی دایرکتوری های test1 و test2 با Zaloha:

 $ zaloha.sh --sourceDir = test1 / --backupDir = test2 / - colour 

برای ادامه ، y را فشار دهید.

نمونه خروجی:

 ANALYZING ./test1/ AND ./test2/
=============================================
تجزیه .............................................. انجام شده است.
پیدا کنید ./test2/.Zaloha_metadata/ -path ./test2/.Zaloha_metadata/999_mark_ex اجرed -printf '///  tL  t٪ y  t٪ s  t٪ Ts  t٪ F  t٪ D  t٪ i  t٪ n  t٪ u  t٪ g  t٪ m  t٪ P  t ///  t٪ l  t ///  n '
پیدا کنید ./test1/ -path ./test1/.Zaloha_metadata -prune -o -ipath './test1/$RECYCLE.BIN' -prune -o -path './test1/.Trash-ross19459025 024 * -prune -o -path ./test1/lost+found -prune -o -printf '///  tS  t٪ y  t٪ s  t٪ Ts  t٪ F  t٪ D  t٪ i  t٪ n  t٪ u  t٪ g  t٪ m  t٪ P  t ///  t٪ l  t ///  n '
پیدا کنید ./test2/ -path ./test2/.Zaloha_metadata -prune -o -ipath './test2/$RECYCLE.BIN' -prune -o -path './test2/.Trash- موفق19459025 024 * -prune -o -path ./test2/lost+found -prune -o -printf '///  tB  t٪ y  t٪ s  t٪ Ts  t٪ F  t٪ D  t٪ i  t٪ n  t٪ u  t٪ g  t٪ m  t٪ P  t ///  t٪ l  t ///  n '
تمیز کردن ............................................. انجام شده است.
بررسی ............................................. انجام شده است.
مرتب سازی (2) ....................................... انجام شده است.
پردازش اختلافات ...............................
Zaloha AWK: هشدار: آخرین اجرای Zaloha یافت نشد (اگر این اولین بار باشد خوب است)
انجام شده
مرتب سازی (3) ....................................... انجام شده است.
پردازش و تقسیم کردن Exec1 و Exec4 .... انجام شده است.
مرتب سازی (4) و انتخاب Exec2 ...................... انجام شده است.
تهیه shellscript برای Exec1 ...................... انجام شده است.
تهیه shellscript برای Exec2 ...................... انجام شده است.
تهیه shellscript برای Exec4 ...................... انجام شده است.
تهیه shellscript برای لمس پرونده 999 .............. انجام شده است.
تهیه پرونده های پوسته برای مورد بازگردانی ........... انجام شده است.

کپی برداری شده است ./test2/
=============================================
پرونده جدید
پرونده جدید

نسخه های ذکر شده در بالا را اجرا کنید ./test2/؟ [Y/y=Yes, other=do nothing and abort]:  y 

cp --preserve = timestamps ./test1/file1 ./test2/file1
cp --preserve = timestamps ./test1/file2 ./test2/file2

از آنجا حذف شود ./test2/
=============================================== 

همانطور که از موارد فوق مشاهده می شود خروجی ، Zaloha از دستورات استاندارد Unix find، awk، مرتب سازی و cp استفاده می کند.

بیایید بررسی کنیم که آیا پرونده ها همگام شده اند یا نه.

  $ ls test1 
file1 file2 
  $ ls test2 
file1 file2 

همانطور که می بینید ، اسکریپت کار می کند

همگام سازی با یک درایو USB

مراحل زیر روی یک رایانه ویندوز 10 آزمایش شد ، اما این روش برای همه سیستم عامل ها یکسان است.

تمام پرونده های کار من در لپ تاپ در ساختار دایرکتوری متمرکز شده اند. در C: WORK_DATA.

در حال حاضر چندین هزار پرونده در انواع مختلف دارد.

من به طور مرتب از این فهرست در یک درایو USB (نسبتاً قدیمی) 2 گیگابایت تهیه می کنم.

وقتی وصل می کنم درایو فلش USB به لپ تاپ ، به عنوان درایو G.

Katal نسخه پشتیبان از درایو فلش USB G: WORK_BACKUP است.

بنابراین اکنون تست واقعی این است:

من اخیراً با یک مشتری آشنا شدم و ورد Word civ_Notes_0109.docx را از آن ایجاد کردم.

این جمله را هم تغییر دادم. [برایاینسرویسگیرنده،کهیکصفحهگستردهارائهدهنده_01xlsxاکسلاست

بنابراین ، انتظار می رود که Zaloha.sh از این دو پرونده نسخه پشتیبان تهیه کند و بقیه پرونده ها را بدون تغییر باقی بگذارد.
بیایید Zaloha.sh را اجرا کنیم تا ببینیم. نتیجه:

 $ /c/TOOLS/Zaloha.sh --sourceDir = "/ c / WORK_DATA" --backupDir = "/ cygdrive / g / WORK_BACKUP" - colour 

خروجی مثال:

بدیهی است که Zaloha.sh یونیکس را در هر دو فهرست C: WORK_DATA (در CygWin / c / WORK_DAT) و G: WORK_BACKUP (در CygWin / cygdrive / g / WORK_BACKUP) اجرا می کند ، سپس چندین مرحله پردازش را انجام می دهد و سرانجام ، [19659058] وی نماینده آنچه می خواهد انجام دهد ، درخواست تأیید است.

پرونده جلسه_Notes_0109.docx جدید (سیاه) نشان داده شده است ، و پرونده offers_01.xlsx به روز رسانی (قرمز) است.

رنگ قرمز برچسب UPDATE به کاربر هشدار می دهد. که این عمل به توجه بیشتری نیاز دارد ، زیرا داده های قدیمی موجود در فهرست پشتیبان رونویسی می شوند.

پس از تأیید انجام sheniya «Y» Zaloha.sh نمایندگی عملیات.

اگر ما در حال حاضر از روی کنجکاوی دوباره دستور بالا را اجرا کنید، ما که مراحل تجزیه و تحلیل انجام Zaloha.sh را ببینید، و پس از آن هیچ کاری انجام نمی شود، زیرا کاتالوگ در حال حاضر هماهنگ شده است.