Linux & OpenSource
1.8K subscribers
593 photos
29 videos
49 files
926 links
اینجا از علاقمندی هام پست میزارم : )
لینوکس - بلاکچین - هوش مصنوعی - تازه های تکنولوژی
و گاهی پست های غیرمرتبط
Download Telegram
Learn jQuery_v1.0.3_sololearn.apk
5.5 MB
💥SOLO Learn💥
🌺Learn JQuery🌺
@uselinux
But Python Statement Doesn't Need to Semicolon😂😂😂✋🏻
@uselinux
💥 @uselinux
سایت‌های محبوب از چه زبان برنامه نویسی استفاده می‌کنند؟
🔹 @uselinux
💥 @uselinux
نفت یا دیتا ؟!
🔹 @uselinux
This media is not supported in your browser
VIEW IN TELEGRAM
@uselinux
وقتی کارآموز از برنامه نویس ارشد شرکت راهنمایی می‌خواد
@uselinux
🔹 @uselinux
پنیر مجانی فقط در تله موش پیدا می شود!
شبکه های Wifi عمومی قابل اعتماد نیستند. امنیت خود را به خطر نیندازید!
🔹 @uselinux
This media is not supported in your browser
VIEW IN TELEGRAM
@uselinux
صحبت های استالمن درباره مرگ استیو جابز :
من خوشحال نیستم که اون مرده اما خوشحالم که دیگه نیست , تا دوباره برای انسان ها زندان بسازد
@uselinux
✅ تاسیس کنوانسیون ژنو سایبری
@uselinux
شرکت Symantec اعلام کرده که بدافزار WannaCry توسط یکی از گروه‌های هکری وابسته به دولت کره شمالی موسوم به لازاروس تولید و به کار گرفته شده است.
@uselinux
گمانه‌زنی‌ها بر سر عامل اصلی WannaCry حائز اهمیت است چون کارشناسان با هشدار نسبت به خطرات اینگونه بدافزارها برای همه کشورهای جهان، خواهان تصویب کنوانسیونی همانند ژنو در مورد امور سایبری شده‌اند.
@uselinux
مایکروسافت داشتن کنوانسیون ژنو سایبری را راهکاری برای دفاع از بیمارستان‌ها، مراکز خدمات شهری و شهروندان عادی، در برابر تهدیدات می‌داند اما در این حال برخی کارشناسان امنیت سایبری نگران آن هستند که کنوانسیونی که قرار است همانند کنوانسیون ژنو در مورد امور سایبری تشکیل شود به دستاویزی برای محکوم کردن رقبا بدل شود.
💎 اطلاعت بیشتر: http://l1nk.ir/iXTQI
✅ @uselinux
This media is not supported in your browser
VIEW IN TELEGRAM
هوش مصنوعی- سیستم های خبره- پایتون
🆔 @ai_python
آموزش واخبار لینوکس-اوپن سورس
🆔 @uselinux
آموزش ومقالات BSD
🆔 @mabediniir
منابع پایتون
🆔 @PyRepo
گروه:
https://t.me/joinchat/AAAAAD9QzOhOWVLLTeP8Jw
💥Raspberry Pi owners: Update your Pi to protect against this Linux trojan
@uselinux
اگر رزبری پای دارید ,, رزبیان خود را آپدیت کنید ..
تروجانی با نام Linux.MulDrop.14 ورژن های قدیمی رزبیان را مورد تهاجم قرار داده است ,,
این تروجان یک بش اسکریپت است که در مرحله اول اجرا . پسورد رزبری پای را تغییر میدهد و خود را لانچ میکند و ماینر خود را راه اندازی میکند!! برای ماین کردن بیت کوین!! ..
@uselinux
و سپس تلاش میکند تا به سایر دیوایس ها و رزبری ها منتقل شود ,, از طریق پورت 22
@uselinux

صاحبان بنیاد رزبری پای توصیه کرده اند که هرچه زودتر برای رفع این مشکل رزبیان او اس (Rasbpbian OS) خود را آپدیت کنید

@uselinux

منبع :
techrepublic
#kernel #1
آموزش کرنل 😃

بیایم اول در مورد کرنل و تسک های کرنل حرف بزنیم و ی سری مباحثو بدونیم😃

