Sudo কমান্ড কার্যকর করতে দীর্ঘ সময় নেয় কেন?


83

আমি গত কয়েক মাস ধরে লিনাক্স (ফেডোরা 10, তারপর 11) বাছাই করেছি (এবং এটির প্রচুর উপভোগ করছি - এটি আবার কম্পিউটার আবিষ্কার করার মতো, অনেক কিছু শিখার মতো)।

আমি নীচে দেখানো অনুসারে / ব্যবহারকারীর / sudoers ফাইলের শেষ লাইনে আমার ব্যবহারকারীকে যুক্ত করেছি, যাতে সুডো কমান্ডটি চালানোর সময় আমার পাসওয়ার্ড জিজ্ঞাসা করা না যায়:

মাইউসারনেম সমস্ত = (সমস্ত) নোপাএসডাব্লুডি: সমস্ত

এখন যতবারই আমি sudo ব্যবহার করে একটি কমান্ড কার্যকর করি, এটি কার্য সম্পাদন করার আগে (~ 10 সেকেন্ড) আগে একটি লক্ষণীয় সময়কে বিরতি দেয়। এটি কেন হতে পারে এবং আমি কীভাবে এটি ঠিক করতে পারি? আমি ফেডোরা 11 x86 64 এ সুডো সংস্করণ 1.7.1 চালাচ্ছি।


প্রযুক্তিগতভাবে এই একটি স্ক্রিপ্ট সম্পাদনা হিসাবে গণনা করা হয়, তাই না? স্ক্রিপ্ট কি প্রোগ্রাম নয়?

6
নোপাএসডাব্লুডি: এটি একটি সুরক্ষা ঝুঁকি হিসাবে বিবেচিত হয় এবং সুডোকে প্রথম স্থানে ব্যবহার করার উদ্দেশ্যকে পরাস্ত করে।

আমি এটি কিনতে পারি, তবে কেন এটি এত বেশি সময় নেয় তা এখনও এখনও অবধি রয়ে গেছে।

2
এই মেশিনটি ব্যবহারকারী এবং প্রমাণীকরণ কোথা থেকে পায়? এলডিএপি, সম্ভবত কার্বেরোসের সাথে সম্ভবত?
wzzrd

উত্তর:


123

আমি এই প্রশ্নটি এসও-তে জিজ্ঞাসা করেছি এবং এটি এখানে স্থানান্তরিত হয়েছে। এটি বলেছিল যে প্রশ্নটি আমার নিজের মালিকানাধীন, এমনকি সঠিক উত্তরটি গ্রহণ করার মতো ক্ষমতা আর আমার নেই, তবে এটি কেন এবং কীভাবে সমাধান করবেন তার সঠিক কারণ হিসাবে এটি প্রমাণিত হয়েছিল:

এখানে পাওয়া ব্যবহারকারী "রোহান্ধ্রুভা" সঠিক উত্তর দেয়:

আপনি যদি ইনস্টল প্রক্রিয়া চলাকালীন হোস্টনামটি পরিবর্তন করেন তবে এটি ঘটে।

সমস্যা সমাধানের জন্য ফাইল / ইত্যাদি / হোস্টগুলি সম্পাদনা করুন

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 <ADD_YOURS_HERE> 
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 <ADD_YOURS_HERE>

3
বেশ ঠিক। কিছুটা অবাক করার মতো বিষয় যে ফেডোরার মতো ডিস্ট্রোসগুলি ইনস্টল করার সময় আপনার হোস্টনামটি পরিবর্তন করে তবে / যাই হোক না কেন / সম্পাদনা করে না। এটি আপনার জন্য উন্মুক্ত উত্স!
ডিমো 414

এটি আমার ধীর সুদ ব্যবহার স্থির করে দিয়েছে, ধন্যবাদ! আমি সম্পাদনা / ইত্যাদি / হোস্টনাম, এবং / etc / ਮੇਜ਼ਬਾਨ ফাইল সম্পাদনা করতে ভুলে গেছি।
জো

