بایگانی دسته: آموزش

آموزش

چجوری برای سایت the coding love‌ کانال تلگرام درست کردم

سایت The Coding Love رو قبلا معرفیش کردم، یک سایت جمع و جور که گیف‌های گیکی میذاره که هرکسی از اون گیف‌ها سردر نمیاره. من هم به این سایت علاقه زیادی دارم و هر روز چکش میکنم ولی مساله‌ای که وجود داشت این بود که گاهی این سایت توی یک ساعت چندتا گیف جدید میذاشت و گاهی هم چند روز خبری نبود که یکم این مورد من رو اذیت میکرد. دیدم الآن که چند وقتیه بازار کانال‌های تلگرامی گرم شده بد نیست که بگردم و ببینم برای این سایت کانال تلگرامی وجود داره یا نه. کمی گشتم و یک کانال تلگرام تونستم براش پیدا کنم ولی این کانالی که پیدا کردم و آدرس دقیقش هم یادم نیست یک مشکل داشت و اون هم این بود که فقط لینک گیف‌های جدید رو میذاشت و باز هم نیاز بود چندتا کلیک انجام بدم و از داخل مرورگر گیف ها رو بینم که اصلا برام جالب نبود. به همین خاطر تصمیم گرفتم یک کانال درست کنم که مطالب داخلش توسط یک بات به صورت خودکار گذاشته میشه و گیف‌ها هم مستقیما داخل کانال گذاشته شده باشن و راحت ببینمشون. خب بریم ببینیم چه کارها کردم!!!

ادامه خواندن چجوری برای سایت the coding love‌ کانال تلگرام درست کردم

اسکریپت دریافت ۵۰ فیلم آخر گانول

اسکریپ از کار افتاده

 

متاسفانه چند وقته که سایت yts.to تعطیل شده و تیم YIFY دیگه فیلمی رو رلیز نمیکنه. پس فعلا به نظر میاد تنها گزینه موجود برای دانلود فیلم سایت گانول هست (جای خوب دیگه‌ای سراغ دارین خوشحال میشم بگین). برای راحتی خودم یه اسکریپت نوشتم که هر یک ساعت یکبار میاد و لیست ۵۰فیلم آخر گانول رو میگیره و به همراه لینک دانلودشون میذاره توی یک صفحه تا بدون دردسر بتونم رلیزهای جدید گانول رو ببینم. در حال حاظر هم اون صفحه رو میتونین تو این آدرس ببینین.

 

ادامه خواندن اسکریپت دریافت ۵۰ فیلم آخر گانول

تولید تمام پسوردهای ممکن nکاراکتری با بش

قبلا اینجایه کد نوشتم که پسورد میگیره و هش میکنه. و برای داشتن پسورد هم از یک سایت تولید پسورد استفاده کردم، اما با خودم گفتم چرا خودم یه چیزی ننویسم که پسورد تولید کنه؟! و در نتیجه…

ادامه خواندن تولید تمام پسوردهای ممکن nکاراکتری با بش

اسکریپت انتقال فایل/فولدر بین هاست و سرور

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

 

چند نکته درباره برنامه:

– دوستانی که نگران امنیت برنامه هستند، من یک کد در اختیارتون قرار میدم و توضیحات لازم برای اجرای کد رو هم بهتون میدم تا از امنیت برنامه اطمینان کسب کنید.
– فایل‌های مبدا باید از طریق http/ftp قابل دانلود باشن
– مقصد حتما باید یک سرور لینوکسی باشه و دسترسی روت بهش داشته باشید چون نیاز به نصب چند برنامه برای کار کردن این کد هست
– در مبدا هم نیاز به یک اکانت ftp که روی پوشه‌ای که قصد انتقال اطلاعات داخلش رو داریم نیاز هست
– در حالات خیلی خاص که در عمل کمتر از یک درصد احتمال وجود داشتنش هست اسکریپت بعضی از فایل‌ها با اسم خاص رو نمیتونه انتقال بده، برای مثل فایلی که اسمش با … تموم شده باشه که البته همونطور که گفتم در عمل همچین فایلی نخواهید داشت، ولی اگر داشتید کد در انتها در یک فایل لیست لینک‌هایی که موفق به دانلودشون نشده رو بهتون میده تا به صورت دستی فایل‌ها رو انتقال بدید.

 

