JOURNAL-UPLOAD.CONF(5) journal-upload.conf JOURNAL-UPLOAD.CONF(5)

journal-upload.conf - فایل پیکربندی ارسال گزارشهای ژورنال به سرور راه دور

/etc/systemd/journal-upload.conf

/run/systemd/journal-upload.conf

/usr/lib/systemd/journal-upload.conf

/etc/systemd/journal-upload.conf.d/*.conf

/run/systemd/journal-upload.conf.d/*.conf

/usr/lib/systemd/journal-upload.conf.d/*.conf

این فایل‌ها پارامترهای مختلف systemd-journal-upload.service(8) را پیکربندی می‌کنند. برای توضیح کلی درباره نحوه نگارش و ساختار، به systemd.syntax(7) مراجعه کنید.

پیکربندی پیش‌فرض در زمان کامپایل تعیین می‌شود، بنابراین پیکربندی تنها زمانی مورد نیاز است که انحراف از آن مقادیر پیش‌فرض لازم باشد. فایل پیکربندی اصلی از یکی از دایرکتوری‌های فهرست‌شده به ترتیب اولویت بارگذاری می‌شود و تنها اولین فایل یافت‌شده مورد استفاده قرار می‌گیرد: /etc/systemd/، /run/systemd/، /usr/local/lib/systemd/ [1]، /usr/lib/systemd/. نسخه ارائه‌شده توسط توزیع‌کننده (vendor) شامل ورودی‌های کامنت‌شده‌ای است که مقادیر پیش‌فرض را به عنوان راهنمای مدیر سیستم نشان می‌دهد. بازنویسی‌های محلی را می‌توان با ایجاد قطعه‌کدهای پیکربندی تکمیلی (drop-in) مطابق توضیحات زیر نیز انجام داد. فایل پیکربندی اصلی را نیز می‌توان برای این منظور ویرایش کرد (یا یک رونوشت در /etc/ اگر در /usr/ عرضه شده باشد)، با این وجود استفاده از فایل‌های تکمیلی (drop-in) برای پیکربندی محلی نسبت به تغییر فایل پیکربندی اصلی توصیه می‌شود.

علاوه بر فایل پیکربندی اصلی، قطعه‌کدهای پیکربندی تکمیلی (drop-in) از دایرکتوری‌های /usr/lib/systemd/*.conf.d/، /usr/local/lib/systemd/*.conf.d/ و /etc/systemd/*.conf.d/ خوانده می‌شوند. این فایل‌های تکمیلی اولویت بالاتری دارند و فایل پیکربندی اصلی را بازنویسی می‌کنند. فایل‌های موجود در زیردایرکتوری‌های پیکربندی *.conf.d/ صرف‌نظر از اینکه در کدام‌یک از زیردایرکتوری‌ها قرار دارند، بر اساس نام فایل خود به ترتیب واژه‌نگاری (lexicographic) مرتب می‌شوند. هنگامی که چندین فایل یک گزینه یکسان را تعیین می‌کنند، برای گزینه‌هایی که فقط یک مقدار منفرد را می‌پذیرند، ورودی موجود در فایلی که آخرین ترتیب را دارد اولویت می‌یابد، و برای گزینه‌هایی که فهرستی از مقادیر را می‌پذیرند، ورودی‌ها به همان ترتیبی که در فایل‌های مرتب‌شده ظاهر می‌شوند جمع‌آوری می‌گردند.

هنگامی که بسته‌ها نیاز به سفارشی‌سازی پیکربندی دارند، می‌توانند فایل‌های تکمیلی را در /usr/ نصب کنند. فایل‌های موجود در /etc/ برای مدیر سیستم محلی رزرو شده‌اند، که می‌تواند از این منطق برای بازنویسی فایل‌های پیکربندی نصب‌شده توسط بسته‌های توزیع‌کننده استفاده کند. برای بازنویسی قطعات تکمیلی بسته، باید از فایل‌های تکمیلی استفاده شود، زیرا فایل پیکربندی اصلی اولویت پایین‌تری دارد. توصیه می‌شود نام تمام فایل‌ها در این زیردایرکتوری‌ها با یک عدد دورقمی و یک خط تیره پیشوندگذاری شود تا مرتب‌سازی آن‌ها ساده‌تر گردد. این کار همچنین مفهوم اولویت‌های تکمیلی را تعریف می‌کند تا به توزیع‌کنندگان سیستم‌عامل اجازه دهد فایل‌های تکمیلی را در محدوده خاصی پایین‌تر از محدوده مورد استفاده کاربران عرضه کنند. این امر خطر بازنویسی تصادفی فایل‌های تکمیلی تعریف‌شده توسط کاربران را با فایل‌های تکمیلی بسته‌ها کاهش می‌دهد. توصیه می‌شود از محدوده 10-40 برای فایل‌های تکمیلی در /usr/ و از محدوده 60-90 برای فایل‌های تکمیلی در /etc/ و /run/ استفاده شود، تا اطمینان حاصل گردد که فایل‌های تکمیلی محلی و گذرا بر فایل‌های تکمیلی عرضه‌شده توسط توزیع‌کننده سیستم‌عامل اولویت دارند.

برای غیرفعال کردن یک فایل پیکربندی ارائه‌شده توسط توزیع‌کننده، روش توصیه‌شده قرار دادن یک پیوند نمادین (symlink) به /dev/null در دایرکتوری پیکربندی در /etc/ با همان نام فایل پیکربندی توزیع‌کننده است.

تمام گزینه‌ها در بخش [Upload] پیکربندی می‌شوند:

URL=

نشانی وب (URL) برای ارسال ورودی‌های ژورنال به آن. برای شرح مقادیر ممکن، به توضیح گزینه --url= در systemd-journal-upload(8) مراجعه کنید. هیچ مقدار پیش‌فرضی وجود ندارد، بنابراین برای انجام ارسال گزارش، این گزینه یا گزینه معادل آن در خط فرمان باید همیشه مشخص شده باشد.

در نگارش 232 اضافه شد.

ServerKeyFile=

کلید SSL در قالب PEM.

در نگارش 232 اضافه شد.

ServerCertificateFile=

گواهی CA اس‌اس‌ال (SSL) در قالب PEM.

در نگارش 232 اضافه شد.

TrustedCertificateFile=

گواهی CA اس‌اس‌ال (SSL).

در نگارش 232 اضافه شد.

NetworkTimeoutSec=

هنگامی که اتصال شبکه به سرور قطع می‌شود، این گزینه مدت‌زمان انتظار برای برقراری مجدد اتصال را پیکربندی می‌کند. اگر سرور برای مدت‌زمان پیکربندی‌شده از طریق شبکه در دسترس نباشد، systemd-journal-upload خارج می‌شود. مقداری بر حسب ثانیه (یا در سایر واحدهای زمانی اگر با "ms"، "min"، "h" و غیره پسوندگذاری شود) می‌پذیرد. برای جزئیات بیشتر، به systemd.time(7) مراجعه کنید.

در نگارش 249 اضافه شد.

Compression=

الگوریتم فشرده‌سازی را که باید قبل از ارسال روی داده‌های گزارش اعمال شود پیکربندی می‌کند. فهرستی از الگوریتم‌های فشرده‌سازی جداشده با فاصله، یا "no" را می‌پذیرد. الگوریتم‌های پشتیبانی‌شده عبارتند از "zstd"، "xz" یا "lz4". به صورت اختیاری، هر الگوریتم می‌تواند با یک دونقطه (":") و سطح فشرده‌سازی آن دنبال شود، برای مثال "zstd:4". انتظار می‌رود سطح فشرده‌سازی یک عدد صحیح مثبت باشد. هنگامی که "no" تعیین شود، هیچ الگوریتم فشرده‌سازی روی داده‌های ارسالی اعمال نخواهد شد. این گزینه می‌تواند چندین بار مشخص شود. اگر یک رشته خالی اختصاص داده شود، تمام تخصیص‌های قبلی پاک می‌شوند. مقدار پیش‌فرض تنظیم‌نشده (unset) است و تمام الگوریتم‌های فشرده‌سازی پشتیبانی‌شده با سطوح فشرده‌سازی پیش‌فرض آن‌ها فهرست می‌شوند.

مثال:

Compression=zstd:4 lz4:2

حتی در زمانی که فشرده‌سازی فعال باشد، درخواست‌های اولیه بدون فشرده‌سازی ارسال می‌شوند. فشرده‌سازی تنها زمانی اثرگذار می‌شود که "ForceCompression=" فعال باشد، یا اینکه پاسخ سرور حاوی هدرهای "Accept-Encoding" همراه با فهرستی از الگوریتم‌های فشرده‌سازی باشد که شامل یکی از الگوریتم‌های مشخص‌شده در این گزینه است.

در نگارش 258 اضافه شد.

ForceCompression=

یک مقدار بولی می‌پذیرد، استفاده از فشرده‌سازی را بدون مذاکره بر سر کدگذاری محتوا الزامی می‌کند. پیش‌فرض "false" است.

در نگارش 258 اضافه شد.

Header=

یک هدر HTTP اضافی را برای اضافه شدن به هر درخواست به یک URL مشخص می‌کند. یک جفت نام و مقدار هدر جداشده با دونقطه (":") می‌پذیرد، مانند "Name:Value". نام هدر علاوه بر این می‌تواند شامل نویسه‌های حرفی-عددی، نمادهای "_" و "-" باشد. این گزینه ممکن است بیش از یک بار مشخص شود که در این حالت تمام هدرهای فهرست‌شده تنظیم خواهند شد. اگر نام هدر یکسانی بیش از یک بار فهرست شود، تمام مقادیر یکتای آن با کاما به یکدیگر متصل می‌شوند. تنظیم Header= روی یک رشته خالی تمام تخصیص‌های قبلی را پاک می‌کند.

مثال:

Header=HeaderName: HeaderValue
Header=HeaderName: NewValue
Header=HeaderName: HeaderValue

هدر "HeaderName" را با مقدار "HeaderValue, NewValue" به هر درخواست HTTP اضافه می‌کند.

در نگارش 258 اضافه شد.

systemd-journal-upload.service(8)، systemd(1)، systemd-journald.service(8)

1.
💣💥🧨💥💥💣 لطفاً توجه داشته باشید که این فایل‌های پیکربندی باید همیشه در دسترس باشند. اگر /usr/local/ یک پارتیشن جداگانه باشد، ممکن است در مراحل اولیه بوت در دسترس نباشد و نباید برای پیکربندی استفاده شود.
systemd 261.2