পিএইচপি স্ক্রিপ্ট থেকে ডেবিয়ান বন্ধ করুন


0

আমি আমার রাস্পবেরিপি চালাচ্ছে রাস্পবিয়ানকে পিএইচপি স্ক্রিপ্ট থেকে লাইটটিপিডি ওয়েব সার্ভারে চালিত করার চেষ্টা করছি। shell_exec("sudo /sbin/shutdown -h now 2>&1");

আমি lighttpd ALL=(ALL) NOPASSWD: /sbin/shutdownআমার / ইত্যাদি / সুডোর ফাইলগুলিতে যুক্ত করেছি এবং Defaults !requirettyএটি সেট করা আছে তা যাচাই করেছি ।

স্ক্রিপ্টটি চালানোর সময় আমি এখনও "সুডো: কোনও টিটি উপস্থিত নেই এবং কোনও জিজ্ঞাসা কর্মসূচি নির্দিষ্ট নেই" পেয়েছি।

কেউ আমাকে সাহায্য করুন করতে পারেন? ধন্যবাদ!


আমি মনে করি আপনি এটির shell_execপরিবর্তে ফাংশনটি পেতে পারেন execযেহেতু এটি একটি শেল কমান্ড (আমি মনে করি এটি এটি কিভাবে কাজ করে)। আমি ১০০% নিশ্চিত নই (তাই মন্তব্যটি), তবে চেষ্টা করার মতো হতে পারে।
— নার্ডওয়ালার

আউটপুট পুনঃনির্দেশ ( 2>&1) এর জন্য একটি শেল প্রয়োজন; কমান্ড থেকে এটিকে অপসারণ করার চেষ্টা করুন এবং দেখুন যে আপনি কোনও অন্যরকম ফলাফল পান কিনা।
— অ্যারন মিলার

তোমার মন্তব্যের জন্য ধন্যবাদ. আসলে আমি ইতিমধ্যে প্রথম স্থানে শেল_এক্সেক চেষ্টা করেছি। আমি আমার প্রশ্নের ভুল কমান্ডটি অনুলিপি করেছি। এবং এক্সিকিউট ("sudo / sbin / shutdown -h এখন"); কাজ করে না।
— Frsc

আপনি কি নিশ্চিত যে লাইটটিপিডি ব্যবহারকারী লাইটটিপিডি হিসাবে চলছে? পিএইচপি স্ক্রিপ্টে echo `whoami`; এটি
— www-

উত্তর:


1

লাইটটিপিডি ব্যবহারকারী হিসাবে চলমান নাও থাকতে পারে lighttpd।

পিএইচপি স্ক্রিপ্টে এটি ব্যবহার করে কী ব্যবহারকারীর সাথে চলছে তা লিখতে নিম্নলিখিতটি লিখুন:

echo shell_exec('whoami');

এটি www-dataবা httpপরিবর্তে হতে পারে ।


আপনার ইঙ্গিতটির জন্য আপনাকে এলানমনকে ধন্যবাদ। সঠিক ব্যবহারকারী প্রকৃতপক্ষে www- ডেটা ছিল এবং লাইটটিপিডি ছিল না কারণ আমি অন্য কোথাও পড়েছি। এখন এটি প্রত্যাশার মতো কাজ করে।
— Frsc
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.