علی‌رغم اصرار دوستانم، کد رو به صورت خام و بدون محدودیت در اختیارتون قرار میدم و به شعور خریدارن این کد احترام میذارم و امیدوارم این کد رو که روش زحمت کشیده شده پخش نکنند.

 

برای خرید این کد، به این صفحه مراجعه کنید.

دانلود فیلم به شکل گیکی، دانلود خودکار فیلم از YIFY روی کامپیوتر

فکر کنم همینکه یه بخش برای معرفی فیلم دارم نشون بده که اهل فیلم دیدنم و سایت مورد علاقم هم برای دانلود yts.to هست که رلیزهای YIFY توش برای دانلود قرار داره. گاهی که منتظر اومدن یک فیلم هستم خیلی واسم اعصاب خورد کنه که هی هر روز چک کنم ببینم اون فیلم برای دانلود اومده یا نه بعد اگه اومده بود تورنتش رو مستقیم کنم و لینک دانلودش رو از رو سرور خودم بردارم و بذارم تو لیست دانلودهام. برای همین گفتم بیام این فرایند رو خودکار کنم! اما قبل شروع کار بگم که اگه شما هم میخواین دقیقا عین کار من رو انجام بدین لازمه تا اول Deluge رو روی سرورتون نصب کنین و مثل من هم دانلوداتون رو انجام بدین. خب بریم وارد جزئیات کار بشیم!

ادامه خواندن دانلود فیلم به شکل گیکی، دانلود خودکار فیلم از YIFY روی کامپیوتر

افزایش بازدید وب سایت با آی پی واقعی از شبکه تور

اگه صاحب وبلاگ یا وب سایت هستید حتما میدونید که یکی از عواملی که رو رنک گوگل تاثیر گذار هست تعداد بازدیدها هست. راه هم برای افزایش بازدید زیاده که معمولا هم هزینه ی زیادی دارن. اما میخوام یه ترفند ساده بهتون معرقی کنم که باهاش به راحتی و با استفاده از شبکه تور میتونید کلی بازدید بدست بیارید. تنها پیش نیاز این کار یه سرور لینوکسی هست یا کامپیوتر خودتون که اینترنت درست و حسابی داشته باشه و روش یه توزیع لینوکسی نصب باشه. البته وبلاگ یا وب سایتتون هم نباید از سرویسی مثل Cloud Flare استفاده کنه که آی پی های تور رو بلاک میکنن. اگه پیش نیازها رو دارین و کلی بازدید میخواین در ادامه کار با من همراه باشید!!!

 

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

آموزش دانلود صدای مترجم گوگل

این روش دیگه کار نمیکنه 😐

 

مترجم گوگل که نیاز به معرفی نداره؟!؟! و حتما هم میدونین متون انگلیسی (بقیه زبون ها رو نمیدونم!) رو وقتی بهش میدیم میتونه این متن ها رو برامون بخونه. خب من برای کاری نیاز داشتم تا صدای خروجی مترجم گوگل که متن رو داره میخونه ضبط کنم. اولین راهی که ممکنه به ذهن بیاد استفاده از برنامه‌هایی هستن که صدای خروجی کامپیوتر رو ضبط میکنن ولی احتیاج به یه برنامه اضافی و اینکه ممکنه فایل ضبط شده نیاز به ادیت داشته باشه منو از این راه منصرف کرد. پس یکمی سرچ انجام دادم و به این لینک رسیدم:

http://translate.google.com/translate_tts?tl=en&q=”I can say whatever you want me to say”

اگه رو لینک کلیک کنین کاملا قضیه رو متوجه میشین 🙂 با تغییر متن I can say whatever you want me to say با متن مورد نظر خودتون هم میتونین صدایی رو که دوست دارین بشنوین. برای ذخیره کردن صدا هم کافیه روی صفحه راست کلیک کنید و گزینه Save As رو بزنید.

نجات سرور با استفاده از حالت Rescue Mode

