OSTREE(1) ostree OSTREE(1)

ostree - مدیریت چندین درخت سیستم‌فایل نسخه‌دار و قابل راه‌اندازی

ostree {COMMAND} [OPTIONS...]

ابزار OSTree سامانه‌ای برای مدیریت چندین درخت سیستم‌فایل نسخه‌دار و قابل راه‌اندازی (بوت) است، که به اختصار «درخت» (tree) نیز نامیده می‌شود. در مدل OSTree، سیستم‌های عامل دیگر در دایرکتوری ریشه فیزیکی "/" قرار نمی‌گیرند. در عوض، آن‌ها به صورت موازی در دایرکتوری سطح‌بالای جدید /ostree نصب می‌شوند. هر سیستم نصب‌شده دایرکتوری /ostree/deploy/stateroot مخصوص به خود را دریافت می‌کند. (stateroot اصطلاح جدیدتر برای osname است).

برخلاف rpm یا dpkg، ابزار OSTree تنها از کل درخت‌های سیستم‌فایل آگاه است. این ابزار هیچ دانش درونی از اینکه چه مؤلفه‌هایی در ایجاد درخت سیستم‌فایل به کار رفته‌اند ندارد.

امکان استفاده از OSTree در چندین حالت وجود دارد؛ پایه‌ای‌ترین شکل، همتاسازی درخت‌های از پیش ساخته‌شده از یک سرور ساخت است. معمولاً این درخت‌های از پیش ساخته‌شده از بسته‌ها مشتق می‌شوند. همچنین ممکن است از OSTree در زیر لایه یک ابزار سطح‌بالاتر استفاده کنید که درخت‌های سیستم‌فایل را به صورت محلی محاسبه می‌کند.

باید تأکید شود که OSTree تنها از درخت‌های فقط‌خواندنی پشتیبانی می‌کند. برای تغییر به یک درخت دیگر (ارتقا، تنزل نسخه، نصب نرم‌افزار)، یک درخت جدید واکشی (checked out) می‌شود و یک ادغام ۳-طرفه در پیکربندی انجام می‌گیرد. درخت در حال اجرای فعلی هرگز تغییر داده نمی‌شود؛ درخت جدید پس از راه‌اندازی مجدد سیستم فعال خواهد شد.

برای مشاهده صفحه راهنمای یک دستور اجرا کنید: man ostree COMMAND یا man ostree-admin COMMAND

گزینه‌های زیر پشتیبانی می‌شوند:

--repo

برای بیشتر دستورات، تعیین یک مخزن الزامی است. در صورت عدم تعیین، چنانچه دایرکتوری جاری یک مخزن OSTree باشد، از آن استفاده می‌شود. اگر چنین نباشد، یا از متغیر محیطی OSTREE_REPO استفاده می‌شود، یا از مخزن سیستمی واقع در /sysroot/ostree/repo.

-v, --verbose

تولید خروجی در سطح اشکال‌زدایی (debug).

--version

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

مدیران سیستم عمدتاً از طریق زیردستور ostree admin با OSTree تعامل دارند.

ostree-admin-cleanup(1)

حذف استقرارهای بدون برچسب و اشیاء مخزن.

ostree-admin-config-diff(1)

مشاهده تغییرات /etc در مقایسه با پیش‌فرض فعلی (از /usr/etc).

ostree-admin-deploy(1)

یک کامیت یا بازنگری (revision) خاص را می‌گیرد و آن را برای راه‌اندازی (بوت) بعدی آماده می‌کند.

ostree-admin-init-fs(1)

راه‌اندازی اولیه یک سیستم‌فایل ریشه در مسیر مشخص‌شده.

ostree-admin-instutil(1)

توابع کاربردی که عمدتاً برای برنامه‌های نصب سیستم‌عامل در نظر گرفته شده‌اند.

ostree-admin-os-init(1)

راه‌اندازی اولیه مکان استقرار برای یک سیستم‌عامل با نام مشخص.

ostree-admin-status(1)

نمایش و فهرست کردن استقرارها.

ostree-admin-switch(1)

انتخاب یک ارجاع (ref) متفاوت برای ردیابی از همان ریموتِ درخت فعلی.

ostree-admin-undeploy(1)

حذف درخت قبلیِ مستقرشده در INDEX از پیکربندی بوت‌لودر.

ostree-admin-upgrade(1)

بارگیری آخرین نسخه برای ارجاع فعلی، و استقرار آن.

هم مدیران و هم سازندگان سیستم‌عامل می‌توانند از طریق دستورات معمولی دستکاری سیستم‌فایل با OSTree تعامل داشته باشند.

ostree-cat(1)

پیوستن و نمایش محتوای فایل‌ها.

ostree-checkout(1)

واکشی یک کامیت در یک درخت سیستم‌فایل.

ostree-checksum(1)

ارائه چک‌سام هر فایل.

ostree-commit(1)

ایجاد یک کامیت جدید با استفاده از محتوای یک یا چند درخت مشخص‌شده.

ostree-config(1)

تغییر تنظیمات.

ostree-create-usb(1)

قرار دادن ارجاع‌های مشخص‌شده روی یک درایو خارجی برای توزیع همتابه‌همتا (P2P).

ostree-diff(1)

فهرست کردن مختصر تفاوت‌های میان ارجاع‌های ارائه‌شده.

ostree-find-remotes(1)