2
আপনার হোস্টনামটি 127.0.0.1 বা :: 1 লাইনে যুক্ত করা কিছু নির্দিষ্ট সার্ভার সম্পর্কিত সফ্টওয়্যারকে ডান হোস্টনাম / আইপি / ইন্টারফেসের সাথে আবদ্ধ হতে পারে। এর মধ্যে একটি উদাহরণ ক্লৌডের ম্যানেজার, হ্যাডোপ পরিষেবাদিগুলি ভুল হোস্টনাম পেয়ে সিএমকে বিভ্রান্ত করে কারণ তারা সকলেই লোকালহোস্টে সমাধান করে to আমি সম্ভাব্য সমাধানের জন্য নীচের অন্যান্য উত্তরটি পড়ার পরামর্শ দিচ্ছি। এটি স্ট্যান্ড স্টোন ওয়ার্কস্টেশনে সমস্যা সৃষ্টি করতে পারে বা নাও পারে যার সাথে এটির সাথে সংযুক্ত অন্য কোনও কম্পিউটার থাকবে না।
ddcruver

1
এটি /etc/nsswitch.conf (একই কারণে )ও হতে পারে। খনিটি "হোস্ট: ডিএনএস ফাইলগুলি" তে সেট করা হয়েছিল এবং তাই এটি একটি দীর্ঘ সময়সীমার সাথে একটি ডিএনএস সার্ভারে আমার হোস্টনামটি সন্ধান করছিল। আমি এটিকে "হোস্ট: ফাইল ডিএনএস" এ পরিবর্তন করেছি এবং এখন এটি প্রথমে / ইত্যাদি / হোস্টগুলিতে সন্ধান করবে। এই উত্তরের জন্য ধন্যবাদ, যা আমাকে nsswitch.conf এ সন্ধান করতে পরিচালিত করেছে!
অ্যালান পোর্টার

1
এটি হাস্যকর যে এটিই ছিল সমাধান। বিশ্বে কেন sudoকমান্ডকে কাজ করার জন্য হোস্টনামটি দেখতে হবে? আমার হোস্টনামের সাথে sudo echo helloকী করতে হবে ? যাইহোক, উত্তরের জন্য ধন্যবাদ
smac89

24

আপনার সিসলগ ডেমন সঠিকভাবে কাজ করছে কিনা তা পরীক্ষা করুন; এটি আমার জন্য সমস্যা সৃষ্টি করেছে।

নিম্নলিখিত কমান্ড চালান

logger 'Hello world'
  1. কমান্ডটি কি যুক্তিসঙ্গত সময়ের মধ্যে ফিরে আসে?

  2. 'হ্যালো ওয়ার্ল্ড' কি প্রদর্শিত হবে /var/log/syslog?

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


9
আশ্চর্যজনকভাবে আমার কাছে সমস্যা ছিল। এটা কে ভেবেছিল. আমার জন্য সমাধানটি কেবল সিসলগ পুনরায় চালু করা ছিল। service rsyslog restart
মাইককুলস

একই অবস্থা. service rsyslog restartআমার ধীর sudo কমান্ড স্থির করে।
পেড্রো কর্ডেরিও

আশ্চর্যজনকভাবে আমার কাছে সমস্যা ছিল। তার আগে, সার্ভারের পুরো অনুরোধটি এত ধীরে। আমি শুধু জানতে চাইছি কেন?
মাইকেল ওয়াং

10

কোনও নেটওয়ার্ক / মাউন্টে পড়ার জন্য যে ফাইল / ডিরেক্টরিগুলির মধ্যে একটি পড়তে হবে তা হ'ল, বা এটি কোনওভাবে ধীর ইউএসবি ডিভাইস থেকে পড়া শুরু করে? স্ট্রেসের চেষ্টা করুন এবং দেখুন এটি কোথায় ধীর; এটি খুব দ্রুত যায় যদি, না

sudo strace -r -o trace.log sudo echo hi

পূর্ববর্তী সিস্টেমে প্রবেশের পরে নেওয়া প্রতিটি সময় প্রতিটি লাইন শুরু হবে।

(প্রাথমিক সুডো প্রয়োজনীয় বলে মনে হচ্ছে; ফলাফলগুলি কতটা ক্ষতিগ্রস্থ হবে তা আমি জানি না))


ধন্যবাদ. এটি এইচডিডি থাকছে, কোনও ইউএসবি বা নেটওয়ার্ক ড্রাইভ নেই।

@ কুগা: এবং স্ট্রেস থেকে আপনি কী শিখলেন?

@ অলিগোফ্রেন: আপনাকে সুডো স্ট্রেস করতে হবে

8

আমি সম্প্রতি খুঁজে পেয়েছি যে আমার একই সমস্যা ছিল। কোনও সুডো দেরি হয়নি এবং তারপরে হঠাৎ করে প্রায় 10-10 সেকেন্ড বিলম্ব হয়েছিল। আমি নির্দিষ্ট সমস্যাটি ব্যবহার করে নির্ধারণ করেছি:

 1. chmod u+s /usr/sbin/strace  (as the root user)