این جناب کرنل قصه ی ما درواقع یه لایه ی intermediary بین سخت افزار و نرم افزار هست
اگه یه نگاه به دیکشنری بندازیم نوشته ک intermediary یعنی یه فرد یا یه چیزی ک سعی میکنه بین دو تا چیز دیگه ارتباطی راه بندازه یا کمک رسانی کنه
کرنل هم دقیقا همونطور ک گفتم لایه ی ارتباطی بین سخت افزارو نرم افزار هست
درواقع هدفش اینه که درخواست های اپلیکیشن های مارو به سخت افزار انتقال بده و مثل یه درایور سطح پایین کارش اینه ک دیوایس های داخلی و خارجی سیستم رو ادرس دهی کنه و دسترسی به کامپوننت های سیستم رو آسون😧


بابا این توضیحا چیه دیگ😐 کار این عکس پایینی رو میکنه 👇

@uselinux
#kernel #2
این کرنل عینهو یه دستگاه ارتقا یافته ی باهوش میمونه😕
تو دید اپلیکیشن اگه بگیریمش مثل یه کامپیوتر سطح بالاس
مثلا وقتی میاد یه هارد دیسک رو ادرس دهی میکنه باید تصمیم بگیره ک کدوم مسیر رو واسه کپی اطلاعات از دیسک به مموری انتخاب کنه و بعدش کجارو واسه قرار گیری دیتا تو مموری انتخاب کنه و بعد بیاد کدوم دستورارو بفرسته تو دیسک با کدوم مسیر انتخابی و کلی مبحث دیگه 😐

اینکه اپلیکیشن بیاد با سخت افزار ارتباط برقرار کنه همش ی سری کامنده که میفرسته به کرنل ... این کرنله ک کلی دردسر میکشه و کلی جزییات رو میگذرونه تا این کارو انجام بده

@uselinux

حالا اگه بیایم به کرنل به عنوان یه مدیر ریسورس یا منابع سیستممون وقتی که کلی برنامه همزمان در حال اجرا هستند نگا کنیم میبینیم ک داره کلی چیزا رو مثل زمان بندی سی پیو و کانکشن اینترنت و فضای دیسک و اینارو بین این پروسس ها تقسیم بندی میکنه😃

از ی ورم میشه مثل یه لایبرری بهش نگاه کرد🤔 ی لایبرری که کلی دستورات مرتبط به سیستم برامون اماده کرده
این system call ها همونجور ک از اسمشون پیداست واسه ارسال درخواست ب کامپیوتر استفاده میشه این درخواستا توسط یه سری کتابخونه ی استاندارد C بوجود اومدن ها😃 البته اینکه C هست توفیقی ب حال منو شمایی که C بلد نیستیم نداره چون صرفا ی سری فانکشن ها داره که با هرچیزی میتونی صداشون کنی و ازشون استفاده کنی
بهتر بگم دیگ کلاا یه سری api قشنگ قشنگ واسه این کارا داره 😃

@uselinux
#kernel #3
استراتژی های پیاده سازی 😧

آیی ملت😃 ما دو تا الگو یا همون پارادایم اصلی واسه پیاده سازی سیستم عامل ها داریم
اولیاش microkernel ها هستند و دومیاش monolithic kernel ها هستند

📌 microkernels
تو اینا فقط اون فانکشن های ابتدایی مستقیما تو کرنل اصلی قرار گرفته (میکرو کرنل رو میگم )
بقیه فانکشن ها واگذار شدن به پروسس های خود مختاری که با کرنل اصلی توسط یه سری اینترفیس های مشخص در ارتباطند مثل فایل های سیستمی و مدیریت مموری 😃
البته اینم بگم اون فانکشنای ابتدایی ک مدیریت مموری رو بر عهده دارن تو میکروکرنل هستند ولی باقی که واسه هندل سطح سیستم کال استفاده میشه تو سرور های خارجی اند.
البته ممکنه یکم گیج شده باشید تو این قسمت که منظور از سرور های خارجی چیه و غیره ...
ببینید اون سیستم عاملایی که کرنل میکرو دارن مثل nt و ویندوز و Mach یا gnu hurd فرایند های مختلف رو تو سرور های جداگانه که درون فضای آدرس (address space) مجزا قرار دارند اجرا می کنند ولی اون فانکشنا و فرایند های ابتدایی داخل خود میکرو کرنله
این پروسس هارم ک گفتیم با یه سری پیام با هم ارتباط برقرار میکنند
به این معماری بخاطر این پیاما معماری server client هم میگن 😃

