انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید


ارائه ۲۴٫۱۰ اوبونتو منتشر شد 🎉

نویسنده موضوع: محدودیت حجمی کاربران  (دفعات بازدید: 478 بار)

0 کاربر و 2 مهمان درحال مشاهده موضوع.

آفلاین sbrt

  • Newbie
  • *
  • ارسال: 4
  • جنسیت : پسر
    • ندارم
محدودیت حجمی کاربران
« : 04 بهمن 1401، 02:57 ق‌ظ »
سلام وقت بخیر .بنده در اوبونتو تعدادی یوزر تعریف کردم با دستور sudo adduser username , براشون تاریخ انقضا هم تعریف کردم وخواستم بدونم چطور میشه برای هرکدوم از یوزر ها جداگانه محدودیت حجمی مشخص کرد که مقدار مشخصی از منابع سرور نظیر ترافیک رو بتونه مصرف کنه ؟

آفلاین دانیال بهزادی

  • ناظر انجمن
  • *
  • ارسال: 19720
  • جنسیت : پسر
  • Urahara Kiesuke
    • وبلاگ
پاسخ : محدودیت حجمی کاربران
« پاسخ #1 : 04 بهمن 1401، 10:57 ق‌ظ »
تنها محدودیتی که خود سیستم‌عامل به شما می‌ه، محدودیت فضای ذخیره است. محاسبهٔ بقیه به این سادگی‌ها نیست. شاید برنامه‌ای براش باشه، شاید هم نه.
اگه این ارسال بهت کمک کرد، دنبال دکمهٔ تشکر نگرد. به جاش تو هم به جامعهٔ آزادت کمک کن

آفلاین جادی

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 1610
    • در دفاع از آزادی بیان
پاسخ : محدودیت حجمی کاربران
« پاسخ #2 : 04 بهمن 1401، 01:55 ب‌ظ »
یک روش که استفاده از limits.conf است برای محدود کردن دسترسی ها.
برای دیسک هم quota رو ببین.
و مشخصه که کلی ابزار دیگه هم هست.
آزادی کیبورد حق هر انسان است - جادی

آفلاین sbrt

  • Newbie
  • *
  • ارسال: 4
  • جنسیت : پسر
    • ندارم
پاسخ : محدودیت حجمی کاربران
« پاسخ #3 : 04 بهمن 1401، 11:22 ب‌ظ »
خب میشه مثلا بفرمایید برای یک یوزر که ما تعریف میکنیم چظوری این محدودیت رو با چه دستوری ایجاد کنیم از طریق limits.conf

آفلاین Dragon-

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 5124
  • جنسیت : پسر
پاسخ : محدودیت حجمی کاربران
« پاسخ #4 : 09 بهمن 1401، 04:36 ق‌ظ »
سلام

تا جایی که می‌دونم، لازم نیست دستور وارد کنید. باید چیز‌های فایل limits.conf رو تغییر بدید.
این یه فایل متنی هست و توی دایرکتوری زیر قرار داره:
/etc/security/

توی نسخه‌های جدید توزیع‌ها، توی دایرکتوری بالا، یه دایرکتوری دیگه به اسم limits.d هست. می‌تونید پیکربندی‌ها رو توی فایل‌های جدا توی اون دایرکتوری قرار بدید تا هم فایل limits.conf دست نخورده باقی بمونه و هم پیکربندی‌های مرتبط با هم، توی یه فایل قرار بگیرن.
پسوند اون فایل‌ها باید conf. باشه تا استفاده بشن.

برای اینکه بدونید فرمت اون فایل چجوری هست و چطور میشه باهاش سیستم رو تنظیم کرد، صفحه man مربوط رو ببینید.
man limits.conf

مطمئن نیستم کاری که می‌خواهید انجام بدید از طریق limits.conf ممکن باشه. تا جایی که یادمه، نمیشه باهاش محدودیت ترافیک مصرفی تعیین کرد.

یه راه دیگه این هست که از cgroup‌ها استفاده کنید. cgroup‌ها یه قابلیت توی خود کرنل لینوکس هست که میشه باهاش کنترل کرد هر پردازش چقدر به منابع مختلف سیستم مثل پردازنده، رم و غیره دسترسی داشته باشه. خود cgroup مخفف control group هست.

روند کلی اینطور هست که برای هر منبع (مثلا پردازنده) یک یا چندین گروه ایجاد می‌کنید که هر گروه یه محدودیت داره.
بعد پردازش‌ها رو عضو این گروه‌ها می‌کنید تا اون محدودیت بهشون اعمال بشه.

این برای cgroup v1 بود. نمی‌دونم روند کلی برای cgroup v2 هم همینجوره یا نه. ولی می‌دونم نحوه کار کردن با cgroup v1 با cgroup v2 متفاوته.

متاسفانه کار کردن مستقیم با cgroup‌ها زیاد راحت نیست. بهتره از یه سری ابزار مثل دستورات systemd استفاده کنید.

اینجا رو ببینید بد نیست
https://wiki.archlinux.org/title/Cgroups

اینجا هم چندین فرسته برای آشنایی با cgroup v1 هست.
https://www.redhat.com/sysadmin/cgroups-part-one

cgroup‌ها ارتباط نزدیکی با namespace‌ها دارند. شاید بتونید از namespace‌ها هم استفاده کنید.
توی همین دایرکتوری /etc/security/ یه چیز‌هایی مربوط به namespace‌ها هست. درست یادم نمیاد فایل‌های مربوط بهش چه اسمی داشتند.

البته باز هم مطمئن نیستم cgroup‌ها راه راحتی برای اعمال محدودیت ترافیک مصرفی داشته باشند.

استفاده از container‌ها مثل docker یا lxc هم یه گزینه هست. توی این مورد هم مطمئن نیستم چجوری میشه برای ترافیک مصرفی محدودیت گذاشت. 
میدونید که زکات علم نشر آن است