আমার একটি পার্ল স্ক্রিপ্ট রয়েছে যা উডুন্টু 14 এ সুডোর সাথে সূক্ষ্মভাবে কাজ করে এবং কিছু লগফিলগুলি পার্স করে। আমি একটি ওয়েবপৃষ্ঠায় প্রোগ্রামের আউটপুটটি দেখাতে চাই। আমার ওয়েবপেজ কোডটি খুব সহজ:
<html><body>
<h1>Under construction</h1>
<?php
exec ("perl /usr/local/bin/pflogsumm -d yesterday --smtpd_stats /var/log/mail/mail.log > parsed_mail_log.txt");
echo "<pre><p style='font-family:monospace;'>".nl2br(file_get_contents("parsed_mail_log.txt"))."</p></pre>";
?>
</body></html>
সুডো ব্যতীত, ডাব্লু-ডেটা (আমার ধারণা যে স্ক্রিপ্টটি চালনার সময় সেই ব্যবহারকারী) এর কাছে /var/log/mail/mail.log অ্যাক্সেসের অনুমতি নেই এবং আমি যা চাই তা গণনা করি না। এটি স্টাফ আউটপুট করে তবে আমি যে নম্বরগুলি পরীক্ষা করতে চাইতাম তার জায়গায় কেবল শূন্যই থাকে।
আমার প্রশ্ন হ'ল এটি করার "ভাল" উপায়টি কী হওয়া উচিত?
মূল গোষ্ঠীতে www-ডেটা স্থাপন করা যাতে এটি লগটি পড়তে পারে তা ঠিক মনে হয় না।
সম্ভবত আমি এই জাতীয় স্ক্রিপ্টের অভ্যন্তরে sudo সহ একটি স্ক্রিপ্ট চালু করতে পারি
sudo perl /usr/local/bin/pflogsumm -d yesterday...
এবং পূর্ববর্তী স্ক্রিপ্টটি ভিজুডোতে যুক্ত করুন যাতে www-ডেটা প্রমাণীকরণের জন্য জিজ্ঞাসা না করে sudo দিয়ে চালাতে পারে। আবার, মনে হয় এটি "ভাল" বা এটি করার "সঠিক" উপায় নয় ...
পরামর্শ?