یافتن ریموت‌ها برای ارائه ارجاع‌های مشخص‌شده.

ostree-fsck(1)

بررسی یکپارچگی و سازگاری یک مخزن.

ostree-init(1)

راه‌اندازی اولیه یک مخزن جدید.

ostree-log(1)

نمایش گزارش بازنگری‌ها (revision log).

ostree-ls(1)

فهرست کردن محتویات یک کامیت مشخص.

ostree-prune(1)

جستجو برای اشیاء غیرقابل‌دسترس و پاکسازی آن‌ها.

ostree-pull-local(1)

کپی داده‌ها از یک مخزن مبدأ (source-repo).

ostree-pull(1)

بارگیری داده‌ها از مخزن راه دور (remote repo)، در صورت نصب بودن libsoup.

ostree-refs(1)

فهرست کردن ارجاع‌ها (refs).

ostree-remote(1)

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

ostree-reset(1)

بازنشانی یک ارجاع به یک کامیت قبلی.

ostree-rev-parse(1)

نمایش SHA256 متناظر با یک بازنگری مشخص.

ostree-show(1)

نمایش محتویات یک چک‌سام SHA256 ارائه‌شده از OSTree.

ostree-static-delta(1)

مدیریت فایل‌های دلتای ایستا.

ostree-summary(1)

تولید مجدد متادیتای خلاصه مخزن.

برای مثال‌های دقیق، لطفاً صفحه راهنمای مربوط به دستور خاص ostree را ببینید. به عنوان مثال:

man ostree init یا man ostree-admin status

ابزار OSTree از امضای کامیت‌ها با GPG پشتیبانی می‌کند. عملیات روی مخزن سیستم به‌طور پیش‌فرض از فایل‌های دسته‌کلید (keyring) در /usr/share/ostree/trusted.gpg.d استفاده می‌کند. هر کلید عمومی در یک فایل دسته‌کلید در آن دایرکتوری توسط کلاینت مورد اعتماد خواهد بود. هیچ کلید خصوصی نباید در این دایرکتوری قرار داشته باشد.

علاوه بر مخزن سیستم، OSTree از دو مسیر دیگر نیز پشتیبانی می‌کند. نخست، گزینه gpgkeypath برای ریموت‌ها وجود دارد که باید به نام فایل یک کلید GPG با پوشش اسکی (ASCII-armored)، یا دایرکتوری حاوی کلیدهای GPG با پوشش اسکی برای وارد کردن (import) اشاره کند. می‌توان چندین مسیر فایل و دایرکتوری را به صورت فهرستی از مسیرها که با کاما از هم جدا شده‌اند، تعیین کرد. این گزینه را می‌توان با استفاده از --set در ostree remote add مشخص کرد.

دوم، پشتیبانی از یک فایل remotename.trustedkeys.gpg به ازای هر ریموت وجود دارد که در بالاترین سطح مخزن (در کنار objects/ و موارد دیگر) ذخیره می‌شود. این مورد به‌ویژه هنگام بارگیری محتوایی که ممکن است کاملاً مورد اعتماد نباشد (مثلاً می‌خواهید آن را بازرسی کنید اما به عنوان سیستم‌عامل مستقر نکنید) یا برای استفاده در کانتینرها مفید است. این فایل از طریق ostree remote add --gpg-import نوشته می‌شود.

اصطلاحات زیر معمولاً در سراسر صفحات راهنما استفاده می‌شوند. اصطلاحات با حروف بزرگ مقادیر مستقیمی هستند که در آرگومان‌های خط فرمان به کار می‌روند.

BRANCH

نام شاخه. بخشی از یک REF.

CHECKSUM

هش SHA256 از یک شیء ذخیره‌شده در مخزن OSTree. این می‌تواند یک شیء محتوا (content)، یک درخت دایرکتوری (dirtree)، متادیتای دایرکتوری (dirmeta) یا یک شیء کامیت باشد. اگر منظور هش SHA256 از یک شیء کامیت باشد، اصطلاح COMMIT به کار می‌رود.

COMMIT

هش SHA256 از یک شیء کامیت.

REF

ارجاع به یک کامیت خاص. ارجاع‌ها فایل‌های متنی ذخیره‌شده در refs/ هستند که به یک کامیت مشخص نام‌گذاری می‌کنند (ارجاع می‌دهند). ارجاع می‌تواند تنها بخش نام شاخه باشد که در این حالت از یک ارجاع محلی استفاده می‌شود (مثلاً mybranch/stable). اگر به یک شاخه دوردست ارجاع داده شود، باید نام ریموت به همراه دو‌نقطه و سپس نام شاخه استفاده شود (مثلاً myremote:mybranch/stable).

REV, REFSPEC

یک بازنگری خاص، یک کامیت. این می‌تواند هر چیزی باشد که به یک کامیت حل (resolve) شود، مثلاً یک REF یا یک COMMIT.

SHA256

یک تابع هش رمزنگاری که برای ذخیره اشیاء در مخزن OSTree به کار می‌رود. این هش‌ها ۲۵۶ بیت طول دارند و معمولاً با نمایش هگزادسیمال ۶۴ نویسه‌ای اسکی به ostree ارسال و توسط آن نمایش داده می‌شوند (مثلاً 0fc70ed33cfd7d26fe99ae29afb7682ddd0e2157a4898bd8cfcdc8a03565b870).

ostree.repo(5)

OSTree