SYSTEMD-CRYPTSETUP-GENERATOR(8) systemd-cryptsetup-generator SYSTEMD-CRYPTSETUP-GENERATOR(8)

systemd-cryptsetup-generator - تولیدکننده واحدهای سیستم‌دی برای فایل /etc/crypttab

/usr/lib/systemd/system-generators/systemd-cryptsetup-generator

برنامه systemd-cryptsetup-generator تولیدکننده‌ای است که در اوایل فرآیند بوت و هنگام بارگذاری مجدد پیکربندی مدیر سیستم، فایل /etc/crypttab را به واحدهای بومی سیستم‌دی تبدیل می‌کند. این برنامه واحدهای systemd-cryptsetup@.service(8) را در صورت لزوم ایجاد خواهد کرد.

دستور systemd-cryptsetup-generator مشخصات systemd.generator(7) را پیاده‌سازی می‌کند.

تولیدکننده systemd-cryptsetup-generator پارامترهای خط فرمان کرنل زیر را درک می‌کند:

luks=, rd.luks=

یک آرگومان بولی می‌پذیرد. مقدار پیش‌فرض آن "yes" است. در صورت تنظیم روی "no"، این تولیدکننده را کاملاً غیرفعال می‌کند. rd.luks= فقط در initrd رعایت می‌شود، در حالی که luks= هم در سیستم اصلی و هم در initrd رعایت می‌گردد.

افزوده‌شده در نسخه 186.

luks.crypttab=, rd.luks.crypttab=

یک آرگومان بولی می‌پذیرد. مقدار پیش‌فرض آن "yes" است. در صورت تنظیم روی "no"، باعث می‌شود تولیدکننده از هر دستگاه پیکربندی‌شده در /etc/crypttab صرف‌نظر کند (با این حال luks.uuid= همچنان کار خواهد کرد). rd.luks.crypttab= فقط در initrd رعایت می‌شود، در حالی که luks.crypttab= هم در سیستم اصلی و هم در initrd رعایت می‌گردد.

افزوده‌شده در نسخه 186.

luks.uuid=, rd.luks.uuid=

یک UUID سوپربلاک LUKS را به عنوان آرگومان می‌گیرد. این گزینه دستگاه مشخص‌شده را به عنوان بخشی از فرآیند بوت فعال می‌کند، درست مانند اینکه در /etc/crypttab فهرست شده باشد. این گزینه می‌تواند بیش از یک بار برای راه‌اندازی چندین دستگاه مشخص شود. rd.luks.uuid= فقط در initrd رعایت می‌شود، در حالی که luks.uuid= هم در سیستم اصلی و هم در initrd رعایت می‌گردد.

اگر /etc/crypttab حاوی ورودی‌هایی با همان UUID باشد، نام، فایل کلید و گزینه‌های مشخص‌شده در آنجا استفاده خواهند شد. در غیر این صورت، دستگاه نام "luks-UUID" را خواهد داشت.

اگر /etc/crypttab وجود داشته باشد، فقط آن دسته از UUIDهایی که در خط فرمان کرنل مشخص شده‌اند در initrd یا ریشه واقعی (real root) فعال خواهند شد.

افزوده‌شده در نسخه 186.

luks.name=, rd.luks.name=

یک UUID سوپربلاک LUKS به همراه یک "=" و یک نام را دریافت می‌کند. این پارامتر به معنای rd.luks.uuid= یا luks.uuid= است و علاوه بر آن باعث می‌شود دستگاه LUKS مشخص‌شده با این UUID با نام ارائه‌شده ظاهر شود.

این پارامتر معادل فیلد اول در crypttab(5) یعنی volume-name است.

rd.luks.name= فقط در initrd رعایت می‌شود، در حالی که luks.name= هم توسط سیستم اصلی و هم در initrd رعایت می‌گردد.

افزوده‌شده در نسخه 218.

luks.data=, rd.luks.data=

یک UUID سوپربلاک LUKS به همراه یک "=" و مشخصات دستگاه بلوکی میزبانی‌کننده داده‌های رمزگذاری‌شده را می‌پذیرد.

برای ورودی‌هایی که با rd.luks.uuid= یا luks.uuid= مشخص شده‌اند، دستگاه داده روی دستگاهی تنظیم می‌شود که توسط rd.luks.data= یا luks.data= برای همان UUID مربوطه مشخص شده است.

پارامتر دستگاه داده LUKS برای مشخص کردن دستگاه‌های داده رمزگذاری‌شده با هدرهای جداگانه (detached headers) که در ورودی luks.options شامل آرگومان "header=" تعیین شده‌اند کاربرد دارد. برای مثال: rd.luks.uuid=b40f1abf-2a53-400a-889a-2eccc27eaa40 rd.luks.options=b40f1abf-2a53-400a-889a-2eccc27eaa40=header=/path/to/luks.hdr rd.luks.data=b40f1abf-2a53-400a-889a-2eccc27eaa40=/dev/sdx. بنابراین در این حالت، تلاش خواهیم کرد تا دستگاه LUKS مونتاژشده از دستگاه داده "/dev/sdx" و هدر LUKS (متادیتا) قرارگرفته در فایل "/path/to/luks.hdr" را بازگشایی کنیم. این نحو در حال حاضر فقط بر اساس هر دستگاه پشتیبانی می‌شود، یعنی باید UUID دستگاه LUKS را مشخص کنید.

