.nh .TH containers-storage 1 "August 2016" .SH "نام (NAME)" containers-storage \- مدیریت فضای ذخیره‌سازی لایه‌ها، ایمیج‌ها و کانتینرها .SH "خلاصه دستور (SYNOPSIS)" \fBcontainers-storage\fP [\fBsubcommand\fP] [\fB--help\fP] .SH "توضیحات (DESCRIPTION)" دستور \fIcontainers-storage\fP یک رابط کاربری برای کتابخانه \fIcontainers/storage\fP است. اگرچه می‌توان از آن برای مدیریت مستقیم فضای ذخیره‌سازی لایه‌های سیستم‌فایل، ایمیج‌ها و کانتینرها استفاده کرد، اما کاربردهای اصلی آن حول عیب‌یابی و پرس‌وجو از وضعیت فضای ذخیره‌سازی است که توسط سایر فرایندها مدیریت می‌شود. .PP از نظر مفهومی، یک لایه کامل سیستم‌فایل از یک سیستم‌فایل کانتینر و مقداری اطلاعات مدیریتی و دفتری تشکیل شده است. لایه‌های دیگر، یعنی \fIفرزندان\fP آن لایه، به‌طور پیش‌فرض محتوای آن را به اشتراک می‌گذارند، اما هرگونه تغییر اعمال‌شده در محتوای فرزندان در لایه \fIوالد\fP منعکس نمی‌شود. این چیدمان برای صرفه‌جویی در فضای دیسک در نظر گرفته شده است: با ذخیره لایه \fIفرزند\fP تنها به‌صورت مجموعه‌ای از تغییرات نسبت به \fIوالد\fP خود، نیازی به تکرار محتوای \fIوالد\fP برای هر یک از \fIفرزندانش\fP نخواهد بود. البته هر \fIفرزند\fP می‌تواند \fIفرزندان\fP خود را داشته باشد. محتوای لایه‌های \fIوالد\fP نباید تغییر یابد. .PP یک \fIایمیج\fP ارجاعی به یک \fIلایه\fP خاص به همراه مقداری اطلاعات دفتری است. احتمالاً این \fIایمیج\fP به \fIلایه‌ای\fP اشاره دارد که احتمالاً در چندین مرحله از یک لایه \fIوالد\fP عمومی تغییر یافته است تا برای اجرای یک برنامه مورد نظر مناسب باشد. چندین \fIایمیج\fP می‌توانند به یک \fIلایه\fP واحد ارجاع دهند، در حالی که فقط در اطلاعات دفتری اضافی که با خود حمل می‌کنند تفاوت دارند. محتوای \fIایمیج‌ها\fP باید فقط‌خواندنی در نظر گرفته شود. .PP یک \fIکانتینر\fP در واقع یک \fIلایه\fP است که \fIفرزند\fP لایه‌ای محسوب می‌شود که یک \fIایمیج\fP به آن ارجاع می‌دهد (به عبارت دیگر، یک \fIکانتینر\fP از یک \fIایمیج\fP نمونه‌سازی می‌شود)، به همراه مقداری اطلاعات دفتری. آن‌ها فاقد \fIفرزند\fP هستند و \fIلایه‌های\fP آن‌ها نمی‌تواند مستقیماً مورد ارجاع \fIایمیج‌ها\fP قرار گیرد. این امر تضمین می‌کند که تغییرات در محتوای لایه یک \fIکانتینر\fP بر سایر \fIایمیج‌ها\fP یا \fIلایه‌ها\fP تأثیر نمی‌گذارد، بنابراین آن‌ها قابل نوشتن در نظر گرفته می‌شوند. .PP تمام \fIلایه‌ها\fP، \fIایمیج‌ها\fP و \fIکانتینرها\fP می‌توانند دارای متاداده‌هایی باشند که \fIcontainers-storage\fP آن‌ها را مدیریت کرده و به آن‌ها ضمیمه می‌کند. عموماً انتظار نمی‌رود که این متاداده‌ها حجیم باشند، زیرا در حافظه رم کش می‌شوند. .PP \fIایمیج‌ها\fP و \fIکانتینرها\fP همچنین می‌توانند دارای اقلام داده‌ای با نام‌های دلخواه باشند. به‌طور کلی این داده‌ها می‌توانند بزرگ‌تر از متاداده باشند و در حافظه نگهداری نمی‌شوند مگر در هنگام بازیابی یا نوشتن. .PP انتظار می‌رود امضاهایی که می‌توانند برای تأیید صحت محتوای یک \fIایمیج\fP استفاده شوند، به‌عنوان اقلام داده برای آن \fIایمیج\fP ذخیره گردند، به همراه هرگونه داده پیکربندی قالبی که برای استفاده در \fIکانتینرهای\fP مشتق‌شده از آن \fIایمیج\fP توصیه می‌شود. همچنین انتظار می‌رود که پیکربندی زمان اجرای یک \fIکانتینر\fP به‌صورت اقلام داده ذخیره شود. .SH "زیردستورات (SUB-COMMANDS)" ویژگی‌های دستور \fIcontainers-storage\fP به چندین زیردستور تقسیم می‌شود: \fBcontainers-storage add-names(1)\fP افزودن نام یا نام‌ها به لایه، ایمیج یا کانتینر .PP \fBcontainers-storage applydiff(1)\fP اعمال یک diff روی یک لایه .PP \fBcontainers-storage applydiff-using-staging-dir(1)\fP اعمال diff روی لایه با قرار دادن محتوای جدید در مرحله میانی ابتدا .PP \fBcontainers-storage changes(1)\fP مقایسه دو لایه .PP \fBcontainers-storage check(1)\fP بررسی و احتمالاً حذف لایه‌ها/ایمیج‌ها/کانتینرهای آسیب‌دیده .PP \fBcontainers-storage container(1)\fP بررسی یک کانتینر .PP \fBcontainers-storage containers(1)\fP فهرست کردن کانتینرها .PP \fBcontainers-storage create-container(1)\fP ایجاد کانتینر جدید از یک ایمیج .PP \fBcontainers-storage create-image(1)\fP ایجاد یک ایمیج جدید با استفاده از لایه‌ها .PP \fBcontainers-storage create-layer(1)\fP ایجاد یک لایه جدید .PP \fBcontainers-storage create-storage-layer(1)\fP ایجاد لایه جدید در درایور ذخیره‌سازی سطح پایین‌تر .PP \fBcontainers-storage delete(1)\fP حذف یک لایه، ایمیج یا کانتینر بدون بررسی‌های ایمنی .PP \fBcontainers-storage delete-container(1)\fP حذف یک کانتینر همراه با بررسی‌های ایمنی .PP \fBcontainers-storage delete-image(1)\fP حذف یک ایمیج همراه با بررسی‌های ایمنی .PP \fBcontainers-storage delete-layer(1)\fP حذف یک لایه همراه با بررسی‌های ایمنی .PP \fBcontainers-storage diff(1)\fP مقایسه دو لایه .PP \fBcontainers-storage diffsize(1)\fP مقایسه دو لایه از نظر اندازه .PP \fBcontainers-storage exists(1)\fP بررسی وجود داشتن لایه، ایمیج یا کانتینر .PP \fBcontainers-storage get-container-data(1)\fP دریافت داده‌های پیوست‌شده به یک کانتینر .PP \fBcontainers-storage get-image-data(1)\fP دریافت داده‌های پیوست‌شده به یک ایمیج .PP \fBcontainers-storage image(1)\fP بررسی یک ایمیج .PP \fBcontainers-storage images(1)\fP فهرست کردن ایمیج‌ها .PP \fBcontainers-storage layers(1)\fP فهرست کردن لایه‌ها .PP \fBcontainers-storage list-container-data(1)\fP فهرست کردن اقلام داده پیوست‌شده به یک کانتینر .PP \fBcontainers-storage list-image-data(1)\fP فهرست کردن اقلام داده پیوست‌شده به یک ایمیج .PP \fBcontainers-storage metadata(1)\fP بازیابی متاداده لایه، ایمیج یا کانتینر .PP \fBcontainers-storage mount(1)\fP سوار کردن (مانت) یک لایه یا کانتینر .PP \fBcontainers-storage mounted(1)\fP بررسی مانت بودن یک سیستم‌فایل .PP \fBcontainers-storage set-container-data(1)\fP تنظیم داده‌های پیوست‌شده به یک کانتینر .PP \fBcontainers-storage set-image-data(1)\fP تنظیم داده‌های پیوست‌شده به یک ایمیج .PP \fBcontainers-storage set-metadata(1)\fP تنظیم متاداده لایه، ایمیج یا کانتینر .PP \fBcontainers-storage set-names(1)\fP تنظیم نام یا نام‌های لایه، ایمیج یا کانتینر .PP \fBcontainers-storage shutdown(1)\fP خاموش کردن درایور گراف .PP \fBcontainers-storage status(1)\fP بررسی وضعیت درایور گراف .PP \fBcontainers-storage unmount(1)\fP پیاده کردن (آن‌مانت) یک لایه یا کانتینر .PP \fBcontainers-storage unshare(1)\fP اجرای یک دستور در یک فضای نام کاربر (user namespace) .PP \fBcontainers-storage version(1)\fP بازگرداندن اطلاعات نسخه containers-storage .PP \fBcontainers-storage wipe(1)\fP پاک‌سازی کامل تمام لایه‌ها، ایمیج‌ها و کانتینرها .SH "گزینه‌ها (OPTIONS)" \fB--help\fP .PP چاپ فهرست زیردستورات موجود. در صورت مشخص شدن یک زیردستور، اطلاعات مربوط به آن دستور ارائه می‌شود. .PP \fB--debug, -D\fP .PP افزایش میزان اطلاعات اشکال‌زدایی چاپ‌شده. .PP \fB--graph, -g=/var/lib/containers/storage\fP .PP بازنویسی ریشه درخت ذخیره‌سازی، مورداستفاده برای ذخیره محتویات لایه و اطلاعات مربوط به لایه‌ها، ایمیج‌ها و کانتینرها. .PP \fB--run, -R=/run/containers/storage\fP .PP بازنویسی ریشه درخت وضعیت زمان اجرا، که در حال حاضر عمدتاً برای ثبت مکانی که یک لایه خاص در آن مانت شده است استفاده می‌شود (ببینید \fBcontainers-storage mount\fP) تا بتوان آن را به‌جای شناسه یا نام، از طریق مسیر پیاده (آن‌مانت) کرد. .PP \fB--storage-driver, -s\fP .PP مشخص می‌کند کدام درایور ذخیره‌سازی استفاده شود. اگر تنظیم نشده باشد ولی \fI$STORAGE_DRIVER\fP در محیط تعریف شده باشد، مقدار آن استفاده می‌شود. اگر درخت ذخیره‌سازی قبلاً مقداردهی اولیه شده باشد، نیازی به ارائه هیچ‌یک نیست. اگر درخت قبلاً مقداردهی نشده و هیچ‌کدام تنظیم نشده باشد، مقدار پیش‌فرض سخت‌کدشده انتخاب می‌شود. .PP \fB--storage-opt=[]\fP .PP تنظیم گزینه‌هایی که به درایور ذخیره‌سازی ارسال می‌شوند. اگر تنظیم نشده باشد اما \fI$STORAGE_OPTS\fP در محیط تعریف شده باشد، مقدار آن به‌عنوان یک فهرست جداشده با کاما در نظر گرفته شده و استفاده می‌شود. اگر درخت ذخیره‌سازی قبلاً مقداردهی شده باشد، نیازی به ارائه این موارد نیست. .PP \fB--unshare, -U\fP .PP هنگامی که توسط کاربر غیرریشه اجرا شود، در داخل یک فضای نام کاربر جدید پیکربندی‌شده با استفاده از نگاشت شناسه‌های پیش‌فرض سیستم برای کاربر غیرریشه اجرا می‌شود. .SH "بازنویسی‌های متغیرهای محیطی (ENVIRONMENT OVERRIDES)" \fBCONTAINERS_STORAGE_CONF\fP .PP در صورت تنظیم، از مسیر فایل پیکربندی ارائه‌شده در \fI$CONTAINERS_STORAGE_CONF\fP به‌جای مسیر پیش‌فرض \fB/etc/containers/storage.conf\fR استفاده می‌کند. .SH "مثال‌ها (EXAMPLES)" .EX containers-storage layers -t .EE .SH "باگ‌ها (BUGS)" این پروژه هنوز در حال توسعه است، بنابراین ممکن است برخی قابلیت‌ها هنوز پیاده‌سازی نشده باشند و در صورت عدم نیاز، برخی حذف شوند. با این حال، اگر چیزی به‌درستی کار نمی‌کند، لطفاً آن را در بخش پیگیری اشکالات پروژه گزارش دهید \[la]https://github.com/containers/storage/issues\[ra]\&. .SH "پاورقی‌ها (FOOTNOTES)" پروژه Containers Storage به فراگیر بودن، که یکی از ارزش‌های اصلی متن‌باز است، متعهد است. در این مخزن از اصطلاحات انتشار مانت \fBmaster\fR و \fBslave\fR استفاده شده است. این زبان مشکل‌ساز و تفرقه‌افکن است و باید تغییر یابد. با این حال، این اصطلاحات در حال حاضر در هسته لینوکس استفاده می‌شوند و در حال حاضر باید به همین شکل استفاده گردند. زمانی که نگه‌دارندگان هسته این کاربرد را اصلاح کنند، Containers Storage بلافاصله از آن پیروی خواهد کرد.