LINUX.ORG.RU

Сообщения zevilz

 

Нужны советы по отказоустойчивой инфраструктуре трекинг системы

Форум — Admin

Всем привет! Нужна помошь и подсказки по создании инфраструктуры трекинг системы.

Будет создаватся на основе облака хецнера. Входящих данных примерно 2-10млн/мес. Структуру накидали примерно такую:

  • На входе 2 балансировщика хецнера (решили остановится на них, а не разворачивать свои) в разных локациях, которые распределяют запросы между одними и теми же виртуалками в разных локациях. 2 балансировщика для 2 ip. Приложения на них дергают инфу из запроса и пишут в PostgreSQL (тут чисто инсерты). Тут важна высокая доступность.
  • PostgreSQL в виде нескольких виртуалок в разных локациях с мастерами за виртуалкой с PgBouncer. Дополнительно еще одна виртуалка с репликой базы для тяжелых селектов для админок. Тут важна высокая доступность.
  • Отдельно еще 2 виртуалки в разных локациях за 1 балансировщиком хецнера для апдейтов и записи в базу (нагрузки на базу тут будет в 10-15 раз меньше). Тут важна почти высокая доступность.
  • И еще 1 виртуалка для API и админок. В основном будет стучатся за данными в реплику PostgreSQL.

Нужно чтобы это все стабильно работало без отвалов и без проблем масштабировалось при росте нагрузки.

Вопросы:

  1. PgBouncer только один на одной виртуалке. Как можно обезопасится при его отвале?
  2. Насколько быстро синхронизируются мастера PostgreSQL и как часто? При каждом запросе синхронизируются или через какое-то время? Узкого места тут не будет? (мультимастер рассматривали в pro enterprise, но дорого)
  3. Как-то можно на вскидку прикинуть, сколько ресурсов нужно будет для виртуалок под 10млн инсертов в месяц (примерно 15 колонок в базе, данные будут хранится примерно за последний год)? Или тут только тестить?
  4. Может есть еще какие рекомендации? Или где есть явные грабли и узкие места?

P.S.: с PgBouncer не работал, с PostgreSQL на уровне поставил, настроил и забыл. Других хостеров и всякие куберы не предлагать. MongoDB рассматривали, но разрабы отказались из-за хреновой работы с джоинами.

 , , ,

zevilz
()

Проблема с отображением некоторых SVG на Debian 12

Форум — Desktop

Обновился до Debian 12. Есть самопальный пак иконок в svg, собран на базе какого-то старого пака + иконки из старой версии Numix Circle + свои. Сейчас большинство иконок приложений везде некорректно отображаются в ОС (Thunar, Plank, просмотрщики фото, браузеры), просто цветной кружок (фон иконки). Если открыть в Inkscape, то там все ок. Сохранилась еще какая-то более новая версия Numix Circle, те же самые иконки там отображаются нормально. Глянул в текстовом редакторе, есть отличия. Может кто знает, как пофиксить? Или что-то поменялось в какой-то либе, и придется заново пак перебирать?

