ndctl-destroy-namespace -
نابودسازی
فضای نام (یا
فضاهای نام)
مشخصشده
ndctl destroy-namespace <namespace> [<options>]
ظرفیت یک REGION
از NVDIMM (بازه
پیوستهای
از حافظه
پایدار) از
طریق یک یا
چند دستگاه
NAMESPACE در دسترس
قرار
میگیرد. REGION
اصطلاحی در
لینوکس
برای چیزی
است که ACPI و UEFI
آن را DIMM-interleave-set یا
یک system-physical-address-range
مینامند
که (توسط
کنترلکننده
حافظه) در
میان یک یا
چند ماژول
حافظه به
صورت
خطبندیشده
(striped) توزیع شده
است.
مشخصات UEFI
پروتکل NVDIMM Label
Protocol را به
عنوان
ترکیبی از
روشهای
دسترسی به
ناحیه
برچسب (label area) و
یک قالب
داده برای
ایجاد یک یا
چند شیء NAMESPACE از
یک REGION تعریف
میکند.
توجه داشته
باشید که
پشتیبانی
از برچسب
اختیاری
است و اگر
لینوکس
قابلیت
برچسب را
تشخیص
ندهد، به
طور خودکار
به ازای هر
ناحیه یک
فضای نام
«بدون
برچسب» (label-less)
نمونهسازی
میکند.
نمونههایی
از فضاهای
نام بدون
برچسب
مواردی
هستند که
توسط گزینه
خط فرمان
هسته memmap=ss!nn
ایجاد
شدهاند (به
ویکی nvdimm در kernel.org
مراجعه
کنید)، یا
NVDIMMهایی که
فاقد یک namespace index
معتبر در
ناحیه
برچسب خود
هستند.
نکته
فضاهای
نام بدون
برچسب فاقد
بسیاری از
ویژگیهای
همتایان
دارای
برچسب (label-rich)
خود هستند.
برای
نمونه،
اندازه
آنها قابل
تغییر
نیست، یا
نمیتوان
آنها را
بهطور
کامل destroy کرد
(یعنی فضای
آنها
بازپس
گرفته
نمیشود). یک
عملیات destroy
هرگونه
فراداده
مختص حالت
(mode-specific) را صفر
میکند. در
نهایت،
برای
عملیات create-namespace
روی فضاهای
نام بدون
برچسب، ndctl
بررسیهای
دردسترسبودن
ظرفیت region را
نادیده
میگیرد و
همیشه
درخواست را
با استفاده
از تمام
ظرفیت region
پاسخ
میدهد.
تنها
عملیات
بازپیکربندی
پشتیبانیشده
روی یک فضای
نام بدون
برچسب،
تغییر mode آن
است.
یک فضای
نام
میتواند
طوری
آمادهسازی
شود که در
یکی از ۴
حالت fsdax، devdax،
sector و raw کار
کند. در
اینجا
مدلهای
کاربردی
مورد
انتظار
برای این
حالتها
آمده است:
•fsdax: حالت
Filesystem-DAX حالت
پیشفرض یک
فضای نام
هنگام
تعیین
دستور ndctl create-namespace
بدون هیچ
گزینهای
است. این
حالت یک
دستگاه
بلوکی (/dev/pmemX[.Y])
ایجاد
میکند که
از
قابلیتهای
DAX
سیستمفایلهای
لینوکس
(تاکنون xfs و ext4)
پشتیبانی
میکند. DAX
حافظه نهان
صفحه (page cache) را
از مسیر I/O حذف
کرده و به mmap(2)
امکان
میدهد
نگاشتهای
مستقیمی به
رسانه
حافظه
پایدار
برقرار کند.
قابلیت DAX به
بارهای
کاری /
مجموعههای
کاری (working-sets) که
از ظرفیت page cache
فراتر
میروند
اجازه
میدهد تا
سقف ظرفیت
حافظه
پایدار
مقیاسپذیر
شوند.
بارهای
کاری که در page cache
میگنجند
یا
انتقالهای
داده حجیم
انجام
میدهند
ممکن است
سودی از DAX
نبرند. در
صورت
تردید، این
حالت را
انتخاب
کنید.
•devdax: حالت
Device-DAX
قابلیتهای
نگاشت DAX
مشابه mmap(2) را
مانند Filesystem-DAX
فراهم
میسازد. با
این حال، به
جای یک
دستگاه
بلوکی که
بتواند از
یک
سیستمفایل
مجهز به DAX
پشتیبانی
کند، این
حالت یک
فایل
دستگاه
نویسهای
منفرد (/dev/daxX.Y)
ارائه
میدهد. از
این حالت
برای
اختصاص
حافظه
پایدار به
یک ماشین
مجازی، ثبت
حافظه
پایدار
برای RDMA، یا
در مواردی
که
نگاشتهای
بسیار عظیم
مورد نیاز
است
استفاده
کنید.
•sector: از این
حالت برای
میزبانی
سیستمفایلهای
قدیمی که از
فراداده
جمعآزمایی
(checksum)
نمیگیرند
یا
برنامههایی
که پس از
خرابی
ناگهانی
برای
سکتورهای
ناقص (torn sectors)
آماده
نیستند
استفاده
کنید.
کاربرد
مورد
انتظار
برای این
حالت،
درایوهای
راهاندازی
(boot) کوچک است.
این حالت با
سایر
سیستمعاملها
سازگار
است.
•raw: حالت Raw
در عمل
صرفاً یک
دیسک حافظه
است که از DAX
پشتیبانی
نمیکند.
معمولاً
این وضعیت
نشاندهنده
فضای نامی
است که توسط
ابزارها یا
یک
سیستمعامل
دیگر ایجاد
شده که نحوه
ساخت فضای
نام در
حالتهای fsdax
یا devdax
لینوکس را
نمیدانسته
است. این
حالت با
سایر
سیستمعاملها
سازگار
است، اما
مجدداً از
عملیات DAX
پشتیبانی
نمیکند.
<namespace>
نام
دستگاه namespaceX.Y.
کلمه کلیدی
all میتواند
برای اجرای
عملیات روی
تمام
فضاهای نام
سیستم مشخص
شود، که به
صورت
اختیاری بر
اساس region
فیلتر
میشود
(گزینه --region= را
ببینید).
-r, --region=
نام
دستگاه regionX
یا یک شماره
شناسه region.
عملیات را
به region (یا regionهای)
مشخصشده
محدود
میکند.
کلمه کلیدی
all میتواند
برای نشان
دادن عدم
وجود
هرگونه
محدودیت
تعیین شود،
هرچند این
کار معادل
عدم ارائه
گزینه --region
است.
-b, --bus=
شماره
شناسه bus یا یک
رشته
ارائهدهنده
(مانند "ACPI.NFIT").
عملیات را
به bus (یا busهای)
مشخصشده
محدود
میکند.
کلمه کلیدی
all میتواند
برای مشخص
کردن عدم
وجود
هرگونه
محدودیت
استفاده
شود، هرچند
این کار
معادل عدم
ارائه
گزینه --bus است.
-v, --verbose
ارسال
پیامهای
اشکالزدایی
برای
عملیات
فضای نام.
-f, --force
مگر
اینکه این
گزینه مشخص
شود، در
صورتی که
فضای نام در
حال حاضر
فعال باشد،
عملیات destroy namespace
با شکست
مواجه
خواهد شد.
تعیین --force
باعث
میشود
فضای نام
پیش از تلاش
برای انجام
عملیات
غیرفعال
گردد. با این
حال، اگر
فضای نام
سوار (mount) شده
باشد،
عملیاتهای
disable namespace و destroy namespace
لغو خواهند
شد. فضای نام
پیش از
نابودسازی
باید پیاده
(unmount) شود.
حق نشر © 2016 -
2022، شرکت Intel.
مجوز GPLv2: گنو GPL
نسخه ۲
http://gnu.org/licenses/gpl.html. این
نرمافزار
آزاد است:
شما مجاز به
تغییر و
بازتوزیع
آن هستید.
هیچگونه
ضمانتی
وجود
ندارد، تا
حدی که
قانون
اجازه
میدهد.
ndctl-create-namespace(1)