নিজেকে হিসাবে:

 1. sudo -K
 2. strace sudo /bin/tcsh

এবং তারপরে সন্ধান করুন যেখানে সিস্টেম কলগুলি স্থগিত রয়েছে।

আমার ক্ষেত্রে, আমি দেখতে পেলাম যে এটি ডিএনএস অনুবাদে ঝুলছে, সম্ভবত আমার তালিকায় থাকা /etc/resolv.confডিএনএসেনের একজন খুব বাজি বা খারাপ হয়ে গেছে। সুতরাং আমি রেজোলিউশনের ক্রমটি পরিবর্তন করেছি এবং পুফ জিনিসগুলি আবার দ্রুত কাজ করেছে।


সেরা উত্তর (আমার জন্য)! আমার ডিবিস ব্রোকারটি নেটওয়ার্ক সংযোগ বিচ্ছিন্ন হওয়ার কারণে ক্রাশ হচ্ছে এবং সুডো / কেডিএ এটির সাথে সংযোগ স্থাপনের সময় নির্ধারণ করছে Found ধন্যবাদ!
পিএসএসজিসিএসসিম

ধন্যবাদ, এটি আমাকে সাহায্য করেছে। hostsআমার /etc/nsswitch.conf এ লাইনে পূর্ববর্তী পরিবর্তনটিও পূর্বাবস্থায় নিয়ে যেতে হয়েছিল । আমি hostsমানটির একটি উপসর্গ হিসাবে "রেজলিউশন ডিএনএস" যুক্ত করেছি । আমি যখন এই উপসর্গটি সরিয়েছি, সুডো আবার দ্রুত ছিল।
মনিবার

5

আমি ফেডোরার বিষয়ে নিশ্চিত নই, তবে আমি অন্যান্য সিস্টেমগুলি ব্যবহার করেছি যেখানে sudo আপনি কোথায় থেকে লগ ইন করেছেন তা যাচাই করবে, যদি আপনার ডিএনএস ভালভাবে সেট আপ না করা হয় তবে সময়সীমা শেষ হতে পারে। এসএসএইচ মেশিনে প্রবেশ করার সময় এটিও দেখা যেতে পারে - একটি প্রম্পট নিয়ে আসতে যুগে যুগে সময় লাগে।


5

আমি একই সমস্যা হ'ল, আমি ত্রুটিগুলির জন্য /var/log/auth.log এবং syslog পরীক্ষা করেছিলাম। দেখা যাচ্ছে যে আমার এলডিএপি সার্ভারটি পৌঁছানো যায়নি এবং এটি সবকিছু ধীর করে দিয়েছে।

আমি আর এলডিএপি ভিত্তিক লেখক ব্যবহার করিনি, সুতরাং আমি সমস্ত "ldap" রেফারেন্সগুলি /etc/nsswitch.conf থেকে সরিয়েছি

তার পর থেকে সবকিছু আবার কবজির মতো কাজ করে।


আপনি কেন পাঁচ বছরের পুরানো প্রশ্নের একটি সুস্পষ্ট সম্পর্কযুক্ত উত্তর (ওপি এলডিএপি ব্যবহার করেননি) পোস্ট করেন?
সোভেন

7
কারণ এটি যে কাউকে সাহায্য করতে পারে। আমি এখানে উল্লিখিত সমস্ত জিনিস পরীক্ষা করেছিলাম, কিন্তু কিছুই সাহায্য করেনি। অন্য কেউ ধীর এবং প্রতিক্রিয়াহীন সুডো কমান্ডের অন্তর্নিহিত কারণ হিসাবে তার কোনও এলডিএপ সংযোগ সমস্যা আছে কিনা তা যাচাই করে আমার উত্তর দিয়ে সঠিক দিকটি অনুসন্ধানের দিকে দৃষ্টি নিবদ্ধ করা হতে পারে। এটি ডিএনএস-সম্পর্কিত উত্তরগুলির মতোই প্রাসঙ্গিক যে কভারগুলির পিছনে কিছু দোষযুক্ত যা ব্যবহারকারীদের কাছে সরাসরি দৃশ্যমান নয়। আমি এই সাইটটিকে জ্ঞানের সাধারণ উত্স হিসাবে বিবেচনা করি এবং কেবল একটি প্রশ্ন / উত্তর ওয়েবসাইটের ধরণের হিসাবে নয়। এটি প্রাসঙ্গিক জ্ঞান সংগ্রহের বিষয়ে।
সাকুরবা