Иконка из пака:

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48">
 <defs>
  <linearGradient id="linearGradient3764" x1="1" x2="47" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0,-1,1,0,-1.5e-6,47.999998)">
   <stop style="stop-color:#97b2d3;stop-opacity:1"/>
   <stop offset="1" style="stop-color:#a5bcd9;stop-opacity:1"/>
  </linearGradient>
  <clipPath id="clipPath-172451806">
   <g transform="translate(0,-1004.3622)">
    <path d="m -24 13 c 0 1.105 -0.672 2 -1.5 2 -0.828 0 -1.5 -0.895 -1.5 -2 0 -1.105 0.672 -2 1.5 -2 0.828 0 1.5 0.895 1.5 2 z" transform="matrix(15.333333,0,0,11.5,414.99999,878.8622)" style="fill:#1890d0"/>
   </g>
  </clipPath>
  <clipPath id="clipPath-183935099">
   <g transform="translate(0,-1004.3622)">
    <path d="m -24 13 c 0 1.105 -0.672 2 -1.5 2 -0.828 0 -1.5 -0.895 -1.5 -2 0 -1.105 0.672 -2 1.5 -2 0.828 0 1.5 0.895 1.5 2 z" transform="matrix(15.333333,0,0,11.5,414.99999,878.8622)" style="fill:#1890d0"/>
   </g>
  </clipPath>
 </defs>
 <g>
  <path d="m 36.31 5 c 5.859 4.062 9.688 10.831 9.688 18.5 c 0 12.426 -10.07 22.5 -22.5 22.5 c -7.669 0 -14.438 -3.828 -18.5 -9.688 c 1.037 1.822 2.306 3.499 3.781 4.969 c 4.085 3.712 9.514 5.969 15.469 5.969 c 12.703 0 23 -10.298 23 -23 c 0 -5.954 -2.256 -11.384 -5.969 -15.469 c -1.469 -1.475 -3.147 -2.744 -4.969 -3.781 z m 4.969 3.781 c 3.854 4.113 6.219 9.637 6.219 15.719 c 0 12.703 -10.297 23 -23 23 c -6.081 0 -11.606 -2.364 -15.719 -6.219 c 4.16 4.144 9.883 6.719 16.219 6.719 c 12.703 0 23 -10.298 23 -23 c 0 -6.335 -2.575 -12.06 -6.719 -16.219 z" style="opacity:0.05"/>
  <path d="m 41.28 8.781 c 3.712 4.085 5.969 9.514 5.969 15.469 c 0 12.703 -10.297 23 -23 23 c -5.954 0 -11.384 -2.256 -15.469 -5.969 c 4.113 3.854 9.637 6.219 15.719 6.219 c 12.703 0 23 -10.298 23 -23 c 0 -6.081 -2.364 -11.606 -6.219 -15.719 z" style="opacity:0.1"/>
  <path d="m 31.25 2.375 c 8.615 3.154 14.75 11.417 14.75 21.13 c 0 12.426 -10.07 22.5 -22.5 22.5 c -9.708 0 -17.971 -6.135 -21.12 -14.75 a 23 23 0 0 0 44.875 -7 a 23 23 0 0 0 -16 -21.875 z" style="opacity:0.2"/>
 </g>
 <g>
  <path d="m 24 1 c 12.703 0 23 10.297 23 23 c 0 12.703 -10.297 23 -23 23 -12.703 0 -23 -10.297 -23 -23 0 -12.703 10.297 -23 23 -23 z" style="fill:url(#linearGradient3764);fill-opacity:1"/>
 </g>
 <g>
  <g style="clip-path:url(#clipPath-172451806)">
   <g transform="translate(1,1)">
    <g style="opacity:0.1">
     <!-- color: #a5bcd9 -->
     <g>
      <path d="m 12 32.48 c -0.012 -5.758 8.316 -22.395 12.195 -22.477 c 1.938 -0.047 4.844 3.637 7.285 8.398 c 2.445 4.758 4.426 10.598 4.52 14.863 c 0 0 -9.383 -18.328 -11.723 -18.379 c -2.379 -0.066 -8.852 12.91 -8.08 14.352 c 0.754 1.41 14.695 -3.133 14.695 -3.133 c -0.301 0.461 -9.402 6.48 -16.227 7.895 c -1.031 -0.043 -2.578 0 -2.664 -1.52 m 0 0" style="fill:#000;fill-opacity:1;stroke:none;fill-rule:evenodd"/>
     </g>
    </g>
   </g>
  </g>
 </g>
 <g>
  <g style="clip-path:url(#clipPath-183935099)">
   <!-- color: #a5bcd9 -->
   <g>
    <path d="m 12 32.48 c -0.012 -5.758 8.316 -22.395 12.195 -22.477 c 1.938 -0.047 4.844 3.637 7.285 8.398 c 2.445 4.758 4.426 10.598 4.52 14.863 c 0 0 -9.383 -18.328 -11.723 -18.379 c -2.379 -0.066 -8.852 12.91 -8.08 14.352 c 0.754 1.41 14.695 -3.133 14.695 -3.133 c -0.301 0.461 -9.402 6.48 -16.227 7.895 c -1.031 -0.043 -2.578 0 -2.664 -1.52 m 0 0" style="fill:#4c627f;fill-opacity:1;stroke:none;fill-rule:evenodd"/>
   </g>
  </g>
 </g>
 <g>
  <path d="m 40.03 7.531 c 3.712 4.084 5.969 9.514 5.969 15.469 0 12.703 -10.297 23 -23 23 c -5.954 0 -11.384 -2.256 -15.469 -5.969 4.178 4.291 10.01 6.969 16.469 6.969 c 12.703 0 23 -10.298 23 -23 0 -6.462 -2.677 -12.291 -6.969 -16.469 z" style="opacity:0.1"/>
 </g>
</svg>