جالب بود برای این مورد سرچ زدم ولی چیزی حداقل به فارسی پیدا نکردم! پس هم مینویسمش که برای خودم داشته باشمش و هم برای کسانی که به دنبال این مطلب هستن… حالت Rescue Mode در مواقعی استفاده میشه که وی پی استون به هر دلیلی به مشکلی بربخوره و نتونین از طریق ssh بهش متصل بشین. در این حالت با استفاده از Rescue Mode یه توزیع لینوکس میاد و کنار سیستم عامل اصلی وی پی اس اجرا میشه و بهمون اجازه میده دوباره به وی پی اس دسترسی داشته باشیم. البته باید امکان استفاده از Rescue Mode رو هم داشته باشید. پس اگه پنل مشابه پنل زیر برای وی پی استون دارید در ادامه مطلب با ما باشید تا ببینیم چجوری میشه سرور رو نجات داد!

virtualizor_panel

 

ادامه خواندن نجات سرور با استفاده از حالت Rescue Mode

ترکوندن رم و سی پی یو با یه بش اسکریپت

کلا از وقتی با بش اسکریپت آشنا شدم به طور کل دارم یه جور دیگه با کامپیوتر کار میکنم 😀 یه بش ساده نوشتم که هیچ کار انجام نمیده جز اینکه رم و سی پی یو رو تا ته پر میکنه و خودم که بعد از اجرای این بش مجبور شدم سخت افزاری سیستمم رو ری‌استارت کنم. برای نوشتن این بش اومدم به تعداد هسته‌های سی پی یو حلقه بینهایت درست کردم (البته میشه بیشتر هم حلقه درست کرد ولی حداقل تعداد حلقه‌ها باید به تعداد هسته‌های سی پی یو باشه) و اسکریپت رو به شکلی تنظیم کردم که حلقه‌ها رو به صورت موازی اجرا کنه و به این شکل هرکدوم از حلقه‌ها روی یکی از هسته‌های سی پی یو انجام میشه و لود اون هسته رو به صد درصد میرسونه. اما برای رم کاری که کردم این بود که یه متغییر تعریف کردم و گفتم که تو هر بار اجرا شدن این حلقه‌ها اون متغییر رو چندبار دوباره تو خودش بریزه. کد نهایی هم برای سیستم من که سی پی یوم دو هسته داره این شد:

 

که این کد رو تو یه فایل با پسوند sh ذخیره کردم و با دستور

 

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

 

اجراش کردم و شاهد لود صد درصدی سی پی یو و رم بودم 😀 کد هم کلیاتش نکته خاصی نداره. اما در مورد خط

 

باید بگم که این خط وظیفه پر کردن رم رو داره. چون در ابتدای کد تو متغییر z فقط کاراکتر q رو قرار دادیم ولی به محض اینکه به حلقه میرسه ۲۲تا کاراکتر q توی متغییر z ذخیره میشن و تو بار دوم اجرا شدن حلقه ۴۸۴تا کاراکتر q توی متغییر z ذخیره و میشن و الی آخر. حالا این رو هم درنظر بگیرین که دوتا حلقه به صورت همزمان و چندصد بار در ثانیه دارن اجرا میشن! با این کار رم به سرعت پر میشه 🙂 تو آخر خط ۴ هم یک کاراکتر & قرار داره که باعث میشه دوتا حلقه به صورت موازی اجرا بشن و اگه اون کاراکتر & رو نذاریم فقط یک هسته سی پی یو لودش میره رو صد. اگه میخواین این کد رو رو روی سیستمی مثلا با سه هسته پردازش اجرا کنین (البته با مسئولیت خودتون!) باید خط‌های دو و سه و چهار رو کپی کنید و آخر خط چهار پیست کنید تا سه‌تا حلقه به صورت موازی اجرا بشن و هر سه هسته لودشون بره رو صد.

 

آپدیت:

برای اینکه مجبور نشین تو یه فایل جداگانه دستورات رو قرار بدین، میتونین دستورات رو توی یک خط بنویسین و مستقیم تو ترمینال وارد کنید تا سیستم بترکه. برای مثال رو سیستم من دستور به این شکل میشه:

 

ساخت لیستی از پسوردهای هش شده

