netstat показывает номер порта вместо имени процесса

Проблема не только в том, что среда DISPLAY не настроена, а в том, что отображение может даже не существовать, и даже если оно существует (существует состояние гонки между вашим заданием cron и запуском графического интерфейса пользователя), вы не имеете права его использовать. Сначала вам нужно войти в графический интерфейс.

@reboot записи в crontab предназначены для действий независимо от сеансов входа в систему. Для отображения чего-либо на консоли требуется сеанс входа в систему.

Вместо этого включите автоматический вход для пользователя pi . Вы можете сделать это из raspi-config (см. https://raspberrypi.stackexchange.com/questions/47823/how-to-prevent-autologin-of-gui ). Затем добавьте свой сценарий (запуск Firefox и развертывание окна) в сценарий входа пользователя . Если вы используете интерфейс LXDE, вы можете добавить запись в список автозапуска: см. Выполнить сценарий при запуске (имейте в виду, что многие ответы на этой странице не работают для программы с графическим интерфейсом пользователя. ).

3
28.05.2017, 06:23
1 ответ

netstatпереводит порт (по умолчанию )в имя службы, он получает это сопоставление из файла /etc/services.

Итак, вы можете получить порт от/etc/services:

grep '^postgresql' /etc/services

Или лучше добавить параметр -nв netstat, чтобы запретить любое (разрешение хоста, порта, имени хоста )и опубликовать вывод в цифрах:

netstat -nl

Вы можете ограничить интерфейс поиска, добавив параметр -tдля отображения только прослушиваемых сокетов TCP (аналогично -uдля UDP, -xдля сокетов домена UNIX):

netstat -nlt

Вы также можете использовать любой стандартный инструмент обработки текста над результатом, чтобы получить только желаемые материалы.

6
27.01.2020, 21:18

Теги

Похожие вопросы