Created attachment 12918 [details] лог epm Добра! При работе с командами epm начали выходить начали выходить ошибки системного вызова. при запуске $ bash -x /usr/share/eepm/tools_eget http://eepm.ru судя по логу поломался wget попытка его переустановить не помогла epm reinstall wget - не дает результатов. При попытке удалить apt-get remove wget тянется много пакетов для удаления, к примеру тот же hplip Данная ошибка возникает только на машине которая была установлена K workstation с kde и потом подключен репозиторий с Сизиф и переход на него На машине где изначально была установлена сборка Сизиф с kde таких проблем нет, все нормально работает.
Спасибо за багрепорт. У вас используется http proxy, tsocks, fakeroot? Покажите, пожалуйста, чему равна переменная LD_PRELOAD перед запуском этой команды: echo $LD_PRELOAD ps. Временный объезд проблемы пока мы её не решим: export SECCOMP_DEFAULT_ACTION=allow
> ps. Временный объезд проблемы пока мы её не решим: Возможный, так как прочны пока не ясны, напишите заодно помог ли он, пожалуйста.
Я протестировал с tsocks и да вылетает на getsockopt: Connecting to eepm.ru (eepm.ru)|91.232.225.9|:80... --- SIGSYS {si_signo=SIGSYS, si_code=SYS_SECCOMP, si_call_addr=0x7f61d7315fca, si_syscall=__NR_getsockopt, si_arch=AUDIT_ARCH_X86_64} --- Это легко решим когда выясним, что у вас то же самое. Проверить можно так: unset SECCOMP_DEFAULT_ACTION export SECCOMP_SYSCALL_ALLOW=getsockopt ...повтор команды с запуском wget
Сделал тестовое задание с фиксом, его можно установить (через apt-repo) так: # apt-repo test 318311 После этого надо удалить переменные которые мы использовали для тестирования: unset SECCOMP_DEFAULT_ACTION unset SECCOMP_SYSCALL_ALLOW и протестировать заново. Сообщите, пожалуйста, помог ли фикс.
(Ответ для Vitaly Chikunov на комментарий #4) > Сделал тестовое задание с фиксом, его можно установить (через apt-repo) так: > > # apt-repo test 318311 > Здравствуйте! Завтра на работе проверю, потом Вам отпишусь. Сейчас у меня почти 23:00
(Ответ для Vitaly Chikunov на комментарий #4) > Сделал тестовое задание с фиксом, его можно установить (через apt-repo) так: > > # apt-repo test 318311 > > и протестировать заново. Сообщите, пожалуйста, помог ли фикс. wget 1.21.3-alt4 Ошибка не ушла wget http://eepm.ru Неверный системный вызов Машина использует прокси, ideco, авторизация в интернет идет после отрытия браузера и загрузки страцины, на ideco прописан пропуск по конкретному ip Значение echo $LD_PRELOAD пустое Через этот объезд export SECCOMP_DEFAULT_ACTION=allow wget http://eepm.ru работает дальше (где вы писали про tsocks) не делал однако, если к примеру выпустить wget, либо epm через sudo то также падает. ну то есть если так sudo epm full-upgrade либо sudo wget http://eepm.ru То получаем «Неверный системный вызов» Если так epm full-upgrade либо wget http://eepm.ru то работает, но это с учетом export SECCOMP_DEFAULT_ACTION=allow
Сделал это.. unset SECCOMP_DEFAULT_ACTION unset SECCOMP_SYSCALL_ALLOW export SECCOMP_SYSCALL_ALLOW=getsockopt Не работает
Если не ошибаюсь у нас http proxy
Спасибо. Попробую воспроизвести ситуацию с http proxy.
(In reply to Vitaly Chikunov from comment #9) > Спасибо. Попробую воспроизвести ситуацию с http proxy. Я попробовал разные варианты прокси и у меня не воспроизводится проблема. Тогда остается только чтоб вы выяснили на каком сисколле срабатывает фильтр, для этого можете попробовать так: $ SECCOMP_DEFAULT_ACTION=trap SECCOMP_SYSCALL_ALLOW= strace -f -e t=none -e s=sys -- wget http://eepm.ru Оно напишет строку похожую на --- SIGSYS {si_signo=SIGSYS, si_code=SYS_SECCOMP, si_call_addr=0x7f61d7315fca, si_syscall=__NR_getsockopt, si_arch=AUDIT_ARCH_X86_64} --- Интересно что там будет после "si_syscall=".
--- SIGSYS {si_signo=SIGSYS, si_code=SYS_SECCOMP, si_call_addr=0x7fdfb509f6d7, si_syscall=__NR_pipe2, si_arch=AUDIT_ARCH_X86_64} --- +++ killed by SIGSYS +++ Неверный системный вызов
(In reply to gttn from comment #11) > --- SIGSYS {si_signo=SIGSYS, si_code=SYS_SECCOMP, > si_call_addr=0x7fdfb509f6d7, si_syscall=__NR_pipe2, > si_arch=AUDIT_ARCH_X86_64} --- +++ killed by SIGSYS +++ Неверный > системный вызов Спасибо. Теперь ещё раз, но SECCOMP_SYSCALL_ALLOW=pipe2 плс. Но я уже догадываюсь что оно пытается запустить процесс для ввода пароля.
Сделал unset SECCOMP_DEFAULT_ACTION unset SECCOMP_SYSCALL_ALLOW export SECCOMP_SYSCALL_ALLOW=pipe2 попробовал wget http://eepm.ru не работает Неверный системный вызов
Я имел ввиду сделать вот так $ SECCOMP_DEFAULT_ACTION=trap SECCOMP_SYSCALL_ALLOW=pipe2 strace -f -e t=none -e s=sys -- wget http://eepm.ru Но может понадобиться ещё несколько запусков с изменением параметров. Если хотите можно попробовать - пишите что какая ошибка будет выпадать я я как менять команду запуска.
SECCOMP_DEFAULT_ACTION=trap SECCOMP_SYSCALL_ALLOW=pipe2 strace -f -e t=none -e s=sys -- wget http://eepm.ru --- SIGSYS {si_signo=SIGSYS, si_code=SYS_SECCOMP, si_call_addr=0x7f5285a6bc47, si_syscall=__NR_getresuid, si_arch=AUDIT_ARCH_X86_64} --- +++ killed by SIGSYS +++ Неверный системный вызов ну давайте добьем этот вопрос )
> ну давайте добьем этот вопрос ) SECCOMP_DEFAULT_ACTION=trap SECCOMP_SYSCALL_ALLOW=pipe2:getresuid strace -f -e t=none -e s=sys -- wget http://eepm.ru
В общем я понял что Вы делали, ниже строчка как все работает SECCOMP_DEFAULT_ACTION=trap SECCOMP_SYSCALL_ALLOW=pipe2:getresuid:getresgid:geteuid strace -f -e t=none -e s=sys -- wget http://eepm.ru
(In reply to gttn from comment #17) > В общем я понял что Вы делали, ниже строчка как все работает > > SECCOMP_DEFAULT_ACTION=trap > SECCOMP_SYSCALL_ALLOW=pipe2:getresuid:getresgid:geteuid strace -f -e > t=none -e s=sys -- wget http://eepm.ru Спасибо. А можете показывать вывод: grep askpass /etc/wgetrc grep askpass ~/.wgetrc echo $WGET_ASKPASS echo $SSH_ASKPASS Если конечно там ничего секретного.
> grep askpass /etc/wgetrc пусто > grep askpass ~/.wgetrc grep: /home/xxx/.wgetrc нет такого файла или каталога > echo $WGET_ASKPASS пусто > echo $SSH_ASKPASS /usr/lib/openssh/ssh-askpass Не знаю Важно нет... машина в windows домене
> grep askpass /etc/wgetrc вот тут даже не то что пусто, тут просто ничего не происходит )
Спасибо за помощь. Пока я не до конца понял причины, но, по крайней мере, есть над чем подумать.
(In reply to Vitaly Chikunov from comment #4) > Сделал тестовое задание с фиксом, его можно установить (через apt-repo) так: > > # apt-repo test 318311 Обновил задание 318311 с изменениями которые мы выяснили. Если хотите можете протестировать.
А что у вас выводит /usr/bin/proxy http://eepm.ru если не секрет. Я думаю может это из-за libproxy.
(Ответ для Vitaly Chikunov на комментарий #22) > (In reply to Vitaly Chikunov from comment #4) > > Сделал тестовое задание с фиксом, его можно установить (через apt-repo) так: > > > > # apt-repo test 318311 > > Обновил задание 318311 с изменениями которые мы выяснили. Если хотите можете > протестировать. Здравствуйте, обновился, сейчас все нормально работает! Спасибо )
(Ответ для Vitaly Chikunov на комментарий #23) > А что у вас выводит > > /usr/bin/proxy http://eepm.ru > > если не секрет. Я думаю может это из-за libproxy. bash: /usr/bin/proxy Нет такого файла или каталога
Спасибо за проверку. > > А что у вас выводит > > > > /usr/bin/proxy http://eepm.ru > > > > если не секрет. Я думаю может это из-за libproxy. > > bash: /usr/bin/proxy Нет такого файла или каталога Нужно установить пакет libproxy-tools
$ /usr/bin/proxy http://eepm.ru direct://
(In reply to gttn from comment #27) > $ /usr/bin/proxy http://eepm.ru > direct:// Спасибо.
wget-1.21.3-alt4 -> sisyphus: Mon Apr 10 2023 Vitaly Chikunov <vt@altlinux> 1.21.3-alt4 - Update seccomp filtering rules (ALT#45799).
*** Bug 45840 has been marked as a duplicate of this bug. ***
У меня в Plasma починилось с wget-1.21.3-alt4 и libproxy-kde.
(Ответ для Vitaly Chikunov на комментарий #22) > (In reply to Vitaly Chikunov from comment #4) > > Сделал тестовое задание с фиксом, его можно установить (через apt-repo) так: > > > > # apt-repo test 318311 > > Обновил задание 318311 с изменениями которые мы выяснили. Если хотите можете > протестировать. Добра! А Вы тестовое задание убрали? Просто у меня тут опять выпало в ошибку wget, только уже на другой машине где нет прокси. wget http://eepm.ru работает, а вот другое нет.. хотел проверить /home/aleksandr/PortWINE/PortProton/data/scripts/functions_helper: строка 105: 44209 Неверный системный вызов wget -O "$2" --read-timeout 300 --retry-connrefused --timeout 15 --tries 2 --user-agent="Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" "${1}" 2>&1 44210 Завершён | tr '\r' '\n' 44211 Завершён | sed -u 's/.* \([0-9]\+%\)\ \+\([0-9,.]\+.\) \(.*\)/\1\n#Downloading at \1\/, \2\/s, ETA \3/; s/^20[0-9][0-9].*/#Done./' 44212 Завершён | zenity --progress --percentage=0 --title="Download ${PW_DOWNLOAD_FILE_NAME}" --text=Starting... --auto-close --width=500 --height=90 ERROR: Failed to download PROTON_LG_7-54.tar.xz from GitHub. INFO: Try download PROTON_LG_7-54.tar.xz from FTP
105 строка это функция загрузки.. в ней wget -O "$2" --read-timeout 300 --retry-connrefused --timeout 15 --tries 2 \ --user-agent="Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" "${1}" 2>&1 | \ tr '\r' '\n' | sed -u 's/.* \([0-9]\+%\)\ \+\([0-9,.]\+.\) \(.*\)/\1\n#Downloading at \1\/, \2\/s, ETA \3/; s/^20[0-9][0-9].*/#Done./' | \ zenity --progress --percentage=0 --title="Download ${PW_DOWNLOAD_FILE_NAME}" --text=Starting... --auto-close --width=500 --height=90
Спасибо. Воспроизвелось. Это из-за опции `--timeout 15`. Добавлю rt_sigaction и setitimer в разрешенный список. (К сожалению с seccomp всегда так.)
Тестовое задание 318425. Я его уже проверил, что оно решает проблему с --timeout, но если хотите, то тоже можете протестировать, вдруг что-то ещё вылезет.
(Ответ для Vitaly Chikunov на комментарий #35) > Тестовое задание 318425. Я его уже проверил, что оно решает проблему с > --timeout, но если хотите, то тоже можете протестировать, вдруг что-то ещё > вылезет. Все работает, спасибо!
> Все работает, спасибо! Спасибо за тест!
wget-1.21.3-alt5 -> sisyphus: Wed Apr 12 2023 Vitaly Chikunov <vt@altlinux> 1.21.3-alt5 - Update seccomp filtering for '--timeout' (ALT#45799).
Добра.. Походу опять поломался wget ниже все что я проделал на основе данного поста... но чета как не получилось... wget http://eepm.ru [1] 65542 invalid system call wget http://eepm.ru ↑159 ~ → SECCOMP_DEFAULT_ACTION=trap SECCOMP_SYSCALL_ALLOW= strace -f -e t=none -e s=sys -- wget http://eepm.ru --- SIGSYS {si_signo=SIGSYS, si_code=SYS_SECCOMP, si_call_addr=0x7f9693914127, si_syscall=__NR_access, si_arch=AUDIT_ARCH_X86_64} --- +++ killed by SIGSYS +++ [1] 65608 invalid system call SECCOMP_DEFAULT_ACTION=trap SECCOMP_SYSCALL_ALLOW= strace -f -e t=none -e -- ↑159 ~ → SECCOMP_DEFAULT_ACTION=trap SECCOMP_SYSCALL_ALLOW=access strace -f -e t=none -e s=sys -- wget http://jey13.ru --- SIGSYS {si_signo=SIGSYS, si_code=SYS_SECCOMP, si_call_addr=0x7faa231254f7, si_syscall=__NR_eventfd2, si_arch=AUDIT_ARCH_X86_64} --- +++ killed by SIGSYS +++ [1] 65701 invalid system call SECCOMP_DEFAULT_ACTION=trap SECCOMP_SYSCALL_ALLOW=access strace -f -e t=none ↑159 ~ → SECCOMP_DEFAULT_ACTION=trap SECCOMP_SYSCALL_ALLOW=access:eventfd2 strace -f -e t=none -e s=sys -- wget http://jey13.ru (process:65721): GLib-ERROR **: 17:10:50.451: creating thread 'pool-spawner': Error creating thread: Ресурс временно недоступен [1] 65718 trace trap SECCOMP_DEFAULT_ACTION=trap SECCOMP_SYSCALL_ALLOW=access:eventfd2 strace -f -
Методом тыка добрался до такой строчки aleksandr@test-rolling ~ [17:37:41] > $ SECCOMP_DEFAULT_ACTION=trap SECCOMP_SYSCALL_ALLOW=access:gettimeofday:eventfd2 strace -f -e t=none -e s=sys -- wget http://eepm.ru (process:5373): GLib-ERROR **: 17:37:53.917: creating thread 'pool-spawner': Error creating thread: Ресурс временно недоступен [1] 5370 trace trap SECCOMP_DEFAULT_ACTION=trap SECCOMP_SYSCALL_ALLOW=access:gettimeofday:eventfd
Откат libproxy до 0.4.18-alt1 лечит wget.
(Ответ для Yuri N. Sedunov на комментарий #41) > Откат libproxy до 0.4.18-alt1 лечит wget. Работает после отката. Скажите, а баг на libproxy надо вешать? или данного обсуждения достаточно? интересно
*** Bug 46752 has been marked as a duplicate of this bug. ***
(Ответ для gttn на комментарий #42) > Скажите, а баг на libproxy надо вешать? Не. Правила seccomp у wget обновить надо.
Можно ли в будущем не переоткрывать один и тот же баг, а заводить новые? Заранее спасибо. Я удалю поддержку libproxy из opensuse, это была ошибка, что я ее добавил. Апстримный баг заведен https://github.com/libproxy/libproxy/issues/250
wget-1.21.4-alt2 -> sisyphus: Tue Jul 04 2023 Vitaly Chikunov <vt@altlinux> 1.21.4-alt2 - Remove libproxy support (ALT#45799).