Mam skrypt powłoki do monitorowania statystyk tabel i aplikacji Java. Działa dobrze, gdy uruchamiam ręcznie. Ale jeśli umieszczę go w crontab, utknie, jeśli nie przekieruję jego wyjścia za pomocą export display
polecenia. Wiesz, dlaczego?
0
export DISPLAY
? To brzmi jak aplikacja X Windows, więc musi znać serwer X, aby otworzyć okno.DISPLAY
jest zwykle ustawiany podczas logowania do GUI, a cron nie jest w sesji GUI.*/2 * * * * export DISPLAY=:1.0 && gnome-terminal -x /path/script.sh
Odpowiedzi:
Poleceniem powinno być:
Ponieważ gnome-terminal jest aplikacją X, używa
DISPLAY
zmiennej środowiskowej do łączenia się z serwerem X i wyświetlania jego okien. Aby ustawić zmienną środowiskową tylko na czas trwania pojedynczego polecenia, umieść przypisanie zmiennej na początku wiersza polecenia.źródło