| xfsrestore(8) | System Manager's Manual | xfsrestore(8) |
نام (NAME)
xfsrestore - ابزار بازیابی افزایشی سیستمفایل XFS
خلاصه دستور (SYNOPSIS)
xfsrestore -h xfsrestore [ options ] -f source [ -f source ... ] dest xfsrestore [ options ] - dest xfsrestore -I [ subopt=value ... ]
توضیحات (DESCRIPTION)
دستور xfsrestore سیستمهای فایل را از نسخههای پشتیبان (dump) ایجادشده توسط xfsdump(8) بازیابی میکند. دو حالت عملیاتی در دسترس است: ساده و تجمعی (cumulative).
حالت پیشفرض، حالت ساده است. دستور xfsrestore دایرکتوری مقصد مشخصشده، dest، را با فایلهای موجود در رسانه پشتیبان پر میکند.
گزینه -r حالت تجمعی را مشخص میکند. فراخوانیهای متوالی xfsrestore برای اعمال توالی زمانی مرتبشدهای از دامپهای دلتا بر روی یک دامپ پایه (سطح 0) استفاده میشوند. محتویات سیستم فایل در زمانی که هر دامپ ایجاد شده بود، بازسازی میشود. این میتواند شامل افزودن، حذف، تغییر نام، پیوند دادن و حذف پیوند فایلها و پوشهها باشد.
دامپ دلتا به عنوان یک دامپ افزایشی (گزینه -l در xfsdump با سطح > 0) یا یک دامپ ازسرگرفتهشده (گزینه -R در xfsdump) تعریف میشود. دلتاها باید به ترتیبی که ایجاد شدهاند اعمال شوند. هر دلتای اعمالشده باید با دلتای اعمالشده قبلی به عنوان پایه خود ایجاد شده باشد.
دستور xfsrestore اطلاعات وضعیت را در xfsrestorehousekeepingdir نگهداری میکند تا در صورت استفاده در حالت تجمعی، یا در صورت وقفه در بازیابی، فراخوانیهای بعدی را مطلع سازد. برای اطمینان از اینکه اطلاعات وضعیت قابل پردازش هستند، باید از یک نسخه سازگار از xfsrestore برای هر فراخوانی بعدی استفاده شود. علاوه بر این، هر فراخوانی باید روی سیستمی با همان ترتیب بایت (endianness) و اندازه صفحه (page size) اجرا شود.
گزینههای xfsrestore عبارتند از:
- -a housekeeping
- هر فراخوانی از xfsrestore یک دایرکتوری به نام xfsrestorehousekeepingdir ایجاد میکند. این دایرکتوری معمولاً مستقیماً زیر دایرکتوری dest ایجاد میشود. گزینه -a به کاربر امکان میدهد یک پوشه جایگزین، housekeeping، مشخص کند که در آن xfsrestore پوشه xfsrestorehousekeepingdir را ایجاد نماید. هنگام انجام بازیابی تجمعی (گزینه -r) یا ازسرگیری (گزینه -R) یک بازیابی، هر فراخوانی متوالی باید همان پوشه جایگزین را مشخص کند.
- -b blocksize
- اندازه بلوک را بر حسب بایت برای بازیابی مشخص میکند. برای سایر درایوها مانند DAT یا ۸ میلیمتری، همان اندازه بلوک استفادهشده در عملیات xfsdump باید برای بازیابی نوار مشخص شود. اندازه بلوک پیشفرض 1Mb است.
- -c progname
- استفاده از برنامه مشخصشده برای هشدار به کاربر در زمان نیاز به تعویض رسانه. برنامه هشدار معمولاً اسکریپتی برای ارسال ایمیل یا چشمک زدن یک پنجره برای جلب توجه کاربر است.
- -e
- جلوگیری از بازنویسی فایلهای موجود در دایرکتوری dest توسط xfsrestore.
- -f source [ -f source ... ]
- منبع دامپی را که باید بازیابی شود مشخص میکند. این میتواند مسیر یک دستگاه (مانند درایو نوار مغناطیسی)، یک فایل معمولی یا یک درایو نوار راه دور باشد (به rmt(8) مراجعه کنید). در صورتی که گزینه ورودی استاندارد (یک - تنها قبل از مشخصات dest) مشخص شده باشد، این گزینه باید حذف شود.
- -i
- انتخاب عملکرد تعاملی (interactive). پس از خواندن سلسلهمراتب دایرکتوری روی رسانه، یک گفتگوی تعاملی آغاز میشود. کاربر از مجموعه کوچکی از دستورات برای بررسی سلسلهمراتب دایرکتوری و انتخاب فایلها و زیردرختها برای استخراج استفاده میکند. دستورات موجود در زیر آمده است. در ابتدا هیچ چیزی انتخاب نشده است، مگر آن زیردرختهایی که با گزینههای خط فرمان -s مشخص شدهاند.
- ls [arg]
- فهرست کردن ورودیها در دایرکتوری جاری یا دایرکتوری مشخصشده، یا ورودی فایل غیردایرکتوری مشخصشده. هم شماره inode اصلی ورودی و هم نام آن نمایش داده میشود. به ورودیهایی که دایرکتوری هستند یک '/' اضافه میشود. ورودیهایی که برای استخراج انتخاب شدهاند با یک '*' پیشوند میگیرند.
- cd [arg]
- تغییر پوشه کاری جاری به آرگومان مشخصشده، یا به ریشه سیستم فایل اگر هیچ آرگومانی مشخص نشده باشد.
- pwd
- چاپ مسیر پوشه جاری، نسبت به ریشه سیستم فایل.
- add [arg]
- پوشه جاری یا فایل یا پوشه مشخصشده در پوشه جاری برای استخراج انتخاب میشود. اگر پوشهای مشخص شود، آن و تمام زیرمجموعههای آن انتخاب میشوند. ورودیهایی که برای استخراج انتخاب شدهاند، هنگامی که توسط ls فهرست میشوند، یک '*' در ابتدای آنها قرار میگیرد.
- delete [arg]
- لغو انتخاب دایرکتوری جاری یا فایل یا دایرکتوری مشخصشده در دایرکتوری جاری برای استخراج. اگر یک دایرکتوری مشخص شود، آن و تمامی زیرمجموعههای آن از انتخاب خارج میشوند. سریعترین راه برای استخراج اکثر فایلها از یک دایرکتوری این است که کل دایرکتوری را انتخاب کرده و سپس فایلهایی را که مورد نیاز نیستند لغو انتخاب کنید.
- extract
- پایان دادن به گفتگوی تعاملی و شروع بازیابی تمام زیردرختهای انتخابشده.
- quit
- دستور xfsrestore گفتگوی تعاملی را پایان داده و فوراً خارج میشود، حتی اگر فایلها یا زیردرختهایی برای استخراج انتخاب شده باشند.
- help
- فهرست خلاصهای از دستورات موجود.
- -m
- استفاده از پروتکل حداقل نوار مغناطیسی (minimal tape protocol). این گزینه را نمیتوان بدون مشخص کردن اندازه بلوک مورد استفاده به کار برد (به گزینه -b در بالا مراجعه کنید).
- -n file
- به xfsrestore اجازه میدهد فقط فایلهای جدیدتر از file را بازیابی کند. زمان تغییر file (یعنی همانطور که با دستور ls -l نمایش داده میشود) با زمان تغییر inode هر فایل در رسانه منبع (یعنی همانطور که با دستور ls -lc نمایش داده میشود) مقایسه میشود. یک فایل تنها در صورتی از رسانه بازیابی میشود که زمان تغییر inode آن بزرگتر یا مساوی با زمان تغییر file باشد.
- -o
- بازیابی مالک و گروه فایل و دایرکتوری حتی اگر کاربر root نباشد. هنگامی که با شناسه کاربری مؤثر root اجرا میشود، xfsrestore مالک و گروه هر فایل و دایرکتوری را بازیابی میکند. هنگام اجرا با هر شناسه کاربری مؤثر دیگری این کار را انجام نمیدهد، مگر اینکه این گزینه مشخص شده باشد.
- -p interval
- باعث میشود گزارشهای پیشرفت در فواصل زمانی interval ثانیهای چاپ شوند. مقدار فاصله تقریبی است؛ xfsrestore گزارشهای پیشرفت را برای جلوگیری از بار پردازشی بیمورد به تأخیر میاندازد.
- -q
- درایو نوار منبع، یک نوار QIC است. نوارهای QIC فقط از اندازه بلوک ۵۱۲ بایت استفاده میکنند که xfsrestore باید ملاحظات خاصی را برای آن در نظر بگیرد.
- -r
- انتخاب حالت عملیاتی تجمعی (cumulative). گزینههای -a و destination باید برای هر فراخوانی یکسان باشند.
- -s subtree
- زیردرختی را برای بازیابی مشخص میکند. هر تعداد از گزینههای -s مجاز است. بازیابی به اجتماع تمام زیردرختهای مشخصشده محدود میشود. هر زیردرخت به عنوان یک مسیر نسبت به مقصد بازیابی (dest) مشخص میشود. اگر یک پوشه مشخص شود، آن پوشه و تمام فایلهای درون آن بازیابی میشوند.
- -t
- محتویات دامپ را نمایش میدهد، اما هیچ فایل یا دایرکتوری را ایجاد یا تغییر نمیدهد. هنگام استفاده از این گزینه، ممکن است مطلوب باشد سطح جزئیات را روی silent تنظیم کنید.
- -x
- این گزینه ممکن است برای رفع مشکلی مفید باشد که فایلها به دلیل مشکل xfsdump (نسخههای v3.1.7 تا v3.1.9) در پوشه orphanage بازیابی میشوند. یک دامپ معمولی را نمیتوان با این گزینه بازیابی کرد. این گزینه فقط برای یک دامپ خراب کار میکند. اگر یک دامپ توسط xfsdump مشکلدار ایجاد شده باشد، باید قبل از بازیابی محتویات دامپ را با گزینه -t مشاهده کنید. سپس، اگر فایلی در دایرکتوری orphanage قرار گرفت، باید از این گزینه -x برای بازیابی دامپ استفاده کنید. در غیر این صورت میتوانید دامپ را بدون این گزینه بازیابی نمایید.
در حالت تجمعی، این گزینه فقط برای یک دامپ پایه (سطح 0) لازم است. برای دامپهای سطح 1 به بالا دیگر به این گزینه نیازی ندارید.
- -v verbosity
- -v subsys=verbosity[,subsys=verbosity,...]
- سطح جزئیات مورد استفاده برای پیامهای نمایش دادهشده در طول بازیابی را مشخص میکند. آرگومان verbosity میتواند به صورت رشته یا عدد صحیح ارسال شود. در صورت ارسال به عنوان رشته مقادیر زیر قابل استفاده است: silent, verbose, trace, debug, یا nitty. در صورت ارسال به صورت عدد صحیح، مقادیر بین 0 تا 5 قابل استفاده است. مقادیر 0 تا 4 با رشتههای ذکرشده مطابقت دارند. مقدار 5 میتواند برای تولید خروجی اشکالزدایی حتی دقیقتر استفاده شود.
شکل اول
این گزینه
ثبت گزارش
پیامها را
در تمام
زیرسیستمهای
بازیابی
فعال
میکند. شکل
دوم امکان
کنترل سطح
گزارش
پیامها را
بر اساس هر
زیرسیستم
فراهم
میسازد.
این دو شکل
را میتوان
ترکیب کرد
(مثال زیر را
ببینید).
آرگومان subsys
میتواند
یکی از
مقادیر زیر
را داشته
باشد: general, proc, drive,
media, inventory, و tree.
برای مثال،
برای
بازیابی
سیستم فایل
ریشه با
فعال بودن
ردیابی (trace)
برای تمام
زیرسیستمها:
# xfsrestore -v trace -f /dev/tape /
برای
فعالسازی
ردیابی سطح
debug برای
عملیات drive و media:
# xfsrestore -v drive=debug,media=debug -f /dev/tape /
برای
فعالسازی
ردیابی
برای تمام
زیرسیستمها
و ردیابی
سطح debug فقط
برای
عملیات drive:
# xfsrestore -v trace,drive=debug -f /dev/tape /
- -A
- ویژگیهای پیشرفته فایل (extended attributes) بازیابی نشوند. هنگام بازیابی سیستم فایلی که در محیط DMF مدیریت میشود، این گزینه نباید استفاده شود. DMF وضعیت مهاجرت فایل را در ویژگیهای پیشرفته مرتبط با هر فایل ذخیره میکند. اگر این ویژگیها هنگام بازیابی سیستم فایل حفظ نشوند، فایلهایی که در حالت مهاجرتکرده بودهاند توسط DMF قابل فراخوانی مجدد نخواهند بود. توجه داشته باشید که ذخیره ویژگیهای پیشرفته در پشتیبان نیز اختیاری است.
- -B
- تغییر مالکیت و مجوزهای دایرکتوری مقصد برای مطابقت با ریشه دامپ.
- -D
- بازیابی تنظیمات رویدادهای DMAPI (رابط برنامهنویسی کاربردی مدیریت داده). اگر سیستم فایل بازیابیشده قرار است در همان محیط DMF دامپ اولیه مدیریت شود، استفاده از گزینه -D ضروری است. در غیر این صورت معمولاً بازیابی این تنظیمات مطلوب نیست.
- -E
- جلوگیری از بازنویسی نسخههای جدیدتر فایلها توسط xfsrestore. زمان تغییر inode فایل موجود روی رسانه با زمان تغییر inode فایل متناظر در دایرکتوری dest مقایسه میشود. فایل تنها در صورتی بازیابی میشود که نسخه روی رسانه جدیدتر از نسخه موجود در دایرکتوری dest باشد. زمان تغییر inode یک فایل را میتوان با دستور ls -lc مشاهده کرد.
- -F
- مهار اعلانهای تعاملی با کاربر. این گزینه مانع از درخواست xfsrestore از کاربر برای تأیید دامپ انتخابشده به عنوان مقصد بازیابی و همچنین اعلان تعویض رسانه میشود.
- -I
- باعث نمایش موجودی (inventory) برنامه xfsdump میشود (هیچ بازیابی انجام نمیشود). هر بار که xfsdump استفاده میشود، موجودی آنلاینی در مسیر /var/lib/xfsdump/inventory بهروزرسانی میشود. این برای تعیین پایه دامپهای افزایشی استفاده میشود. همچنین برای شناسایی دستی یک نشست دامپ جهت بازیابی مفید است (گزینههای -L و -S را ببینید). زیرگزینهها برای فیلتر کردن نمایش موجودی بعداً شرح داده شدهاند.
- -J
- مهار بهروزرسانی موجودی در هنگام مواجهه با موجودی نشست موجود روی رسانه در حین بازیابی. دستور xfsrestore هنگام مواجهه با موجودی نشست روی رسانه، موجودی آنلاین را بهطور فرصتطلبانه بهروزرسانی میکند، اما تنها در صورتی که با شناسه کاربری مؤثر root اجرا شود و این گزینه داده نشده باشد.
- -K
- اجبار xfsrestore به استفاده از شمارههای نسل فرمت دامپ ۲. به طور معمول نیاز به این مورد به طور خودکار تعیین میشود، اما این گزینه در اولین فراخوانی xfsrestore در موارد نادری که بازیابی تجمعی با یک دامپ فرمت ۳ (یا جدیدتر) آغاز شده و با یک دامپ فرمت ۲ دنبال شود، مورد نیاز است.
- -L session_label
- برچسب نشست دامپ را برای بازیابی مشخص میکند. رسانه منبع برای این برچسب جستجو میشود. این یک رشته دلخواه تا ۲۵۵ کاراکتر است. برچسب نشست دامپ مورد نظر را میتوان از صفحه نمایش موجودی تولیدشده توسط گزینه -I کپی کرد.
- -O options_file
- درج گزینههای موجود در options_file در ابتدای خط فرمان. گزینهها دقیقاً همانطور که در خط فرمان تایپ میشوند مشخص میگردند. علاوه بر این، کاراکترهای خط جدید (\n) میتوانند به عنوان فاصله خالی استفاده شوند. گزینهها قبل از تمام گزینههایی که واقعاً در خط فرمان داده شدهاند، دقیقاً پس از نام دستور قرار میگیرند. فقط یک گزینه -O میتواند استفاده شود. استفاده بازگشتی نادیده گرفته میشود. دایرکتوری مقصد را نمیتوان در options_file مشخص کرد.
- -Q
- تکمیل اجباری یک نشست بازیابی متوقفشده. این گزینه برای دور زدن یک سناریوی آسیبشناختی خاص لازم است. هنگام بازیابی یک نشست دامپ که به دلیل شرایط EOM (پایان رسانه) متوقف شده و هیچ موجودی آنلاین نشستی در دسترس نیست، xfsrestore نمیتواند بداند چه زمانی بازیابی آن نشست کامل شده است. کاربر مجبور میشود نشست بازیابی را متوقف کند. در این حالت، اگر کاربر بخواهد متعاقباً یک دامپ ازسرگرفتهشده را اعمال کند (با استفاده از گزینه -r)، xfsrestore از انجام این کار خودداری میکند. کاربر باید با استفاده از این گزینه هنگام اعمال دامپ ازسرگرفتهشده، به xfsrestore بگوید که بازیابی پایه را کامل تلقی کند.
- -R
- ازسرگیری یک بازیابی که قبلاً متوقف شده است. دستور xfsrestore میتواند در هر زمانی با فشار دادن نویسه وقفه ترمینال قطع شود (به stty(1) مراجعه کنید). از این گزینه برای ازسرگیری بازیابی استفاده کنید. گزینههای -a و destination باید یکسان باشند.
- -S session_id
- شناسه UUID نشست دامپی را که باید بازیابی شود مشخص میکند. رسانه منبع برای این UUID جستجو میشود. شناسه UUID نشست دامپ مورد نظر را میتوان از نمایش موجودی حاصل از گزینه -I کپی کرد.
- -T
- مهار انقضای زمان (timeout) گفتگوهای تعاملی. دستور xfsrestore برای تعویض رسانه به کاربر پیام میدهد. این گفتگو معمولاً در صورت عدم ارائه پاسخ منقضی میشود. این گزینه از انقضای زمان جلوگیری میکند.
- -X subtree
- زیردرختی را برای مستثنی کردن مشخص میکند. این برعکس گزینه -s است. هر تعداد از گزینههای -X مجاز است. هر زیردرخت به عنوان یک مسیر نسبت به مقصد بازیابی (dest) مشخص میشود. اگر یک پوشه مشخص شود، آن پوشه و تمام فایلهای درون آن مستثنی میشوند.
- -Y io_ring_length
- طول حلقه بافر ورودی/خروجی را مشخص میکند. دستور xfsrestore از حلقهای از بافرهای ورودی برای دستیابی به حداکثر توان عملیاتی هنگام بازیابی از درایوهای نوار استفاده میکند. طول پیشفرض حلقه ۳ است. با این حال، این ویژگی در حال حاضر هنوز روی لینوکس فعال نشده است، که این گزینه را بیاثر میکند.
- -
- یک - تنها باعث میشود ورودی استاندارد به عنوان منبع دامپ جهت بازیابی خوانده شود. ورودی استاندارد میتواند یک لوله (pipe) از ابزار دیگری (مانند xfsdump(8)) یا یک فایل ریدایرکتشده باشد. این گزینه همراه با گزینه -f قابل استفاده نیست. نویسه - باید پس از تمام گزینههای دیگر و قبل از مشخصات dest قرار گیرد.
سیستم فایل دامپشده در دایرکتوری dest بازیابی میشود. هیچ مقدار پیشفرضی وجود ندارد؛ dest باید مشخص شود.
نکات (NOTES)
بازیابی تجمعی (Cumulative Restoration)
یک دامپ پایه (سطح 0) و مجموعهای مرتب از دامپهای دلتا را میتوان به صورت متوالی بازیابی کرد، هر کدام روی قبلی، تا محتویات سیستم فایل اصلی در زمان تولید آخرین دلتا بازسازی شود. کاربر xfsrestore را یک بار برای هر دامپ فراخوانی میکند. گزینه -r باید مشخص شود. دایرکتوری dest باید برای تمام فراخوانیها یکسان باشد. هر فراخوانی دایرکتوری به نام xfsrestorehousekeeping در دایرکتوری dest به جا میگذارد (البته گزینه -a در بالا را ببینید). این پوشه شامل اطلاعات وضعیتی است که باید بین فراخوانیها منتقل شود. کاربر باید پس از اعمال آخرین دلتا این دایرکتوری را حذف کند.
دستور xfsrestore همچنین دایرکتوری به نام orphanage در دایرکتوری dest ایجاد میکند. دستور xfsrestore این دایرکتوری را پس از تکمیل یک بازیابی ساده حذف میکند. با این حال، اگر orphanage خالی نباشد، حذف نمیشود. این میتواند در صورتی رخ دهد که فایلهای موجود در رسانه دامپ توسط هیچیک از دایرکتوریهای بازیابیشده ارجاع داده نشوند. پوشه orphanage برای هر یک از این فایلها یک ورودی دارد. نام ورودی، شماره inode اصلی فایل، یک "."، و شمارش نسل فایل به پیمانه ۴۰۹۶ است (تنها از ۱۲ بیت پایینی شمارش نسل استفاده میشود).
دستور xfsrestore دایرکتوری orphanage را پس از بازیابیهای تجمعی حذف نمیکند. مانند دایرکتوری xfsrestorehousekeeping، کاربر باید پس از اعمال تمام دامپهای دلتا آن را حذف کند.
مدیریت رسانه (Media Management)
یک دامپ شامل یک یا چند فایل رسانهای است که در یک یا چند شیء رسانهای قرار دارند. یک فایل رسانهای شامل تمام یا بخشی از دامپ سیستم فایل است. سیستمهای فایل بزرگ به چندین فایل رسانهای تقسیم میشوند تا تأثیر خرابیهای موضعی رسانه به حداقل برسد و محدودیتهای مرزی شیء رسانه (پایان رسانه) رعایت شود.
یک شیء رسانه هر رسانه ذخیرهسازی است: کارتریج نوار، دستگاه نوار راه دور (به rmt(8) مراجعه کنید)، یک فایل معمولی، یا ورودی استاندارد (در حال حاضر درایوهای رسانه جداشدنی دیگر پشتیبانی نمیشوند). کارتریجهای نوار میتوانند شامل چندین فایل رسانهای باشند که معمولاً با نشانههای فایل (file marks در اصطلاح نوار) از هم جدا میشوند. اگر یک دامپ چندین شیء رسانهای را در بر بگیرد، بازیابی باید با شیء رسانهای آغاز شود که حاوی اولین فایل رسانهای دامپشده است. در صورت نیاز به شیء رسانهای بعدی، به کاربر اعلان داده میشود.
اشیاء رسانهای میتوانند شامل بیش از یک دامپ باشند. کاربر میتواند دامپ مورد نظر را با مشخص کردن برچسب دامپ (گزینه -L) یا با مشخص کردن UUID دامپ (گزینه -S) انتخاب کند. اگر هیچکدام مشخص نشوند، xfsrestore کل شیء رسانه را پویش کرده و با مشاهده هر نشست دامپ، به کاربر اعلان میدهد.
نمایش موجودی (گزینه -I) برای شناسایی اشیاء رسانهای مورد نیاز مفید است. همچنین برای شناسایی نشست دامپ مفید است. میتوان UUID نشست را از نمایش موجودی به آرگومان گزینه -S کپی کرد تا نشست دامپ برای بازیابی بدون ابهام مشخص شود.
دامپهای قرار داده شده در فایلهای معمولی یا خروجی استاندارد، چند شیء رسانهای را در بر نمیگیرند و شامل چندین دامپ نیز نمیشوند.
موجودی (Inventory)
هر نشست دامپ یک پایگاهداده موجودی را در /var/lib/xfsdump/inventory بهروزرسانی میکند. این پایگاه داده را میتوان با فراخوانی xfsrestore با گزینه -I نمایش داد. نمایش از تورفتگی برای ارائه سلسلهمراتبی موجودی استفاده میکند. سطح اول، سیستم فایل است. سطح دوم، نشست است. سطح سوم، جریان رسانه است (در حال حاضر تنها یک جریان پشتیبانی میشود). سطح چهارم فایلهای رسانهای را که جریان را تشکیل میدهند به صورت متوالی فهرست میکند.
زیرگزینههای زیر برای فیلتر کردن نمایش موجود است:
- -I depth=n
- (که در آن n برابر با ۱، ۲ یا ۳ است) عمق سلسلهمراتبی نمایش را محدود میکند. زمانی که n برابر با ۱ باشد، تنها اطلاعات سیستم فایل از موجودی نمایش داده میشود. زمانی که n برابر ۲ باشد، فقط اطلاعات سیستم فایل و نشست نمایش داده میشود. زمانی که n برابر با ۳ باشد، اطلاعات سیستم فایل، نشست و جریان نمایش داده میشود.
- -I level=n
- (که در آن n سطح دامپ است) نمایش را به دامپهای آن سطح دامپ خاص محدود میکند.
نمایش ممکن است به فایلهای رسانهای موجود در یک شیء رسانهای خاص محدود شود:
- -I mobjid=value
- (که در آن value شناسه رسانه است) شیء رسانه را با شناسه آن مشخص میکند.
- -I mobjlabel=value
- (که در آن value برچسب رسانه است) شیء رسانه را با برچسب آن مشخص میکند.
به طور مشابه، نمایش میتواند به یک سیستم فایل خاص محدود شود:
- -I mnt=mount_point
- (یعنی [hostname:]pathname)، سیستم فایل را با نقطه اتصال شناسایی میکند. مشخص کردن نام میزبان اختیاری است، اما ممکن است در یک محیط خوشهای که بیش از یک میزبان میتواند مسئول دامپ کردن سیستم فایل باشد، مفید باشد.
- -I fsid=filesystem_id
- سیستم فایل را با شناسه سیستم فایل شناسایی میکند.
- -I dev=device_pathname
- (یعنی [hostname:]device_pathname) سیستم فایل را با دستگاه شناسایی میکند. همانند فیلتر mnt، مشخص کردن نام میزبان اختیاری است.
بیش از یکی از این زیرگزینهها را میتوان به صورت جداشده با کاما به طور همزمان برای محدود کردن نمایش موجودی به موارد دلخواه مشخص کرد. با این حال، حداکثر چهار زیرگزینه را میتوان به طور همزمان مشخص نمود: یکی برای محدود کردن عمق سلسلهمراتب نمایش، یکی برای محدود کردن سطح دامپ، یکی برای محدود کردن شیء رسانه، و یکی برای محدود کردن سیستم فایل.
برای مثال، -I depth=1,mobjlabel="tape 1",mnt=host1:/test_mnt تنها اطلاعات سیستم فایل (depth=1) را برای آن سیستمهای فایلی که در زمان دامپ روی host1:/test_mnt متصل بودهاند، و تنها سیستمهای فایلی که در شیء رسانهای با برچسب "tape 1" دامپ شدهاند، نمایش میدهد.
رکوردهای دامپ را میتوان با استفاده از برنامه xfsinvutil از موجودی حذف (هرس) کرد.
یک فایل
رسانهای
اضافی در
انتهای هر
جریان دامپ
قرار
میگیرد.
این فایل
رسانهای
حاوی
اطلاعات
موجودی
برای نشست
دامپ جاری
است. اگر
فایلهای
موجودی
آنلاین در
/var/lib/xfsdump/inventory
اطلاعات
نشست دامپ
جاری را
نداشته
باشند،
اطلاعات
موجودی
موجود در
فایل
رسانهای
به طور
خودکار به
فایلهای
موجود در
/var/lib/xfsdump/inventory اضافه
میشود. اگر
میخواهید
اطلاعات
موجودی را
از فایل
رسانهای
بدون
بازیابی
دادهها
ترکیب
کنید،
میتوانید
با استفاده
از گزینه -t
این کار را
انجام دهید:
# xfsrestore -t -f /dev/tape
این برای
بازسازی
پایگاه
داده
موجودی در
صورت گم شدن
یا خراب شدن
آن مفید است.
تنها نکته
این است که
xfsrestore برای
رسیدن به
فایل
رسانهای
موجودی
باید کل
دامپ را
بخواند. این
میتواند
برای
نشستهای
دامپ با
فایلهای
رسانهای
بزرگ
زمانبر
باشد.
خطاهای رسانه (Media Errors)
ابزار xfsdump در برابر خطاهای رسانه تحملپذیر است، اما نمیتواند تصحیح خطا انجام دهد. اگر خطای رسانه در بدنه یک فایل رسانهای رخ دهد، فایل سیستم فایلی که در آن نقطه نشان داده شده است از دست میرود. بخش خراب رسانه نادیده گرفته میشود و بازیابی در فایل سیستم فایل بعدی پس از بخش خراب ادامه مییابد.
اگر خطای رسانه در ابتدای فایل رسانهای رخ دهد، کل فایل رسانهای از دست میرود. به همین دلیل، دامپهای بزرگ به تعدادی فایل رسانهای با اندازه مناسب تقسیم میشوند. بازیابی با فایل رسانهای بعدی ادامه مییابد.
سهمیهبندیها (Quotas)
هنگامی که xfsdump یک سیستم فایل را با سهمیهبندیهای کاربر دامپ میکند، فایلی را در ریشه دامپ به نام xfsdump_quotas ایجاد میکند. دستور xfsrestore میتواند این فایل را مانند هر فایل دیگری در دامپ بازیابی کند. این فایل را میتوان توسط دستور بازیابی xfs_quota(8) برای فعالسازی مجدد سهمیهها پردازش کرد. با این حال، فایل xfsdump_quotas شامل اطلاعاتی است که ممکن است ابتدا نیاز به تغییر داشته باشد؛ به ویژه نام سیستم فایل و شناسههای کاربر. اگر سهمیهها را برای همان کاربران در همان سیستم فایلی که دامپ از آن گرفته شده است بازیابی میکنید، هیچ تغییری لازم نخواهد بود. با این حال، اگر دامپ را در سیستم فایل متفاوتی بازیابی میکنید، باید:
- اطمینان حاصل کنید که سیستم فایل جدید با گزینه quota متصل شده است
- فایل xfsdump_quotas را طوری تغییر دهید که حاوی نام سیستم فایل جدید باشد
- اطمینان حاصل کنید که شناسههای کاربری (uid) در فایل xfsdump_quotas صحیح هستند
پس از تأیید اطلاعات سهمیه، دستور بازیابی xfs_quota(8) میتواند برای اعمال محدودیتهای سهمیه بر سیستم فایل استفاده شود.
سهمیهبندیهای گروهی و پروژهای نیز به روشی مشابه مدیریت میشوند و به ترتیب در فایلهایی با نامهای xfsdump_quotas_group و xfsdump_quotas_proj بازیابی خواهند شد.
مثالها (EXAMPLES)
برای
بازیابی
سیستم فایل
ریشه از یک
نوار متصل
محلی:
# xfsrestore -f /dev/tape /
برای
بازیابی از
یک نوار راه
دور، با
مشخص کردن
شناسه نشست
دامپ:
# xfsrestore -L session_1 -f otherhost:/dev/tape /new
برای
بازیابی
محتویات یک
دامپ در
زیرپوشهای
دیگر:
# xfsrestore -f /dev/tape /newdir
برای کپی
کردن
محتویات یک
سیستم فایل
به پوشهای
دیگر (به xfsdump(8)
مراجعه
کنید):
# xfsdump -J - / | xfsrestore -J - /new
فایلها (FILES)
- /var/lib/xfsdump/inventory
- پایگاه داده موجودی دامپ
همچنین ببینید (SEE ALSO)
rmt(8), xfsdump(8), xfsinvutil(8), xfs_quota(8), attr_set(2).
عیبیابی و تشخیصها (DIAGNOSTICS)
کد خروج در صورت اتمام موفقیتآمیز 0 است، و اگر خطایی رخ داده باشد یا بازیابی توسط کاربر متوقف شده باشد، غیرصفر است.
برای تمام
سطوح
جزئیات
بیشتر از 0
(silent)، آخرین
خط خروجی
وضعیت خروج
بازیابی را
نشان
میدهد. این
وضعیت به
شکل زیر است:
xfsdump: Restore Status: code
که در آن code
یکی از
مقادیر زیر
را میگیرد:
SUCCESS (اتمام
عادی)، INTERRUPT
(قطعشده)،
QUIT (رسانه
دیگر قابل
استفاده
نیست)، INCOMPLETE
(بازیابی
ناقص)، FAULT
(خطای
نرمافزاری)،
و ERROR (خطای
منبع). تلاش
خواهد شد تا
هم نحو و هم
مفاهیم این
پیام لاگ در
نسخههای
بعدی xfsrestore بدون
تغییر باقی
بماند. با
این حال،
ممکن است در
آینده
اصلاح یا
گسترش
مجموعه
کدهای خروج
یا تفسیر
آنها لازم
شود.
اشکالات (BUGS)
نام مسیرهای فایلهای غیردایرکتوری بازیابیشده (نسبت به پوشه dest) باید ۱۰۲۳ کاراکتر (MAXPATHLEN) یا کمتر باشد. نامهای مسیر طولانیتر نادیده گرفته شده و پیام هشداری نمایش داده میشود.
هیچ گزینه اعتبارسنجی (verify) برای xfsrestore وجود ندارد. این امر به کاربر امکان میداد دامپ سیستم فایل را با یک سیستم فایل موجود بدون انجام واقعی بازیابی مقایسه کند.
دستورات تعاملی (گزینه -i) عبارات باقاعده (regular expressions) را متوجه نمیشوند.
هنگامی که گزینه minimal rmt مشخص شود، xfsrestore آن را برای تمام منابع نوار راه دور اعمال میکند. همان اندازه بلوک (مشخصشده با گزینه -b) برای تمام این درایوهای راه دور استفاده میشود.
دستور xfsrestore از برنامه هشدار فقط در صورت نیاز به تعویض رسانه استفاده میکند.
حالت تجمعی (گزینه -r) نیازمند این است که کاربر xfsrestore را برای پایه و برای هر دلتا جهت اعمال متوالی روی پایه فراخوانی کند. بهتر بود به کاربر اجازه داده میشد آخرین دلتا را در دنباله مورد نظر مشخص کند و اجازه دهد xfsrestore از آن دلتا به عقب کار کند تا دلتاهای قبلی و دامپ پایه را شناسایی و اعمال نماید، همه در یک فراخوانی واحد.