Thiết lập công việc định kỳ trên tất cả các máy thực thi tập lệnh trong đó bạn kiểm tra 1 vị trí cụ thể cho hình ảnh mới. Kịch bản mẫu (chưa được kiểm tra) với wget và ftp:
#!/bin/bash
wget -N -r -nH --cut-dirs=2 -t 180 -P /tmp ftp://user:password@name.remoteserver.com/dir/backgroundimage.gif
gconftool-2 --type string --set /desktop/gnome/background/picture_filename /tmp/backgroundimage.gif
Về cơ bản, dòng thứ 2 cần được thay đổi thành phương pháp bạn sử dụng để tải hình ảnh theo cách thủ công vào máy. Và sau đó thiết lập cron
để thực thi tập lệnh này để kiểm tra mỗi giờ hoặc mỗi ngày một lần cho hình ảnh mới.
Bạn thậm chí có thể thiết lập nó để tìm nạp một tập lệnh trong đó tập lệnh đó được thực thi trên máy khách và sau đó nó tìm nạp các hình ảnh và thay đổi nền bằng gconftool-2. Điều này sẽ cho phép bạn thực hiện nhiều hơn thay đổi một nền tảng.
Bạn có thể tạo một công việc định kỳ với sudo crontab -e
. Điều này sẽ hiển thị một dòng tương tự như thế này:
# m h dom mon dow command
(m phút, h giờ, ngày dom trong tháng, tháng mon, ngày xuống cấp trong tuần) và bên dưới nó bạn có thể thêm ...
0 * * * /path/to/executable
hoặc là
@hourly /path/to/executable
để /path/to/executable
chạy mỗi giờ trong giờ. Nhắc bạn: một tập lệnh bạn đặt ở đây không hiểu biến đường dẫn trừ khi bạn đưa nó vào. Bạn có thể đặt cái này ở trên cùng để bao gồm $SHELL
và $PATH
:
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
Nếu không, bạn cần chắc chắn rằng tập lệnh của bạn sử dụng tên đường dẫn đầy đủ để thực thi các lệnh. Thông tin thêm về cron có thể được tìm thấy trên wiki Ubuntu .
Bạn cũng có thể sử dụng /etc/cron.hourly
thư mục để đặt một tập lệnh ở đó được chạy mỗi giờ. Các chủ đề ví dụ liên quan đến phần cuối: Có gì sai với cấu hình cron.hourly của tôi? và Cron.hourly sẽ không chạy .