সুডো কি সত্যিই আপনাকে কিছু সময়ের জন্য রুট করে তোলে?


1

লিনাক্সে, কোন ধরণের পরিস্থিতিতে, যদি কোনও হয়, কোনও rootফাইল / ফোল্ডার অ্যাক্সেস করার জন্য নন-হিসাবে একটি কমান্ড চালানো বা ব্যবহার করে একটি ফাইল / ফোল্ডার তৈরি / মুছে ফেলার sudoফলে rootব্যবহারকারী একই কমান্ড চালানোর সময় "অনুমতি অস্বীকার" হতে পারে ? ব্যবহারকারী অবশ্যই একটি sudoer হিসাবে ধরে নেওয়া হয়।

উবুন্টু 12 উপর প্রাকটিক্যাল উদাহরণ: আমি এই ডিরেক্টরির পেয়েছেন /সঙ্গে root:rootমালিকানা ও drwxr-xr-xঅনুমতি ও আমি চেষ্টা sudo date > fileসেইসাথে যখন এটা sudo date | tee fileকিন্তু একই পেয়েছিলাম

-bash: file: Permission denied

উভয় ক্ষেত্রেই. অবশ্যই নিশ্চিত, আমি থাকলে কোনও সমস্যা নেই root। এটি বেশ হতাশাব্যঞ্জক।


1
দুটি সম্ভাবনা: ১) আপনি sudoদের ফাইলটিতে নেই (যদিও কেউ ভাবেন sudoযে ত্রুটিটি দেবে)। আরো সম্ভাবনা 2) sudoকমান্ড চালানোর জন্য কনফিগার করা না যেমন root, কিন্তু অন্য ব্যবহারকারী।
ব্রেকথ্রু

@ ব্র্যাকথ্রো বলতে আমি বোঝাচ্ছি যে অবশ্যই একজন ব্যবহারকারী অবশ্যই একটি sudoer।
ডেসমন্ড হিউম

1
sudo date > fileরুট হিসাবে ফাইলটি খোলেন না। এটি ফাইলটি খোলে এবং সেই ফাইলটির আউটপুট পুনঃনির্দেশ করে sudo date
ডেভিড শোয়ার্জ

@ ডেভিডশওয়ার্টজ sudo (date > file)আপনি ফলাফলগুলি প্রস্তাব করেছেন syntax error near unexpected token 'date'
ডেসমন্ড হিউম

তারিখ | sudo tee ফাইল
zb '

উত্তর:


7

sudo কেবল sudo'ed কমান্ডকে রুট হিসাবে চালায়। একটি অনিয়মিত ব্যবহারিক পার্থক্য যে, মধ্যে

sudo echo mem > /sys/power/state

(যা কার্নেলকে র‌্যাম স্থগিত করতে বলে)

এটি কার্যকর হয় না কারণ আপনি যে শেলটি চালাচ্ছেন (সাধারণ ব্যবহারকারী হিসাবে) / sys / পাওয়ার / স্টেটে পুনর্নির্দেশটি সেট করার চেষ্টা করে, তাতে এটির লেখার অনুমতি নেই। রুট হিসাবে সাব-শেল চালিয়ে আপনি এটি সফলভাবে করতে পারেন

sudo sh -c 'echo mem > /sys/power/state'

বা এমন কোনও প্রোগ্রাম ব্যবহার করে যা ফাইল নিজেই খোলায়, যেমন ডিডি:

echo mem | sudo dd of=/sys/power/state

অথবা প্রথমে রুট শেল পেয়ে যেমন 'সু' বা 'সুডো-এস' ব্যবহার করে।


3

সুডো কি সত্যিই আপনাকে কিছু সময়ের জন্য রুট করে তোলে?

Man পৃষ্ঠা জন্য sudoব্যাখ্যা করে:

কোনও ব্যবহারকারীকে রুট শেল অর্জন থেকে রক্ষা করার সহজ উপায় নেই যদি সেই ব্যবহারকারীকে সুডোর মাধ্যমে নির্বিচার কমান্ড চালানোর অনুমতি দেওয়া হয়।

সুতরাং, যদি আপনি চালিয়ে যান sudo somethingএবং আপনার পাসওয়ার্ড টাইপ করেন; তারপরে, আপনি যদি আপনার টার্মিনালটি লক না করেন তবে অন্য ব্যবহারকারী sudo su -5 মিনিটের মধ্যে চলতে সক্ষম হবে যা তাকে রুট শেলটিতে অ্যাক্সেস দেবে, যদি আপনার সুডো আপনাকে স্বেচ্ছাচারিত আদেশগুলি চালানোর অনুমতি দেয়। সময়সীমা সম্পর্কে আরও তথ্যের জন্য, আমি উপরের ম্যান পৃষ্ঠা থেকে এই প্রাসঙ্গিক বিভাগটি উদ্ধৃত করতে যাচ্ছি:

Surders নীতিটি ওভাররাইড না করা হলে 5 মিনিটের জন্য শংসাপত্রগুলি ক্যাশে করে sudoers। চলার sudoসঙ্গে -vবিকল্প, কোনো ব্যবহারকারী একটি কমান্ড চলমান ছাড়া ক্যাশে পরিচয়পত্র আপডেট করতে পারেন।

আমি কেন অনুমতি অস্বীকার করব?

sudoবাশ কীভাবে কাজ করে তা নিয়ে কোনও হস্তক্ষেপ করতে পারে না , এই কারণেই এটি ফাইল পুনর্নির্দেশের মতো বৈশিষ্ট্য এবং কমান্ডের বাইরে কাজ করে এমন অন্যান্য বৈশিষ্ট্যগুলির সাথে ভাল আচরণ করতে পারে না। এটি এড়ানোর জন্য আপনাকে সম্পূর্ণ কমান্ডটি কার্যকর করতে একটি রুট শেল জিজ্ঞাসা করতে হবে, যেমন এটি পুনর্নির্দেশের অক্ষরটিকে বিশ্লেষণের পরিবর্তে কোনও মূলের পরিবেশে পাঠিয়ে দেয়।

অন্য ব্যবহারকারীর হিসাবে দেখানো হয়েছে, এটি চালানোর মতোই সহজ

sudo bash -c 'date > file'

বা এটিকে পুনরায় লেখার জন্য আপনাকে পুনরায় নির্দেশক প্যারামিটারটি রুট হিসাবে চালানোর দরকার নেই, যেমন:

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