کانال مهرداد لینوکس – Telegram
کانال مهرداد لینوکس
3.51K subscribers
713 photos
24 videos
8 files
550 links
لینوکس حرفه ای و اخبار فنی به زبان ساده
تمام محتوای کانال تحت مجوز کرییتیو کامنز (Creative Commons license) CC BY قابل استفاده است

هشتگ:
#Linux
#AI
#Python
#Programming
#DevOps
#دیوار_لینوکس
#Utility
Download Telegram
رشته مهندسی کامپیوتر دانشگاه Open source 😎
زمان ۱۶۸ هفته آموزش در بهترین دانشگاه ها یعنی ۳ سال

🔥فهرستی از دوره‌های رایگان از دانشگاه‌های مثل MIT، استنفورد، و پرینستون که واحد های درسی را با مدرک کارشناسی علوم کامپیوتر، منهای آموزش عمومی، آماده کرده

💠 دسته بندی خیلی خوبی ارائه شده
https://github.com/ForrestKnight/open-source-cs
https://github.com/ossu/computer-science
4👍3🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
متن داخل عکس، روی دسکتاپ، هرجا که نمیشه کپی کرد را ۳ سوت کپی کن 😎

به شدت کاربردی 😍
🔥ابزار normcap با تکنولوژی OCR از دسکتاپ شما اسکرین شات میگیره متن داخلش را استخراج میکنه کاملا آفلاین بدون نیاز به اینترنت

🗓 نصب :
برای ویندوز ، لینوکس و مک قابل استفاده و نصب است
از اینجا فایل نصب مناسب سیستم عاملت را انتخاب کن و نصب کن

✳️ برای فارسی :
موقع نصب فقط روی انگلیسی کار میکنه ، برای اضافه کردن فارسی روی چرخ دنده کلیک کنید و مدل ترین شده فارسی را اضافه کنید

⁉️اگر سوالی بود در بخش کامنت ها بپرسید 😎
#AI #OCR
👍5🔥2
در موسیقی وصدا دستی بر آتش دارید 😎؟
نرم افزار DISTRHO Cardinal مبتنی بر سینتی سایزر ماژولار مجازی VCV Rack به صورت آنلاین یا سلف هاست
آزاد و متن باز شما را به ۱۰۰ها پلاگین synthesizer متصل میکنهنسخه لایو به راحتی قابل تست است
#موسیقی #music
ابزار doggo مثل dig و nslookup در #لینوکس برای Query گرفتن از DNS با امکانات بیشتر

🗓 با go نوشته شده خروجی کنترل شده داره
از DoH DoT DoQ و DNSCrypt هم پشتیبانی میکنه

✳️بخش وب این ابزار را در اینجا میتوانید تست کنید

✳️ خروجی JSON
با اپشن JSON میتوانید خروجی را jSON پردازش کنید
doggo mehrdadlinux.ir --json | jq '.responses[0].answers[].address'

🔥 چرا به نظر من خوبه ؟
پشتیبانی از خروجی JSON برای اسکریپت‌نویسی و تجزیه آسان
پروتکل‌های انتقال چندگانه: DoH، DoT، DoQ، TCP، UDP، DNSCrypt
پشتیبانی از تنظیمات ndots و جستجو
پشتیبانی از چندین رزلور با استراتژی‌های پرس‌وجوی قابل تنظیم
پشتیبانی از IPv4 و IPv6
رابط کاربری وب موجود
امکان Shell completions برای zsh و fish
جستجوی معکوس DNS
امکان query انعطاف‌پذیر شامل flagsهای مختلف DNS
حالت دیباگ برای عیب‌یابی
اندازه‌گیری زمان پاسخ
پشتیبانی از پلتفرم‌های مختلف

⁉️ اگر سوالی داشتید در بخش کامنت ها بنویسد 😎
#linux #لینوکس #DNS
👍7🔥2
کانال مهرداد لینوکس
ابزار doggo مثل dig و nslookup در #لینوکس برای Query گرفتن از DNS با امکانات بیشتر 🗓 با go نوشته شده خروجی کنترل شده داره از DoH DoT DoQ و DNSCrypt هم پشتیبانی میکنه ✳️بخش وب این ابزار را در اینجا میتوانید تست کنید ✳️ خروجی JSON با اپشن JSON میتوانید…
پیام دادن که go تحریمه و ابزار doggo نصب نمیشه. حتی Proxychain هم روش کار نمیکنه 😭

تاجایی که من میدونم
💠 نرم افزار، Proxychain کتابخانه libc را dynamic link میاد hook میکنه
💠 چون go ساختار syscall wrappers خودش را داره و static link است پس نباید کارکنه

🗓 برای حل مشکل پروکسی go : روی git یک پروکسی ست کنید
git config --global http.proxy

مشکل حل میشه 😎

⁉️ دوستان متخصص زبان گو شاید راهکار های بهتری بلد باشند که خوشحال میشوم بنویسد
اگر بوس میخواهید باید از یک جایی شروع کنید دیگه 😁 :
صدها فرشته بوسه بر آن دست می زنند کز کار خلق یک گره بسته وا کند

دوست عزیزمون Spring در کامنت ها پیشنهاد دادن از ساختار زیر استفاده کنیم
Set GOPROXY environment
Bash (Linux or macOS)
export GOPROXY=https://goproxy.io,direct
PowerShell (Windows)
$env:GOPROXY = "https://goproxy.io,direct"
🙏6🔥43👍2🥰2
در برنامه نویسی، برای مقایسه ی تغییرات یک مخزن کنترل نسخه Git با git diff روی Commit، شاخه، فایل و .. مشکل syntax-highlighting داشتم 🤔

ابزار delta این مشکل را حل کرد 😎

🗓 نصب :
برای نصب از این لینک بسته به توزیع لینوکس خودتان یا ویندوز و ... استفاده کنید
🗓 آموزش و نکات :
در فایل ~/.gitconfig باید تنظمیات را بسنه به نیاز خودتان اضافه کنید
[core]
pager = delta
[interactive]
diffFilter = delta --color-only
[delta]
navigate = true # use n and N to move between diff sections
side-by-side = true #برای نمایش به صورت کنار هم در عکس میبینید
line-numbers = true # برای شماره گذاری خطوط
# delta detects terminal colors automatically; set one of these to disable auto-detection
# dark = true
# light = true
[merge]
conflictstyle = diff3
[diff]
colorMoved = default

🗓 ابزار های دیگر :
این syntax-highlighting که انجام میشه برای خروجی ابزار های git, diff, grep, و blame هم قابل استفاده است

⁉️ اگر در مورد راه اندازی سوالی داشتید در بخش کامنت ها بپرسید با هم برسی کنیم 😎
👍11
❇️ برای پردازش موازی در #پایتون از multiprocessing استفاده میکردیم

در Python 3.12 مفهوم sub interpreters که از per-interpreter GIL برای نوشتن parallel code های سریع‌تر از multiprocessing معرفی شد

در Python 3.13 مفهوم free-threading که اختیاری GIL را حذف و واقعا parallel میشه

⁉️ آآیا این دو جایگزین هم هستند؟
🔥 جواب خیر : هدف ها متفاوت ، مکمل هم اند

در Sub Interpreters:
💠با Isolation جداگانه اجرا ، امنیت افزایش جلوگیری تعاملات ناخواسته
💠هزینه سربار Overhead برای وظایف کوچک‌تر.
💠مناسب برای سرورهای وب، اتصالات پایگاه داده، یا فرآیندهای طولانی‌مدت.

در Free-threading:
💠موازی‌سازی واقعی
💠حافظه اشتراکی
💠فعال سازی اختیاری GIL
💠 مناسب وظایف پردازش سنگین مثل محاسبات علمی، پردازش تصویر، یا شبیه‌سازی‌ها.

