Bug 31119 - Не запускается
Summary: Не запускается
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: fail2ban (show other bugs)
Version: unstable
Hardware: all Linux
: P3 critical
Assignee: Grigory Ustinov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-07-02 11:46 MSK by Evgenii Terechkov
Modified: 2015-07-09 05:38 MSK (History)
20 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Evgenii Terechkov 2015-07-02 11:46:33 MSK
После обновления до свежего Сизифа fail2ban не запускается на i586/systemd с диагностикой:

=8<==============================================================================
Jul 02 15:39:47 teer.kras.ru systemd[1]: Starting Fail2ban Service...
Jul 02 15:39:47 teer.kras.ru fail2ban-client[12744]: Traceback (most recent call last):
Jul 02 15:39:47 teer.kras.ru fail2ban-client[12744]: File "/usr/bin/fail2ban-client", line 30, in <module>
Jul 02 15:39:47 teer.kras.ru fail2ban-client[12744]: from fail2ban.client.csocket import CSocket
Jul 02 15:39:47 teer.kras.ru fail2ban-client[12744]: ImportError: No module named client.csocket
Jul 02 15:39:47 teer.kras.ru systemd[1]: fail2ban.service: Control process exited, code=exited status=1
Jul 02 15:39:47 teer.kras.ru systemd[1]: Failed to start Fail2ban Service.
=8<==============================================================================

На другой машине (x86_64/systemd) тот же пакет 0.9.2-alt3 работает.
Comment 1 Evgenii Terechkov 2015-07-02 18:37:23 MSK
systemd ни при чём, а на x86_64 у меня работало в силу ручной допилки (и вообще пакет то noarch).

При обновлении 0.8.13->0.9.2 потерялось много файлов (например тот же csocket.py). Их удаляет на позднем этапе сборки пакета /usr/lib/rpm/python.compileall.py. Я предполагаю это потому что python.compileall.py по умолчанию удаляет уже существующие файлы,  созданные в данном случае setup.py, (о чём пишет в логе сборки) если их скомпилировал не он и не в данный проход (это задокументировано в /usr/share/doc/rpm-build-python-0.36.2/doc/ByteCompiler.txt). 

Помог вот такой однострочный патч:

=8<=======================================================
--- a/fail2ban.spec
+++ b/fail2ban.spec
@@ -46,7 +46,7 @@ ln -s %python_sitelibdir/%name %buildroot%_datadir/
 install -pD -m 744 %SOURCE1 %buildroot%_initdir/fail2ban
 install -pD -m 644 %SOURCE2 %buildroot%_unitdir/%name.service
 install -pD -m 644 files/fail2ban-tmpfiles.conf %buildroot%_tmpfilesdir/%name.conf
-%python_install
+%python_install --optimize=2
 rm -rf %buildroot/%_docdir/%name/
 
 %pre
=8<=======================================================

проверил - работает.

Другим подходом видимо могло бы быть изменение макроса %_python_compile_clean
Comment 2 Repository Robot 2015-07-08 11:14:27 MSK
fail2ban-0.9.2-alt4 -> sisyphus:

* Wed Jul 08 2015 Eugeny A. Rostovtsev <real at altlinux> 0.9.2-alt4
- Fixed for i586 (ALT #31119)