Tạo một kịch bản / tác vụ đăng xuất cho Linux


15

Theo cách tương tự với câu hỏi của tôi dành cho WindowsMac OS X , làm thế nào để tạo ra một kịch bản đăng xuất cho Linux?

Bất kỳ bản phân phối nào cũng tốt, vì tôi chắc chắn rằng nó có thể được mở rộng qua các bản khác. Mặc dù vậy, tôi quen thuộc nhất với RHEL / CentOS / Fedora và Ubuntu.

Ngoài ra,
nếu điều này tồn tại cho cả đăng nhập đồ họa (ví dụ tại máy trạm than) và đăng nhập từ xa (chẳng hạn như thông qua ssh), đó sẽ là lý tưởng - nhưng tôi sẽ giải quyết cho cái này hoặc cái kia nếu cả hai đều không thể.

Câu trả lời:


13

Đối với các phiên SSH từ xa, công việc của trình bao của bạn là xử lý bất kỳ tập lệnh đăng xuất nào. Shell Bash thường chạy ~/.bash_logout.

Đối với phiên X, trình quản lý đăng nhập kiểm soát kịch bản đăng xuất khi đăng xuất. Vị trí tệp phụ thuộc vào trình quản lý đăng nhập đang được sử dụng. Xserver không chạy khi tập lệnh đăng xuất được thực thi, do đó, không bao gồm bất kỳ chương trình nào trong tập lệnh cố gắng truy cập vào màn hình.

  • Đối với Gnome , hãy sử dụng /etc/gdm/PostSession/Defaultcho tập lệnh đăng xuất mặc định trên toàn hệ thống (chạy bất kể ai đang đăng xuất). Không giống như tập lệnh đăng xuất của Bash, tôi không nghĩ có một phiên bản dành riêng cho người dùng của tập lệnh GDM PostSession.

  • XDM sử dụng tập lệnh Reset được cài đặt vào /etc/X11/xdm/Xreset.

  • Ví KDE (sử dụng KDM) , bạn muốn các Resetkịch bản . KDE3 sử dụng /etc/kde3/kdm/Xreset. Vị trí có thể được chỉ định trong tệp cấu hình của KDM /etc/kde3/kdm/kdmrc, với Resetphím.

  • WDM rõ ràng sử dụng một cặp tập lệnh Reset: tập lệnh trên mỗi màn hình tại /etc/X11/wdm/Xreset_0(để hiển thị :0) và tập lệnh toàn cầu tại /etc/X11/wdm/Xreset. Tệp cấu hình WDM nằm trong /etc/X11/wdm/wdm-config.

Các vị trí tệp trong câu trả lời này là từ các gói Debian. Các gói Ubuntu thường sẽ sử dụng cùng một tệp, nhưng các bản phân phối khác có thể sử dụng các vị trí thay thế.


Có một tính năng tương tự cho KDE hoặc fluxbox hoặc icewm không?
warren

1
GDM là Gnome thay thế cho XDM, trình quản lý đăng nhập X. KDE là KDM, tôi tin. Có những người khác nhưng đó là ba lớn. Tôi nghĩ WDM thường được khuyến nghị sử dụng với fluxbox? cũng có SDM (dựa trên SSH!) có thể cung cấp hỗ trợ kịch bản. không biết thêm chi tiết; nếu tôi có cơ hội sau này tôi sẽ cố gắng tìm hiểu.
quack quixote

6

Nếu bản phân phối sử dụng PAM cho người dùng chứng thực, bạn có thể cài đặt pam_scriptđể cung cấp chức năng onsessionopen/onsessionclose.

Tôi sử dụng nó trong các bản phân phối dựa trên Debian để kiểm tra các tệp được sửa đổi bởi người dùng thông qua scp và điều chỉnh các quyền của tệp.

Bạn có thể tải về pam_scripttừ freecode .


5

Shell C, hay còn gọi là csh, có chức năng .logout và Bash (mặc định hiện tại hơn) có .bash_logout, nhưng tôi không nhớ bất kỳ shell nào khác (ksh, sh, v.v.) với khái niệm tương tự.

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.