Та же иконка из Numix:

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48">
 <defs>
  <linearGradient id="linearGradient3764" x1="1" x2="47" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0,-1,1,0,-1.5e-6,47.999998)">
   <stop style="stop-color:#97b2d3;stop-opacity:1"/>
   <stop offset="1" style="stop-color:#a5bcd9;stop-opacity:1"/>
  </linearGradient>
 </defs>
 <g>
  <path d="m 36.31 5 c 5.859 4.062 9.688 10.831 9.688 18.5 c 0 12.426 -10.07 22.5 -22.5 22.5 c -7.669 0 -14.438 -3.828 -18.5 -9.688 c 1.037 1.822 2.306 3.499 3.781 4.969 c 4.085 3.712 9.514 5.969 15.469 5.969 c 12.703 0 23 -10.298 23 -23 c 0 -5.954 -2.256 -11.384 -5.969 -15.469 c -1.469 -1.475 -3.147 -2.744 -4.969 -3.781 z m 4.969 3.781 c 3.854 4.113 6.219 9.637 6.219 15.719 c 0 12.703 -10.297 23 -23 23 c -6.081 0 -11.606 -2.364 -15.719 -6.219 c 4.16 4.144 9.883 6.719 16.219 6.719 c 12.703 0 23 -10.298 23 -23 c 0 -6.335 -2.575 -12.06 -6.719 -16.219 z" style="opacity:0.05"/>
  <path d="m 41.28 8.781 c 3.712 4.085 5.969 9.514 5.969 15.469 c 0 12.703 -10.297 23 -23 23 c -5.954 0 -11.384 -2.256 -15.469 -5.969 c 4.113 3.854 9.637 6.219 15.719 6.219 c 12.703 0 23 -10.298 23 -23 c 0 -6.081 -2.364 -11.606 -6.219 -15.719 z" style="opacity:0.1"/>
  <path d="m 31.25 2.375 c 8.615 3.154 14.75 11.417 14.75 21.13 c 0 12.426 -10.07 22.5 -22.5 22.5 c -9.708 0 -17.971 -6.135 -21.12 -14.75 a 23 23 0 0 0 44.875 -7 a 23 23 0 0 0 -16 -21.875 z" style="opacity:0.2"/>
 </g>
 <g>
  <path d="m 24 1 c 12.703 0 23 10.297 23 23 c 0 12.703 -10.297 23 -23 23 -12.703 0 -23 -10.297 -23 -23 0 -12.703 10.297 -23 23 -23 z" style="fill:url(#linearGradient3764);fill-opacity:1"/>
 </g>
 <g>
  <g>
   <g transform="translate(1,1)">
    <g style="opacity:0.1">
     <!-- color: #a5bcd9 -->
     <g>
      <path d="m 12 32.48 c -0.012 -5.758 8.316 -22.395 12.195 -22.477 c 1.938 -0.047 4.844 3.637 7.285 8.398 c 2.445 4.758 4.426 10.598 4.52 14.863 c 0 0 -9.383 -18.328 -11.723 -18.379 c -2.379 -0.066 -8.852 12.91 -8.08 14.352 c 0.754 1.41 14.695 -3.133 14.695 -3.133 c -0.301 0.461 -9.402 6.48 -16.227 7.895 c -1.031 -0.043 -2.578 0 -2.664 -1.52 m 0 0" style="fill:#000;fill-opacity:1;stroke:none;fill-rule:evenodd"/>
     </g>
    </g>
   </g>
  </g>
 </g>
 <g>
  <g>
   <!-- color: #a5bcd9 -->
   <g>
    <path d="m 12 32.48 c -0.012 -5.758 8.316 -22.395 12.195 -22.477 c 1.938 -0.047 4.844 3.637 7.285 8.398 c 2.445 4.758 4.426 10.598 4.52 14.863 c 0 0 -9.383 -18.328 -11.723 -18.379 c -2.379 -0.066 -8.852 12.91 -8.08 14.352 c 0.754 1.41 14.695 -3.133 14.695 -3.133 c -0.301 0.461 -9.402 6.48 -16.227 7.895 c -1.031 -0.043 -2.578 0 -2.664 -1.52 m 0 0" style="fill:#4c627f;fill-opacity:1;stroke:none;fill-rule:evenodd"/>
   </g>
  </g>
 </g>
 <g>
  <path d="m 40.03 7.531 c 3.712 4.084 5.969 9.514 5.969 15.469 0 12.703 -10.297 23 -23 23 c -5.954 0 -11.384 -2.256 -15.469 -5.969 4.178 4.291 10.01 6.969 16.469 6.969 c 12.703 0 23 -10.298 23 -23 0 -6.462 -2.677 -12.291 -6.969 -16.469 z" style="opacity:0.1"/>
 </g>
</svg>

 , ,

zevilz
()

Debian + RX580 2048sp + amdgpu + steam

Форум — Games

Сменил gt1030 на китайский рефаб RX580 2048sp (ядро скорее всего от RX470/570). С amd под линуксами дел раньше не имел. Вычистил систему (Debian 11) от дров нвидии, поставил amdgpu. В бенчмарках unigine тесты работает отлично. Запускаю стим, а игры сразу завершаются после запуска. В выхлопе только

ERROR: ld.so: object '/home/evil/.steam/debian-installation/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/evil/.steam/debian-installation/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
ERROR: ld.so: object '/home/evil/.steam/debian-installation/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
Uploaded AppInterfaceStats to Steam

Как понял, это никак не влияет на запуск игр, оверлей пробовал вырубать. Проблема осталась.

Запустил Quake Champions через Proton - пишет, что карта или драйвер не поддерживает directx11 и зависает. Нормально запускается из установленных только Duke Nukem 3D.

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

Поставил чистый Debian 12, на него накатил стим, amdgpu из коробки. Проблема осталась. В чем может быть проблема? Чего не хватает или что мешает?

 , , ,

zevilz
()

openssl s_client получает неверный серт от Nginx

Форум — Admin

На серваках есть скрипт, который получает дату истечения сертов доменов для заббикса. Получение даты:

echo | openssl s_client -connect $SERVER:443 -servername $SERVER -tlsextdebug 2>/dev/null | openssl x509 -noout -dates 2>/dev/null | grep notAfter

В nginx есть дефолтная секция для виртуальных хостов, для которых нет конфигов:

server {
	listen 80 default_server;
	listen [::]:80 default_server;
	listen 443 ssl default_server;
	listen [::]:443 ssl default_server;
	server_name _;
	ssl_stapling off;
	ssl_stapling_verify off;
	ssl_certificate /etc/nginx/ssl/default.crt;
	ssl_certificate_key /etc/nginx/ssl/default.key;
	deny all;
}

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

 ,

zevilz
()

Отправка писем через 465/587 порты в Exim4 на DO

Форум — Admin

Есть виртуалка на DO с Debian 10. 25 порт заблочен DO. Пытаюсь сделать отправку через 465/587 порты. Добавил порты в конфиг, создал серт через /usr/share/doc/exim4-base/examples/exim-gencert. Но не коннектится с почтовыми серверами. Пробовал отправлять на ящики яндекса и гугла

/var/log/exim4/mainlog

