Score:-1

WP-CLI ไม่ทำงานจาก cronjob

ธง cn

ฉันมีสคริปต์ทุบตีซึ่งกำลังดึงข้อมูลจากฐานข้อมูลของฉัน ตามข้อมูลที่ได้รับจะสร้างบางโฟลเดอร์ที่มีไฟล์ WP ในแต่ละอัน จากนั้นทำการตั้งค่า สคริปต์ทำงานได้อย่างสมบูรณ์แบบเมื่อฉันเรียกใช้ด้วยตนเอง แต่ WP CLI dosent จะทำงานเมื่อถูกเรียกจาก Ubuntu Cronjob ของฉัน

นี่คือสคริปต์ทุบตี:

#!/bin/bash 

set -f # ปิดการใช้งาน globbing
IFS=$'\n' # ตั้งค่าตัวคั่นฟิลด์เป็น NL (เท่านั้น)



arr=($(sudo mysql -u root -h localhost -e "USE mysite;SELECT * FROM sites WHERE status = 'pending'" | awk 'NR>1'))



สำหรับฉันใน "${arr[@]}"
ทำ
siteid=$(echo $i | awk '{พิมพ์ $1}')
instance=$(echo $i | awk '{พิมพ์ $2}')
Owner=$(echo $i | awk '{พิมพ์ $3}')
สถานะ=$(echo $i | awk '{พิมพ์ $4}')
temporaryurl=$(echo $i | awk '{พิมพ์ $5}')
url=$(echo $i | awk '{พิมพ์ $6}')
dbname=$(echo $i | awk '{พิมพ์ $7}')
dbuser=$(echo $i | awk '{พิมพ์ $8}')
dbpass=$(echo $i | awk '{พิมพ์ $9}')
dbprefix=$(echo $i | awk '{พิมพ์ $10}')
title=$(echo $i | awk '{พิมพ์ $11}')
admin_user=$(echo $i | awk '{พิมพ์ $12}')
admin_password=$(echo $i | awk '{พิมพ์ $13}')
admin_email=$(echo $i | awk '{พิมพ์ $14}')

sudo mysql -u root -h localhost -e "สร้างฐานข้อมูล $url; ให้สิทธิ์ทั้งหมดใน $url.* ถึง $dbuser@'localhost' ที่ระบุโดย '$dbpass'"

sudo cp -r /var/www/mysite.com/wordpressfiles /var/www/mysite.com/$url

sudo chown iosef:iosef -R /var/www/mysite.com/$url
sudo find /var/www/mysite.com/$url -type d -exec chmod 777 {} \;
sudo find /var/www/mysite.com/$url -type f -exec chmod 777 {} \;
sudo find /var/www/mysite.com/$url/wp-content/ -type d -exec chmod 777 {} \;
sudo find /var/www/mysite.com/$url/wp-content/ -type f -exec chmod 777 {} \;


cd /var/www/mysite.com/$url && /usr/local/bin/wp core config --dbname=$url --dbuser=$dbuser --dbpass=$dbpass --dbprefix=$dbprefix;

cd /var/www/mysite.com/$url && /usr/local/bin/wp ติดตั้งหลัก --url=www.mysite.com/$url --title=$title --admin_user=$admin_user --admin_password =$admin_password --admin_email=$admin_email;


เสร็จแล้ว

และนี่คือ cronjob (รันในฐานะรูท)

* * * * * /bin/bash /home/iosef/createinstanceinfolder.sh >/dev/null 2>&1

ความคิดใด ๆ

vautee avatar
kr flag
มีเอาต์พุตข้อผิดพลาดจากงาน cron ของคุณใน /var/log/syslog หรือไม่ อาจลบส่วน >/dev/null 2>&1 ออก ดังนั้นคุณจะเห็นข้อผิดพลาดใดๆ ที่ปรากฏขึ้น เพิ่มลงในคำถามของคุณ
user9517 avatar
cn flag
สำเนาเกือบจะช่วยคุณแก้ปัญหาได้อย่างแน่นอน หากไม่เป็นเช่นนั้น จะช่วยให้คุณรวบรวมข้อมูลที่จะช่วยให้ผู้อื่นช่วยเหลือคุณได้
cn flag
ตอนนี้ฉันได้รับข้อผิดพลาด พูดว่า: ข้อผิดพลาด: YIKES! ดูเหมือนว่าคุณกำลังเรียกใช้สิ่งนี้ในฐานะรูท คุณอาจหมายถึงการเรียกใช้สิ่งนี้ในฐานะผู้ใช้ที่มีการติดตั้ง WordPress ของคุณอยู่ หากคุณตั้งใจจะรันสิ่งนี้ในฐานะรูทจริง ๆ เราจะไม่หยุดคุณ แต่โปรดจำไว้ว่ารหัสใด ๆ บนเว็บไซต์นี้จะสามารถควบคุมเซิร์ฟเวอร์ของคุณได้อย่างสมบูรณ์ ทำให้มันค่อนข้างอันตราย
cn flag
หากคุณต้องการดำเนินการต่อในฐานะรูท โปรดเรียกใช้อีกครั้งโดยเพิ่มแฟล็กนี้: --allow-root หากคุณต้องการเรียกใช้ในฐานะผู้ใช้ของไซต์นี้ คุณสามารถเรียกใช้สิ่งต่อไปนี้เพื่อเป็นผู้ใช้ที่เกี่ยวข้อง: sudo -u USER -i -- wp
Score:0
ธง cn

user9517 ให้คำตอบ: สิ่งนี้ตอบคำถามของคุณหรือไม่ ทำไม crontab ของฉันถึงไม่ทำงาน และฉันจะแก้ไขปัญหาได้อย่างไร â

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา