Задать вопрос
  • Почему mysql не подхватывает содержимое docker-entrypoint-initdb.d?

    xarek1986
    @xarek1986 Автор вопроса
    Инженер
    Vanookay Процесс читающий из каталога docker-entrypoint-initdb.d работает от пользователя mysql, и если на подключаемом каталоге (./mysql) стоят права не дающие чтения для остальных, то, логично, файлы не читаются. В логах при этом ничего нет, потому что для пользователя mysql этот каталог просто пуст.
    В общем рецепт прост, перед тем как прокидывать каталог в контейнер, зделай на него chmod o+rX
    Написано только что
    Ответ написан
    Комментировать
  • Можно ли задать права пользователю только на таблицы, если база ещё не создана?

    xarek1986
    @xarek1986 Автор вопроса
    Инженер
    да, я знаю, что можно задать права на бажу db1 до того как она создана.
    А если я ещё не знаю как будет называться база, я знаю что можно задать права для шаблона, например gratn all on `temp%`.* .... выдаст права на все базы начинающиеся с temp, но вот конструкция gratn all on `%`.* .... не работает, точнее работает но не так как надо
    Ответ написан
    Комментировать
  • Что я делаю не так с Ansible?

    xarek1986
    @xarek1986
    Инженер
    проверь права на каталог ~/.ssh и на файлы внутри него. Сам с этим переодически сталкиваюсь, самый простой вариант сделать
    chmod -R u=rwX,g=,o= ~/.ssh
    на обоих серверах
    Ответ написан
    1 комментарий
  • Как достать файлы из одного из brick glusterfs?

    xarek1986
    @xarek1986 Автор вопроса
    Инженер
    Вошло уже в привычку самому отвечать на свои же вопросы.
    Не знаю на сколько это "грязный хак", но вот что я сделал:
    1. переименовываем каталог .glusterfs
    2. меняем аттрибуты каталога brick setfattr -x trusted.glusterfs.volume-id /brick_path; setfattr -x trusted.gfid /brick_path
    3. Создаём новый volume с этим бриком
    4. ОБЯЗАТЕЛЬНО выставляем все флаги, какие были указаны у умершего volume (например у меня были включеныfeatures.shard: on
    features.shard-block-size: 512MB
    которые я не учёл, и не мог понять, почему репа пустая)
    5. Стартуем volume
    6. Останавливаем volume
    7. Останавливаем демон gluster (не уверен в необходимости)
    8. Перемещаем старый .glusterfs (который мы переименовывали в пункте 1) обратно
    9. Стартуем демона, volume и радуемся жизни
    Ответ написан
    Комментировать
  • NGINX. Как отдавать статику через proxy_pass?

    xarek1986
    @xarek1986 Автор вопроса
    Инженер
    Сам спросил, сам отвечу. Необходимо NGINX сказать, что при нахождении /i дальше не спускаться. Делается это методом
    location ^~ /i{
        proxy_pass ......
    }

    Читайте маны господа
    Ответ написан
    Комментировать
  • Как завернуть трафик VPN?

    xarek1986
    @xarek1986
    Инженер
    Весь трафик с 192.168.1.0/24 будет завернуть проблематично, как минимум, нужно, что бы был маршрут до впн сервера (к которому конектится tun1)
    А в целом всё довольно просто:
    Если есть iptables, то вначале необходимо разрешить FORWARD между интерфейсами
    iptables -A FORWARD -i tun0 -o tun1 -j ACCEPT
    iptables -A FORWARD -i tun1 -o tun0 -j ACCEPT

    так же нужно разрешить сети 192.168.1.0/24 ходить в tun1
    iptables -A FORWARD -s 192.168.1.0/24 -o tun1
    iptables -A FORWARD -i tun1 -d 192.168.1.0/24

    После этого простой роутинг:
    всем клиентам за tun0 нужно прописать route add default gw 10.10.10.1 (ip адрес tun0), либо пушить им этот роут средствами VPN сервера (push "redirect-gateway" в OpenVPN)
    Для сервера 192.168.1.2 нужно указать default gw тот, который за tun1, и дополнительно прописать роут до сервера, где стоит внешний VPN сервер
    Как-то так, возможно в чём-то ошибся, но у меня примерно такая же конфигурация работает
    Ответ написан
    Комментировать
  • LetsEncrypt - certbot обращается к certbot_apache, почему?

    xarek1986
    @xarek1986
    Инженер
    Салют, я конечно могу быть не прав, но в официальном мануале https://certbot.eff.org/docs/using.html чётко написано
    nginx: Very experimental and not included in certbot-auto.
    Ответ написан
  • Как вы удалённо редактируете файлы на серверах?

    xarek1986
    @xarek1986 Автор вопроса
    Инженер
    В общем, я понял, что лучшим вариантом, будет подготовить конфиг "по проще", но с нужными мне фичами, и тиражировать его на сервера
    Ответ написан
    Комментировать
  • Почему Bacula (Bareos) для каждого типа бэкапа создаёт полный бэкап?

    xarek1986
    @xarek1986
    Инженер
    В общем не знаю, нашли ли вы решение, я нашёл.
    Суть в том, что каждая из Job - самостоятельная единица, которая создаёт для себя отдельный счётчик в каталоге. То есть
    Job {
      Name = "Backup Desig DIFF"
    ...
    }

    Ничего не знает, о том, что сделал
    Job {
      Name = "Backup Desig FULL"
    ...
    }

    Даже, не смотря на то, что они используют общий Volume. Суть работы бекапа заключается в том, что мы должны для одного Job описать как и куда он будет делать бекапы разных типов. Вот к чему пришёл я
    Job {
      Name = BareosConfBackup
      Client = gazer-fd
      Type = Backup
      Level = Incremental
      Pool = IncBareBup
      Full Backup Pool = FullBareBup                 # Раз
      Differential Backup Pool = DiffBareBup     # Два
      Incremental Backup Pool = IncBareBup     # Три
      File Set = BConfig
      Schedule = WeeklyCycle
      Priority = 10
      Write Bootstrap = "/var/lib/bareos/%c.bsr"
      Messages = Standard
    }
    
    Schedule {
      Name = WeeklyCycle
      Run = Level = Full 1st sun at 23:00                        # Раз
      Run = Level = Differential 2nd-5th sun at 23:00     # Два
      Run = Level = Incremental mon-sat at 23:00          # Три
    }

    Получаем, что это задание, каждый первый понедельник каждого месяца делает полный бекап, со второго по пятый понедельник делает Diff, и каждую неделю с понедельника по субботу делает Incr
    А что бы запустить это задание в консоли с определённым уровнем, нужно запускать его так
    run job=XXX level=Full #{Differential, Incremental  и тд}

    вот как-то так.
    Ответ написан
    2 комментария
  • Как заблокировать один дисплей из двух?

    xarek1986
    @xarek1986
    Инженер
    Возможно я не совсем прав, пусть меня поправят, но все мониторы у вас обрабатываются одним X сервером, а локеры, блокируют как раз X. Как альтернатива, можно запускать 3 самостоятельных X на три разных дисплея, и пошаманить, с переносом приложений из одного X в другой. Ну или использовать, что-то вроде Synergy
    Ответ написан
  • VolStatus Error и как с этим бороться?

    xarek1986
    @xarek1986 Автор вопроса
    Инженер
    Сам спросил, сам отвечу
    *update volume=Full-0001 
    Parameters to modify:
         1: Volume Status
         2: Volume Retention Period
         3: Volume Use Duration
         4: Maximum Volume Jobs
         5: Maximum Volume Files
         6: Maximum Volume Bytes
         7: Recycle Flag
         8: Slot
         9: InChanger Flag
        10: Volume Files
        11: Pool
        12: Volume from Pool
        13: All Volumes from Pool
        14: All Volumes from all Pools
        15: Enabled
        16: RecyclePool
        17: Action On Purge
        18: Done
    Select parameter to modify (1-18): 1
    Updating Volume "gazer-fd_Full_TestPool.2016-05-25-19-08"
    Current Volume status is: Used
    Possible Values are:
         1: Append
         2: Archive
         3: Disabled
         4: Full
         5: Used
         6: Cleaning
         7: Read-Only
    Choose new Volume Status (1-7): 5
    Ответ написан
    Комментировать
  • Как перенести VM в ovirt?

    xarek1986
    @xarek1986
    Инженер
    оох, зря вы с ovirt связались, я промучился 2 недели, и в конце концов отказался от этой затеи.
    По существу: из веб морды возможности импорта ISO нет. Вам необходимо создать хранилище для ISO, и либо руками туда положить нужные файлы, либо с помощью engine-iso-uploader (или что-то вроде этого).
    В целом, сам ovirt даёт мало возможностей для управление через веб, чаще всего ни предлагают делать всё через REST API
    https://access.redhat.com/documentation/en-US/Red_...
    www.ovirt.org/develop/developer-guide/engine/engin...
    Ответ написан
  • Как дать доступ в интернет из другой подсети?

    xarek1986
    @xarek1986 Автор вопроса
    Инженер
    Проблема оказалась в FirewallD. В виду специфики его работы (или моей криворукости) доступ к внешнему интерфейсу был разрешён только из сети 172.16.18.0/24 о чём свидетействовало правило
    -A FORWARD -d 172.16.18.0/24 -i eth0 -o eth1 -j ACCEPT
    -A FORWARD -s 172.16.18.0/24 -i eth1 -o eth0 -j ACCEPT


    При этом, если попробовать добавить direct-rule
    ipv4 filter FORWARD 0 -i eth0 -o eth1 -d 172.16.4.0/24 -j ACCEPT
    ipv4 filter FORWARD 0 -i eth1 -o eth0 -s 172.16.4.0/24 -j ACCEPT

    то они не отрабатывали (почему-то).
    Заработало только после ручного вмешательства, что не очень хорошо, хотя и пока не критично
    iptables -I FORWARD 1 -d 172.16.4.0/24 -i eth0 -o eth1 -j ACCEPT
    iptables -I FORWARD 1 -s 172.16.4.0/24 -o eth0 -i eth1 -j ACCEPT

    В общем, благодаря неоценимому вкладу Александр Карабанов нам удалось понять в чём проблемма.
    для себя я написал скрипт, где прописываются нужные роуты и добавляются вышеописаные правила
    Ответ написан
    Комментировать
  • Как дать доступ в интернет через промежуточную сеть?

    xarek1986
    @xarek1986 Автор вопроса
    Инженер
    Проблема оказалась в FirewallD. В виду специфики его работы (или моей криворукости) доступ к внешнему интерфейсу был разрешён только из сети 172.16.18.0/24 о чём свидетействовало правило
    -A FORWARD -d 172.16.18.0/24 -i eth0 -o eth1 -j ACCEPT
    -A FORWARD -s 172.16.18.0/24 -i eth1 -o eth0 -j ACCEPT


    При этом, если попробовать добавить direct-rule
    ipv4 filter FORWARD 0 -i eth0 -o eth1 -d 172.16.4.0/24 -j ACCEPT
    ipv4 filter FORWARD 0 -i eth1 -o eth0 -s 172.16.4.0/24 -j ACCEPT

    то они не отрабатывали (почему-то).
    Заработало только после ручного вмешательства, что не очень хорошо, хотя и пока не критично
    iptables -I FORWARD 1 -d 172.16.4.0/24 -i eth0 -o eth1 -j ACCEPT
    iptables -I FORWARD 1 -s 172.16.4.0/24 -o eth0 -i eth1 -j ACCEPT

    В общем, благодаря неоценимому вкладу Александр Карабанов нам удалось понять в чём проблемма.
    для себя я написал скрипт, где прописываются нужные роуты и добавляются вышеописаные правила
    Ответ написан
    Комментировать
  • Как организовать прямой доступ между двумя интерфейсами?

    xarek1986
    @xarek1986 Автор вопроса
    Инженер
    Господа, всё оказалось куда прозаичней. Оказалось, что у моего "провайдера" светится приватная сеть 172.16.0.0/24, в связи с чем были конфликты ip адресов, которые я не заприметил в виду глубокой невнимательности. после смены подсети всё заработало
    Ответ написан
    Комментировать
  • Долгий connect к Oracle 11g из виртуальной машины KVM (proxmox4). Почему?

    xarek1986
    @xarek1986 Автор вопроса
    Инженер
    после долгих мучений, выяснилось, что проблема в процессоре, который не поддерживает ряд инструкций, необходимых для полноценной виртуализации.
    Ответ написан
    Комментировать
  • На чём лучше поднять почтовый сервер для малого предприятия?

    xarek1986
    @xarek1986 Автор вопроса
    Инженер
    просто я хотел засунуть почтовиый сервер в докер, что бы потом его было проще перенести на другой сервер, да и проблем с обновлением безопасности не было, а то до этого у нас стоял сервер на RHEL 5 к которому никто не прикасался уже лет 5, и когда встал вопрос с обнавлением (а там так же крутился оракл несколько сайтов, плюс оракловый веб сервер) и в общем обновление exima привела к массовой поломке всего и вся. В связи с этим я захотел развести все сервисы по докам: апач в своём доке, почта в своём
    Ответ написан
  • Как избавиться от постоянных попыток коннекта к exim?

    xarek1986
    @xarek1986 Автор вопроса
    Инженер
    благодарю за подсказки, в конечном итоге уговорил начхальство на передлку всей инфраструктуры, благо переделывать мало что, а то на серваке стоит RHEL 5, а он уж очень старый
    Ответ написан
    Комментировать
  • Почему количество слотов RAM физически и "по программе" не совпадает?

    xarek1986
    @xarek1986
    Инженер
    потому, что второй слот может быть просто не распаян, так бывает на некоторых "компактных ноутбуках". Ещё в некоторых моделях оперативку распаивают прям на мать, но как видно это не ваш случай
    Ответ написан
    Комментировать