একটি দুর্বৃত্ত অ্যাপ্লিকেশন দ্বারা খোলা বন্দর কীভাবে বন্ধ বা (আনবাইন্ড?) করবেন?


19

আমি ফেডোরা 13 64 বিট ব্যবহার করছি। আমার ग्रहण প্রোগ্রামটি 9050 পোর্টে একটি সার্ভার শুরু করে তবে আমি প্রোগ্রামটি বন্ধ করে দিই, গ্রহনটি সার্ভারটি সঠিকভাবে বন্ধ করতে ব্যর্থ হয়। পুনরায় সূচনাগ্রহণের কোনও প্রভাব নেই।

কীভাবে আমি কমান্ড লাইন থেকে জোর করে কোনও বন্দর বন্ধ বা বন্ধ করতে পারি?

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

উত্তর:


10

শ্রোতা বন্দরকে জোর করে বন্ধ করার একমাত্র উপায় হ'ল প্রক্রিয়াটি যে শুনছে তা হ'ল। ব্যবহারের lsof, netstat, fuser- রুট হিসাবে - আউট প্রক্রিয়ার আইডি খুঁজে। প্রক্রিয়াটি একবারে বের হয়ে আসার পরে (নিজে থেকে বা নিহত হয়ে), কার্নেলটি খালি সমস্ত সকেট স্বয়ংক্রিয়ভাবে পরিষ্কার করবে। (তবে, এমন কিছু ক্ষেত্রে থাকতে পারে যে কয়েক মিনিটের জন্য একই বন্দরে প্রোগ্রামগুলি শুনতে অস্বীকার করা হবে; এক্ষেত্রে আপনি যা করতে পারেন তা অপেক্ষা করতে হবে))


19
lsof -n -i

আপনি যে প্রক্রিয়াটি সন্ধান করছেন এটি সন্ধান করুন এবং এটি হত্যা করুন।

lsofম্যানুয়াল থেকে :

-n এই বিকল্পটি নেটওয়ার্ক ফাইলগুলির নাম হোস্ট করার জন্য নেটওয়ার্ক নম্বর রূপান্তরকে বাধা দেয়। রুপান্তরিতকরণ বাধা lsof দ্রুত চালাতে পারে। হোস্ট নেম লুকুয়ালিটি সঠিকভাবে কাজ না করা অবস্থায়ও এটি কার্যকর।

-i [i] এই বিকল্পটি ফাইলগুলির তালিকা নির্বাচন করে যার ইন্টারনেটের ঠিকানার সাথে i নির্দিষ্ট করা ঠিকানার সাথে মেলে। যদি কোনও ঠিকানা নির্দিষ্ট না করা থাকে তবে এই বিকল্পটি সমস্ত ইন্টারনেট এবং x.25 (এইচপি-ইউএক্স) নেটওয়ার্ক ফাইলের তালিকা নির্বাচন করে।

আমি মনে করি এই প্রশ্নের একই উত্তর ।


7
| grep ":9050"সহজেই আউটপুট ফিল্টার করতে (বা যাই হোক না কেন পোর্ট নম্বর) নিক্ষেপ করুন
isaacparrot

9

আপনি fuserকমান্ডটি -kস্যুইচ দিয়ে ব্যবহার করতে পারেন।

উদাহরণস্বরূপ, 111 পোর্টটি বন্ধ করতে, আপনি নিম্নলিখিতগুলি করতে পারেন: fuser -k 111/tcp (এটি ফুসারের মতো স্পষ্টভাবে করেছে বলে এটি হত্যা করার প্রক্রিয়াটির ID খুঁজে পেতে ঝামেলাও বাঁচায়)

মনে রাখবেন যে কিছু প্রক্রিয়া একবার স্বয়ংক্রিয়ভাবে বন্ধ হয়ে গেলে পুনরায় চালু হয়। তার জন্য, আপনাকে যথাযথ কাজের ভিত্তিতে প্রতিটি প্রক্রিয়াটির কনফিগার ফাইলটি পরীক্ষা করতে হবে।


-3

আমার একই সমস্যা ছিল, কেবল সেই প্রক্রিয়াটি সন্ধান করুন যা উইন্ডোতে সিএমডি কমান্ড ব্যবহার করে সেই পোর্টটি শুনছে

netstat -a -b

তারপরে আপনি এটি টাস্ক ম্যানেজারের মাধ্যমে বন্ধ করতে পারেন


2
দুঃখিত, আমি উজ্জীবিত। আপনি "উইন্ডোজে" উল্লেখ করেছেন। নেট-স্ট্যাট-এর "-b" প্যারামিটার, যা এক্সিকিউটেবল নামগুলি দেখায়, মাইক্রোসফ্ট উইন্ডোজের সাথে নির্দিষ্ট। (ইউনিক্স নেটস্যাট্যাট তারতম্যের একই রকম কার্যকারিতা থাকতে পারে তবে সাধারণত একই পরামিতি ব্যবহার করা হচ্ছে না)) তবে, প্রশ্নটি "ফেডোরা" বলেছে, সুতরাং এই প্রশ্নটির প্রশ্নকারী আলাদা আলাদা অপারেটিং সিস্টেম ফেডোরা 13 64 বিট সম্পর্কিত তথ্য খুঁজছিলেন। ফেডোরার জন্য নেটস্পটের ম্যান পৃষ্ঠাটি নির্দেশ করে যে -pব্যবহারটি পিআইডি দেখায় (যা এক্সিকিউটেবলের নাম সনাক্ত করতে ব্যবহার করা যেতে পারে)।
তোগাম

1
এই উত্তরে বেশ কয়েকটি ভুল রয়েছে। উত্তরে ব্যাকরণগত ত্রুটি রয়েছে যা এড়ানো যেত। উত্তর ফেডোরার ক্ষেত্রে প্রযোজ্য নয়, যা পরিষ্কারভাবে উল্লেখ করা হয়েছে, প্রশ্নের প্রথম বাক্যে। 30 মিনিট আগে এই উত্তরটি জমা দেওয়ার সময় প্রশ্নে এই তথ্যটি থাকে না এমনটি নয়, প্রশ্নটি জুলাই ২০১১ সাল থেকে সম্পাদিত হয়নি, যা প্রায় ৫ বছর আগে। সুতরাং আমি এই উত্তরটি এটির জন্য নিচ্ছি, একটি "আমিও" উত্তর, যা খুব কমই আসলে সহায়ক helpful
রামহাউন্ড
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.