...
2020-06-26 12:28:05 exim 4.92 daemon started: pid=20245, -q30m, listening for SMTP on port 465 (IPv4) port 587 (IPv4)
...
2020-06-26 12:28:29 1jokUg-0004fx-0K H=mx.yandex.ru [87.250.250.89] Connection timed out
2020-06-26 12:28:34 1jokdQ-0005CC-0r H=mx.yandex.ru [213.180.204.89] Connection timed out
2020-06-26 12:28:37 1jokZG-0004wM-3T H=mx.yandex.ru [213.180.193.89] Connection timed out
2020-06-26 12:28:58 1jokep-0005Gg-CI H=mx.yandex.ru [77.88.21.89] Connection timed out
2020-06-26 12:29:00 1jokUg-0004fx-0K H=mx.yandex.ru [77.88.21.89] Connection timed out
2020-06-26 12:29:06 1jokdQ-0005CC-0r H=mx.yandex.ru [93.158.134.89] Connection timed out
2020-06-26 12:29:08 1jokZG-0004wM-3T H=mx.yandex.ru [77.88.21.89] Connection timed out
...
2020-06-26 14:30:20 1jol7N-0001of-5l H=gmail-smtp-in.l.google.com [108.177.119.27] Connection timed out
2020-06-26 14:30:52 1jol7N-0001of-5l H=alt1.gmail-smtp-in.l.google.com [142.250.96.27] Connection timed out
2020-06-26 14:31:23 1jol7N-0001of-5l H=alt2.gmail-smtp-in.l.google.com [64.233.189.27] Connection timed out
2020-06-26 14:31:55 1jol7N-0001of-5l H=alt3.gmail-smtp-in.l.google.com [74.125.28.26] Connection timed out
2020-06-26 14:32:26 1jol7N-0001of-5l H=alt4.gmail-smtp-in.l.google.com [74.125.127.26] Connection timed out
...

exim4.conf.template

update-exim4.conf.conf

netstat -anp | grep exim

tcp        0      0 127.0.0.1:587           0.0.0.0:*               LISTEN      13762/exim4         
tcp        0      0 127.0.0.1:465           0.0.0.0:*               LISTEN      13762/exim4

exim -bP | grep daemon_smtp_ports

daemon_smtp_ports = 465 : 587

Куда копать? Может еще что-то не сделал?

 , , ,

zevilz
()

Debian 10 + Nginx + TLSv1.3

Форум — Admin

Решил тут настроить TLSv1.3. Установленные версии Nginx и OpenSSL вроде как уже имеют его поддержку.

Прописал нужные версии и актуальные чиперсы:

ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers   ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;

Ребутнул nginx. Проверяю в ssllabs.com. Работают только 1.0 и 1.2. 1.3 нет и откуда то появился 1.0.

apt-cache policy nginx

nginx:
  Installed: 1.14.2-2+deb10u1
  Candidate: 1.14.2-2+deb10u1
  Version table:
 *** 1.14.2-2+deb10u1 500
        500 http://deb.debian.org/debian buster/main amd64 Packages
        500 http://security.debian.org buster/updates/main amd64 Packages
        100 /var/lib/dpkg/status
     1.14.1-1~bpo9+1 100
        100 http://mirror.hetzner.de/debian/packages stretch-backports/main amd64 Packages
     1.10.3-1+deb9u3 500
        500 http://mirror.hetzner.de/debian/packages stretch/main amd64 Packages
        500 http://mirror.hetzner.de/debian/security stretch/updates/main amd64 Packages

apt-cache policy openssl

openssl:
  Installed: 1.1.1g-1+0~20200421.17+debian10~1.gbpf6902f
  Candidate: 1.1.1g-1+0~20200421.17+debian10~1.gbpf6902f
  Version table:
 *** 1.1.1g-1+0~20200421.17+debian10~1.gbpf6902f 500
        500 https://packages.sury.org/php buster/main amd64 Packages
        100 /var/lib/dpkg/status
     1.1.1d-0+deb10u3 500
        500 http://deb.debian.org/debian buster/main amd64 Packages
        500 http://security.debian.org buster/updates/main amd64 Packages
     1.1.0l-1~deb9u1 500
        500 http://mirror.hetzner.de/debian/packages stretch/main amd64 Packages
        500 http://mirror.hetzner.de/debian/security stretch/updates/main amd64 Packages

nginx -V

nginx version: nginx/1.14.2
built with OpenSSL 1.1.1c  28 May 2019 (running with OpenSSL 1.1.1g  21 Apr 2020)
TLS SNI support enabled
configure arguments: --with-cc-opt='-g -O2 -fdebug-prefix-map=/build/nginx-tBUzFN/nginx-1.14.2=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC -Wdate-time -D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-z,relro -Wl,-z,now -fPIC' --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --modules-path=/usr/lib/nginx/modules --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_v2_module --with-http_dav_module --with-http_slice_module --with-threads --with-http_addition_module --with-http_geoip_module=dynamic --with-http_gunzip_module --with-http_gzip_static_module --with-http_image_filter_module=dynamic --with-http_sub_module --with-http_xslt_module=dynamic --with-stream=dynamic --with-stream_ssl_module --with-stream_ssl_preread_module --with-mail=dynamic --with-mail_ssl_module --add-dynamic-module=/build/nginx-tBUzFN/nginx-1.14.2/debian/modules/http-auth-pam --add-dynamic-module=/build/nginx-tBUzFN/nginx-1.14.2/debian/modules/http-dav-ext --add-dynamic-module=/build/nginx-tBUzFN/nginx-1.14.2/debian/modules/http-echo --add-dynamic-module=/build/nginx-tBUzFN/nginx-1.14.2/debian/modules/http-upstream-fair --add-dynamic-module=/build/nginx-tBUzFN/nginx-1.14.2/debian/modules/http-subs-filter