📌 monolithics
تو سیستم عامل های با کرنل monolithic مثل لینوکس و BSD .. تمام سرویس ها و فرایند های موجود مربوط به کرنل مثلا ماژول های کرنل یا اکثر devices driver ها و مموری منیجمنت و فایل های سیستمی همشون تو یه جا پک شدن و داخل یک فضای آدرس (address space) با نام فضای کرنل (Kernel Space) اجرا می شن و برنامه های کاربر درون یک فضای آدرس (address space) دیگر با نام فضای کاربر (user space) اجرا میشه😃

اینا هردو نسبت به هم مزایایی دارند که تو پست های بعدی در موردشون حرف میزنیم

@uselinux
@uselinux.pdf
60.9 KB
توضیح پنج صفحه ای از میکرو کرنل ها برای درک بیشتر 😃
#kernel #4
@uselinux
ساختار کرنل و لایه های آن در لینوکس
#kernel #5
@uselinux
#kernel #6 #fun
داستان یک ازدواج
Processes , Task switching , Scheduling

کلا اپلیکیشن ها و سرور ها و برنامه هایی که کلا تو یونیکس اجرا میشن به عنوان یه پروسس هستن 😃 هر کدوم از این پروسس ها هم یک فضای آدرس مموری تو CPU دارند .

این فضای آدرس های پروسس های مختلف کلا از هم مستقل هستند و خبری از هم دیگه ندارند یعنی هر پروسس ای هر مشکلی داشت انگار تنها پروسس تو سیستمه و از این لحاظ رو بقیه تاثیری نداره

حالا این اقای پروسس گاهی لازم داره با یه خانم پروسس دیگه ارتباط برقرار کنه و یه سری بگو مگو ها داشته باشه 😃 ولی چون خجالتیه باید مکانیسم های کرنل رو واسط قرار بده تا حرفاشو به خانم پروسسه انتقال بده 💘👫

@uselinux

لینوکس یه سیستم مولتی تسکینگ هست😃 یعنی هرچی پروسس تو سیستمه و داره اجرا میشه رو همزمان اجرا میکنه
عین اینه بجای یه CPU هزار تا ازش داشته باشیو هرکدوم جداگونه کار کنند
این کرنله که گفتم واسط هست با یه فاصله ی زمانی خیلی کم رو این پروسس ها سوییچ میشه تا اون حس همزمانی رو ایجاد کنه و عاشقو به معشوق برسونه😃

ولی همیشه یه سری مشکلات هست همه جا که مادر و پدر عروس و داماد باید بیان کمک😃
کار مادر عروس به کمک پدر داماد کارشون ( کرنل به کمک CPU) task switching هست:
هر پروسس باید توهم بزنه که منابع CPU (پول برای زندگی مشترک☹️) همیشه وجود داره .
@uselinux

واسه این کار این والدین میان و اقای داماد رو هیپنوتیزم میکنن یعنی وضعیت نهایی کارای پروسس را همونطوری نگه میدارند و به حالت idle میبره بعد میرن به خانم پروسس میرسن و باز همین کارو تکرار میکنن
در واقع منابع CPU رو این مدلی تنظیم میکنن 😃 خلو چلشون میکنن تا حقوق هفته ی بعدشون برسه کم خرجی کنند و حس بی پولی نکنن وقتیم ک هفته ی بعد منابع CPU میاد از اون حالتی که عروس و دامادو ذخیره کردن دوباره استارت میزنن تا این زوج هیچی متوجه نمیشن😃
به این کار خبیث و باهوشانه میگن task switching .

این وسط کرنل جونمون که بنیاد حمایت از تولید مثل دستشه باید به مدت زمان هیپنوتیزم خسروها و شیرین های داستانمون که تو کشور لینوکس هستند رسیدگی کنه یعنی تصمیم میگیره که cpu time روی پروسس ها چقدر باشه
یعنی واسه والدین زوج هایی که همزمان میخوان ازدواج کنند یه تایم میده که بعد اون تایم باید هیپنوتیزم شن😃

واسه زوجایی که خیلی عاشقن و تو داستان اهمیت زیادی دارند زمان زیاد و بلعکس زمان کم اختصاص میده .

