Những gì .xsession phạm là gì?


62

Mục đích của .xsessiontập tin trong thư mục nhà là gì? Những gì nên được đặt trong đó? Các môi trường máy tính để bàn không sử dụng tệp đó và cho khởi động X từ tty có .xinitrc.

Câu trả lời:


58

Nếu bạn đăng nhập ở chế độ văn bản thì bắt đầu phiên GUI bằng xinit hoặc với tập lệnh trình bao bọc startx, sau đó xinitthực hiện các thao tác sau:

  • Bắt đầu một máy chủ X (thường thông qua tập lệnh /etc/X11/xinit/xserverrc).
  • Thường chạy một số tập lệnh trong /etc/X11(thông thường /etc/X11/xinit/xinitrc), tùy thuộc vào cách thiết lập.
  • Chạy ~/.xinitrc, nếu nó tồn tại. Nếu nó không tồn tại, hãy chạy một máy khách mặc định (theo truyền thống xterm).
  • Khi ~/.xinitrcchấm dứt, giết máy chủ X.

Nếu bạn đăng nhập vào trong chế độ đồ họa trên một X display manager (xdm, gdm, kdm, wdm, lightdm, ...), theo truyền thống, những gì được thực hiện sau khi bạn đăng nhập vào một số kịch bản trong /etc/X11đó ~/.xsession.

~/.xsessioncó vai trò ~/.profile~/.xinitrckết hợp: nên thực hiện khởi động ban đầu phiên của bạn (ví dụ: xác định các biến môi trường), sau đó khởi chạy các chương trình dành riêng cho GUI (thường là ít nhất là trình quản lý cửa sổ).

Ngày nay, hầu hết các trình quản lý hiển thị X cho bạn lựa chọn phiên. Chọn một phiên cụ thể đã khởi chạy một môi trường máy tính để bàn cụ thể, trình quản lý phiên, trình quản lý cửa sổ. Những gì được thực thi sau đó chỉ là DE / SM / WM và bất kỳ chương trình nào nó chọn để bắt đầu dựa trên bất kỳ tệp cấu hình nào nó chọn để đọc. Nhiều môi trường cung cấp một phiên tùy chỉnh của người dùng mà bạn đọc truyền thống ~/.xsession.


3
Tôi không biết "nhiều môi trường" này là gì, nhưng ít nhất kdm âm thầm bỏ qua tệp «~ / .xsession».
Hi-Angel

1
@ Hi-Angel .xsessionTệp chỉ được đọc nếu bạn chọn một loại phiên cụ thể. Tôi biết rằng đối với Gdm, các nhà phát triển ngược dòng không muốn bao gồm một nhà phát hành .xsessiontheo mặc định và để lại cho mỗi bản phân phối và nhiều bản phân phối không làm phiền hoặc không nhận ra nhu cầu. Tôi không biết tình hình kdm là gì.
Gilles 'SO- ngừng trở nên xấu xa'

Chà, bạn biết đấy, tôi đã tìm thấy trong man kdm rằng kdm có một tệp riêng /etc/kde4/kdm/Xsessionđể được chạy như người dùng ngay sau khi đăng nhập. Họ nói dối - tập tin (có mặt btw) không bao giờ bị kdm chạm vào, tôi thậm chí đã xóa nó đi, và điều đó không thay đổi gì cả.
Hi-Angel

1
@ Hi-Angel Điều Gilles có nghĩa là ở màn hình đăng nhập đồ họa của bạn, bạn sẽ thường có một menu thả xuống liệt kê các môi trường khác nhau. Nếu bạn chọn "KDE", nó sẽ bắt đầu và nó sẽ bỏ qua .xsession, như bạn đã mô tả. Nhưng nếu, thay vì "KDE", bạn chọn "Phiên tùy chỉnh" .xsessionsẽ được chạy thay vì KDE. Tôi sử dụng điều này, ví dụ, bởi vì tôi chỉ chạy xfce4-panelvà FVWM 2 là "máy tính để bàn" của tôi; nếu KDE được cài đặt trên một hệ thống mà tôi tình cờ đang sử dụng, nó sẽ hoàn toàn bị bỏ qua.
Curt J. Sampson

15

Khởi động phiên X có thể phức tạp những ngày này. Một nơi tốt để bắt đầu là kịch bản /etc/X11/Xsessionđể xem mọi thứ sẽ được thực thi như thế nào.

Trên các hệ thống Debian / Ubuntu của tôi, tập lệnh /etc/X11/Xsessionđặt biến USERXSESSION=$HOME/.xsession. Sau đó, tập lệnh /etc/X11/Xsession.d/50x11-common_determine-startuptìm tập lệnh này và sử dụng tập lệnh này làm phiên chính, nếu được chính sách hệ thống cho phép /etc/X11/Xsession.optionsvà nếu không có phiên nào khác được yêu cầu bởi trình quản lý hiển thị.


8

Tôi thực sự khuyên bạn nên xem cuốn sách Hướng dẫn của quản trị viên hệ thống X Window: cho phiên bản X 11 . Chương 2 giải thích mục đích .xsessionvà toàn bộ quá trình cấu hình cho một thiết lập mẫu. Ngoài ra, đây là một phần bồi dưỡng tốt cho toàn bộ thuật ngữ liên quan đến cửa sổ x (và tôi hy vọng bạn không bị giật mình :)). Bạn có thể lấy sách từ

http://archive.org/details/xwindowsystemadm08muimiss

Mặc dù nó khá lỗi thời, bạn có thể tìm thấy rất nhiều thông tin về các khái niệm cơ bản không thay đổi cho đến ngày hôm nay và nó rất dễ đọc. Hơn nữa, thật là buồn cười khi nhìn vào những gì là đỉnh cao vào những ngày đó.


7

.xsession là bản bắt đầu truyền thống cho môi trường X11. Ngày nay với các trình quản lý phiên như kdm, nó không còn được sử dụng nhiều nữa, mà là trên một hệ thống thiết lập truyền thống. Đây là những gì được chạy sau khi bắt đầu X11 với startx.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.