Как я понимаю, нужно пересобирать nginx с использованием OpenSSL 1.1.1g или как-то можно решить без пересборки?

 , , ,

zevilz
()

Отвал резолвинга на Debian 10

Форум — Admin

Примерно с неделю назад начал глючить резолвинг на серваке. При каждом резолвинге идет таймаут в 5 сек, а потом получает айпишник. Из ТП хостера глянули и открыли 53 входящий порт по UDP.

iptables -I INPUT -m udp -p udp --sport 53 -j ACCEPT

Только не понял, почему именно --sport, а не --dport.

Добавил в скрипт добавления правил iptables открытие 53 порта по UDP:

iptables -A INPUT -m udp -p udp --dport 53 -j ACCEPT

После ребута резолвинг в норме, но отваливается секунд через 15 после ребута. Резолвинг вообще не работает. Правило есть в iptables.

Сделал открытие 53 порта по TCP:

iptables -A INPUT -m tcp -p tcp --dport 53 -j ACCEPT

После ребута все ок, ничего не отваливается, но начинает отваливаться через несколько часов. Оба правила есть в iptables.

Лечится только ручным добавлением правила от хостера:

iptables -I INPUT -m udp -p udp --sport 53 -j ACCEPT

Но и после этого резовинг опять отваливается через несколько часов. Приходится повторно добавлять это правило. Правила из iptables никуда не исчезают, а дублируются.

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

Пробовал делать локальное кэширование dns через systemd-resolved, работает нормально, но по идее это костыль.

Куда копать?

 ,

zevilz
()

Шрифты в Debian Buster

Форум — Desktop

Может кто в курсе, как нормально настроить рендеринг шрифтов в Buster'е? В gtk приложениях все ок. Мыло в половине qt приложений (в т.ч. в телеге), во всех хромобраузерах и приложениях на электроне. Иногда в firefox всречаются сайты с мыльными шрифтами. Бывает, что на сайте везде используется один и тот же шрифт с одним и тем же размером и толщиной, но в одной части ок, а в другой мыло. Конфиг шрифтов сгенерен через qt5ct, подобрал самые оптимальные настройки.

/etc/environment

QT_QPA_PLATFORMTHEME=qt5ct

~/.config/fontconfig/fonts.conf

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
    <match target="font">
        <edit name="antialias" mode="assign">
            <bool>true</bool>
        </edit>
        <edit name="hinting" mode="assign">
            <bool>true</bool>
        </edit>
        <edit name="hintstyle" mode="assign">
            <const>hintmedium</const>
        </edit>
        <edit name="rgba" mode="assign">
            <const>rgb</const>
        </edit>
        <edit name="autohint" mode="assign">
            <bool>true</bool>
        </edit>
        <edit name="lcdfilter" mode="assign">
            <const>lcdnone</const>
        </edit>
        <edit name="dpi" mode="assign">
            <double>94</double>
        </edit>
    </match>
    <match target="font">
        <test name="weight" compare="more">
            <const>medium</const>
        </test>
        <edit name="autohint" mode="assign">
            <bool>true</bool>
        </edit>
    </match>
</fontconfig>

Пробовал добавлять

FREETYPE_PROPERTIES=truetype:interpreter-version=35
в /etc/profile, но разницы не заметил.

Еще такое ощущение, что в телеге и хромобраузерах отображение шрифтов никак не меняется при разных параметрах в fonts.conf.

моник - ips, 1920*1200, ~94ppi

 , , ,

zevilz
()

Нет некоторых иконок в трее

Форум — Desktop

Накатил debian 10, xfce и заменил xfce4-panel на tint2.

В трее нормально отображаются:

  • pnmixer
  • nm-applet
  • radiotray

не отображаются (вообще нет):

  • telegram
  • transmission
  • vlc
  • steam
  • flameshot

deadbeef там есть, но вместо иконки кликабельное пустое место.

На debian 9 все было ок с этой же конфигурацией. Тут я уже все обгуглил, пробовал ставить и удалять либы, отвечающие за отображение иконок и нихрена. Один раз иконки появились после установки пакетов gir1.2-gtk-2.0 libappindicator1 libdbusmenu-gtk4 libindicator7 и переключения между tint2 и xfce4-panel, но исчезли после ребута. И больше не появлялись. Пробовал вырубать tint2 и включать xfce4-panel. Там та же история. Еще пробовал включать/отключать Ayatana Indicator Application и Indicator Application в автозагрузке. Куда копать?

UPD1: пробовал ставить mate-panel (с пакетом поддержки индикаторов). результат тот же. WM тоже менял. проблема где-то с пакетами индикаторов или чего-то не хватает.

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

  • ayatana-indicator-application
  • ayatana-indicator-common
  • gir1.2-appindicator-0.1:amd64
  • gir1.2-appindicator3-0.1:amd64
  • gir1.2-ayatanaappindicator-0.1
  • gir1.2-ayatanaappindicator3-0.1
  • libappindicator1:amd64
  • libappindicator3-0.1-cil
  • libappindicator3-1:amd64
  • libayatana-appindicator1
  • libayatana-appindicator3-1
  • libayatana-indicator3-7:amd64
  • libayatana-indicator7:amd64
  • libindicator3-7:amd64
  • libindicator7:amd64
  • python-ayatana-appindicator
  • sni-qt:amd64
  • xfce4-indicator-plugin