6
এছাড়াও আপনি কে আমার সাহায্যকে অসম্মানিত করতে নীল নরকে আছেন? এই সাইটটি কাজ করে কারণ জ্ঞান ভাগ করে নেওয়া উত্সাহিত হয়, লোকেদের বঞ্চিত করার কারণে নয়। আপনি যদি এটি পছন্দ করেন না, তবে আপনি এটিকে উপেক্ষা করার অধিকারী।
সাকুরবা

5

ক্ষেত্রে, এটি হোস্টনামটি (যা /etc/sysconfig/ নেটওয়ার্কে কনফিগার করা ছিল ) /etc/hostsফাইলটিতে বিদ্যমান নেই ; সুতরাং উপরোক্ত ফাইলটি যুক্ত করার পরে ফাইলটি তত্ক্ষণাত্ খোলে।


3

আমার অনুরূপ সমস্যা ছিল, আমি হোস্টনাম (যেমন মাইবক্স) এবং হোস্টনেম কমান্ডের সম্পূর্ণ আউটপুট (মাইবক্স.মিডোমেন.কম) উভয় রেখে এটি ঠিক করেছি। এটি ঠিক এখন এটি পরিষ্কার করেছে cleared তাত্ক্ষণিকভাবে অ্যাক্সেসে / ইত্যাদি / হোস্টগুলি খোলার জন্য 2 মিনিট থেকে গেছে।


3

সেলিনাক্স কেস

যদি একই সুডো কমান্ডটি কেবলমাত্র ডেমনে ধীর হয় এবং কমান্ড লাইনে দ্রুত হয়, তবে এটি সম্ভবত সেলইনাক্স দ্বারা সৃষ্ট । (SELinux = এনএসএ সুরক্ষা-বর্ধিত লিনাক্স কার্নেল মডিউল, ডিফল্টরূপে ফেডোরায় সক্ষম করা হয়েছে))

একটি সাধারণ কেস হ'ল একটি HTTP সার্ভার এবং সার্ভার পরিচালনার জন্য একটি বিশেষ স্ক্রিপ্ট, এতে সীমাবদ্ধ sudoers:

apache ALL=(root_or_user) NOPASSWD: /full/path/the_safe_command

এই ক্ষেত্রে এটি সাধারণ যে নিরীক্ষণ লগটিতে সেলইনাক্স সম্পর্কে কিছুই জানা যায়নি ausearch -m avc -ts today, তবে আমরা যদি অস্থায়ীভাবে প্রয়োগের মাধ্যমে অক্ষম করে থাকি তবে স্ক্রিপ্টটি দ্রুত চলছে setenforce 0। (এবং তারপরে ফিরে সক্ষম করুন setenforce 1)

সিস্টেম লগে কেবলমাত্র প্রাসঙ্গিক বার্তাগুলি (জার্নালক্রিল) এগুলি 25 সেকেন্ডের বিলম্বের পরে:

... সুডো [...] পাম_সিস্টেমড (সুডো: সেশন): সেশন তৈরি করতে ব্যর্থ হয়েছে: কোনও উত্তর পাই নি। সম্ভাব্য কারণগুলির মধ্যে রয়েছে: দূরবর্তী অ্যাপ্লিকেশন কোনও উত্তর পাঠায়নি, বার্তা সুরক্ষা নীতিটি উত্তরটিকে অবরুদ্ধ করেছে, উত্তরটির সময়সীমা শেষ হয়ে গেছে বা নেটওয়ার্ক সংযোগটি ভেঙে গেছে।
... সুডো [...]: পাম_উনিক্স (সুডো: সেশন): সেশনটি ব্যবহারকারী রুটের জন্য খোলা হয়েছে (uid = 0)

সমস্ত চুপচাপ "ডন্ট-অডিট" সেলিনাক্স বার্তাগুলি লগইন দ্বারা সক্ষম semodule -DBএবং আবার অক্ষম করা যেতে পারে semodule -B
(আমি আশা করি শীঘ্রই আমি এখানে এই মামলার জন্য খুব শীঘ্রই একটি সেলিনাক্স নীতিমালা লিখছি বা এই উত্তর থেকে কোনও পদ্ধতি ব্যবহার করা যেতে পারে))


