LINUX.ORG.RU

Что бы запускать независимые апачи.

Oleg_Iu
()

1. @ нужен для шаблонов юнитов, то, что указывается после @ идёт в переменную %i, после чего идёт подстановка переменных, это позволяет использовать один сервис для нескольких однотипных служб. На примере openvpn:

=bash]
$ systemctl cat openvpn@
# /lib/systemd/system/openvpn@.service
[Unit]
Description=OpenVPN Robust And Highly Flexible Tunneling Application (Config: %I)
After=network.target
PartOf=openvpn.target

[Service]
PrivateTmp=true
Type=forking
PIDFile=/run/openvpn/%i.pid
ExecStart=/usr/sbin/openvpn --daemon --writepid /run/openvpn/%i.pid --cd /etc/openvpn/ --config %i.conf

[Install]
WantedBy=openvpn.target
Как видно, переменная %i используется для указания pid-файла и конфига. Т.е. если я сделаю systemctl enable openvpn@vpn1 , то строка ExecStart примет вид
/usr/sbin/openvpn --daemon --writepid /run/openvpn/vpn1.pid --cd /etc/openvpn/ --config vpn1.conf
Таким образом можно иметь несколько разных конфигов openvpn и управлять ими с помощью всего одно сервиса @

2. target — специальный тип юнита, предназначенный для группировки нескольких сервисов, а также для создания неявных зависимостей. Сам он ничего не запускает, но его активация приводит и к активации зависимостей.

Подробнее — RTFM, там всё есть.

gremlin_the_red ★★★★★
()
Ответ на: комментарий от gremlin_the_red

Что ты делаешь, у него же от такого количества букв сено изо рта выпадет.

anonymous
()
Ответ на: комментарий от gremlin_the_red

А если делать, к примеру, systemctl start bluetooth, без .service или .target в конце, то тогда стартует service, правильно?

Dog ★★★
()
Ответ на: комментарий от gremlin_the_red
  1. @ нужен для шаблонов юнитов, то, что указывается после @ идёт в переменную %i, после чего идёт подстановка переменных, это позволяет использовать один сервис для нескольких однотипных служб. На примере openvpn:

Огромное человеческое спасибо! как раз с openvpn@ мудохаюсь второй день. Уже собирался у сообщества пинка в нужном направлении просить, а тут такая удача!!! :))))

alex_sim ★★★★
()
Ответ на: комментарий от gremlin_the_red

сложна.
то есть можно запустить 2 опен впн с разными конфигами?

как подставить данные в переменную %i.conf?

Regacar
() автор топика
Последнее исправление: Regacar (всего исправлений: 1)
Ответ на: комментарий от gremlin_the_red

это позволяет использовать один сервис для нескольких однотипных служб

уххх, вот это костыли, спасибо, интересное чтиво. держусь от systemd подальше.

Spoofing ★★★★★
()
Ответ на: комментарий от TDrive

не знаю что на счёт симлинков, но когда встаёт вопрос использовать /etc/rc.d/net для различных интерфейсов, я его копирую и добавляю название интерфейса: /etc/rc.d/net.eth0 /etc/rc.d/net.tun0 и так далее.

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

ну если это домашняя система, где кроме dhclient'а с провайдерским айпишником ничего не крутится, тогда да, тогда конечно.

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

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

Spoofing ★★★★★
()
Ответ на: комментарий от Spoofing

не знаю что на счёт симлинков, но когда встаёт вопрос использовать /etc/rc.d/net для различных интерфейсов, я его копирую и добавляю название интерфейса: /etc/rc.d/net.eth0 /etc/rc.d/net.tun0 и так далее.

Вот в оф доке предлагают делать это симлинками, это оно и есть.

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

это твои личные загоны.

а так хз. каждый демон уникален, даже сетевой.

А если это демон приложения и тебе нужно поднять еще один что бы сбалансировать нагрузку, а мастер процесса нету? Или это обработчик очередей событий из редиса и тебе нужно что бы разные процессы обрабатывали разные очереди?

я тот ещё линукс-одмен без реального опыта, но единственная ситуация, где мне пригодилась бы такая схема с кучей однотипных демонов...

Вот твоя ограниченность как раз и говорит о твоем опыте. Ах да, в OpenRC нету юзерспейс сервисов, по этому ты и не шаришь в теме девопса.

А вообще суть в том что в OpenRC есть точно такая же фича, и она там не просто так, пользоваться ею или нет это не важно.

TDrive ★★★★★
()
Ответ на: комментарий от Spoofing

уххх, вот это костыли, спасибо, интересное чтиво. держусь от systemd подальше

Да не так уж страшен systemd как его малюют, долго держаться все равно не получится. Насчет костылей абсолютно согласен, но такой уж у нас крест

alex_sim ★★★★
()
Ответ на: комментарий от Regacar

то есть можно запустить 2 опен впн с разными конфигами?

Можно, сколько конфигов столько vpn, так было раньше, причем сам демон с конфига понимал клиент это или сервер, мода или правила массонства поменялись, видимо демону удалили часть мозга, он стал тупее, теперь так.

alex_sim ★★★★
()
Ответ на: комментарий от gremlin_the_red

допустим у 3х конфигов разный ип.
какой ип я получу выйдя в интернет? я же не могу с 3х ип в нете сидеть

Regacar
() автор топика
Ответ на: комментарий от Regacar

Все зависит от маршрутизации.

я же не могу с 3х ип в нете сидеть

Можешь.

gruy ★★★★★
()
Последнее исправление: gruy (всего исправлений: 1)
Ответ на: комментарий от Regacar

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

Khnazile ★★★★★
()
Ответ на: комментарий от Regacar

какой ип я получу выйдя в интернет?

Тот, который дал vpn-сервер, который послал тебе push redirect-gateway последним.

gremlin_the_red ★★★★★
()
Ответ на: комментарий от gremlin_the_red

В чем бред? На 16 федоре у меня сейчас так сколько конфигов столько процессов… или про что речь? У меня 4 сети обьединены vpn на каждой федоре висят по 3 процесса openvpn запущенные одним openvpn, и по 3 конфига валяются

alex_sim ★★★★
()
Последнее исправление: alex_sim (всего исправлений: 2)
Ответ на: комментарий от Khnazile

VPN это не только интернет

+100500 и вообще может быть не для интернета, каждая моя сетка выходит в инет по своему и ей для этого vpn не нужен, но сети обьединены с помощью него, интернет это 30% задач. Дай бог ему здоровья :)))

alex_sim ★★★★
()
Ответ на: комментарий от alex_sim

В чем бред?

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

Вот в этом.

gremlin_the_red ★★★★★
()
Ответ на: комментарий от gremlin_the_red

Ну это да, может быть и бред, но я бы сказал частное мнение. А массонство сто пудов!

alex_sim ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.