• Почему так много удаленки на Bitrix?

    @shiza88
    Второй год пытаемся поставить коробочную версию битрикса на ноги.
    Это не ЦМС - а просто ужас.
    Битрикс Диск беспощадно уничтожает файлы, При подключении по WebDav 9/10 файлов тупо становятся 8кб и на этом можно поставить крест. Перед каждым обновлением системы, можно идти и ставить свечку в церкви, по скольку пользовательские поля не чужды разработчикам, и из-за них база ложится камнем.
    Ответ написан
    Комментировать
  • Как пушить на github чтобы не вводить каждый раз логин и пароль?

    bukinion
    @bukinion
    Некороткий мануал по SSH + GitHub & BitBucket (на Win, почти тоже и на Lin)

    Вначале надо найти ключи
    $ ls -al ~/.ssh
    # Спискок файлов в директории .ssh, если они есть
    # id_rsa.pub # Нам интересны эти два брата, точнее этот публичный код (паб)
    # id_rsa # Это для сверки с пабом


    Если их нет, то будем генерить, после чего ласково попросят пароль, он должен быть сложным, в конечном итоге вводится он будет только один раз при старте сессии.
    $ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
    # Enter file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter]
    # Enter passphrase (empty for no passphrase):
    # Enter same passphrase again:


    Кстати, пароль можно и поменять:
    $ ssh-keygen -p # Введете старый, а потом новый.

    Консоль выведет следующее:
    # Your identification has been saved in /Users/you/.ssh/id_rsa.
    # Your public key has been saved in /Users/you/.ssh/id_rsa.pub.
    # The key fingerprint is:
    # 01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db your_email@example.com


    Теперь надо добавить ваши ключи в ssh-агент
    Удостоверьтесь в том, что он у вас есть — запустите
    $ ssh-agent -s

    Должен быть следующий однострочный (!) вывод, номер pid будет другим, все остальное от лукавого:
    Agent pid 59566

    Если нет, то скорее всего в терминале другая оболочка, тогда:
    $ eval $(ssh-agent -s)
    Agent pid 59566


    Вот теперь можно добавить ключи в ssh-агент
    $ ssh-add ~/.ssh/id_rsa

    Далее, добавим ключи в VCS-сервисы github и bitbucket, для этого скопируйте содержимое id_rsa.pub, и вставьте в настройках своего аккаунта на VCS (например, "SSH and GPG keys" для Github). Активируем ключи.

    для github:
    $ ssh -T git@github.com

    чуть длинней, для bitbucket, вначале надо создать файл-конфиг, ~/.ssh/config, куда добавить следующие строки:
    Host bitbucket.org
    IdentityFile ~/.ssh/id_rsa # Тут приватный ключ!


    После чего запустить следующую команду:
    $ ssh -T git@bitbucket.org

    В каждом случае, если все пройдет успешно, то вы получите следующие сообщения:
    Hi #{username}! You've successfully authenticated, but GitHub does not provide shell access.


    или
    conq: logged in as tutorials.
    You can use git or hg to connect to Bitbucket. Shell access is disabled.


    К слову, что Github, что Bitbucket выдали мне в этот раз такое:
    Thу authenticity of host 'github.com (192.30.253.113)' can't be established.
    RSA key fingerprint is 12:12:12...12.
    Are you sure want to conecting (yes/no)?


    Ответил yes, консоль что-то ответила и все работает.

    Если же вы используете алиасы для хостов, то и активация должна быть через алиас:

    $ ssh -T git@alias


    Если работаете с Sourcetree (рекомендую для винды), то есть такой момент, что программа не принимает стандартный формат этих ключей и что бы работать с программой через ssh придется из полученного ключа (приватный) сгенерировать их в другом формате понятном putty. Для этого используется программа puttygen. Которая входит в поставку Sourcetree.


    Занудно, но уже финал близок, далее нам нужно настроить ~/.bashrc, которого на винде нет, именно он будет содержать инициализационные настройки для консоли и запускать ssh-агент, который будет включать ваши ключи, запоминать сессию:
    # Note: ~/.ssh/environment should not be used, as it
    #       already has a different purpose in SSH.
    
    env=~/.ssh/agent.env
    
    # Note: Don't bother checking SSH_AGENT_PID. It's not used
    #       by SSH itself, and it might even be incorrect
    #       (for example, when using agent-forwarding over SSH).
    
    agent_is_running() {
        if [ "$SSH_AUTH_SOCK" ]; then
            # ssh-add returns:
            #   0 = agent running, has keys
            #   1 = agent running, no keys
            #   2 = agent not running
            ssh-add -l >/dev/null 2>&1 || [ $? -eq 1 ]
        else
            false
        fi
    }
    
    agent_has_keys() {
        ssh-add -l >/dev/null 2>&1
    }
    
    agent_load_env() {
        . "$env" >/dev/null
    }
    
    agent_start() {
        (umask 077; ssh-agent >"$env")
        . "$env" >/dev/null
    }
    
    if ! agent_is_running; then
        agent_load_env
    fi
    
    # if your keys are not stored in ~/.ssh/id_rsa or ~/.ssh/id_dsa, you'll need
    # to paste the proper path after ssh-add
    if ! agent_is_running; then
        agent_start
        ssh-add
    elif ! agent_has_keys; then
        ssh-add
    fi
    
    unset env


    И снова не финал, скорее всего так как вы не пользовались SSH, то ваши уже существующие локальные репо будут работать по http/https, поэтому надо сменить адреса. Адреса удаленных репозиториев проверяются командой $ git remote -v. Для смены адресов git есть специальная команда: $ set-url, ввести следующее:
    $ git remote set-url origin git@github.com:USERNAME/OTHERREPOSITORY.git


    Вернуть все на Родину можно аналогично
    Ответ написан
    1 комментарий
  • Как раз и навсегда сохранить настройки iptables?

    Inkognitoss
    @Inkognitoss Автор вопроса
    Full-stack разработчик.
    На Centos 7 предустановлен firewall-cmd. Если вы его не удалили, то использовать следует его.
    Добавление 80 порта:
    firewall-cmd --zone=public --add-port=80/tcp --permanent
    firewall-cmd --reload

    Потом вы можете проверить. Добавлен ли порт в правила:
    iptables-save | grep 80
    Удалить правило можно следующим образом
    firewall-cmd --zone=public --remove-port=80/tcp --permanent
    firewall-cmd --reload

    Проверяем:
    iptables-save | grep 80
    Должно быть пусто.

    Меня направил к этому варианту Роман Соколов
    Спасибо ему за это.
    Ответ написан
    Комментировать
  • Правильно ли монтировать /var на HDD вместо SSD чтобы он прослужил больше?

    gbg
    @gbg Куратор тега Linux
    Любые ответы на любые вопросы
    Нет, все эти советы по поводу "сбережения ресурса SSD" относятся к самым ранним поколениям накопителей. Современные накопители морально устареют гораздо раньше того момента, когда их ресурс на запись будет исчерпан.
    Ответ написан
    8 комментариев
  • Есть сейчас смысл ставить Ubuntu для изучения backend (PHP,Python,Postgre и т.д)?

    Adamos
    @Adamos
    Ни сейчас, ни раньше не было никакой нужде в Винде для работы с бэкендом.
    То, что вы к ней прилипли, отнюдь не делает ее более удачным выбором.
    Ответ написан
  • Как сделать (как пример) подобие Яндекс Дзен?

    artzolin
    @artzolin
    php, WordPress разработка сайтов artzolin.ru
    Посмотрите WordPress, он изначально создавался как платформа для ведения блога, там есть все, что вы перечислили - регистрация пользователей, теги, рубрики, хорошая расширяемость. Для начала вам этого будет достаточно
    Ответ написан
    4 комментария
  • Linux crontab Не запускает скрипт?

    Adamos
    @Adamos
    Стандартная ошибка № 1 в кроне: в нем, в отличие от терминала, нет PATH, поэтому нужно прописывать полные пути к любой запускаемой программе.
    Ответ написан
    4 комментария
  • Как пропинговать айпишники и на выводе получить только сам ip и ttl?

    fara_ib
    @fara_ib
    #!/bin/bash
    FILE=$1
    while read LINE; do
    ttlstr=$(ping -c1 -w1 $LINE | grep -o 'ttl=[0-9][0-9]*') || {
    printf "%s is Offline\n" "$LINE"
    continue;
    }
    ttl="${ttlstr#*=}"
    printf "%s is Online, ttl=%d\n" "$LINE" "$ttl"
    done < $FILE

    file addr.txt
    192.168.2.1
    8.8.8.8
    10.9.9.9
    4.4.4.4
    9.9.9.9
    1.1.1.1

    Запуск и вывод результатов
    root@ubnt:~# ./pingffile.sh addr.txt
    192.168.2.1 is Offline
    8.8.8.8 is Online, ttl=110
    10.9.9.9 is Offline
    4.4.4.4 is Offline
    9.9.9.9 is Online, ttl=59
    1.1.1.1 is Online, ttl=58
    Ответ написан
    1 комментарий
  • Ошибка sqlalchemy: sqlalchemy.exc.OperationalError: (mysql.connector.errors.OperationalError) MySQL Connection not available. Как решить?

    NeiroNx
    @NeiroNx
    Программист
    Достаточно перечитать документацию и написать код правильно:
    https://docs.sqlalchemy.org/en/13/dialects/mysql.h...

    Connection Timeouts and Disconnects
    MySQL по умолчанию автоматически закрывает подключения, если они простаивают опрделенное время(по умолчанию 8 часов). Чтобы обойти эту проблему, используйте параметр create_engine.pool_recycle ,который задает время через которое подключение обновляться если оно существует уже столько-то секунд:
    engine = create_engine('mysql+mysqldb://...', pool_recycle=3600)

    Для обнаружения других типов разрывов нужно использовать переодическую проверку связи.
    Ответ написан
    3 комментария
  • Как настроить доступ к swagger.json по доменному имени?

    deepblack
    @deepblack Куратор тега Python
    flask_restx это форк Flask-RESTPlus следовательно посмотри тут

    Swagger UI refers to localhost #223
    Ответ написан
    1 комментарий
  • Комплект мат. плата+процессор+память с Aliexpress для 1С?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Во первых 1С подразумевает оплату со счета организации как вы это провернете?
    Второе известная глючность биоса этих плат.
    Третье ну купите нормальный сервер со всеми плюшками.
    Вот пример
    https://www.proliant.ru/catalog/servers/DL/servery...

    Для вас даже с избытком, поставите E5-2680 v2 и горя знать не будете.
    Ответ написан
    9 комментариев
  • Что лучше в плане безопасности и стабильности + по ресурсу ,Ubuntu server или Cent OS??

    @rionnagel
    ковырятель
    На железо и виртуалки Centos имхо. И то только из-за бешенного срока поддержки и оперативности выхода обновлений.

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

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

    @metajiji
    Systemd пожалуйста.
    Ответ написан
    Комментировать
  • Best practice администрирования mysql?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    1. Админу - админово. Поставить, завести юзеров, раздать права, создать базы. Уметь забэкапить БД, таблицу и восстановить ее средствами phpmyadmin, например. Уметь выполнить скрипт по созданию структуры таблиц "изнутри" консоли mysql, прочитать его вывод, найти ошибки, исправить (это как правило, отсутствующая либо наоборот присутствующая БД/таблица). Все, необходимое для того, чтобы приложение работало.
    2. Изучение различий (при наличии например пакетов последних версий обеих типов). Наличие пакета под нужный дистриб, архитектуру, версию etc.
    3. Читать маны. Пробовать. Документации много, но к сожалению, нигде не сказано "Вы покрутите этот параметр и вот это изменится вот на столько" - потому что задачи у всех разные
    4. Правильным действием является прежде всего бэкап БД непосредственно перед обновлением :)
    5. Не всегда. Если обновление движка потянет за собой обновление еще чего-нибудь, есть шанс, что например часть сайта после такого обновления просто не заработает :) Поэтому - бэкап, бэкап и еще баз бэкап!
    6. По принципу необходимости для задачи всех фишек InnoDB. БД c небольшими таблицами, в которых например частичные блокировки не нужны - проще будет держать на MyISAM - он быстрее, его бэкап проще.
    Ответ написан
    1 комментарий
  • Какой дистрибутив Linux выбрать для хостинга Apache + PHP сайтов?

    kotomyava
    @kotomyava
    Системный администратор
    Зачем вам Hyper-V? Лишние накладные расходы на ровном месте.

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

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

    0xD34F
    @0xD34F
    Что за тип чарта?

    scatter

    нужно будет их соединить по алгоритму

    В настройках dataset'а укажите showLine: true. Например.

    А чтобы было "по-алгоритму" - подавайте данные в отсортированном нужным вам образом виде.
    Ответ написан
    Комментировать
  • Почему в командной строке не рекомендуется использовать права root?

    Kwisatz
    @Kwisatz
    Больше web-приложений, хороших и разных
    Дело не только в ошибках и прочих нюансах. Вы можете просто нечайно или задумавшись клацнуть enter. По этой же причине рекомендуется в SQL консоли писать блок where до update/delete
    Ответ написан
    1 комментарий
  • Проблемы с реактивностью?

    0xD34F
    @0xD34F Куратор тега Vue.js
    Какой-то наркоманский бред, иначе и не скажешь. Откуда вы взяли, что изменение items должно как-то повлиять на render.items? Серьёзно - ОТКУДА ВЫ ЭТО ВЗЯЛИ? Расскажите пожалуйста, очень интересно.

    Может, вам тут стоило сделать computed свойство?
    Ответ написан
    3 комментария