به این عمل scheduling میگویند 😃

@uselinux
#bug #Sudo

یه چند روز پیش یه خبری در مورد مشکل sudo شنیده شد که میگفت یه یوزر عادی که عضو sudoers هست میتونه دسترسی root بگیره ولی هممون با یه update و upgrade این مشکل رو خاک کردیم و دیگه در موردش بحثی نشد 😃

خب به نظرم این مشکلات امنیتی میتونه یه موضوع انگیزشی شه تا بیشتر در مورد لینوکس یاد بگیریم و ببینیم از چه ساختاری چجوری استفاده شده 😃

خب هر یوزری که بتونه sudo کنه چه رمز روت رو داشته باشه چه نداشته باشه میتونه روت شه بنابر پست قبلیم راحت ترین راه اینه دست یوزر هایرو از sudo با تغییر تنظیمات سودو دور کنیم ولی الان که پچ امنیتیش اومده باید اپدیت کرد 😃
@uselinux

شاید الان به ذهنتون بیاد که خب یوزری که sudo میکنه دیگ چه فرقی با root داره؟ و چرا اصلا sudo رو ساختن😟
واسه این بحث توصیه میکنم همین الان اینجارو بخونید 😃👇
https://unix.stackexchange.com/questions/291454/difference-between-sudo-user-and-root-user


سودو یه تابع داره به اسم get_process_ttyname که دردسر ساز شده. این تابع کارش اینه proc رو باز کنه و وضعیت پردازشارو ببینه 😃
/proc/[pid]/stat

@uselinux

که همتون قطعا میدونید pid چیه این وسط 😃 ایدی همون پروسس ماست ک میخوایم وضعیتشو ببینیم
این تابع بازش میکنه و دیوایس نامبر tty رو از فیلد هفتم میخونه
این جریان tty خودش یه مساله ی دیگست که بعدا باید در موردش حرف بزنییم ولی الان چند تا فیلد در نظر بگیرید ک این میاد فیلد ۷ ام رو میخونه

جای غم انگیز داستان اونجاست که این فیلد ها توسط space از هم جدا میشن 😃 بعد این وسط فیلد دوم که comm هست و file name دستورات داخلش قرار داره هم میتونه فضای خالی یا همون space داشته باشه😧

مثلا یه symlink در نظر بگیرید که با سودو executeش میکنیم این مدلی:
"./ 1 "
این همون filename دارای اسپیس هست که گفتم😃 وقتی اینکارو میکنیم تو 📌 مرحله ی اول
get_process_ttyname()
میاد و
sudo_ttyname_scan()
رو صدا میزنه و این تابع دنبال یه دیوایس نامبر tty با اسم "1" که وجود نداره توی search_devs میگرده 😃
بعد تو📌مرحله ی دوم
sudo_ttyname_dev()
میاد و
sudo_ttyname_scan()
رو صدا میزنه تا توی /dev پیمایش کنه و اون دیوایس نامبر یک رو پیدا کنه تو این پیمایش میرسه به
/dev/shm
این اقای shm یه فایل استوریج world writeable هست یعنی هر یوزری با هر دسترسی میتونه توش هرچی بخواد مستقیما قرار بده
@uselinux

اینجاشو دیگه خودتون میتونید حدس بزنید 😃 هکر میاد و tty یی با کاراکتر های مورد نظرش که اسپیس هم داره قرار میده و نظم اون فیلد هارو به هم میریزه و دیوایس نامبر و اسم فایل های متفاوتی رو تو پروسس ها ایجاد میکنه

اینطوری نرم افزار sudo دیگه دسترسی محدود روت رو روی یوزر ها نداره 😃 و یوزر میتونه هرچیزی که هست overwrite و یا ایجاد کنه حتی تنظیمات sudoers رو تغییر بده و لاگ های یوزریشو از sudo پاک کنه و کلی خرابکاری های دیگه😃


@uselinux
This media is not supported in your browser
VIEW IN TELEGRAM
وقتی که inception به واقعیت میپیوندد🤔
@uselinux
این دستگاه با کنترل و اندازگیری امواج مغزی شما و تقویت آن ,, باعث میشود تا به رویای خود آگاهی داشته باشید و رویای خود را کنترل کنید :)
@uselinux