Linux: определяемые пользователем демоны/сервисы

Я не убежден, что это не принадлежит на meta, но это - медленное утро, поэтому каков вред?

ping, особенно, является одним из тех инструментов, который имеет низкую входную планку и обеспечивает высокую степень полноценности для небольшого усилия. Это - также один из первых инструментов диагностики, которые кто-то изучает в сетях. Это означает, что у большого количества людей переменных уровней квалификации есть воздействие ему.

Базовые механизмы вполне прилично не выставляются непосредственно конечному пользователю ping. Новый пользователь может немедленно сказать, произошел ли хост или нет. По крайней мере, это - то, что они думают, что видят. Как опытный пользователь, Вы знаете, что это не всегда имеет место. Который является проблемой с использованием ping как Ваш единственный инструмент диагностики.

Это не индикатор, на который что-то возросло или вниз. Это - индикатор времени отклика. Отсутствие ответа не имеет никакого влияния, получает ли хост трафик, но это - то, как это используется, потому что большинство хостов отвечает на пакеты ICMP. У меня все еще есть относительно хорошо осведомленные пользователи, которые клянутся, что удаленные серверы снижаются, если они не отвечают на ICMP.

Результат состоит в том, что, поскольку долго это используется пользователями, которые незнакомы с его целью, будут вопросы. Премия - то, что эти вопросы дают нам возможность улучшить знание людей выяснение.

Что касается traceroute, это - действительно сложный инструмент, который кажется действительно простым. "Если я traceroute этот IP, я вижу все компьютеры, промежуточные это и меня", как будто Интернет был серией труб, как метро, где Вы видели остановки между собой и Вашим местом назначения.

Как Вы знаете, Интернет не работает как этот. Маршруты изменяются все время. Нет никакой гарантии, что два пакета пересекут тот же путь (или даже что ответ ICMP пересечет тот же путь, который источник взял). Это не означает, что traceroute не полезен, но что он требует, чтобы более высокий уровень знания интерпретировал.

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

2
задан 17 October 2011 в 22:15
3 ответа

cron предоставляет для этого префикс @reboot (Vixie и, возможно, другие варианты, проверьте man 5 crontab ). Пользователь будет использовать crontab для создания / редактирования своего собственного файла crontab и указать

@reboot /some/path/command -flags --moreflags

, который будет запускать эту команду при запуске от имени этого пользователя.

4
ответ дан 3 December 2019 в 08:48

Это примерно 10 строк сценария оболочки, зачем вам фреймворк / библиотека / среда?

В качестве быстрого примера, используя sysV init ....

#!/bin/bash

. /etc/rc.d/init.d/functions

. /etc/sysconfig/network

DAEMON_USERS=`cat /etc/daemon_users`

CMD="$1"

for DUSER in $DAEMON_USERS ; do
   DSCRIPTS=`ls /home/${DUSER}/init/`
   for DFILE in DSCRIPTS ; do
      if [ -x "/home/${DUSER}/init/${DFILE}" -a ! -d "/home/${DUSER}/init/${DFILE}" ]
      then
         su -c $DUSER /home/${DUSER}/init/${DFILE} $CMD
      fi
   done
done

Если вы действительно хотите разрешить им запускать файлы от имени root, затем удалите su -c $ DUSER и добавьте их в sudoers, чтобы они могли перезапускать / добавлять файлы без перезагрузки.

3
ответ дан 3 December 2019 в 08:48

Итак ... просто запустите приложение как пользователь , вы хотите запустить его как и не пытайтесь получить доступ ни к чему. для этого потребуется root (например, привилегированные порты, файлы, которые могут быть прочитаны только пользователем root и т. д.)?

Если вы хотите автоматически запускать эти демоны и управлять ими через процесс инициализации SysV, вам понадобится для создания сценария инициализации для каждого из них, который задает параметры (или считывает их из файла, к которому непривилегированный пользователь имеет доступ для записи) и запускает демон с помощью su -c или аналогичного, но ОСТОРОЖНО : Выполнение этого имеет СЕРЬЕЗНЫЕ последствия для безопасности (тщательно созданный файл «параметров» может позволить пользователю выполнить произвольный код от имени пользователя, выполняющего вашу последовательность инициализации, обычно это root).
DerfK упомянул опцию cron @reboot , которая может быть лучшим выбором (меньшая угроза безопасности), но ваши администраторы должны знать, что эти программы будут запускаться cron ...

2
ответ дан 3 December 2019 в 08:48

Теги

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