วัตถุประสงค์ของ.xsession
ไฟล์ในโฮมโฟลเดอร์คืออะไร? สิ่งที่ควรใส่ในนั้น สภาพแวดล้อมเดสก์ทอปไม่ได้ใช้ไฟล์ที่และสำหรับการเริ่มต้นจาก X TTY .xinitrc
มี
วัตถุประสงค์ของ.xsession
ไฟล์ในโฮมโฟลเดอร์คืออะไร? สิ่งที่ควรใส่ในนั้น สภาพแวดล้อมเดสก์ทอปไม่ได้ใช้ไฟล์ที่และสำหรับการเริ่มต้นจาก X TTY .xinitrc
มี
คำตอบ:
หากคุณเข้าสู่ระบบในโหมดข้อความให้เริ่มเซสชัน GUI ด้วยxinitหรือสคริปต์ตัวตัดคำstartx
จากนั้นxinit
ทำสิ่งต่อไปนี้:
/etc/X11/xinit/xserverrc
)/etc/X11
(โดยทั่วไป/etc/X11/xinit/xinitrc
) ขึ้นอยู่กับวิธีการตั้งค่า~/.xinitrc
หากมีอยู่ หากไม่มีอยู่ให้เรียกใช้ไคลเอนต์เริ่มต้น (ตามธรรมเนียมxterm
)~/.xinitrc
ยุติแล้วให้ฆ่าเซิร์ฟเวอร์ Xหากคุณเข้าสู่ระบบในโหมดกราฟิกบนผู้จัดการ X จอแสดงผล (xdm, GDM, KDM, WDM, lightdm, ... ) ประเพณีสิ่งที่จะดำเนินการหลังจากที่คุณเข้าสู่ระบบเป็นสคริปต์บางอย่างในนั้น/etc/X11
~/.xsession
~/.xsession
มีบทบาท~/.profile
และ~/.xinitrc
รวมกัน: มันควรจะทำการเริ่มต้นครั้งแรกของเซสชั่นของคุณ (เช่นกำหนดตัวแปรสภาพแวดล้อม) จากนั้นเปิดตัวโปรแกรมเฉพาะ GUI (โดยปกติอย่างน้อยจัดการหน้าต่าง)
ทุกวันนี้ตัวจัดการการแสดงผล X ส่วนใหญ่จะให้คุณเลือกเซสชัน การเลือกเซสชันเฉพาะเปิดใช้งานสภาพแวดล้อมเดสก์ท็อปเฉพาะผู้จัดการเซสชันผู้จัดการหน้าต่าง สิ่งที่ถูกดำเนินการนั้นเป็นเพียง DE / SM / WM และโปรแกรมใด ๆ ที่มันเลือกที่จะเริ่มต้นขึ้นอยู่กับไฟล์การกำหนดค่าใด ๆ ที่มันเลือกที่จะอ่าน สภาพแวดล้อมที่หลายคนให้“เซสชั่นที่กำหนดเอง” ~/.xsession
ที่อ่านแบบดั้งเดิม
.xsession
ไฟล์จะถูกอ่านเฉพาะเมื่อคุณเลือกประเภทเซสชันเฉพาะ ฉันรู้ว่าสำหรับ Gdm นักพัฒนาต้นน้ำไม่ต้องการรวมหนึ่งที่ทำงาน.xsession
โดยค่าเริ่มต้นและปล่อยให้มันขึ้นอยู่กับการกระจายแต่ละครั้งและการกระจายจำนวนมากไม่รบกวนหรือไม่ตระหนักถึงความต้องการ ฉันไม่รู้ว่าสถานการณ์ kdm คืออะไร
/etc/kde4/kdm/Xsession
จะถูกเรียกใช้ในฐานะผู้ใช้หลังจากเข้าสู่ระบบ พวกเขากำลังโกหก - ไฟล์(ซึ่งเป็นปัจจุบัน btw)ไม่เคยถูกแตะต้องโดย kdm ฉันยังลบมันออกเลยและนั่นก็ไม่ได้เปลี่ยนแปลงอะไรเลย
.xsession
ตามที่คุณอธิบาย แต่ถ้าแทนที่จะเป็น "KDE" คุณเลือก "เซสชันที่กำหนดเอง" .xsession
จะถูกเรียกใช้แทน KDE ฉันใช้สิ่งนี้ตัวอย่างเช่นเพราะฉันรันเพียงxfce4-panel
และ FVWM 2 เป็น "เดสก์ท็อป" ของฉัน หาก KDE ได้รับการติดตั้งในระบบที่ฉันบังเอิญใช้มันจะถูกละเว้นอย่างสมบูรณ์
การเริ่มต้นเซสชัน X อาจมีความซับซ้อนในทุกวันนี้ จุดเริ่มต้นที่ดีคือสคริปต์/etc/X11/Xsession
เพื่อดูว่าจะดำเนินการอย่างไร
ในระบบ Debian / Ubuntu ของฉันสคริปต์ที่กำหนดตัวแปร/etc/X11/Xsession
USERXSESSION=$HOME/.xsession
หลังจากนั้นสคริปต์/etc/X11/Xsession.d/50x11-common_determine-startup
จะค้นหาสคริปต์นี้และใช้เป็นเซสชันหลักหากได้รับอนุญาตจากนโยบายระบบใน/etc/X11/Xsession.options
และหากไม่มีการร้องขอเซสชันอื่นจากตัวจัดการจอแสดงผล
ผมขอแนะนำให้คุณลองดูในสมุดคู่มือผู้ดูแลระบบวินโดว์ของ: สำหรับ X รุ่น 11 บทที่ 2 อธิบายถึงวัตถุประสงค์.xsession
และกระบวนการกำหนดค่าทั้งหมดสำหรับการตั้งค่าตัวอย่าง นอกจากนี้มันเป็นทบทวนที่ดีสำหรับทั้งคำศัพท์ที่เกี่ยวข้องกับหน้าต่าง x (และฉันหวังว่าคุณจะไม่ได้รับการลงโทษ :)) คุณสามารถรับหนังสือจาก
แม้ว่าจะค่อนข้างล้าสมัยคุณสามารถค้นหาข้อมูลจำนวนมากเกี่ยวกับแนวคิดพื้นฐานที่ไม่เปลี่ยนแปลงจนกระทั่งวันนี้และอ่านง่ายมาก ยิ่งไปกว่านั้นมันตลกจริงๆที่ได้ดูว่าอะไรคือสิ่งที่สำคัญที่สุดในสมัยนั้น
.xsession เป็น startcript แบบดั้งเดิมสำหรับสภาพแวดล้อม X11 ทุกวันนี้กับ sessionmanagers อย่าง kdm มันไม่ได้มีประโยชน์อะไรมากนัก แต่ในระบบตั้งค่าแบบดั้งเดิม นี่คือสิ่งที่ทำงานหลังจากเริ่มต้น X11 ด้วย startx