ওবুন্টুর বন্দরে কোনও প্রক্রিয়াটি কীভাবে হত্যা করা যায়


488

আমি উবুন্টুতে একটি নির্দিষ্ট পোর্টের জন্য কমান্ড লাইনে একটি প্রক্রিয়া মারার চেষ্টা করছি।

আমি যদি এই আদেশটি চালাই তবে আমি পোর্টটি পেয়ে যাব:

sudo lsof -t -i:9001

তাই ... এখন আমি দৌড়াতে চাই:

sudo kill 'sudo lsof -t -i:9001'

আমি এই ত্রুটি বার্তাটি পেয়েছি:

ERROR: garbage process ID "lsof -t -i:9001".
Usage:
  kill pid ...              Send SIGTERM to every process listed.
  kill signal pid ...       Send a signal to every process listed.
  kill -s signal pid ...    Send a signal to every process listed.
  kill -l                   List all signal names.
  kill -L                   List all signal names in a nice table.
  kill -l signal            Convert between signal numbers and names.

আমিও চেষ্টা sudo kill 'lsof -t -i:9001'করেছি


9
এফওয়াইআই, উবুন্টু প্রশ্নের স্ট্যাক এক্সচেঞ্জ (স্ট্যাকওভারফ্লো) নেটওয়ার্কের উবুন্টু অংশে উত্তর দেওয়ার আরও ভাল সম্ভাবনা রয়েছে: Askubuntu.com
জেএসকিবি কেড

উত্তর:


900

আপনি ব্যাকটিকটি নিয়মিত টিক না ব্যবহার করতে চান:

sudo kill -9 `sudo lsof -t -i:9001`

যদি এটি কাজ না করে আপনি $()কমান্ড ইন্টারপোলেশন ব্যবহার করতে পারেন :

sudo kill -9 $(sudo lsof -t -i:9001)

43
আপনি সংকেত বিকল্পটি যুক্ত করতে ভুলে গেছেন। পড়তে হবে:sudo kill -9 $(sudo lsof -t -i:9001)
ফ্রান্সেস্কো গ্র্যামানো

7
@ ফ্রেঞ্চসকো গ্র্যামানো: আপনার দরকার না হলে আপনি -9 ব্যবহার করতে চান না।
জেলিও

2
sudo killপ্রক্রিয়াটি কখন মারতে পারবেন না, @ পুত্রা.কোরেংয়ের পদ্ধতিটি ভালভাবে কাজ করে
ফ্যাংজিন

3
যদি উপরে কাজ না করে থাকে তবে এই চেষ্টা করুন: stackoverflow.com/a/50515868/9339242
অরণ্য সিং

1
এই ওএসটি কি স্বাধীন বা লিনাক্স নির্দিষ্ট? যদি লিনাক্স নির্দিষ্ট করে os.system("fuser -k 8080/tcp");
তোলে


78

উবুন্টু-এর জন্য 1- কী অ্যাপ্লিকেশন / প্রক্রিয়াটি প্রো ব্যবহার করছে তা টাইপ করুন:

sudo netstat -lpn |grep :8080

এবং এন্টার টিপুন।

আপনি এটির অনুরূপ একটি আউটপুট পাবেন

tcp6       0      0 :::8080                 :::*                    LISTEN      6782/java

2- আমি আইডি পেয়েছি, যা 6782, এখন এই প্রক্রিয়াটি পোর্ট 8080 ব্যবহার করছে।

3- প্রক্রিয়াটি হত্যা করুন, টাইপ করুন: 6782 মারুন

kill 6782

3
সংক্ষিপ্ত এবং ক্রিস্পের জবাব
বিকাশ কুক্রেটি

1
পুরোপুরি কাজ করেছেন
টাইলার বেল

আপনি দয়া করে লিখতে পারেন আপনি কীভাবে উপরের কমান্ডটি ব্যবহার করছেন?
মোহিত সিং

1
আমার উবুন্টু 18.04 সার্ভারে আরও উঁচু সংস্থাগুলি সহ asnwers এ কমান্ড পাওয়া যায় নি, তখন দুর্দান্ত কাজ করেছেন। ধন্যবাদ!
সালভান

38

উবুন্টু টার্মিনালে কোনও বন্দর হত্যার সেরা উপায় হ'ল fuser -k 9001/tcp


3
আমার জন্য নির্দোষ কাজ করেছেন
জাভেরীর সাথে

এটা খুবই আমার জন্য কাজ করেন। এটি গ্রহণযোগ্য উত্তর হওয়া উচিত।
কোডস্লেভ

35

কিছু প্রক্রিয়া রয়েছে যা সাধারণ নেটস্যাট কমান্ডটি ব্যবহার করে দেখানো হয় না, তাই আপনাকে এটি ব্যবহার করে পরীক্ষা করতে হবে sudo

কি sudo netstat -lpn |grep :8080। সিস্টেম দ্বারা চলমান প্রক্রিয়া পিআইডি প্রদর্শন করে না, এই প্রক্রিয়াটির পিআইডি পেতে আপনাকে এটি ব্যবহার করে চালাতে হবেsudo

এবং তারপরে পোর্টটি ব্যবহার করে প্রক্রিয়াটি মেরে ফেলুন 8080। আপনার sudoএখানেও ব্যবহার করতে হতে পারে । সুতরাং এই প্রক্রিয়া ব্যবহার হত্যাsudo kill -9 PID


19

কিলপোর্ট কমান্ড ব্যবহার করুন :

sh killport 9001 

শেল ডাউনলোড করতে, আপনি ব্যবহার করতে পারেন wget:

wget https://cdn.rawgit.com/abdennour/miscs.sh/e0aac343/killport

1
যদি এটি কাজ না করে, তার মানে টার্গেট পোর্টটি ইতিমধ্যে বন্ধ রয়েছে
আবদেনর টুমি

17

উবুন্টুতে পোর্ট সার্ভিসে হত্যা করতে, টার্মিনালে নীচের কমান্ডটি প্রবেশ করান

টার্মিনালে:

sudo fuser -k port/tcp
sudo fuser -k 8001/tcp

এই সহজ এক দুর্দান্ত করছেন।
ত্রি

15

আপনি এটি করতে ফুসারও ব্যবহার করতে পারেন (ডিফল্টরূপে সিগ্কিল প্রেরণ করে): sudo fuser -k 9001/tcp


15

শুধু প্রবেশ করুন

    fuser -k -n tcp 3000

টার্মিনালে, যেখানে 3000 আপনার পোর্ট নম্বর


1
ফুজার ব্যবহার করে: নামকৃত ফাইল, সকেট, বা ফাইল সিস্টেমগুলি কোন প্রক্রিয়াগুলি ব্যবহার করে তা দেখান-কে: হত্যার জন্য দাঁড়ায় -n: নেটস্ট্যাট টিসিপি: এটি আপনার পোর্ট 3000 ব্যবহার করার জন্য একটি প্রোটোকল: কাস্টম পোর্টটি এখানে লিঙ্কটি: Askubuntu.com / 207609 / আই-ক্যান্ট-কিল-এ-পোর্ট-প্রক্রিয়া
কৌশিক শ্রীমালী

12

পোর্ট নম্বর চলমান একটি প্রক্রিয়া হত্যা করতে9001

sudo kill -9 $(sudo lsof -t -i:9001)


lsof   - list of files(Also used for to list related processes)

-t     - show only process ID

-i     - show only internet connections related process

:9001  - show only processes in this port number

kill   - command to kill the process

-9     - forcefully

sudo   - command to ask admin privilege(user id and password).

আরও জন্য আপনি আমার ব্লগ দেখতে পারেন


11

প্রথমে বন্দরের উপর ভিত্তি করে প্রক্রিয়াটি মেরে ফেলার জন্য আমাদের প্রদত্ত বন্দরটির জন্য প্রাসঙ্গিক পিড খুঁজে বের করতে হবে এবং সেই পিড ব্যবহার করে হত্যা করতে হবে,

