আমি কোন প্রক্রিয়াটি (বিশেষত, প্রক্রিয়া আইডি) প্রদত্ত বন্দর ব্যবহার করছে তা সন্ধান করতে চাই। একটি ধরাটি হ'ল, আমি সুডো ব্যবহার করতে চাই না, বা আমি রুট হিসাবে লগইন করছি না। আমি যে প্রক্রিয়াগুলির জন্য এটি কাজ করতে চাইছি সেগুলি একই ব্যবহারকারীর দ্বারা চালিত হয় যা আমি প্রক্রিয়া আইডিটি খুঁজতে চাই - তাই আমি ভাবতাম এটি সহজ।
উভয়ই lsof
এবং netstat
প্রসেস আইডিটি আমাকে জানায় না যতক্ষণ না আমি এগুলি sudo ব্যবহার করে চালাচ্ছি - তারা আমাকে বলবে যে বন্দরটি যদিও ব্যবহৃত হচ্ছে।
কিছু অতিরিক্ত প্রসঙ্গ হিসাবে - আমার পরিচালিত একটি সার্ভারের সাথে এসএসএইচের মাধ্যমে সমস্ত সংযোগ স্থাপন করা এবং বিপরীত পোর্ট ফরোয়ার্ড তৈরি করা আমার কাছে বিভিন্ন অ্যাপ রয়েছে। সেগুলি সেট আপ হয়ে গেলে, আমার সার্ভারটি ফরওয়ার্ড করা পোর্টটি ব্যবহার করে কিছু প্রক্রিয়াজাত করে এবং তারপরে সংযোগটি হত্যা করা যায়। যদি আমি প্রক্রিয়াগুলিতে নির্দিষ্ট পোর্টগুলি (প্রতিটি অ্যাপ্লিকেশনটির নিজস্ব থাকে) ম্যাপ করতে পারি তবে এটি একটি সহজ স্ক্রিপ্ট। কোন পরামর্শ?
এটি কোনও উবুন্টু বাক্সে, যাইহোক - তবে আমি অনুমান করছি যে কোনও সমাধান বেশিরভাগ লিনাক্সের ডিস্ট্রোস জুড়ে মানক হবে।
-an
।netstat -pant
এছাড়াও কাজ করে এবং এটি মনে রাখা সহজ।