เรียกใช้คำสั่งในฐานะผู้ใช้อื่นครั้งเดียว:
sudo -u www-data php script.php
rootนี้จะทำงานถ้าคุณเป็น
สำหรับ php ที่ทำงานอยู่เสมอwww-dataมีความเป็นไปได้หลายอย่าง คุณสามารถสร้าง shellpper แบบเรียบง่าย หาก/usr/bin/phpเป็นเพียงลิงค์อ่อน/usr/bin/php5หรือที่คล้ายกันนั่นจะทำให้ง่ายขึ้น เพียงแทนที่ soft-link (ไม่ใช่ไฟล์php5) ด้วยสคริปต์เช่นนี้:
#!/bin/sh
sudo -u www-data php5 $*
return $?
ที่ไม่ได้ทดสอบว่า นอกจากนี้โปรดทราบว่าสิ่งนี้จะพยายามเรียกใช้php5ในฐานะผู้ใช้www-dataเสมอแม้ว่าผู้ใช้rootอาจไม่ได้รับอนุญาตและอาจไม่ได้รับอนุญาต และอาจไม่ใช่สิ่งที่คุณต้องการ บริการที่ติดตั้งบางอย่างอาจประสบปัญหาเมื่อพยายามเรียกใช้งาน php
โซลูชัน (น่าจะดีกว่า) ที่จะนำไปใช้เฉพาะกับรูทอาจเป็นการปล่อยซอฟต์ลิงค์ไว้/usr/bin/phpตามลำพังและวางสคริปต์ไว้/root/binแทน แล้วเพิ่มโฟลเดอร์นั้นไปยังเส้นทางผ่านทาง.bashrc, .profileหรือคล้ายกัน หากคุณมี/etc/skel/.profileนั่นอาจชี้ให้เห็นวิธีการทำ:
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi
ครั้งนี้อยู่ในของคุณ.bashrc, .profileหรือคล้ายกันทุกเปลือกใหม่ที่คุณเปิดจะช่วยให้คุณสามารถดำเนินการใด ๆ โดยตรง executables (+ x) ใน$HOME/bin( /root/binราก)
คำแนะนำ: คุณอาจต้องการตั้งชื่อสคริปต์ของ wrapper phpwwwเพื่อให้คุณระบุphp script.phpหรือphpwww script.phpตัดสินใจอย่างชัดเจนว่าคุณต้องการ php ปกติหรือ sudo'ed
อีกวิธีคือนามแฝงง่ายๆ สถานที่แห่งนี้ในของคุณ.bashrc, .profileหรือคล้ายกัน:
alias phpwww='sudo -u www-data php'