✳️ ترکیب Sub Interpreters و Free-threading:
🔥 در برخی موارد، ترکیب میتونه عملکرد حتی بهتری را ارائه بده
⁉️ کامل تر با توضیح بیشتر در کامنت ها نوشتم اگر سوالی داشتید در بخش کامنت ها بنویسد با هم در موردش صحبت کنیم 😎
#python
#python
👍5🔥21
کانال مهرداد لینوکس
برگردیم ۳۳ سال پیش یعنی ۳ شهریور ۱۳۷۰ لینوس توروالدز خالق سیستم عامل لینوکس linux، دانشجوی کامپیوتر دانشگاه هلسینکی، در سن ۲۱ سالگی، این ایمیل را به newsgroup minix ارسال کرد سلام به همه ی کاربران مینیکس! مشغول نوشتن یک سیستم عامل (رایگان) هستم (فقط برای…
تولد داریم چه تولدی 🎉🥳

یکشنبه، ۳ شهریور ۱۳۷۰ (August 25, 1991) لینوکس متولد شد

داستانش را اینجا قبلا نوشتم

مستند Revolution.OS درباره انقلاب سیستم عامل ها و لینوکس به همراه زیرنویس فارسی
تقدیم به شما
امیدوارم از این مستند لذت ببرید
🎉8🥰1
Revolution.OS.zip
692.9 MB
مستند انقلاب متن باز
12🎉1
به صورت خودکار دیتافریم های Pandas را visualize کن
نصب
یک فایل csv دارید میخواهید آن را تحلیل کنید
سریع ترین روش Autoprofiler است به عکس دقت کنید
pip install -U digautoprofiler

سورس
#python #Jupyter
👍81
سندباکس در لینوکس
در linux وقتی میگیم Sandboxing همه میرن سمت Chroot Jail ، seccomp، Namespace ، Incus شاید کمی سخت باشه
ابزار firejail ساده،کاربردی
firejail firefox

توضیحات فنی :
برنامه Firejail یک sandbox از نوع SUID که با محدود کردن محیط در حال اجرا برنامه‌های غیرقابل اعتماد با استفاده از namespaces لینوکس، seccomp-bpf و قابلیت‌های لینوکس، ریسک های امنیت را کاهش می‌دهد. Firejail به یک process و همه descendants آن اجازه می دهد تا private view خود را از globally shared kernel resources ، مانند network stack، process table، جدول mount داشته باشند. Firejail می تواند یا هم SELinux یا AppArmor کار کند

آموزش نصب:
در مخازن اصلی version 0.9.66 وجود دارد میتوانید با دستور
apt install firejail firejail-profiles

اگر نبود با ppa نسخه 0.9.72 را نصب کنید
sudo add-apt-repository ppa:deki/firejail
sudo apt-get update
sudo apt-get install firejail firejail-profiles

🔥حالا بزن مثلا
firejail firefox
firejail vlc

⁉️ اگر در کار با Firejail سوالی داشتید در بخش کامنت ها بپرسید با هم برسی کنیم 😎
#linux
👍10🔥31
برسی سلامت باتری لپ تا در لینوکس
دستور
upower --enumerate
را بزنید لیست را نمایش میدهد
upower -i [یکی از ادرس های که اسم باتری شما است]
👍11
کانال مهرداد لینوکس
ابزارdrawdb برای طراحی پایگاه داده عالیه آنلاین ، رایگان، ساده و بصری و امکان تولید کد های SQL https://drawdb.vercel.app/editor سورس کد https://github.com/drawdb-io/drawdb
ابزار قدرتمند ChartDB رقیب جدی Drawdb (بسیار شبیه)

یک ویرایشگر web-based طراحی دیاگرام دیتابیس، که database schema را با یک Smart Query میتواند سریع visualize کند و خروجی SQL noscripts بدهد

🔥 تمام این امکانات بدون حتی نیاز به لاگین
https://github.com/chartdb/chartdb

#Database
👍6
تکنیک پورت ناکینگ Port-Knocking
در خانه نشستی به دوستت میگی رمزی زنگ بزن ۴ بار دوتا دو بار من در پارکینگ را باز میکنم
همین داستان را میخواهیم برای مثلا پورت SSH کامپیوتر اجرا کنیم ؟
برای پورت X , Y ,x تعداد ۲ تا پکت بفرست برات SSH را باز میکنم

ابزار های پیاده سازی :
ابزار knockknock
ابزار knock
ابزار fwknop
یک خوبی که ابزار fwknop داره امکان پیاده سازی Single Package Authorization (SPA) هم هست
پیاده سازی با nftables

⁉️ سوالی داشتید در بخشی کامنت ها بپرسید با هم برسی کنیم 😎
👍71🔥1🤯1
کانال مهرداد لینوکس
یادگیری Regular expression (regex ، regexp یا عبارت باقاعده یا ریجکس) از نون شب واجب تره اوایل یادگیری کمی غریبی میکنه، ولی شما باش دوست باشید 🥰 بچه خوبیه اگر کمی آشنایی دارید این سایت کار شما را برای نوشتن regex آسون میکنه https://ihateregex.io/expr گیت هاب…
قبلا در مورد regex صحبت کردم
⁉️حالا اهل حل کردن جدول هستید ؟ 😁

جدول کلمات متقاطع با عبارت باقاعد regular expression regex

فکر میکنید میتونید این جدول را حل کنید ؟
از این سایت برای درست بودن عبارت میتوانید استفاده کنید

توضیح برای دوستانی که شاید آشنا نیستند
عبارت باقاعده regex یک رشته معمولی مثل این
([@.A-Z])\w+

که با پردازشگر های regex پردازش میشند و برای جستجو و مطابقت یک یا چند الگوی خاص استفاده میشوند
در سایت چطور متوجه میشن ایمیل را اشتباه وارد کردید ؟
[^@ \t\r\n]+@[^@ \t\r\n]+\.[^@ \t\r\n]+

اینجوری😁 یاد بگیرید سخت نیست

در بخش کامنت ها میتوانیم با هم بحث کنیم و حلش کنیم و بیشتر عبارت باقاعده regex یا ( regular expression) یاد بگیریم 😎

سایت منبع مسئله
🔥6🤯1
This media is not supported in your browser
VIEW IN TELEGRAM
🌲درخت تصمیم (Decision Tree)

🔥 این ابزار برای پشتیبانی از تصمیم است که از درخت‌ها برای مدل کردن استفاده می‌کند
به‌طور خاص در آنالیز تصمیم، برای مشخص کردن استراتژی که با بیشترین احتمال به هدف برسد

کاربرد :
در هوش مصنوعی AI مبحث یادگیری ماشین Machine Learning از نوع نظارت‌شده Supervised برای طبقه‌بندی یا پیش‌بینی بر اساس پاسخ سؤالات قبلی استفاده می‌شود


پکیچ supertree برای Visualize کردن درخت تصمیم با پایتون عالیه

ابزار dtreeviz یک ابزار دیگه عالی در این زمینه

ابزار graphviz که البته مثل قبلی ها تخصصی نیست

البته که با sklearn import tree هم میشه 😎
⁉️به نظر شما بهترین ابزار Visualize کردن Decision Tree کدام است ؟
#AI #python #Machine_Learning #پایتون
3👍2🔥1
کرنل پنیک (kernel panic)
کرنل پنیک یک خطای بوته که یک مشکل مانع بارگیری صحیح کرنل میشه و بوت از کار می افته که با سیستم کرش (system crash) البته فرق میکنه

🔥 این پچ روی کرنل را ببینید
https://lore.kernel.org/rust-for-linux/20240703154309.426867-1-jfalempe@redhat.com/

😎در نسخه 6.12 کرنل لینوکس Linux Kernel Panics ها با QR Codes نشون داده میشن
#linux #لینوکس
👍63
بازگشت همه به سوی اوست 😎
الستیک‌سرچ (Elasticsearch) و کیبانا (kibana)
پس از حذف مجوز Apache 2.0 در سال 2021، دوباره تحت مجوز کدباز AGPL قرار خواهند گرفت.
الستیک سرچ موتور جستجو و تحلیل متن باز و توزیع یافته
کیبانا برای تجزیه و تحلیل حجم زیادی از گزارش‌ها
https://www.elastic.co/blog/elasticsearch-is-open-source-again
1👍73🔥2👎1
یک مشکلی برای سیستم‌تون پیش میاد
دوستتون میگه خروجی دستور فلان چیه 🤔

⁉️چه کار میکنید ؟
با دوربین گوشی عکس میگیرید ؟
اسکرین شات ؟ کپی؟ 😱

با سایت termbin کل خروجی را بفرست براش
$ ls -la | nc termbin.com 9999

آموزش و توضیح :
بخش اول دستوری است که میخواهید خروجی آن را بببنید

با علامت| ( pipe یا bar معمولا بالای enter است ) خروجی را به سایت termbin.com 9999 با دستور nc منتقل میشود

در انتها یک لینک به شما مثل لینک زیر داده میشود که میتوانید روی آن کلیک کنید یا آن را برای دوستانتان بفرستید تا خروجی را ببنید مثل این خروجی

حتما یادتون باشه اطلاعات حساس را هیچ وقت از این روش منتقل ندهید

اگر میخواهید OpenSource روی سرور خودتان راه اندازی کنید fiche استفاده کنید یا
samueldobbie
opengist

برای شفافیت حتما acceptable use policy را در سایت بخوانید
سایت های مشابه دیگر
pastebin
privatebin
gist
rentry
toptal
0bin
snippet
⁉️ سوالی داشتید در بخش کامنت ها بپرسید 😎
👍83🔥2
کانال مهرداد لینوکس
انواع HTTP Request Types معنی Safe https://developer.mozilla.org/en-US/docs/Glossary/Safe/HTTP معنی idempotent https://developer.mozilla.org/en-US/docs/Glossary/Idempotent معنی Cacheable https://developer.mozilla.org/en-US/docs/Glossary/Cacheable
سرویس کاربردی httpstat برای تولید HTTP codes های مختلف

🔥برای تست نرم افزار که چطور پاسخ های مختلف HTTP را هندل میکنند

کد مورد نظرتون را انتهای httpstat.us/200 وارد کنید

🗓 کدهای وضعیت HTTP یا http status code
پاسخی است که سرور یک سایت برای مرورگر سیستم کاربر ارسال می‌کند.

کد سه رقمی که نشان میدهد شرایط دسترس به سایت کاملاً برقرار یا اینکه خطایی برای دسترسی رخ داده
✳️ مثل کد 404 برای خطای پیدا نشدن پیج مدنظر

💠 برای تست سرویس به طور مثال میتوانید از دستور زیر استفاده کنید
curl -v http://httpstat.us/404

⁉️ اگر سوالی داشتید در بخش کامنت ها بپرسید 😎
#programming #برنامه_نویسی
👍91🔥1