Посмотрел в предыдущей версии дебиана. Там пакеты ayatana вообще не используются, но тут уже много софта тянут их.

 , , , ,

zevilz
()

Проблема с bash скриптом

Форум — Development

есть такая упрощенная функция:

myFunction()
{
        blabla || anotherFunction && return 0
        return 1
}

мне надо, чтобы при удачном выполнении функции blabla возвращался 1, а при неудачном выполнялась другая функция и возвращался 0. а у меня в любом случае возвращается 0

сделал так:

myFunction()
{
        blabla || (anotherFunction && return 0)
        return 1
}

но в этом варанте всегда возвращается 1

в обоих случаях anotherFunction выполняется при неудачном выполнении blabla, проблема с return. как сделать, чтобы было ок?

P.S.:
1. if'ами не вариант, надо именно такой конструкцией.
2. return 1 обязательно должен быть в конце функции, т.к. подобных конструкций будет много в теле функции. если все конструкции успешны, то будет возвращаться 1

 

zevilz
()

Мутное отображение на Benq BL2411PT

Форум — Desktop

Долго сидел за моником с TN матрицей (Samsung SyncMaster E1920). Приобрел Benq BL2411PT с IPS. Все круто, но не покидает ощущение мутноватости даже на максимуме резкости. Перепробовал кучу вариантов настройки. Глаза сильно напрягаются. Пробовал подключать через VGA-VGA, DVI-DVI, DVI-HDMI, DP-DP на 2х разных ПК на MacOS и нескольких дистрибутивах Linux (со свободными драйверами и проприетарными). В основном не хватает резкости на шрифтах и на графических элементах (svg иконки и прочее). При просмотре графики и фоток мутноватости нет. Это у меня такая хрень после старой TN матрицы (она у меня очень резкая была)?

Частично решил проблему такими настройками шрифтов:

antialias - true
hinting - true
hintstyle - hintfull
rgba - rgb
autohint - false
lcdfilter - lcdnone
dpi - 96

После lcdnone + hintfull почти везде шрифты стали тонкими и заметно четкими, но местами видно радугу. Если rgb отключить, то шрифты становятся корявыми. С иконками я хз, что делать.

сейчас стоит на основном ПК:
OS - Debian 9.6 + xfce
видео - msi gt1030 (проприетарные дрова - 415.23)

 ,

zevilz
()

bash: _extended_history: command not found

Форум — General

Всем привет. Под любым юзером (кроме рута) после ввода любой команды вылетает ошибка

bash: _extended_history: command not found
В .bashrc нет такого. Пробовал создавать свежего юзера и сносить .bashrc - та же фигня. Все конфиги баша дефолтные. Гуглеж ничего не дает. Не пойму, куда копать.

OS - Debian 9.6

Updated: Нашел файл /etc/profile.d/history.sh с функцией _extended_history. Как я понял, он подключается в /etc/profile, но юзеры не видят этой функции. Подключил его в /etc/bash.bashrc - вроде все ок. Но все таки из-за чего такая фигня изкоробки?

 ,

zevilz
()

Нет инета через OpenVPN

Форум — Admin

Всем привет. Патаюсь настроить OpenVPN на VPS (KVM). ПК подключается к серваку, но нет инета.

server.conf

port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
duplicate-cn
keepalive 10 120
comp-lzo
;max-clients 100
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
log         openvpn.log
verb 5

client.ovpn

client
dev tun
proto udp
remote айпишник.сервака 1194
resolv-retry infinite
nobind
user nobody
group nogroup
persist-key
persist-tun
ca ca.crt
cert client.crt
key client.key
ns-cert-type server
comp-lzo
verb 3

форвардинг пробовал делать так

/sbin/iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
/sbin/iptables -A FORWARD -s 10.8.0.0/24 -j ACCEPT
/sbin/iptables -A FORWARD -j REJECT

и так

/sbin/iptables -A FORWARD -i eth0 -o tun0 -m state --state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A FORWARD -s 10.8.0.0/24 -o eth0 -j ACCEPT

и так

/sbin/iptables -A INPUT -p udp -m state --state NEW -m udp --dport 1194 -j ACCEPT
/sbin/iptables -A FORWARD -s 10.8.0.0/24 -j ACCEPT
/sbin/iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT

и так

/sbin/iptables -A FORWARD -i tun0 -j ACCEPT
/sbin/iptables -A FORWARD -i tun0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
/sbin/iptables -A FORWARD -i eth0 -o tun0 -m state --state RELATED,ESTABLISHED -j ACCEPT

postrouting пробовал и через маскарад

/sbin/iptables -t nat -A POSTROUTING -s 10.10.10.0/24 -o eth0 -j MASQUERADE
и через snat
/sbin/iptables -t nat -A POSTROUTING -s 10.10.10.0/24 -o eth0 -j SNAT --to-source айпишник_сервака

Пробовал перед этим сбрасывать все правила iptables до

-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
но результата ноль.

На ПК правила iptables дефолтные (все разрешено).

С ПК ни домены ни IP не пингуются. Судя по tcpdump ПК шлет пакеты серваку, а сервак принимает. В логах openvpn ошибок нет.

Debian 8.10 amd64
OpenVPN 2.3.4
Кроме iptables больше никаких файрволов нет.

