CRYPTSETUP-RESIZE(8) دستورهای مدیریتی و نگهداری CRYPTSETUP-RESIZE(8)

cryptsetup-resize - تغییر اندازه یک دستگاه رمزنگاریشده فعال

cryptsetup resize [<گزینهها>] <نام>

اندازه نگاشت فعال برای یک دستگاه رمزنگاریشده را تغییر میدهد.

اگر --size (بر حسب سکتورهای ۵۱۲ بایتی) یا --device-size مشخص نشده باشند، اندازه از روی دستگاه زیرین محاسبه می‌شود. برای LUKS این مقدار برابر با اندازه دستگاه زیرین منهای ناحیه اختصاص‌یافته به هدر LUKS است (انحراف بار داده یا همان data payload offset را در دستور luksDump ببینید). برای دستگاه رمزنگاری ساده (plain crypt)، اندازه کل دستگاه استفاده می‌شود.

توجه داشته باشید که این عمل هندسه فیزیکی خام دستگاه (raw device geometry) را تغییر نمی‌دهد، بلکه صرفاً مشخص می‌کند چه تعداد از سکتورهای دستگاه خام در دستگاه نگاشت‌شده نشان داده شوند.

اگر cryptsetup تشخیص دهد کلید حجم برای دستگاه فعال در سرویس دسته‌کلید کرنل (kernel keyring) بارگذاری شده است، عملیات تغییر اندازه ابتدا تلاش می‌کند کلید را با استفاده از یک توکن بازیابی کند. تنها در صورت شکست، برای باز کردن قفل اسلات کلید (در LUKS) یا اشتقاق مجدد کلید حجم (در حالت plain) درخواست گذرواژه خواهد کرد. دسته‌کلید کرنل به طور پیش‌فرض برای دستگاه‌های LUKS2 استفاده می‌شود.

<گزینه‌ها> می‌توانند شامل موارد زیر باشند:
[--size, --device-size, --token-id, --token-only, --token-type, --key-slot, --key-file, --keyfile-size, --keyfile-offset, --timeout, --disable-external-tokens, --disable-locks, --disable-keyring, --verify-passphrase, --timeout, --external-tokens-path].

--batch-mode, -q

تمام پرسش‌های تاییدیه را لغو می‌کند. با احتیاط استفاده کنید!

اگر گزینه --verify-passphrase مشخص نشده باشد، این گزینه تایید و اعتبارسنجی گذرواژه را نیز غیرفعال می‌کند.

--debug یا --debug-json

اجرا در حالت اشکال‌زدایی با گزارش‌های تشخیصی کامل. خطوط خروجی اشکال‌زدایی همیشه دارای پیشوند # هستند.

اگر از --debug-json استفاده شود، ساختارهای داده اضافی LUKS2 JSON نیز چاپ می‌شوند.

--device-size اندازه[واحدها]

اندازه جدید دستگاه را تنظیم می‌کند. در صورت عدم تنظیم، اندازه واقعی دستگاه استفاده می‌شود.

اگر هیچ پسوند واحدی مشخص نشود، اندازه بر حسب بایت در نظر گرفته می‌شود.

پسوند واحد می‌تواند S برای سکتورهای ۵۱۲ بایتی، K/M/G/T (یا KiB، MiB، GiB، TiB) برای واحدهای بر پایه ۱۰۲۴ یا KB/MB/GB/TB برای پایه ۱۰۰۰ (مقیاس SI) باشد.

--disable-external-tokens

بارگذاری افزونه‌ها برای توکن‌های خارجی LUKS2 را غیرفعال می‌کند.

--disable-keyring

کلید حجم را در دسته‌کلید کرنل بارگذاری نمی‌کند و در عوض آن را مستقیماً در هدف dm-crypt ذخیره می‌کند. این گزینه فقط برای نوع LUKS2 پشتیبانی می‌شود.

--disable-locks

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

هشدار: از این گزینه استفاده نکنید مگر اینکه cryptsetup را در یک محیط محدود که امکان قفل‌گذاری در آن وجود ندارد (جایی که دایرکتوری ‎/run قابل استفاده نیست) اجرا کنید.

--external-tokens-path مسیر_مطلق

مسیر دایرکتوری سیستمی را که cryptsetup در آن به دنبال گرداننده‌های توکن خارجی (یا افزونه‌های توکن) می‌گردد، بازنویسی (override) می‌کند. این مسیر باید یک مسیر مطلق باشد (که با نویسه '/' آغاز می‌شود).

--header <دستگاه یا فایل ذخیره‌کننده هدر LUKS>

استفاده از یک دستگاه یا فایل متاداده مجزا (جداشده) که هدر LUKS در آن ذخیره شده است. این گزینه امکان ذخیره متن رمزنگاری‌شده (ciphertext) و هدر LUKS را روی دستگاه‌های متفاوت فراهم می‌کند.

برای دستورهایی که هدر LUKS را تغییر می‌دهند (مانند luksAddKey)، دستگاه یا فایل حاوی هدر LUKS را مستقیماً به عنوان دستگاه LUKS مشخص کنید.

--help, -?

نمایش متن راهنما و پارامترهای پیش‌فرض.

--key-file, -d نام

خواندن گذرواژه از فایل.

اگر نام داده‌شده "-" باشد، گذرواژه از ورودی استاندارد (stdin) خوانده خواهد شد. در این حالت، فرایند خواندن با رسیدن به نویسه خط جدید متوقف نمی‌شود.

برای اطلاعات بیشتر، بخش NOTES ON PASSPHRASE PROCESSING را در cryptsetup(8) ببینید.

--keyfile-offset مقدار

تعداد مقدار بایت را در ابتدای فایل کلید نادیده می‌گیرد و رد می‌کند.

--keyfile-size, -l مقدار

حداکثر مقدار بایت را از فایل کلید می‌خواند. حالت پیش‌فرض خواندن کل فایل تا سقف حداکثر کامپایل‌شده داخلی است که می‌توان آن را با --help استعلام کرد. ارائه داده‌های بیشتر از سقف کامپایل‌شده داخلی موجب لغو عملیات می‌شود.

این گزینه به عنوان مثال برای حذف نویسه‌های خط جدید انتهایی مفید است. اگر --keyfile-offset نیز داده شده باشد، شمارش اندازه پس از مقدار افست آغاز می‌شود.

--key-slot, -S <0-N>

برای عملیات LUKS که داده‌های کلید اضافه می‌کنند، این گزینه به شما امکان می‌دهد مشخص کنید کدام اسلات کلید برای کلید جدید انتخاب شود.

حداکثر تعداد اسلات‌های کلید به نسخه LUKS بستگی دارد. LUKS1 می‌تواند تا ۸ اسلات کلید داشته باشد. LUKS2 بسته به اندازه ناحیه اسلات کلید و اندازه کلید می‌تواند تا ۳۲ اسلات کلید داشته باشد، اما شناسه معتبر اسلات کلید برای LUKS2 همیشه می‌تواند بین ۰ تا ۳۱ باشد.

--size, -b <تعداد سکتورهای ۵۱۲ بایتی>

تنظیم اندازه دستگاه بر حسب سکتورهای ۵۱۲ بایتی.

--timeout, -t <تعداد ثانیه‌ها>

تعداد ثانیه‌هایی که باید پیش از اتمام مهلت زمانی (timeout) برای ورود گذرواژه از طریق ترمینال منتظر بماند. این مقدار هر زمان که گذرواژه‌ای درخواست شود موثر است. در صورت استفاده همزمان با --key-file هیچ اثری ندارد.

این گزینه زمانی مفید است که سیستم در صورت عدم ورود گذرواژه توسط کاربر نباید متوقف یا معطل شود، برای مثال در طول راه‌اندازی (boot). مقدار پیش‌فرض ۰ ثانیه است، به این معنی که برای همیشه منتظر می‌ماند.

--token-id

مشخص می‌کند از کدام توکن استفاده شود و به اعلان پین (PIN) توکن اجازه می‌دهد بر اعلان تعاملی گذرواژه اسلات کلید اولویت داشته باشد. در صورت عدم تعیین، تمام توکن‌های موجود (که با پین محافظت نشده‌اند) پیش از ادامه کار با اعلان گذرواژه بررسی خواهند شد.

--token-only

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

این گزینه به توکن‌های LUKS2 محافظت‌شده با پین اجازه می‌دهد بر اعلان تعاملی گذرواژه اسلات کلید اولویت داشته باشند.

--token-type نوع

توکن‌های مجاز برای عملیات را به نوع خاصی از توکن محدود می‌کند. بیشتر زمانی کاربرد دارد که --token-id مشخص نشده باشد.

این گزینه به توکن‌های نوع LUKS2 محافظت‌شده با پین اجازه می‌دهد بر اعلان تعاملی گذرواژه اسلات کلید اولویت داشته باشند.

--usage

نمایش راهنمای کوتاه گزینه‌ها.

--verify-passphrase, -y

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

--version, -V

نمایش نسخه برنامه.

گزارش باگ‌ها در لیست پستی cryptsetup <cryptsetup@lists.linux.dev> یا در بخش مسائل پروژه https://gitlab.com/cryptsetup/cryptsetup/-/issues/new.

لطفاً خروجی دستور ناموفق را همراه با گزینه --debug پیوست کنید.

پرسش‌های متداول cryptsetup (FAQ) https://gitlab.com/cryptsetup/cryptsetup/wikis/FrequentlyAskedQuestions

cryptsetup(8), integritysetup(8) و veritysetup(8)

بخشی از پروژه cryptsetup https://gitlab.com/cryptsetup/cryptsetup.

مه ۲۰۲۵ cryptsetup 2.7.5