Проблема не только в том, что среда DISPLAY
не настроена, а в том, что отображение может даже не существовать, и даже если оно существует (существует состояние гонки между вашим заданием cron и запуском графического интерфейса пользователя), вы не имеете права его использовать. Сначала вам нужно войти в графический интерфейс.
@reboot
записи в crontab предназначены для действий независимо от сеансов входа в систему. Для отображения чего-либо на консоли требуется сеанс входа в систему.
Вместо этого включите автоматический вход для пользователя pi
. Вы можете сделать это из raspi-config
(см. https://raspberrypi.stackexchange.com/questions/47823/how-to-prevent-autologin-of-gui ). Затем добавьте свой сценарий (запуск Firefox и развертывание окна) в сценарий входа пользователя . Если вы используете интерфейс LXDE, вы можете добавить запись в список автозапуска: см. Выполнить сценарий при запуске (имейте в виду, что многие ответы на этой странице не работают для программы с графическим интерфейсом пользователя. ).
netstat
переводит порт (по умолчанию )в имя службы, он получает это сопоставление из файла /etc/services
.
Итак, вы можете получить порт от/etc/services
:
grep '^postgresql' /etc/services
Или лучше добавить параметр -n
в netstat
, чтобы запретить любое (разрешение хоста, порта, имени хоста )и опубликовать вывод в цифрах:
netstat -nl
Вы можете ограничить интерфейс поиска, добавив параметр -t
для отображения только прослушиваемых сокетов TCP (аналогично -u
для UDP, -x
для сокетов домена UNIX):
netstat -nlt
Вы также можете использовать любой стандартный инструмент обработки текста над результатом, чтобы получить только желаемые материалы.