تک ویت امید

متوقف کردن سرور جنگو در حال اجرا در لینوکس

· امید ·

پست قبلی درمورد عوض کردن اسم پروژه‌ی جنگو نوشتم که میتونید اینجا بخونید. بعضی وقتا که سرور جنگو در حال اجراست من ترمینال رو میبندم و پورتی که جنگو داره روش اجرا میشه هنوز مشغوله و تا وقتی اون رو متوقف نکنی نمیتونی از اون پورت استفاده کنی که منطقیه و اکثر اوقات که این با این موضوع روبرو میشدم دو راه داشتم اولین راه این بود که سیستم رو ریستارت کنم! و دومین راه این بود که از یه پورت دیگه استفاده کنم که بصورت پیشفرض وقتی runserver رو بزنیم روی پورت ۸۰۰۰ اجرا میشه و میتونیم به شکل زیر پورت رو عوض کنیم:

./manage.py runserver 8080

اما می تونیم که پورتی که داره جنگو یا هر چیز دیگه ای که روش اجرا میشه رو متوقف کنیم و ازش استفاده کنیم که کار آسونیه.

در اینجا با fuser آشنا میشیم که کارش مانیتور کردن و کنترل کردن پردازش هاست. توی این پست نمیخوایم وارد این شیم که این ابزار میتونه چه کار هایی بکنه و فقط میخوایم که کارمون را بیوفته پس، فقط به فلگ k که همون kill هست نیاز داریم نحوه‌ی کار به این شکل خواهد بود که ما به دسترسی روت نیاز خواهیم داشت از فلگ k استفاده میکنیم و پورتی رو که میخوام ببندیم رو هم لازم داریم. لازم نیست درگیر بشید فقط دستور زیر رو توی ترمینالتون پیست کنید:

sudo fuser -k 8000/tcp 

در اینجا tcp پروتوکل هست و ۸۰۰۰ پورت مورد نظرمون.

اگرم این ابزار روی توزیعتون نصب نبود (برای من بود.) میتونید از روش زیر نصبش کنید:

sudo apt install psmisc

یا اگه از yum استفاده می کنید:

sudo yum install psmisc