Bug 40669 - Ошибка при systemctl restart distccd
Summary: Ошибка при systemctl restart distccd
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: distcc-server (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Alexey Sheplyakov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-08-06 17:08 MSK by Alexander Makeenkov
Modified: 2022-09-15 22:17 MSK (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Makeenkov 2021-08-06 17:08:24 MSK
Шаги воспроизведения:
# apt-get install distcc-server
# systemctl start distccd
# systemctl restart distccd.service 
Job for distccd.service failed because the control process exited with error code.
See "systemctl status distccd.service" and "journalctl -xeu distccd.service" for details.

В логах journalctl такая ошибка:
авг 06 17:04:40 amakeenk-sisyphus-work9 systemd[1]: Stopping SYSV: The distcc deamon...
авг 06 17:04:40 amakeenk-sisyphus-work9 distccd[3662]: Stopping distccd service:
авг 06 17:04:40 amakeenk-sisyphus-work9 distccd[3665]: /etc/rc.d/init.d/distccd: line 47: killproc: command not found
авг 06 17:04:40 amakeenk-sisyphus-work9 systemd[1]: distccd.service: Control process exited, code=exited, status=127/n/a
авг 06 17:04:40 amakeenk-sisyphus-work9 systemd[1]: distccd.service: Failed with result 'exit-code'

Из-за данной ошибки так же сервис distccd падает при обновлении до новой версии, если в момент обновления он запущен.

Версия пакета: distcc-server-3.4-alt4
Comment 1 Evgeny Shesteperov 2021-10-13 12:10:57 MSK
Дополнение к ошибке
===================

Версия distcc: 3.4-alt6

1. Выполняю

    # apt-get install distcc-server
    # systemctl start distccd
    # systemctl restart distccd.service

2. Проверяю в journalctl:

    # journalctl | grep distcc | grep ERROR

окт 13 11:33:20 server-92-x86-64-minimal-20211012.localdomain distccd[3834]: (dcc_listen_by_addr) ERROR: bind of 0.0.0.0:3632 failed: Address already in use

3. Проверил порт, занимает ли сервис после failed:

    # lsof -i -P -n | grep LISTEN | grep distccd

distccd 3810 distccd    3u  IPv4  23934      0t0  TCP *:3632 (LISTEN)
distccd 3811 distccd    3u  IPv4  23934      0t0  TCP *:3632 (LISTEN)
distccd 3812 distccd    3u  IPv4  23934      0t0  TCP *:3632 (LISTEN)
distccd 3814 distccd    3u  IPv4  23934      0t0  TCP *:3632 (LISTEN)
distccd 3815 distccd    3u  IPv4  23934      0t0  TCP *:3632 (LISTEN)
distccd 3816 distccd    3u  IPv4  23934      0t0  TCP *:3632 (LISTEN)
distccd 3817 distccd    3u  IPv4  23934      0t0  TCP *:3632 (LISTEN)

4. Поменял порт (PORT) в /etc/sysconfig/distccd на 1313
5. Убил distccd:

    # killall distccd

6. Сделал # systemctl restart distccd два раза. Ошибки такие же как в шаге 2
7. lsof -i -P -n | grep LISTEN | grep distccd выдаёт КАК ВЫШЕ (порт 3632) Получается, конфиг не меняет порт, хотя в настройках сервиса прописано: и читать /etc/sysconfig/distccd, и убивать distccd при сигнале stop.
Comment 2 Alexey Sheplyakov 2022-03-28 12:27:35 MSK
#297216 TESTED #1 [test-only] sisyphus distcc.git=3.4-alt8.gitga6fb7ea
Comment 3 Repository Robot 2022-09-15 22:17:10 MSK
distcc-3.4-alt8 -> sisyphus:

 Fri Sep 16 2022 Alexey Sheplyakov <asheplyakov@altlinux> 3.4-alt8
 - Repaired IP based access control (Closes: #42251)
 - Added systemd unit file (Closes: #40669)
 - Improved --allow-private, see https://github.com/distcc/distcc/pull/451
 - Removed clients.allow, commands.allow.sh: these have never ever worked
 - Avoid infinite loop when DISTCC_BACKOFF is disabled, see
   https://github.com/distcc/distcc/issues/434
 - Refuse to distribute files with the `.incbin` assembler directive, see
   https://github.com/distcc/distcc/pull/461