UPD: форвардинг в sysctl.conf включен

 , ,

zevilz
()

MariaDB нагружает все ядра

Форум — Admin

MariaDB начала грузить все ядра на полную. load average обычно держится от 2 до 5 (2 ядра), иногда нагрузка падет на несколько минут. Пробовал останавливать nginx и php-fpm, но нагрузка так и не исчезла. Рестарт марии и системы проблему не решают. В show processlist повисших процессов нет. Судя по iotop, процесс mysqld постоянно что-то пишет на диск, бинарные логи отключены, в /var/lib/mysql/ в это время ничего не пишется.

my.cnf

[client]
port                            = 3306
socket                          = /var/run/mysqld/mysqld.sock

[mysqld_safe]
socket                          = /var/run/mysqld/mysqld.sock
nice                            = 0

[mysqld]
user                            = mysql
pid-file                        = /var/run/mysqld/mysqld.pid
socket                          = /var/run/mysqld/mysqld.sock
port                            = 3306
basedir                         = /usr
datadir                         = /var/lib/mysql
tmpdir                          = /tmp
lc_messages_dir                 = /usr/share/mysql
lc_messages                     = en_US
skip-external-locking
skip-name-resolve
performance_schema
bind-address                    = 127.0.0.1
max_connections                 = 100
connect_timeout                 = 5
wait_timeout                    = 600
max_allowed_packet              = 16M
thread_cache_size               = 64
key_buffer_size                 = 512M
join_buffer_size                = 4M
sort_buffer_size                = 4M
bulk_insert_buffer_size         = 16M
tmp_table_size                  = 512M
max_heap_table_size             = 512M
table_open_cache                = 4096
query_cache_limit               = 128K
query_cache_size                = 0
log_warnings                    = 2
slow_query_log_file             = /var/log/mysql/mariadb-slow.log
long_query_time                 = 10
log_slow_verbosity              = query_plan
default_storage_engine          = InnoDB
innodb_log_file_size            = 96M
innodb_buffer_pool_size         = 768M
innodb_log_buffer_size          = 8M
innodb_file_per_table           = 1
innodb_open_files               = 400
innodb_io_capacity              = 400
innodb_flush_method             = O_DIRECT
innodb_flush_log_at_trx_commit  = 0
innodb_buffer_pool_instances    = 1

[mysqldump]
quick
quote-names
max_allowed_packet              = 16M

[isamchk]
key_buffer                      = 16M

!includedir /etc/mysql/conf.d/

Debian 9.4 amd64
MariaDB 10.2.14

Куда копать?

 , ,

zevilz
()

Как завести микрофон с bluetooth гарнитуры?

Форум — Linux-hardware

Имеется bluetooth уши Bluedio H+ со встроенным микрофоном. Подключаю через blueman как Handsfree с профилем A2DP. Звук на уши идет нормально, микрофон не фурычит. В pavucontrol в устройствах ввода гарнитуры нет, а в конфигурации можно выбрать только A2DP и HSP/HFP. Как его завести? Снос пульсы не предлагать.

Debian 9.3 amd64
Pulseaudio v10.0
Bluetooth затычка v4.0

P.S. при переключении на HSP/HFP пишет

Failed to change profile to headset_head_unit

 , ,

zevilz
()

Icinga2 403 ошибка при проверке хостов и виртуальных хостов

Форум — Admin

При проверке хостов и виртуальных хостов http плагин всегда выдает ошибку

HTTP WARNING: HTTP/1.1 403 Forbidden

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

HTTP OK: HTTP/1.1 302 Found

Проблема точно не вебсерверах на сервере и клиенте, т.к. пробовал добавлять для мониторинга разные сайты от балды. Все выдают 403 ошибку.

Прикол еще в том, что в логах nginx тоже 403 ошибка, хотя сайты доступны

"GET / HTTP/1.1" 403 162 "-" "check_http/v2.1.1 (monitoring-plugins 2.1.1)" "-"

Если напрямую проверять через /usr/lib/nagios/plugins/check_http, то 403 ошибки нет. Тут либо 302 для http либо 301 для https, т.е. все в норме.

Конфиг проверки хоста-сервера дефолтный.

Сервис http для клиентов

apply Service "http-" for (http_vhost => config in host.vars.vhosts) {
  import "generic-service"
  check_command = "http"
  vars += config
  vars.http_vhost = http_vhost
  notes = "HTTP checks for " + http_vhost
  assign where host.vars.vhosts
}
Хост-клиент
object Host "имя хоста" {
  import "generic-host"
  check_command = "hostalive"
  address = "айпишник"
  vars.client_endpoint = name
  vars.vhosts["вирт.хост1"] = {
  }
  vars.vhosts["вирт.хост2"] = {
  }  
  vars.vhosts["вирт.хост3"] = {
  }
}

В чем может быть проблема и куда копать?

ос на хосте-сервере - Debian 8.10 amd64
Icinga2 v.r2.8.0-1 с офрепа
check_http v2.1.1 (monitoring-plugins 2.1.1) из офрепа дебиана

 , ,

zevilz
()

Проблема с таблицей разделов

Форум — Linux-hardware

Есть 2 винта для линукса (Debian 9) и макоси (El Capitan). У первого все разделы в ext4 + swap. У второго несколько hfs+ и один ext4. Линух видел все разделы второго, макось - все разделы первого.

