Как передать флаги при запуске "сервиса"?

Я использую такие команды, как sudo service memcached start включить различные вещи после перезагрузки, и мне интересно, можно ли также указать этому сервису запускать memcached для запуска с определенными флагами, например -vvv?

Есть идеи? ("Сервис" был создан автоматически при установке через apt-get)

3 ответа

Решение

Обычно вы настраиваете такие службы, используя файлы в /etc. Для этого конкретного пакета, посмотрите на

/etc/default/memcached

Кроме того, чтение man-страницы для memcached обычно покажет вам расположение файлов конфигурации.

Документация Kubernete просит вас постоянно передавать аргументы системным службам.

Отстойно то, что каждая реализация / вкус / дистрибутив Linux отличается и устанавливает вещи в разных местах!
И, кроме того, каждый метод реализации / аромата / установки Kubernetes также отличается!!
И потом, потому что этого было недостаточно, чтобы иметь дело с systemd, как и 5 разных способов передачи флагов / аргументов!!!

Таким образом, лучший способ сделать это, кажется:
Использовать команду find, чтобы найти, где находится *.service, и это тоже не всегда работает, потому что в некоторых реализациях systemd вам не нужно передавать аргументы в файл *.service, но если вы ищете имя В сервисе с командой find вы можете найти файл конфигурации, в который передаются EXTRA_ARG, поэтому я утверждаю, что команда find - лучший метод для noobs linux. Кроме этого вам нужно совершить глубокое погружение и по-настоящему изучить тонкости systemd/all, используя 5 различных методов передачи аргументов.

WorkerNodeBash # find / -name "*.service" | grep -i "кубе"
WorkerNodeBash # nano /etc/systemd/system/kubelet.service

[Unit]
Description=Kubernetes Kubelet
Documentation=https://github.com/kubernetes/kubernetes
After=containerd.service
Requires=containerd.service

[Service]
ExecStart=/usr/local/bin/kubelet \
  --config=/var/lib/kubelet/kubelet-config.yaml \
  --container-runtime=remote \
  --container-runtime-endpoint=unix:///var/run/containerd/containerd.sock \
  --image-pull-progress-deadline=2m \
  --kubeconfig=/var/lib/kubelet/kubeconfig \
  --network-plugin=cni \
  --register-node=true \
  --pod-manifest-path=/etc/kubernetes/manifests \
  --v=2
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target

(Вышеизложенное исходит от Kubernetes для реализации сложного способа, я также выполнил реализацию kubeadm, посмотрел в этом же файле и не увидел аргументов И когда я попытался передать аргументы, они были проигнорированы?, но благодаря изучению, как использовать команду find Я был в состоянии искать:
WorkerNodeBash # find / -type f -name "*.yaml" | греп "кубе"
И я нашел файл конфигурации, в котором упоминалось KUBELET_EXTRA_ARGS=, и передал их туда.

После слишком долгого поиска кажется, что вы должны добавить флаги в /etc/memcached.conf

Другие вопросы по тегам