এই টুকরো তথ্যের জন্য আপনাকে ধন্যবাদ। এখানকার তথ্য থেকে, আমি তখন একটি সম্পর্কিত নিবন্ধ সন্ধান করতে সক্ষম হয়েছি fprintdযা অপরাধীর (ফিঙ্গারপ্রিন্ট প্রমাণীকরণ) সম্ভাবনা উল্লেখ করেছে । আমার জন্য সমস্যাটি সরানো fprintdএবং fprintd-pamসমাধান করা।
কেভিনও

@ কেভিনো সন্তুষ্ট যে এটি আপনাকে সমাধান খুঁজে পেতে সহায়তা করেছে। তবে আমি জানতাম যে আমার সমস্যাটি খুব নির্দিষ্ট এবং প্রশ্নটিতে আমার অবদান কীভাবে সেলইনাক্স সম্পর্কে সন্দেহ নির্ণয় বা বাদ দিতে হবে সেই পদ্ধতিই হওয়া উচিত।
hynekcer

আমি একেবারে এটি একটি +1 দিয়েছি! এটি মেসেজ বাসই একটি সমাধানের দিকে নিয়েছিল। আমি বেশ কয়েকবার সুডো স্লোতে দেখেছি, তবে আপনার আমার ক্লুটি দরকার ছিল।
কেভিনও

1

sudoersআমার কাছে থাকা নমুনা ফাইলটি দেখে, আমি বিশ্বাস করি যে NOPASSWD:বিটের পরে একটি জায়গা থাকার কথা ।


আমি একটি স্থান যোগ করেছি, তবে এটি এখনও পিছিয়ে আছে। পরামর্শের জন্য Thx।

1

আপনার / ইত্যাদি / হোস্ট ফাইলটি পরীক্ষা করে দেখুন এবং নিশ্চিত করুন যে আপনার 127.0.0.1 এর জন্য একটি প্রবেশিকা রয়েছে

( উত্স )


1

কোনও হোস্ট সমস্যা সমাধানের পরে নিশ্চিত হয়ে নিন যে আপনি এনএসসিডি-র মতো কোনও ডিএনএস ক্যাচিং অ্যাপ্লিকেশন চালাচ্ছেন তবে কোনও খারাপ ডিএনএস ক্যাশে মুছে ফেলা হয়েছে:

/etc/init.d/nscd force-reload

1

আমার জন্য এটি krb5- ব্যবহারকারী / কনফিগারেশন / লোকেল ইনস্টল করা হয়েছিল। আমি /var/log/auth.log পরীক্ষা করে এটি লক্ষ্য করেছি। এই প্যাকেজগুলি আনইনস্টল করতে এপ-গেট রিমুভ ব্যবহার করে এটি ঠিক হয়ে গেছে। আপনি যদি কম্পিউটারে স্পষ্টতই কার্বেরোস (pam_krb5) প্রয়োজন হয় তবে এই প্যাকেজগুলি সরিয়ে ফেলবেন না।


0

আপনি কি প্রমাণীকরণের জন্য এলডিএপি ব্যবহার করছেন?

যদি তাই হয় তবে আপনি সম্ভবত বাঁধাই নীতি নরম ব্যবহার করতে চান। /Etc/ldap/ldap.conf (বা /etc/ldap.conf) এ:

bind_policy soft

0

আপনার প্রমাণীকরণ শৃঙ্খলায় আপনার একধরনের টাইমআউট হয়েছে বলে মনে হচ্ছে। Sudo কীভাবে প্রমাণীকরণের চেষ্টা করে এবং বাধাগুলি দেখার জন্য চেষ্টা করে তা পরীক্ষা করে দেখুন।


0

সিস্টেমড কেস

আমার জন্য, আমার সিস্টেমের স্মৃতিশক্তি শেষ হয়ে গেছে এবং প্রচুর প্রক্রিয়া ক্র্যাশ হয়েছিল। আমার সিস্টেমটি সিস্টেমডের উপর ভিত্তি করে এবং সেখানে কিছু ক্র্যাশ হয়েছিল। আমি যা কিছু করেছি তা মনে রাখা আমার পক্ষে কঠিন, তবে:

  • systemctl status <any.service> সময় শেষ হবে
  • আমি পারিনি sudo reboot(সিস্টেমভিত্তিক)

সমাধান

একটি পুনঃসূচনা আমার সমস্যা সংশোধন করেছে, তবে আমার জন্য কেবল বান্দাইদ ছিল। আপনার এখনও স্মৃতি কেন / ক্র্যাশ হয়ে গেছে তা খুঁজে বের করতে হবে।

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