Сменил на время второй винт с макосью на другой с виндой. Потом вернул обратно. Первый винт сам перешел в read only во время работы. Загрузился с liveusb gparted. Сделал проверку/восстановление разделов первого винта. Загрузился. Все ок. Потом увидел, что не видно разделов со второго винта. Gparted не видит таблицу разделов и выкидывает ошибки

Недопустимый аргумент during seek for read on /dev/sdf
The backup GPT table is corrupt, but the primary appears OK, so that will be used.
Сама макось грузится и работает нормально, видит все разделы первого винта, но не видит раздел ext4 на втором винте.

gdisk -l /dev/sda

GPT fdisk (gdisk) version 1.0.1

Partition table scan:
  MBR: MBR only
  BSD: not present
  APM: not present
  GPT: not present


***************************************************************
Found invalid GPT and valid MBR; converting MBR to GPT format
in memory. 
***************************************************************

Disk /dev/sda: 1953525168 sectors, 931.5 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 5A261248-6C3F-4F9A-9825-AFFA29C93505
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 1953525134
Partitions will be aligned on 2048-sector boundaries
Total free space is 7533 sectors (3.7 MiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   2            2048        87889919   41.9 GiB    8300  Linux filesystem
   3        87889920        98355199   5.0 GiB     8200  Linux swap
   5       144130048      1953523711   862.8 GiB   8300  Linux filesystem
   6        98357248       144127999   21.8 GiB    8300  Linux filesystem

gdisk -l /dev/sdf

GPT fdisk (gdisk) version 1.0.1

Warning! Disk size is smaller than the main header indicates! Loading
secondary header from the last sector of the disk! You should use 'v' to
verify disk integrity, and perhaps options on the experts' menu to repair
the disk.
Caution: invalid backup GPT header, but valid main header; regenerating
backup header from main header.

Warning! One or more CRCs don't match. You should repair the disk!

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: damaged

****************************************************************************
Caution: Found protective or hybrid MBR and corrupt GPT. Using GPT, but disk
verification and recovery are STRONGLY recommended.
****************************************************************************
Disk /dev/sdf: 625140335 sectors, 298.1 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 4C9FCB2C-DF29-4B8D-9ADB-E56675569104
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 625142414
Partitions will be aligned on 8-sector boundaries
Total free space is 1051285 sectors (513.3 MiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1              40          409639   200.0 MiB   EF00  EFI System Partition
   2          409640        97058503   46.1 GiB    AF00  MacOS
   3        97058504        98328039   619.9 MiB   AB00  Recovery HD
   4        98328040       195984295   46.6 GiB    AF00  TimeMachine
   5       196246440       235308943   18.6 GiB    AF00  Yosemite
   6       235571088       442961919   98.9 GiB    AF00  HFS_Data
   7       443224064       624877567   86.6 GiB    8300  

Как пофиксить? И из-за чего произошла эта хрень?

P.S. если не ошибаюсь, на втором винте я делал MBR

 , ,

zevilz
()

Проблема с отправкой писем exim4

Форум — Admin

Всем привет. Несколько дней назад появилась проблема при отправке писем с сервера с exim4. Большинство писем перестало отправляться на яндексовские ящики с ошибкой

retry time not reached for any host
используются MX сервер яндекса. Проблема как я понял в отправителе сообщения. Яндекс проверяет наличие несуществующих ящиков. Имя ящика строится из юзернейма fpm пула и имени хоста
Received: from fpm_user by host.name with local (Exim 4.84_2)
	(envelope-from <fpm_user@host.name>)
Возможно ли как-то заменить этот емейл на тот, который передается в поле from?

конфиг exim

 , ,

zevilz
()

VSFTPD и юзеры

Форум — Admin

Всем привет! Имеются реальные юзеры, у каждого своя папка в /home. ftp работает

Конфиг:

listen=YES
listen_ipv6=NO
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
check_shell=NO
force_dot_files=YES
hide_ids=YES
pasv_enable=Yes
pasv_max_port=65535
pasv_min_port=32768
allow_writeable_chroot=YES

Но нужно сделать доступ в определенную папку /home/user/www

добавил вот такие строки в конфиг:

user_sub_token=$USER
local_root=/home/$USER/www/
guest_enable=YES
guest_username=ftp

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

и еще вопрос - возможно ли создать в vsftpd дополнительных виртуальных юзеров на конкретные папки внутри пользовательских (/home/user1/www/dir1/dir2)?

 ,

zevilz
()

Проблема с HDD и установкой Debian

Форум — Linux-install

Началось с того, что запустил систему, и минут через 5 перестали запускаться софт. В терминале было что-то про права.

Ребутнул. При загрузке запустилась проверка корня, а потом выкинуло в initramfs с предложением вручную запустить fsck. Запустил fsck -y /dev/sda2. Выдало кучу ошибок. Через пару минут получил kernel panic.

Загрузился с livecd, получил ошибку чтения секторов.

Передернул сата кабель в другой порт. При загрузке оси получаю опять ту же хрень, что выше, но livecd запустился.

Через livecd сделал fsck, но ось опять не грузится.

Запускаю установку оси, но при форматировании корня установщик виснет.

Через livecd сношу корень. После этого запускаю установщик. Создаю корень. Форматируется уже без проблем, но установка завершается при установке базовой системы с ошибкой 134 (debootstrap). Так и ничего не нагуглил по этой ошибке. Хз, что делать дальше.

 ,

zevilz
()

RSS подписка на новые темы