আমার ক্ষেত্রে আমি 3000 বন্দরটির পিড (প্রসেস আইডি) পেতে চেয়েছিলাম:

netstat -ltnp | grep -w '3000'

তারপরে টিসিপি শুনছে এমন পিডটি সন্ধান করুন

tcp6       0      0 :::3000                 :::*                    LISTEN      29972/node  

আপনি পিড পাবেন 29972

এই পিডকে মেরে ফেলতে নীচের কমান্ডটি ব্যবহার করুন

kill -9 29972

বন্দরের ভিত্তিতে কিল প্রক্রিয়াটির জন্য সিউডো কোড

 netstat -ltnp | grep -w 'PORT'

এবং

kill -9 PID


5

পোর্ট মেরুন:

sudo প্রক্রিয়া আইডি প্রদর্শন গুরুত্বপূর্ণ।

$ sudo netstat -antlp | grep 45136
tcp      0      0 0.0.0.0:45136         0.0.0.0:*        LISTEN           **-** 

$ kill -9 45136

5

কমান্ডটি ব্যবহার করুন

 netstat -plten |grep java

টমক্যাট হিসাবে গ্রেপ জাভা তাদের প্রক্রিয়া হিসাবে জাভা ব্যবহার করে।

এটি পোর্ট নম্বর এবং প্রসেস আইডি সহ প্রক্রিয়াগুলির তালিকা প্রদর্শন করবে

tcp6       0      0 :::8080                 :::*                    LISTEN      
1000       30070621    16085/java

জাভা এর আগে সংখ্যাটি একটি প্রক্রিয়া আইডি। প্রসেসটি মেরে ফেলতে এখন কমান্ড কমান্ড ব্যবহার করুন

kill -9 16085

-9 বোঝায় প্রক্রিয়াটি জোর করে হত্যা করা হবে।



3

"9001" বন্দর নম্বরটিতে চলমান হত্যা প্রক্রিয়াটির জন্য এটি ব্যবহার করুন

 kill $(lsof -t -i:9001)

স্বীকৃত উত্তর সহ অন্যান্য উদাহরণগুলির সাথে অপ্রয়োজনীয়।
কেনস্টার


1
sudo kill `sudo lsof -t -i:9001`

আপনাকে -9সিগন্যাল বিকল্পটি যুক্ত করতে হবে না


1

এটির দুটি পদক্ষেপ প্রক্রিয়া:

  1. নং পোর্টে প্রক্রিয়া আইডি জানুন। 8080 (যে কোনও হতে পারে)
  2. 8689 আইডিটির হত্যা প্রক্রিয়া (আলাদা হতে পারে)

    fuser -n tcp 8080
    
    #o/p 8080/tcp    8689
    
    kill -9 8689
    


1

সক্রিয় টিসিপি সংযোগগুলি, পোর্টগুলি যেগুলি কম্পিউটার শুনছে তা প্রদর্শন করে।

netstat -tupln

এটি আপনাকে পিডের সাথে সমস্ত সংযোগের তালিকাবদ্ধ করবে। পিডটি সন্ধান করুন এবং অনুলিপি করুন এবং নীচের কমান্ডটি চালান। নিশ্চিত হয়ে নিন যে আপনি নিম্নলিখিত কমান্ডটিতে আসল আইডি দিয়ে প্রতিস্থাপন করেছেন।

kill -9 <copied pid>

-9 সংযোগটি জোর করে হত্যা করতে ব্যবহার করুন।


1

উদাহরণস্বরূপ, আপনি যে পোর্টটি হত্যা করতে চান তার সাথে sudo fuser PORT/tcp -k প্রতিস্থাপনের চেষ্টা করুনPORT80


0

কিল -9 $ (lsof -t -i: 9001)

প্রক্রিয়া মেরে ব্যবহার করা যেতে পারে। আপনি 9001 এর পরিবর্তে যে কোনও বন্দর নম্বর ব্যবহার করতে পারেন


আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.