tgindex

| کانال گنو/لینوکس |

описание

⭕️ کانال گنو/لینوکس دولوپیکس 💠 دولوپیکس | جامعه توسعه‌دهندگان ایرانی 💎 @Developix 🚀 Developix.ir 📌 پشتیبانی و تبلیغات: @DevelopixSupport

2 822
подписчиков

Лучшие посты

за три месяца
  • 24 мая1 190 просмотров5 реакций14 пересылок

    اسکریپت‌نویسی Bash یکی از مفیدترین مهارت‌ها برای هر کاربر گنو/لینوکس است. با چند خط کد می‌شود کارهایی مثل بکاپ، تمیز کردن لاگ‌ها، یا همگام‌سازی پوشه‌ها را کاملاً خودکار کرد. این پست یک مثال واقعی و قابل‌استفاده از یک اسکریپت بکاپ خانگی می‌دهد که می‌شود روی هر distro اجراش کرد. 🙂 ایده ساده است: چند پوشه مهم (مثلاً ‎~/Documents و ‎~/Projects) را با `tar` فشرده کنیم، اسم فایل را بر اساس تاریخ بگذاریم، و در یک مسیر امن ذخیره کنیم. بعداً می‌توان این اسکریپت را در `cron` یا `systemd timer` گذاشت تا خودکار اجرا شود. این مثال با الهام از مستندات رسمی Bash و man pageهای `tar(1)` و `date(1)` نوشته شده (روی هر سیستم می‌شود با `man tar` و `help test` جزئیات بیشتر را دید). ✨ اسکریپت نمونه: #!/usr/bin/env bash set -euo pipefail SOURCE_DIRS=("$HOME/Documents" "$HOME/Projects") BACKUP_DIR="$HOME/backups" DATE=$(date +"%Y-%m-%d_%H-%M-%S") BACKUP_FILE="$BACKUP_DIR/home-backup-$DATE.tar.gz" mkdir -p "$BACKUP_DIR" for dir in "${SOURCE_DIRS[@]}"; do if [[ ! -d "$dir" ]]; then echo "هشدار: پوشه $dir پیدا نشد، رد می‌شود." >&2 fi done # ایجاد آرشیو فشرده tar -czpf "$BACKUP_FILE" \ --exclude="$HOME/.cache" \ "${SOURCE_DIRS[@]}" echo "بکاپ ساخته شد: $BACKUP_FILE" چند نکته مهم از دل این اسکریپت: • ‎`set -euo pipefail` کمک می‌کند اسکریپت در صورت خطا فوراً متوقف شود و از باگ‌های عجیب جلوگیری می‌کند. • از آرایه Bash برای لیست پوشه‌ها استفاده شده؛ اضافه کردن مسیر جدید فقط با ویرایش `SOURCE_DIRS` انجام می‌شود. • با `--exclude` جلوی بکاپ شدن چیزهای بی‌مصرف (مثل ‎~/.cache) گرفته می‌شود؛ این کار فضا و زمان را به‌طرز محسوسی کم می‌کند. برای استفاده عملی، فایل را مثلاً با نام `backup-home.sh` در ‎`~/bin` ذخیره و executable کنید: chmod +x ~/bin/backup-home.sh بعد می‌شود با اضافه کردن یک entry ساده در `crontab`، این بکاپ را مثلاً هر شب اجرا کرد (‎`crontab -e` را ببینید، طبق مستندات `man 5 crontab`). این اسکریپت پایه خوبی است برای ساختن یک سیستم بکاپ جدی‌تر: می‌شود log اضافه کرد، روی remote server با `ssh` کپی کرد، یا rotation برای پاک کردن بکاپ‌های خیلی قدیمی گذاشت. یک بار روی یک پوشه کوچک تست، بعد کم‌کم روی داده‌های مهم پیاده‌سازی شود و نسخه‌های مختلف امتحان شود. اگر به‌دردتان خورد، اسکریپت خودتان را با بقیه لینوکسی‌ها به اشتراک بگذارید. 🚀 🔖 #Linux #لینوکس #Linux #Bash #Shell #Backup #GNU/Linux #tar #cron 👤 Developix 💎 Channel: @DevelopixLinux

  • 23 июн.998 просмотров7 реакций7 пересылок

    خیلی وقت‌ها توی گنو/لینوکس لازم می‌شه یک کار تکراری رو روی چند تا فایل یا چند تا مقدار انجام بدیم؛ مثلا چند بار یک دستور رو با ورودی‌های مختلف اجرا کنیم. این‌جا یک ترفند خیلی ساده با حلقهٔ for و here-string توی Bash کمک بزرگی می‌کنه. 😎 فرض کن لازم باشه روی سه تا سرور یا سه تا فایل، یک دستور مشابه اجرا بشه؛ به‌جای کپی‌پیست پشت‌سرهم: for name in app1 app2 app3; do echo "Building $name ..." make "$name" done یک الگوی خیلی کاربردی دیگه برای دستورهایی مثل ping یا ssh: while read host; do echo "Checking $host ..." ping -c 1 "$host" && echo OK done <<EOF server1 server2 server3 EOF ✨ این مدل حلقه‌ها: • خطاهای تایپی تکراری رو کم می‌کنن. • اسکریپت‌هات رو قابل‌تغییر و قابل‌توسعه‌تر می‌کنن. امتحان روی یک کار کوچیک روزمره، خیلی زود عادت می‌شه و سرعت کار با ترمینال رو بالا می‌بره. 🚀 منبع: Bash Manual – Loops 🔖 #Linux #لینوکس #Linux #Bash #Shell #Loop #CLI #Scripting 👤 Developix 💎 Channel: @DevelopixLinux

  • 8 июн.983 просмотров5 реакций21 пересылок

    اگه همیشه چند تا ترمینال باز داری، بین ssh سرورها جابه‌جا می‌شی و هی پنجره‌ها گم می‌شن، tmux دقیقا همون چیزیه که زندگیت رو روی ترمینال راحت‌تر می‌کنه 😄 اینجا یه معرفی عملی و سریع از tmux بر اساس راهنمای رسمی: https://github.com/tmux/tmux/wiki 🧱 tmux دقیقا چیه؟ tmux یه terminal multiplexerـه؛ یعنی توی یه ترمینال می‌تونی چند تا "پنجره" و "پن" (split) داشته باشی، سشن‌هات رو نگه داری، از ssh قطع بشی ولی پروسه‌هات زنده بمونن. مثلا یه سشن برای لاگ‌ها، یکی برای ویرایش config و یکی برای اجرای scriptها؛ همه زیر یه اتصال ssh که اگه قطع هم بشه، چیزی نمی‌پره 👌 🛠 نصب سریع روی توزیع‌های مختلف روی Debian/Ubuntu: sudo apt update && sudo apt install tmux روی Fedora: sudo dnf install tmux روی Arch: sudo pacman -S tmux بعد از نصب، فقط بزن: tmux و وارد اولین سشن خودت می‌شی. 📌 شروع کار: پنجره و پن‌ (split) کلید اصلی tmux اینه: Ctrl+b = prefix یعنی هر کاری می‌خوای بکنی، اول Ctrl+b، بعد دکمه‌ی مورد نظر. چندتا چیز کاربردی روزمره: • ساخت پن جدید افقی: Ctrl+b بعد " • ساخت پن عمودی: Ctrl+b بعد % • جابه‌جایی بین پن‌ها با جهت‌ها: Ctrl+b + کلیدهای جهت (← ↑ → ↓) • ساخت پنجره (window) جدید: Ctrl+b بعد c • جابه‌جایی بین پنجره‌ها: Ctrl+b بعد n (بعدی) یا p (قبلی) ✨ یه مثال واقعی: مانیتور لاگ + ویرایش کانفیگ سناریو کلاسیک sysadmin: ۱) با ssh وصل شو به سرور. ۲) tmux رو اجرا کن: tmux ۳) پن رو عمودی split کن (بالا لاگ، پایین ویرایش): بالا: journalctl -u nginx -f پایین: فایل کانفیگ nginx رو ویرایش کن: sudo vim /etc/nginx/nginx.conf همزمان لاگ‌ها رو live می‌بینی و config رو تغییر می‌دی، بدون نیاز به چند تا ترمینال جدا. 🔁 جدا شدن و دوباره وصل شدن به سشن قلب ماجرا این‌جاست. وسط کار اگه نت قطع بشه یا ssh ببنده، tmux سشن‌ت زنده می‌مونه. • جدا شدن (detach): Ctrl+b بعد d حالا می‌تونی ssh رو ببندی، بعدا که برگشتی: tmux attach همون جایی میای که کار رو رها کرده بودی، لاگ، vim، هرچی. 🧩 یه config ساده و مفید اگه دوست داری کلید prefix رو مثل screen یا راحت‌تر کنی، مثلا Ctrl+a، یه فایل ~/.tmux.conf بساز: set -g prefix C-a unbind C-b bind C-a send-prefix بعد tmux رو از داخلش با این دستور reload کن: tmux source-file ~/.tmux.conf از اینجا به بعد، prefix می‌شه Ctrl+a. ⚠ چند نکته ریز ولی مهم • اگه چند تا سشن داری، لیستشون: tmux ls • attach به یه سشن مشخص: tmux attach -t mysession • ساخت سشن با اسم مشخص، مخصوصا برای هر پروژه: tmux new -s myproject 🌱 جمع‌بندی اگه زیاد با ssh، لاگ‌ها، build طولانی یا کارهای شبانه‌روزی روی سرور سروکله می‌زنی، tmux یکی از اون ابزارهایی‌ه که بعد از یه مدت بدونش واقعا سخته کار کردن. یه سشن ساده بساز، دو سه تا split试 کن و کم‌کم بذار عضوی از workflow روزمره‌ات بشه. بعدا هر ترفند جدیدی یاد گرفتی، به بقیه هم منتقل کن 🙌 🔖 #Linux #لینوکس #Linux #tmux #Terminal #Shell #Sysadmin #GNU/Linux 👤 Developix 💎 Channel: @DevelopixLinux

  • 16 июн.975 просмотров9 реакций8 пересылок

    💠 نسخه جدید کرنل لینوکس (Linux) منتشر شده است 🔸 ارتقا از نسخه 7.0.12 به 7.1.0 🔹 لیست تغییرات این نسخه: - اصلاح باگ‌های مهم KVM روی معماری arm64 - بهبود سازگاری و انطباق کنترلرهای USB SuperSpeed - رفع مشکل دستگاه‌های شبح USB روی پورت‌های دوحالته Tegra - پایداری بهتر لینک QSGMII در PHYهای LAN8814 - افزایش ایمنی دسترسی‌های PMBus/GPIO در درایور ADM1266 - بهبودهای ریز متعدد درایورها و زیرسیستم‌ها و غیره 🔖 #linux, #linux, #release 💎 @DevelopixLinux

  • 8 июл.876 просмотров8 реакций8 пересылок

    🧲 فیلتر کردن خروجی‌های شلوغ با grep و less خیلی وقت‌ها خروجی یه دستور توی ترمینال انقدر زیاده که پیدا کردن چیز موردنظر عذاب می‌شه. یه ترکیب ساده با grep و less هم سرعت می‌ده هم چشم رو خسته نمی‌کنه 😄 ✨ ایده: خروجی رو هم‌زمان هم فیلتر کن، هم قابل اسکرول نگه دار. مثال کاربردی برای دیدن فقط خط‌های مربوط به error توی dmesg: dmesg | grep -i "error" | less -R یا دیباگ سریع لاگ nginx: sudo tail -f /var/log/nginx/error.log | grep --line-buffered 500 🔍 نکات مهم: - -i توی grep یعنی case-insensitive بودن. - --line-buffered باعث می‌شه خروجی استریم مثل tail -f با تاخیر نیاد. - less -R رنگ‌ها (ANSI colors) رو حفظ می‌کنه. این ترکیب توی لاگ‌خوانی، دیباگ سریع و مانیتورینگ لحظه‌ای خیلی کمک می‌کنه. دفعهٔ بعد که با یه خروجی چندصد‌خطی روبه‌رو شدی، فقط آروم پایپ‌ها رو بچین و تمرکز رو بذار روی همون چیزی که مهمه 🧪 🔗 مرجع: man grep 🔖 #Linux #لینوکس #linux #terminal #grep #less #logs #debugging #shell 👤 Developix 💎 Channel: @DevelopixLinux

  • 13 июл.862 просмотров10 реакций7 пересылок

    💠 نسخه جدید توزیع دبیان (Debian) منتشر شده است 🔸 ارتقا از نسخه 13.5.0 به 13.6.0 🔖 #debian, #linux, #release 💎 @DevelopixLinux

  • 16 июн.772 просмотров1 реакций

    🏆آفرهای جام جهانی ۲۰۲۶ هاست‌ایران فعال شد! با کمپین «ترکیب برنده سایتت»، زیرساخت سایتت رو برای روزهای پرترافیک آماده کن: 🔥 ۲۵٪ تخفیف روی پلن‌های ۳ ماهه هاست اشتراکی ایران ⚡ ۵۰٪ تخفیف روی پلن‌های یک‌ماهه سرویس ابری در دیتاسنترهای تهران، مشهد و اهواز 🧠 مشاوره رایگان زیرساخت توسط کارشناسان هاست‌ایران فرصت استفاده از تخفیف‌ها و ثبت فرم مشاوره محدود است. 📌 برای کپی کدهای تخفیف و ثبت‌نام در فرم مشاوره، روی لینک زیر کلیک کنید: 📌صفحه فرم مشاوره 📌تلگرام هاست‌ایران 📌بله هاست‌ایران #هاست_ایران #سرور_ابری_هاست_ایران #هاست_اشتراکی #دیتاسنتر #مشاوره_زیرساخت #جام_جهانی2026

  • 22 июл.586 просмотров1 пересылок

    با Migration Boost هاست‌ایران، برای مهاجرت به سرور ابری دوباره هزینه ترافیک نده! 🚀 با خرید اولین سرور ابری غیرساعتی از **هاست‌ایران**، بسته ترافیک هدیه مهاجرت به‌صورت خودکار برای سرویس شما فعال می‌شود: ✅ حداقل ۱۰۰ گیگابایت ترافیک هدیه مهاجرت ✅ افزایش حجم هدیه متناسب با ظرفیت دیسک اولیه ✅ ترافیک آپلود رایگان ✅ بدون محدودیت زمانی سرور ابری هاست‌ایران را راه‌اندازی کنید و بکاپ‌ها، فایل‌ها و پایگاه داده خود را بدون دغدغه هزینه‌های پنهان ترافیک منتقل کنید. 👇 مشاهده پلن‌های سرور ابری هاست‌ایران hostiran.club/Migration hostiran.club/Migration

  • 28 июл.487 просмотров3 реакций1 пересылок

    🗺 نقشه گنج | بهترین مسیرهای یادگیری بعد از +Network دوره +Network فقط شروع مسیره؛ اما سوال خیلی‌ها بعد از گذروندن این دوره اینه که: حالا کدوم مسیر رو ادامه بدم؟ 🤔 شبکه؟ امنیت؟ سرور؟ لینوکس؟ Cloud؟ DevOps؟ در ایونت آنلاین روز یکشنبه بررسی می‌کنیم: 🔹 بعد از +Network چه مسیرهایی پیش روی توئه 🔹 هر مسیر برای چه افرادی مناسب‌تره 🔹 برای ورود به هر حوزه چه مهارت‌هایی لازمه پس اگر بعد از +Network نمی‌دونی قدم بعدی چیه، این ایونت می‌تونه مسیرت رو روشن‌تر کنه!📍 📅11 مرداد | ساعت 19:30 💻 آنلاین و رایگان 👤با استاد حسام‌الدین موسوی‌زاده برای شرکت در ایونت جزو اولین نفرات رزرو کن: (بدون VPN وارد شو) 🔗https://l.cando.ac/ev-net101 🌻 آموزشگاه مهندسی کندو | We CanDo IT @cando_ac

  • 7 авг.318 просмотров6 реакций10 пересылок

    روی سرور یا سیستم شخصی ناگهان همه‌چیز کند می‌شود، فن‌ها جیغ می‌زنند و فقط یک سوال توی ذهن می‌چرخد: «چی داره این‌همه CPU و Disk می‌خوره؟» 🤯 دو تا ابزار ساده و خیلی کاربردی برای همین موقع‌ها هست: htop و iotop. نسخهٔ ارتقایافتهٔ top و یک مانیتور قشنگ برای I/O دیسک. ۱️⃣ نصب روی توزیع‌های مختلف Debian/Ubuntu: sudo apt update sudo apt install htop iotop Fedora: sudo dnf install htop iotop Arch: sudo pacman -S htop iotop ۲️⃣ htop: دید سریع از پردازه‌ها و منابع ⚙️ با اجرای سادهٔ htop یک نمای رنگی و زنده از سیستم می‌بینی: • نوارهای رنگی بالای صفحه: مصرف CPU، RAM، Swap به‌صورت ریل‌تایم. • لیست پردازه‌ها با رنگ‌بندی: پروسه‌های پرمصرف سریع به چشم می‌آیند. چند کلید خیلی کاربردی: • F6 برای تغییر sort (مثلاً بر اساس %CPU یا %MEM). • F3 برای جست‌وجوی نام پروسه (مثلاً «firefox»). • F9 برای ارسال سیگنال (مثلاً KILL) به پروسه‌ای که گیر کرده. یه ترفند خوب: وقتی سیستم کند می‌شه، htop رو باز کن و sort رو بذار روی %CPU یا TIME+ تا ببینی کدوم سرویس از صبح تا حالا داره می‌جوه و ول نمی‌کنه 🙂 ۳️⃣ iotop: وقتی مشکل از دیسکه، نه CPU 💽 خیلی وقت‌ها CPU بیکاره ولی سیستم لَگ داره؛ معمولاً مشکل از I/O دیسکه. با این دستور می‌تونی پردازه‌هایی که دیسک رو له کرده‌اند ببینی: sudo iotop -o -P • سوییچ -o فقط پردازه‌هایی رو که واقعاً الان I/O دارن نشون می‌ده (خروجی تمیزتر). • سوییچ -P نمایش per-process (به‌جای per-thread) رو فعال می‌کنه. ستون‌های مهم: • DISK READ و DISK WRITE: سرعت خوندن/نوشتن هر پروسه. • SWAPIN: اگر این بالا باشه یعنی سیستم داره زیاد swap می‌کنه و احتمالاً RAM کمه. ۴️⃣ یک سناریوی واقعی: پیدا کردن سرویس دردسرساز 🔍 فرض کن روی یک سرور backup شبانه فعال شده و صبح سرور افتضاح کند شده. کاری که معمولاً انجام می‌شه: 1. با htop نگاه می‌کنی ببینی CPU رو کی می‌خوره (مثلاً یک tar یا gzip سنگین). 2. هم‌زمان با sudo iotop -o -P چک می‌کنی کدوم پروسه دیسک رو ۱۰۰٪ گرفته (مثلاً یک اسکریپت backup اشتباه کانفیگ شده). 3. اگر لازم شد، با F9 در htop به‌صورت کنترل‌شده kill می‌کنی و بعد سر فرصت اسکریپت رو اصلاح می‌کنی. ۵️⃣ مستندات رسمی برای کندوکاو بیشتر 📚 man pageها همیشه دوستت هستن: man htop man iotop برای جزئیات کامل‌تر htop می‌تونی به پروژهٔ اصلیش هم سر بزنی: htop.dev در اولین فرصت که سیستم یه کم سنگین شد، این دو تا ابزار رو اجرا کن و چند دقیقه باهاشون بازی کن؛ بعد از یکی دو بار استفاده، تبدیل می‌شن به اولین چیزی که در هر کندی سیستم سراغش می‌ری 🚀 🔖 #Linux #لینوکس #Linux #htop #iotop #Monitoring #Sysadmin #CLI #GNU/Linux 👤 Developix 💎 Channel: @DevelopixLinux