مرکز آموزش میهن وب هاست

مرکز آموزش میهن وب هاست

کپی فایل ها و پوشه ها در لینوکس با حفظ کامل دسترسی ها و ساختار

پرینت این مقاله پرینت این مقاله

در سیستم عامل لینوکس، گاهی لازم است فایل ها یا پوشه ها را به مکان دیگری کپی کنید به طوری که تمامی ویژگی های آن ها مانند مجوزها (permissions)، مالکیت (ownership)، زمان های ویرایش، دسترسی (timestamps) و ساختار پوشه ها دقیقا حفظ شوند.
در چنین حالتی، از آپشن a- در دستور cp استفاده می شود.

فرمت دستور:

cp -a source destination

آپشن a- کوتاه شده عبارت archive می باشد. این آپشن ترکیبی از چند درخواست پرکاربرد دیگر است و در واقع معادل دستور زیر می باشد:

cp -dR --preserve=all source destination

کاربرد هر یک از آپشن ها به شرح ذیل است:

R-: تمام فایل ها و زیر پوشه ها را به صورت بازگشتی کپی می کند.

d-:  این آپشن باعث میشود symlink ها به همان شکل کپی شوند. در واقع صرفا لینک را کپی می کند، نه فایل مقصدی که لینک به آن اشاره دارد.

preserve=all--: تمامی ویژگی های فایل از جمله زمان و پرمیشن ها را حفظ می کند.

مثال: فرض کنید می خواهید پوشه var/www/html/ را با حفظ تمام پرمیشن ها، مالکیت ها و ساختار به backup/html/ منتقل کنید. جهت انجام عملیات مربوطه، میتوانید از دستور زیر استفاده نمایید:

cp -a /var/www/html /backup/

نتیجه:

تمامی فایل ها و زیر پوشه ها به همان شکل منتقل می شوند.

پرمیشن ها (chmod) و مالکیت ها (chown) دقیقا مشابه نسخه اصلی باقی می مانند.

زمان آخرین تغییرات (timestamps) نیز حفظ می شود.

5/5 از 1 رای