حوصلم سر رفته بود گفتم یه اسکریپت بنویسم که یه سری پسورد بهش بدیم و هششون رو بهمون بده! البته اگه سایت قابل قبولی دیتابیسش رو بدست آوردین دنبال این نباشین که با این روش بتونید پسوردهای هش نشده رو بدست بیارین چون سایت‌های درست حسابی از الگوریتم سالت هم استفاده میکنن که کار رو حسابی سخت میکنن! البته اگه به دیتابیس فیس نما دسترسی پیدا کردین راحت میتونین با این روش به اصل پسوردها برسین :)) خب بریم سراغ اسکریپت! کاری که این اسکریپت میکنه خیلی سادست! به اسکریپت یه فایل میدیم که تو هر خطش یه پسورد و جود داره و اسکریپت دونه دونه پسوردها رو میخونه و هششون میکنه و هش رو به همراه اصل پسورد درکنار هم در یک فایل جدید ذخیره میکنه 🙂 کد اسکریپت اینه، که من فرض میکنم شما اون رو با اسم md5.sh در پوشه home ذخیره کردین.

 

 

بعد از ذخیره کردن اسکریپت با این کد بهش قابلیت اجرایی میدیم:

 

قبل از اجرا کردن اسکریپت نیاز داریم تا یه سری پسورد داشته باشیم. من برای تولید پسورد تصادفی از این سایت استفاده کردم و باهاش ۱۰تا پسورد تصادفی تولید کردم. اینم لیست پسوردها:

 

و این پسوردها رو در پوشه home در فایلی به اسم passwords.txt ذخیره کردم. حالا اسکریپت رو با دستور

اجراش میکنم و خروجی اسکریپت تو یه فایل به اسم md5_hashed_pass.txt ذخیره میشه. برای ۱۰تا پسورد من محتوای فایل خروجی این هست:

 

همونطور که میبینین در هر خط ابتدا هش شده پسورد که با الگوریتم md5 تولید شده قرار داره و بعد از اون هم خود پسورد. اما ببینیم هر خط این اسکریپت چیکار میکنه!

 

declare -i n: متغییر n رو به عنوان یک متغییر عددی تعریف میکنیم.

 

n=1: و داخل این متغییر مقدار 1 رو ذخیره میکنیم.

 

while [ $n -lt 11 ]; do: یه حلقه درست میکنیم تا ۱۰بار عملیات خوندن خطوط رو انجام بده و درواقع ۱۰بار کدهای بین این خط و خط آخر یعنی done رو انجام میده. دقیق کنید که حلقه while تا زمانی که شرط جلوش درست باشه انجام میشه! و اینجا شرطش این هست که محتوای متغییر n کوچکتر از 11 باشه. و با توجه به اینکه n برابر با 1 هست و در انتهای هر بار انجام شدن حلقه (خط n=n+1) یک واحد به متغییر n اضافه میشه پس این حلقه ۱۰ بار انجام میشه. اگه خواستین تعداد بیشتری پسورد رو هش کنید حتما مقدار 11 رو تغییر بدید. مثلا اگه خواستید ۲۰تا پسورد رو هش کنید مقدار 11 رو به 21 تغییر بدین.

 

a=”$( )”: این خط میاد میگه خروجی دستورات داخل پرانتز رو داخل متغییر a بریز. اما دستورات داخل پرانتز چیکار میکنن؟ head -n $n passwords.txt | tail -1 میاد میگه خط nام فایل پسوردهارو برو بخون. اما هربار که یک پسورد از فایل پسوردها خونده میشه یک کاراکتر \n هم اضافی خونده میشه. برای حذف این کاراکتر اضافی خروجی رو با | به tr -d ‘\n’ میدیم تا اون کاراکتر اضافه آخری را پاک کنه و مجددا با | خروجی رو به دستور md5sum میدیم تا پسورد رو برامون هش کنه! و اگه نفهمیدین چی شد این خط میاد خط nام فایل پسوردها رو میگیره و هش شدش رو تو متغییر a میریزه!

 

a=$a”$()”: این میاد میگه درانتهای متغییر a که حاوی هش هست خود پسورد رو هم قرار بده.

 

echo $a >> md5_hashed_pass.txt: حالا ما پسورد و هشش رو در متغییر a داریم و با این دستور محتوای متغییر a رو تو فایل خروجی ذخیره میکنیم.

 

خب این توضیحات به نظرم کافیه! اگه قسمتیش رو خوب متوجه نشدین حتما کامنت بذارید 🙂