รัน xinit จาก rc.local โดยอัตโนมัติเป็นผู้ใช้อื่น


1

ฉันกำลังปรับแต่ง raspberry pi b + ของฉันอยู่ ดังนั้นฉันจึงตัดสินใจว่ามิโดริควรเริ่มต้นโดยอัตโนมัติหลังจากออโตโลจิน ด้วย startx มันทำงานได้โดยไม่มีปัญหา แต่ X ก็ยังคงหิวกระหายอยู่ ดังนั้นฉันจะเริ่มต้น midori ด้วย xinit และ matchbox

จากการทดสอบฉันใช้เป็นผู้ใช้ "pi" คำสั่งนี้ "xinit ./home/pi/startmidori.sh" และใช้งานได้ ดังนั้นฉันจะใส่ลงในไฟล์ rc.local ของฉัน

มีคำสั่ง "su -l pi -c xinit ./home/pi/startmidori.sh" สิ่งนี้ไม่ทำงาน ฉันไม่รู้ว่าทำไม แต่ xinit ออกทันทีหลังจากเริ่มต้น ไม่มีข้อผิดพลาดหรือคำเตือนใน Xorg logfile แต่เป็นที่รู้จัก (ไม่พบโมดูล g3d_23)

ฉันจะแก้ปัญหานี้ได้อย่างไร ในคำแนะนำฉันพบวิธีการแก้ปัญหาบางอย่าง แต่พวกเขาทั้งหมดไม่ทำงาน ฉันพยายามเรียกใช้เป็นรูท แต่ก็ใช้งานไม่ได้เช่นกัน ฉันไม่รู้ว่าทำไม


1
ถ้า X หิวทรัพยากรฉันไม่แน่ใจว่าการเปลี่ยนstartx xinitจะช่วยได้อย่างไร? หลังจากที่ทุกคนstartxเป็นจริงเช่นเดียวกับxinit ~/.xinitrc...
grawity

1
ดังนั้นแทนที่จะเรียก su -l pi -c xinit blabla ฉันเรียก su -l pi -c startx และใส่ /home/pi/.xinitrc เนื้อหาของ startmidori.sh (ซึ่งคือ: xset -dpms xset s off xset s noblank matchbox-window-manager & midori -e เต็มหน้าจอ) หรือฉันสามารถเพิ่มพา ธ ไปยังไฟล์. sh ใน. xinitrc ได้หรือไม่
user3048888

update: โอเคเพิ่มไฟล์. sh เป็น xinitrc และเปลี่ยนคำสั่ง su จาก xinit ไปเป็น startx ทำงานได้ดี แต่ฉันไม่เข้าใจว่าทำไม xinit ./home/pi/startmidori.sh กับ su -l pi -c ไม่ทำงาน แต่ในฐานะผู้ใช้ pi มันก็ใช้ได้ มันเป็นพฤติกรรมจาก xinit หรือไม่?
3048888

@ user3048888 เพื่อออกจากเบราว์เซอร์ฉันใช้ CTRL + ALT + F1 แต่ฉันจะปิด / ออก startx ในคอนโซลได้อย่างไร ความคิดใด ๆ CTRL + C ไม่ทำงาน
BenRoe

คำตอบ:


1

แทนที่จะใช้ xinit ให้ startx

เปิด rc.local

sudo nano /etc/rc.local

และการใช้งาน

su -l pi -c startx /home/pi/startmidori.sh

วิธีนี้ใช้ได้ผลกับฉันถ้าฉันใช้ PiTFT แต่ถ้าฉันเชื่อมต่อการแสดงผลผ่าน HDMI มันจะเริ่มต้นเป็นเพียง GUI / Desktop แต่ไม่ใช่ Midori

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.