این پارامتر معادل فیلد دوم در crypttab(5) یعنی encrypted-device است.

rd.luks.data= فقط در initrd رعایت می‌شود، در حالی که luks.data= هم توسط سیستم اصلی و هم در initrd رعایت می‌گردد.

افزوده‌شده در نسخه 247.

luks.key=, rd.luks.key=

نام یک فایل گذرواژه را به عنوان آرگومان می‌پذیرد یا یک UUID سوپربلاک LUKS به همراه یک "=" و نام فایل گذرواژه.

برای ورودی‌هایی که با rd.luks.uuid= یا luks.uuid= مشخص شده‌اند، فایل گذرواژه روی فایلی تنظیم می‌شود که توسط rd.luks.key= یا luks.key= برای همان UUID مربوطه مشخص شده است، یا فایل گذرواژه‌ای که بدون UUID مشخص شده است.

همچنین امکان مشخص کردن یک دستگاه خارجی وجود دارد که باید قبل از تلاش برای بازگشایی دستگاه LUKS سوار (mount) شود. برنامه systemd-cryptsetup از فایل گذرواژه ذخیره‌شده در آن دستگاه استفاده خواهد کرد. دستگاه حاوی فایل گذرواژه با افزودن دو نقطه (:) و یک شناسه دستگاه به مسیر فایل گذرواژه مشخص می‌شود. برای مثال: rd.luks.uuid=b40f1abf-2a53-400a-889a-2eccc27eaa40 rd.luks.key=b40f1abf-2a53-400a-889a-2eccc27eaa40=/keyfile:LABEL=keydev. بنابراین در این حالت، تلاش خواهیم کرد تا سیستم فایلی واقع در دستگاه بلوکی با برچسب "keydev" را سوار کنیم. این نحو در حال حاضر فقط بر اساس هر دستگاه پشتیبانی می‌شود، یعنی باید UUID دستگاه LUKS را مشخص کنید.

این پارامتر معادل فیلد سوم در crypttab(5) یعنی key-file است.

rd.luks.key= فقط در initrd رعایت می‌شود، در حالی که luks.key= هم توسط سیستم اصلی و هم در initrd رعایت می‌گردد.

افزوده‌شده در نسخه 202.

luks.options=, rd.luks.options=

یک UUID سوپربلاک LUKS به همراه یک "=" و رشته‌ای از گزینه‌های جداشده با کاما را به عنوان آرگومان می‌پذیرد. این کار گزینه‌های مربوط به UUID داده‌شده را بازنویسی (override) می‌کند.

اگر فقط فهرستی از گزینه‌ها بدون UUID مشخص شود، بر روی هر UUID که در جای دیگر مشخص نشده و ورودی در /etc/crypttab ندارد اعمال می‌شود.

این پارامتر معادل فیلد چهارم در crypttab(5) یعنی options است.

امکان مشخص کردن یک دستگاه خارجی وجود دارد که باید قبل از تلاش برای بازگشایی دستگاه LUKS سوار شود. برنامه systemd-cryptsetup با ترکیب دستگاه داده مشخص‌شده در luks.data با هدر جداگانه LUKS یافت‌شده در آرگومان "header=" دستگاه LUKS را مونتاژ خواهد کرد. برای مثال: rd.luks.uuid=b40f1abf-2a53-400a-889a-2eccc27eaa40 rd.luks.options=b40f1abf-2a53-400a-889a-2eccc27eaa40=header=/luks.hdr:LABEL=hdrdev rd.luks.data=b40f1abf-2a53-400a-889a-2eccc27eaa40=/dev/sdx. بنابراین در این حالت، تلاش خواهیم کرد سیستم‌فایل موجود در دستگاه بلوکی با برچسب "hdrdev" را سوار کرده و به دنبال "luks.hdr" در آن سیستم‌فایل بگردیم. هدر مذکور برای بازگشایی (رمزگشایی) داده‌های رمزگذاری‌شده ذخیره‌شده در /dev/sdx استفاده خواهد شد. این نحو در حال حاضر فقط بر اساس هر دستگاه پشتیبانی می‌شود، یعنی باید UUID دستگاه LUKS را مشخص کنید.

rd.luks.options= فقط توسط دیسک رم اولیه (initrd) رعایت می‌شود، در حالی که luks.options= هم توسط سیستم اصلی و هم در initrd رعایت می‌گردد.

افزوده‌شده در نسخه 208.

systemd(1), crypttab(5), systemd-cryptsetup@.service(8), systemd-cryptenroll(1), cryptsetup(8), systemd-fstab-generator(8)

systemd 261.2