اگه میخواین تازه وارد یه کار مرتبط با لینوکس بشین، قبل از مصاحبه حتما این برگه تقلبو نگاه بندازین
tuxarena.com/intro/cheatsheet.html
🐧 @Linuxor
tuxarena.com/intro/cheatsheet.html
🐧 @Linuxor
👍34💅6🔥5🍓2🎃2
فرض کنین میخواین با یه دستوری کار کنین که آرگومان یه فایل میگیره
مثلا
ولی شما میخواین رشته بهش بدین...
بجای اینکه فایل file.txt رو بسازین میتونین از Here String استفاده کنین (>>>)
🐧 @Linuxor
مثلا
egrep "pattern" file.txt
ولی شما میخواین رشته بهش بدین...
بجای اینکه فایل file.txt رو بسازین میتونین از Here String استفاده کنین (>>>)
egrep "linux(or)?" <<< "linuxor is a linux channel"
🐧 @Linuxor
👍49🤔5👏3🥴3🐳1
تابحال توی خیابون شده در حال راه رفتن باشید یه نفر از روبرو بیاد شما برید سمت راست اون بره سمت چپ و گیر کنید و دوباره مسیر عوض کنید اونم عوض کنه و دوباره گیر کنید ؟ 😂😂
این اتفاق توی سیستم عامل هم رخ میده که بهش میگن Livelock یعنی دوتا پروسس هی به هم تعارف کنن اقا بیا برو اون منبع رو بردار !
🐧 @Linuxor
این اتفاق توی سیستم عامل هم رخ میده که بهش میگن Livelock یعنی دوتا پروسس هی به هم تعارف کنن اقا بیا برو اون منبع رو بردار !
🐧 @Linuxor
🤣162👍20😁4👾4🔥3
سال 2003 یه RFC منتشر شد با این مضمون که اقا بیاین اون بیت بدون استفاده که توی header پکت ایپی رو اسمشو بزاریم Evil Bit و اگه ست شده باشه یعنی این پکت با هدف مخرب ارسال شده ( یعنی مهاجم خودش بگه من اومدم خرابکاری)
مهندسای اینترنت اونو به تمسخر گرفته بودن که یهو FreeBSD ماژول ساپورت از Evil Bit رو اضافه کرد، اخرش معلوم شد دروغ اپریل بوده و روز بعدش تغییرات از FreeBSD پاک شد.😂😂
🐧 @Linuxor
مهندسای اینترنت اونو به تمسخر گرفته بودن که یهو FreeBSD ماژول ساپورت از Evil Bit رو اضافه کرد، اخرش معلوم شد دروغ اپریل بوده و روز بعدش تغییرات از FreeBSD پاک شد.😂😂
🐧 @Linuxor
🤣93🤨6👍4❤2😁2
تصور کنید شما یه رستوران دارید و تعدادی سینی غذای تمیز و یک سینی کرونایی
حالا یه مشتری شرور میاد و عمدا کلی غذا سفارش میده (Heap Sprying) که فقط سینی های تمیز رو اشغال کنه، به نظرتون چه اتفاقی میفته؟ مشتری بعدی که میاد غذا سفارش بده گارسون مجبوره توی سینی کرونایی غذا رو برای مشتری بیاره (Arbitrary Code Execution) و مشتری شرور به هدفش رسیده !
🐧 @Linuxor
حالا یه مشتری شرور میاد و عمدا کلی غذا سفارش میده (Heap Sprying) که فقط سینی های تمیز رو اشغال کنه، به نظرتون چه اتفاقی میفته؟ مشتری بعدی که میاد غذا سفارش بده گارسون مجبوره توی سینی کرونایی غذا رو برای مشتری بیاره (Arbitrary Code Execution) و مشتری شرور به هدفش رسیده !
🐧 @Linuxor
🤣51👍23😐13🗿8💅5
با این ریپو میتونین روی یه مرورگر توی لینوکستون هر ورژن از ویندوز رو داشته باشین !
https://github.com/dockur/windows
درواقع یه داکره که داره با KVM این کارو میکنه.
🐧 @Linuxor
https://github.com/dockur/windows
درواقع یه داکره که داره با KVM این کارو میکنه.
🐧 @Linuxor
👍55🗿10🤣2💩1👌1
فورک کردن پروسس یعنی چی ؟
توی سیستم عامل، فورک (Fork) یک فراخوان سیستمیه که برای ایجاد یه پروسس جدید (فرزند) از پروسس قبلی (پدر) استفاده میشه.
همه میدونیم که if و else همزمان نمیتونن باهم اجرا بشن ولی اینجا انگار باهم اجرا شده ...
در واقع از لاینی که ()fork رو فراخوندم به بعد پروسس به دو قسمت فرزند و پدر تقسیم شده و توی پروسس پدر فقط else اجرا میشه و توی فرزند فقط if
🐧 @Linuxor
توی سیستم عامل، فورک (Fork) یک فراخوان سیستمیه که برای ایجاد یه پروسس جدید (فرزند) از پروسس قبلی (پدر) استفاده میشه.
همه میدونیم که if و else همزمان نمیتونن باهم اجرا بشن ولی اینجا انگار باهم اجرا شده ...
در واقع از لاینی که ()fork رو فراخوندم به بعد پروسس به دو قسمت فرزند و پدر تقسیم شده و توی پروسس پدر فقط else اجرا میشه و توی فرزند فقط if
🐧 @Linuxor
🔥46👍22❤🔥3🤓3👎1
میدونید Backporting یعنی چی؟
فرض کنید توی درایور wi-fi کرنل v6 یه مشکل امنیتی رو پیدا شده و حل شده.
بعضی از یوزر ها دارن از کرنل v5 استفاده میکنن و همون مشکل رو دارن، برای حل این مشکل نخوان یا نتونن به کرنل v6 آپدیت کنن توی این سناریو Backporting یعنی انتقال رفع اشکال از ورژن v6 به v5 به طوری که توی کرنل v5 هم این مشکل حل شده باشه.
عملیات Backporting فقط مربوط به اشکال نیست و ممکنه انتقال یه ویژگی باشه و بخاطر تضاد با سایر تغییرات ممکنه پیچیده باشه ولی توی کرنل لینوکس یه اتفاق بسیار عادی محسوب میشه.
🐧 @Linuxor
فرض کنید توی درایور wi-fi کرنل v6 یه مشکل امنیتی رو پیدا شده و حل شده.
بعضی از یوزر ها دارن از کرنل v5 استفاده میکنن و همون مشکل رو دارن، برای حل این مشکل نخوان یا نتونن به کرنل v6 آپدیت کنن توی این سناریو Backporting یعنی انتقال رفع اشکال از ورژن v6 به v5 به طوری که توی کرنل v5 هم این مشکل حل شده باشه.
عملیات Backporting فقط مربوط به اشکال نیست و ممکنه انتقال یه ویژگی باشه و بخاطر تضاد با سایر تغییرات ممکنه پیچیده باشه ولی توی کرنل لینوکس یه اتفاق بسیار عادی محسوب میشه.
🐧 @Linuxor
👍66🔥9🗿7😐2🍓1
میدونستید توی لینوکس یه ابزاری هست به اسم KernelShark که باهاش میشه رفتار درواقع پروسس ها توی کرنل رو تجزیه و تحلیل کرد؟
نکته جالب اینجاست این ابزار یه فرانتند برای trace-cmd هستش که خود trace-cmd فرانتند برای ftrace هستش که خودش فیچر مخوف کرنله.
بعد بگید فرانتند کارا برنامه نویس نیستن
🐧 @Linuxor
نکته جالب اینجاست این ابزار یه فرانتند برای trace-cmd هستش که خود trace-cmd فرانتند برای ftrace هستش که خودش فیچر مخوف کرنله.
بعد بگید فرانتند کارا برنامه نویس نیستن
🐧 @Linuxor
🤣78👍22🗿5👎3🙏1
اگه رفتین مهمونی، سر غذا حواستون باشه یهو دستتون رو دراز نکنید دوغ رو از وسط میز بردارید ...
چون ممکنه یه نفر دیگه قبل از شما دوغ (Resource) رو بخاد و زود تر شما برش داره ! توی دنیای کامپیوتر یه الگوریتم جالبی برای حل این مشکل داریم به اسم Exponential backoff به این صورته که اگه دوغ میخای باید یه مجموعه به صورت زیر برای خودت داشته باشی
{1, 2, 4, 8 ,16 ,...}
که طول مجموعه برابر تعداد دفعاتیه که ناموفق شدی اون دوغ رو برداری، هر بار که دوغ میخای یه عدد رندوم از این لیست خودت برمیداری و به اندازه اون صبر میکنی (sleep) بعد سعی میکنی که دوغ رو برداری. اگه دوباره ناموفق شدی اون لیست یدونه بزرگ تر میشه، هرکی هم یه لیست مجزا برای خودش داره. و این الگوریتم رو مجزا برای خودش اجرا میکنه و اگه دوغ بخواد باید این کارو کنه.
با این الگوریتم هر تعداد نفر هم باشید به همتون با یه احتمال خوبی دوغ میرسه 😂
🐧 @Linuxor
چون ممکنه یه نفر دیگه قبل از شما دوغ (Resource) رو بخاد و زود تر شما برش داره ! توی دنیای کامپیوتر یه الگوریتم جالبی برای حل این مشکل داریم به اسم Exponential backoff به این صورته که اگه دوغ میخای باید یه مجموعه به صورت زیر برای خودت داشته باشی
{1, 2, 4, 8 ,16 ,...}
که طول مجموعه برابر تعداد دفعاتیه که ناموفق شدی اون دوغ رو برداری، هر بار که دوغ میخای یه عدد رندوم از این لیست خودت برمیداری و به اندازه اون صبر میکنی (sleep) بعد سعی میکنی که دوغ رو برداری. اگه دوباره ناموفق شدی اون لیست یدونه بزرگ تر میشه، هرکی هم یه لیست مجزا برای خودش داره. و این الگوریتم رو مجزا برای خودش اجرا میکنه و اگه دوغ بخواد باید این کارو کنه.
با این الگوریتم هر تعداد نفر هم باشید به همتون با یه احتمال خوبی دوغ میرسه 😂
🐧 @Linuxor
🤣114👍27🤝7🤔3❤2