Здравствуйте! Нашёл https://www.altlinux.org/AnyDesk, сделал, как написано (p9), но возникла проблема: я до сих пор не перебрался под systemd, а в пакете нет скрипта для init.d. Это бы полбеды, т.к. написать его нетрудно -- фактически надо запустить просто anydesk --service. Но такой запуск от root вызывает только окошко в трее со словами, что не надо запускать anydesk от root, а то хуже будет (перевод вольный, но смысл сохранён). Но от кого тогда запускать службу? Как это разруливается в systemd я не знаю, скрипт для systemd выглядит так: # cat /etc/systemd/system/anydesk.service [Unit] Description=AnyDesk Requires=network.target After=systemd-user-sessions.service [Service] Type=simple ExecStart=/usr/bin/anydesk --service PIDFile=/var/run/anydesk.pid KillMode=mixed TimeoutStopSec=30 User=root LimitNOFILE=100000 [Install] WantedBy=multi-user.target Просто anydesk от пользователя из группы wheel запускается и работает в обе стороны, но хочется всё же службу. -- С уважением, Владимир.
Hi Vladimir! On 12/18/2020, at 08:06:05 PM you wrote: > Здравствуйте! > > Нашёл https://www.altlinux.org/AnyDesk, сделал, как написано (p9), но > возникла проблема: я до сих пор не перебрался под systemd, а в пакете нет > скрипта для init.d. Это бы полбеды, т.к. написать его нетрудно -- > фактически надо запустить просто anydesk --service. Но такой запуск от root > вызывает только окошко в трее со словами, что не надо запускать anydesk от > root, а то хуже будет (перевод вольный, но смысл сохранён). Но от кого > тогда запускать службу? Как это разруливается в systemd я не знаю, скрипт > для systemd выглядит так: > > # cat /etc/systemd/system/anydesk.service > [Unit] > Description=AnyDesk > Requires=network.target > After=systemd-user-sessions.service > > [Service] > Type=simple > ExecStart=/usr/bin/anydesk --service > PIDFile=/var/run/anydesk.pid > KillMode=mixed > TimeoutStopSec=30 > User=root так systemd его тоже от рута запускает. > LimitNOFILE=100000 > > [Install] > WantedBy=multi-user.target > > Просто anydesk от пользователя из группы wheel запускается и работает в обе > стороны, но хочется всё же службу. Создайте пользователя anydesk и запускайте из-под него, все счастливы. -- WBR et al.
Добрый день! 29.12.2020 1:53, Konstantin Lepikhov пишет: > On 12/18/2020, at 08:06:05 PM you wrote: >> # cat /etc/systemd/system/anydesk.service >> [Unit] >> Description=AnyDesk >> Requires=network.target >> After=systemd-user-sessions.service >> >> [Service] >> Type=simple >> ExecStart=/usr/bin/anydesk --service >> PIDFile=/var/run/anydesk.pid >> KillMode=mixed >> TimeoutStopSec=30 >> User=root > > так systemd его тоже от рута запускает. А запускается ли он? У меня anydesk --service от рута только ругается -- служба не запускается, а от пользователя молча ничего не происходит. >> LimitNOFILE=100000 >> >> [Install] >> WantedBy=multi-user.target >> >> Просто anydesk от пользователя из группы wheel запускается и работает в обе >> стороны, но хочется всё же службу. > Создайте пользователя anydesk и запускайте из-под него, все счастливы. Да, так и делаю. Хотя на мой взгляд это не совсем правильно... -- С уважением, Владимир.
Hi Vladimir! On 12/29/2020, at 10:00:29 AM you wrote: > Добрый день! > > 29.12.2020 1:53, Konstantin Lepikhov пишет: > > On 12/18/2020, at 08:06:05 PM you wrote: > >> # cat /etc/systemd/system/anydesk.service > >> [Unit] > >> Description=AnyDesk > >> Requires=network.target > >> After=systemd-user-sessions.service > >> > >> [Service] > >> Type=simple > >> ExecStart=/usr/bin/anydesk --service > >> PIDFile=/var/run/anydesk.pid > >> KillMode=mixed > >> TimeoutStopSec=30 > >> User=root > > > > так systemd его тоже от рута запускает. > > А запускается ли он? У меня anydesk --service от рута только ругается -- служба не запускается, а от пользователя молча > ничего не происходит. Если посмотреть на пакет anydesk для fedora, он там тоже от рута: http://rpm.anydesk.com/fedora/x86_64/Packages/anydesk_6.0.1-1_x86_64.rpm - Там же в пакете есть и пример для sysv init. -- WBR et al.
29.12.2020 13:29, Konstantin Lepikhov пишет:
> Если посмотреть на пакет anydesk для fedora, он там тоже от рута:
>
> http://rpm.anydesk.com/fedora/x86_64/Packages/anydesk_6.0.1-1_x86_64.rpm
>
> - Там же в пакете есть и пример для sysv init.
Да, я это уже видел. Фактически там тоже идёт запуск anydesk --service, который у меня не работает.
Я не знаю, как работает start-stop-daemon: м.б. он как-то эту проблему решает? Хотя я пробовал переписать скрипт из
этого пакета по образу и подобию имеющихся, но получил всё то же самое.
--
С уважением,
Владимир.
On Tue, Dec 29, 2020 at 02:11:59PM +0300, Vladimir Karpinsky wrote: > Я не знаю, как работает start-stop-daemon: м.б. он как-то эту > проблему решает? Хотя я пробовал переписать скрипт из этого > пакета по образу и подобию имеющихся, но получил всё то же самое. У него есть ман, в котором описана опция -u. :) Но мне кажется, что лучше глянуть /etc/init.d/template и почитать в /etc/init.d/functions функцию start_daemon() на предмет --user|--set-user. Такое делается для многих выполняющихся с понижением привилегий пакетов (например, fetchmail) и как вариант -- такой инитскрипт можно упаковать в какой anydesk-preinstall. -- ---- WBR, Michael Shigorin / http://altlinux.org ------ http://opennet.ru / http://anna-news.info
Проблема в том, что при запуске службы нигде не предполагается
использование никакого другого юзера, в конце концов можно было бы через su
запустить. А запуск без --service предполагает наличие уже открытого
графического интерфейса со всеми вытекающими.
Самое интересное, что почти никого кроме меня это не беспокоит -- я не могу
найти сколь-нибудь серьёзных обсуждений этой темы в Интернете. То ли только
у меня это не работает, то ли никто этим не пользуется...
30.12.2020 15:31, Michael Shigorin пишет:
> On Tue, Dec 29, 2020 at 02:11:59PM +0300, Vladimir Karpinsky wrote:
>> Я не знаю, как работает start-stop-daemon: м.б. он как-то эту
>> проблему решает? Хотя я пробовал переписать скрипт из этого
>> пакета по образу и подобию имеющихся, но получил всё то же самое.
>
> У него есть ман, в котором описана опция -u. :)
>
> Но мне кажется, что лучше глянуть /etc/init.d/template
> и почитать в /etc/init.d/functions функцию start_daemon()
> на предмет --user|--set-user.
>
> Такое делается для многих выполняющихся с понижением
> привилегий пакетов (например, fetchmail) и как вариант --
> такой инитскрипт можно упаковать в какой anydesk-preinstall.
>
--
С уважением,
Владимир.
On Wed, Dec 30, 2020 at 04:25:23PM +0300, Vladimir Karpinsky wrote: > >> Я не знаю, как работает start-stop-daemon > > У него есть ман, в котором описана опция -u. :) > > Но мне кажется, что лучше глянуть /etc/init.d/template > > и почитать в /etc/init.d/functions функцию start_daemon() > > на предмет --user|--set-user. > Проблема в том, что при запуске службы нигде не предполагается > использование никакого другого юзера, в конце концов можно было > бы через su запустить. А гляньте всё-таки предложенное: man start-stop-daemon /-u view /etc/init.d/template <Esc>:q view /etc/init.d/functions /--user И неважно, что у других -- даже если все руками запускают. -- ---- WBR, Michael Shigorin / http://altlinux.org ------ http://opennet.ru / http://anna-news.info
30.12.2020 16:27, Michael Shigorin пишет:
> On Wed, Dec 30, 2020 at 04:25:23PM +0300, Vladimir Karpinsky wrote:
>>>> Я не знаю, как работает start-stop-daemon
>>> У него есть ман, в котором описана опция -u. :)
>>> Но мне кажется, что лучше глянуть /etc/init.d/template
>>> и почитать в /etc/init.d/functions функцию start_daemon()
>>> на предмет --user|--set-user.
>> Проблема в том, что при запуске службы нигде не предполагается
>> использование никакого другого юзера, в конце концов можно было
>> бы через su запустить.
>
> А гляньте всё-таки предложенное:
>
> man start-stop-daemon
> /-u
> view /etc/init.d/template
> <Esc>:q
> view /etc/init.d/functions
> /--user
>
> И неважно, что у других -- даже если все руками запускают.
Не получается:
$ start-stop-daemon --start --user karp --exec /usr/bin/anydesk -- --service
Даже, если запускать из неграфического терминала у пользователя в
графической оболочке всё равно вылезает окошко, про неправильность запуска
anydesk от root'а, и служба при этом не запускается.
Повозившись я уже понял, что мне серверный запуск под Линуксом далеко не
обязателен -- на этот линуховый комп я так или иначе залезу и то, что надо,
сделаю. В конце концов руками запущу anydesk без службы или автозапуск в
граф. оболочке у себя сделаю. В общем, варианты есть. А под Win (в
диапазоне версий WinXP-Win10) это нормально работает, в т.ч. и с
Линукс-клиента, и других вариантов не так много.
Собственно, остался в основном теоретический интерес...
--
С уважением,
Владимир.
On Wed, Dec 30, 2020 at 05:45:55PM +0300, Vladimir Karpinsky wrote: > Не получается: > $ start-stop-daemon --start --user karp --exec /usr/bin/anydesk -- --service $ или #? > В конце концов руками запущу anydesk без службы или автозапуск > в граф. оболочке у себя сделаю. Тогда см. /etc/X11/xinit.d/ -- ---- WBR, Michael Shigorin / http://altlinux.org ------ http://opennet.ru / http://anna-news.info
30.12.2020 20:01, Michael Shigorin пишет: > On Wed, Dec 30, 2020 at 05:45:55PM +0300, Vladimir Karpinsky wrote: >> Не получается: >> $ start-stop-daemon --start --user karp --exec /usr/bin/anydesk -- --service > > $ или #? От рута, конечно >> В конце концов руками запущу anydesk без службы или автозапуск >> в граф. оболочке у себя сделаю. > > Тогда см. /etc/X11/xinit.d/ Спасибо! Тут я ещё не был ;-) -- С уважением, Владимир.