Задать вопрос
  • Где россиянину купить домен для иностранного бизнеса?

    Zettabyte
    @Zettabyte
    Проф. восстановление данных ▪ Вопрос? См. профиль
    До этого покупал домен на GoDaddy , но сейчас они вроде как собраются (или собрались) блокиовать домены

    Всё так. Русских забанили, причём, как говорится, with a very short notice.
    К GoDaddy в любой стране мира лучше не подходить даже близко - это редкостные упыри.

    Также избегайте namecheap и spaceship (дочерняя компания NC) - эти заблокировали Россию ещё раньше и весьма политизированы в целом.

    Cloudflare тоже не стоит - эти хотят подмять под себя весь интернет и обязывают использовать только их нейм-серверы.

    Кроме того, могут и отжать домен, и потребовать много денег. Пара примеров сходу:
    1. Шанс вернуть обратно - только через очень широкую огласку: https://news.ycombinator.com/item?id=31573854

      Everything was working well (Mainly use this domain for my personal emails) and now nothing is working no warnings, nothing.
      Hello, Your account violated our terms of service specifically fraud. The suspension is permanent and we will not be making changes on our end.

    2. Never register domains directly on CF. If you do this and they block you, I have no idea how you can get your domain back in a reasonable time frame. Luckily we only had our NS pointed to CF.
      https://robindev.substack.com/p/cloudflare-took-do...

    Ещё есть такой регистратор, как PorkBun. Он выглядит очень дружелюбным и свойским с весёленькими хрюшками, но я не раз встречал жалобы в духе тех, что выше: в случае проблем хрюшки совсем не ми-ми-мишные и в саппорте их почему-то нет.

    А дальше уже смотрите на то, чтобы компания была хоть сколько-то известной и чтобы вы могли оплатить её услуги.

    В РФ тоже опасаюсь

    Очень может быть, что и зря.
    Избегайте ру-центр (nic.ru) и reg.ru. Можете выбрать, например, WebNames - ЕМНИП, они аккредитованный регистратор .COM.
    Домен от них будет самым обычным доменом, но в случае проблем у вас будет бонус - возможность полноценно разбираться, отстаивать свои права, и невозможность регистратора вас просто проигнорировать.
    Ответ написан
    5 комментариев
  • Как происходит управление перемещением программ в пользовательском пространстве?

    @Mercury13
    Программист на «си с крестами» и не только
    Программа туда не уместится, если не предусмотрено способа разбить её пополам. Перемещение происходит, если её адрес по умолчанию чем-то не нравится: или занят, или надо утрамбовать адреса плотнее (было важно в эпоху DOS), или…

    А пока — три важных ремарки.
    1. В пользовательском пространстве у нас 2 гигабайта или больше виртуальной памяти, и она условно «пуста»: в любых адресах этой памяти можно разместить что угодно. Но если мы обратимся к отсутствующей странице, получим аварийный останов — такова уж издержка виртуальности. Сначала надо обратиться к системному менеджеру памяти, и он выдаст рабочий диапазон адресов.
    2. Программа перемещается посегментно.
    3. Есть два главных способа перемещения программы: адресация от IP и relocations.

    Адресация от IP работает, понятное дело, если исходный и целевой адрес в одном сегменте. По какому адресу ни располагай сегмент — адреса от IP менять не надо. В x86, НЯЗ, она работает в одном-единственном случае: короткие переходы (±127 байтов). Ветвления все короткие, а если нужно ветвиться далеко — ответвляется на безусловный переход, который уносит далеко-далеко.

    В x64 режим адресации от IP есть во всех обращениях к памяти, переходах и вызовах, но только на ±2Г (точно не в курсе).

    Во всех версиях x86 базовый адрес при адресации от IP — это конец текущей команды, не начало.

    Relocations — это ремарки: сегмент 1 рассчитан на базовый адрес 12. Если он другой — подкорректируй адреса 34 и 56. Независимо от метода адресации — от IP или абсолютного. Если сегмент загрузился не по штатному адресу — например, 23 — к числам по адресам 34 и 56 прибавляем разницу 11. Скажем, было 78, стало 89.

    В архитектурах с сегментной памятью (x86-16) эта самая сегментная память — также метод перемещения программы. Старый добрый COM-файл имел абсолютные адреса, но только от начала текущего сегмента — и представлял собой исключительно машинный код, загружаемый по адресу не то 128, не то 256 (вот не помню). А перемещение его по памяти сводится к установке нужных значений в сегментные регистры SS/CS/DS/ES.
    (Да, *.COM не имел вообще никакого формата, это просто куча кода и данных, которая 1:1 грузится в память.)
    Ответ написан
    4 комментария
  • Как объединить разделы одного харда, если они находятся на разных дисках?

    @apppostol
    1. Разделы одного харда, не могут находиться на разных дисках (хардах)
    2. Вы говорите про старый диск на 2 ТБ, но на скриншотах видны отдельные диски на 119, 699, 999, 153 гигов.
    3. Если перестать путать понятия, и внимательно посмотреть в скрины, то можно увидеть что раздел G, расположен на диске 3.
    А раздел H, расположен на диске 4.
    У вас под эти разделы разные диски. О каком диске на 2тб вы вели речь, загадка.
    Разделы расположенные на разных физических дисках объединить нельзя, что логично.
    Ответ написан
    3 комментария
  • Как из двух таблиц создать одну с разбивкой по датам по колонкам?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Зависит от конкретной СУБД. Может быть функция PIVOT, а если её нет - колхозить заменяющую процедуру.
    Ответ написан
    Комментировать
  • В чем проблема плагинов "раскрашивания" скобок для IDE?

    AshBlade
    @AshBlade
    Просто хочу быть счастливым
    Слишком много разноцветных побрекушек только отвлекают.
    А если тебе нужно раскрашивать скобочки, чтобы понимать где ты находишься, то их раскрашивание это только маскирование симптомов - проблема уже в архитектуре кода
    Ответ написан
    4 комментария
  • Подключение xml с помощью js к html?

    @alexalexes
    1. Нужно убедиться, что файлы script.js и data.xml находятся в том же каталоге, что и index.html.
    2. Нужен веб-сервер, так как ajax-запрос вы не сделаете на файл диска data.xml.
    На сервере должен быть определен домен (путь будет локальный), и в каталоге, с которым ассоциирован домен, должны находиться вышеупомянутые файлы.
    Обращаться к index.html необходимо через домен.
    Ответ написан
    Комментировать
  • Как вшить .mp4 файл в .exe С++?

    perfect_genius
    @perfect_genius
    Неостановимый генератор идей по улучшению мира
    Можно подождать появления в языке #embed или же использовать его из Си. Пока не все компиляторы поддерживают.
    Ответ написан
    Комментировать
  • Ошибка при асинхронном запросе MYSQL?

    Vindicar
    @Vindicar
    RTFM!
    Попробуй создавать курсор на каждый запрос, а не переиспользовать один и тот же.
    Ответ написан
    3 комментария
  • Как преобразовать UNION-запрос в простой?

    pickHabr
    @pickHabr
    Костыльных дел мастер
    Наркомания, но должно работать

    SELECT
        CASE 
            WHEN FirstField LIKE '*о*' THEN FirstField
            WHEN SecondField LIKE '*о*' THEN SecondField
        END AS Field
    FROM Table
    WHERE FirstField LIKE '*о*'
    OR SecondField LIKE '*о*';


    UPD
    Хорошо, продолжаем наркоманить :D

    С учетом комментария Vitsliputsli

    SELECT DISTINCT
        CASE 
            WHEN t1.FirstField  LIKE '*о*' THEN t1.FirstField
            WHEN t2.SecondField  LIKE '*о*' THEN t2.SecondField
        END AS Field
    
    FROM Table t1
    
    LEFT JOIN Table t2 ON 1=1
    
    WHERE t1.FirstField LIKE '*о*'
       OR t2.SecondField LIKE '*о*';


    Добавили distinct чтобы не было повторений, добавили join той же таблицы, по t1 проверяем подходит ли FirstField по t2 - SecondField. Единственный вопрос, а допустимо ли в этой задаче использовать join)

    PS разумеется запрос говна, про оптимизацию речи не идет
    Ответ написан
    1 комментарий
  • Как затягивать изменения с сервера через Git?

    sergey-kuznetsov
    @sergey-kuznetsov Куратор тега Git
    Автоматизатор
    Этот мануал в вашем случае не подходит. Там синхронизация односторонняя. Вы отправляете не на сайт, а в репозиторий на сервере. Затем хук извлекает содержимое ветки master в каталог с файлами сайта, затирая всё что там ранее мог изменить пользователь через админку.

    И репозиторий на сервере никак не меняется, при изменении файлов сайта. Поэтому аналогия с гитхабом не работает. Гитхаб вам сразу показывает содержимое репозитория, сами файлы там не лежат в какой-то отдельной папке.

    если нажать pull или fetch all, то локальная версия изменений на сервере не видит.

    А разве должен видеть? Fetch/Pull скачивает не файлы из рабочего каталога, а коммиты из репозитория. Это вообще разные сущности. Чтобы в репо попали изменения, их нужно коммитить, только так и не иначе.

    Предлагаю не создавать bare-репозиторий без рабочего каталога, а инициализировать обычный репо прямо в каталоге сайта. Обновления не проталкивать через push, а забирать через pull, потому что гит не сможет отправить push в текущую ветку. Чтобы забрать изменения файлов с сервера, их нужно предварительно коммитить разумеется, так как pull скачивает не файлы, а коммиты. Pull лучше делать на чистом от изменений рабочем каталоге, поэтому можно запускать простой скрипт
    git fetch # скачать обновления заранее, чтобы не ждать во время обновления файлов
    git stash # временно спрятать локальные правки
    git pull # применить обновления к сайту
    git stash pop # вернуть локальные правки обратно
    Это немного помогает избежать конфликтов между вашими локальными изменениями и изменениями из внешнего репозитория. Но лучше предварительно закоммитить изменения на сервере и перенести их на рабочий компьютер.

    Я таким способом в своё время успешно синхронизировал правки между компьютером разработки и основным сервером, где работал продукт. Там тоже часть файлов изменялось сервером во время работы. Скрипт отрабатывает достаточно быстро, чтобы сервер не успел заметить откат файлов при stash.
    Ответ написан
  • Какой почтовый клиент подойдёт на замену Thunderbird? Лучше бесплатный и с утилитой резервного копирования типа MozBackup. Есть такие?

    CityCat4
    @CityCat4
    Жил да был черный кот за углом...
    возможность отозвать письмо

    Нестандартная, в RFC не описана. Да и не представляю я себе как можно "отозвать" письмо, которое уже ушло получателю ;)
    календари - как личные, так и общие

    К почте отношения не имеет, это groupware

    На самом деле Вы подняли серьезную проблему. Отсутствие десктопного клиента почты - это давняя проблема винды (да и линуха, на самом деле - тоже). Ну вот нет их просто, нет - и все. Outlook, TB и крыса (если еще жива) - и все.

    Хотя, говорят, есть некое RuPost Desktop, но я все, что про него знаю - оно есть.
    Ответ написан
    6 комментариев
  • Как лучше всего хранить многострочный текст в .cmd или .bat файле?

    wisgest
    @wisgest
    Не ИТ-специалист
    Вкратце (возможно, когда-нибудь дополню ответ, если вспомню какие либо тонкости и соберусь с силами).

    Чтобы разбить команду на несколько строк надо в конце каждой строки добавить символ ^. Если после него будет идти пустая строка, то в команду будет вставлен перевод строки.

    Пример.
    echo ^
    Hello,^
    
        world!

    выведет
    Hello,
        world!

    Если использовать отложенное раскрытие переменных, то можно вывести текст, сохранённый в переменной:
    setlocal enabledelayedexpansion
    set A=^
    Hello,^
    
      world!
    echo !A!

    В тексте надо удваивать знаки процента, экранировать символом ^ специальные символы (его самого, символы перенаправления, соединения команд, закрывающую скобку (внутри составных команд), желательно, кавычку…), дважды экранировать восклицательные знаки при отложенном раскрытии переменных, если текст между ними может быть воспринят как имя переменной… В общем, упражняйтесь.

    Ещё можете посмотреть тему CMD/BAT: Возможность создания heredoc. Также, например, в теме CMD/BAT: Пакетные макросы с параметрами рассматривается создание переменных (CR и LF), содержащих символы перевода строки и возврата каретки:
    spoiler
    :: Определяет переменную ВОЗВРАТ КАРЕТКИ (используется как !CR!)
    for /f %%a in ('copy /Z "%~dpf0" nul') do set "CR=%%a"
    
    :: Определяет переменную ПЕРЕВОД СТРОКИ (используется как !LF!)
    set LF=^
    
    
    :: Две пустые строки сверху важны - не удалять!
    Ответ написан
    Комментировать
  • Как выбрать внешний SSD для долгосрочного хранения данных?

    @rPman
    Единственное достоинство для резервного копирования у ssd - это высокая скорость (если выбирать nvme) доходящяя до 5 гигабайт в секунду чтения и примерно в 8 раз медленнее запись (зависит от технологии, но те что быстрее - на порядок дороже).
    Чтобы получить такую же скорость на основе hdd, нужно городить raid0 (без резервирования) минимум из 10 дисков (скорость одного современного диска 150-300мбайт/сек, осторожно с дисками с черепичной записью, у них скорость записи падает в 10 раз по сравнению с чтением).

    Они дороже за гигабайт (особенно если выбирать серверные, надежные, с умным контроллером и какими то гарантиями), причем на порядок.

    Они могут потерять данные от простого лежания в столе (обесточенные), а если попадут еще и в жару (например забудешь в машине в солнечный день) то скорость потери данных ускоряется до считанных месяцев, вопрос не исследовал но флешки дохнут на ура (внутри они все то же самое, только контроллер тупой). Дорогие, серверные модели, могут содержать контроллер, который при наличии постоянного питания будет следить за сохранностью данных, но я не встречал информации, есть ли такой функционал в дешевых десктопных решениях.

    Поэтому, единственное, зачем имеет смысл использовать ssd для резервного копирования - это вынужденная оперативность, когда нужно максимально быстро сделать резервную копию и продолжить работу. И в этом случае ssd можно использовать как временный буфер. И да, почти тот же функционал (возможность получить замороженное состояние данных чтобы была возможность копировать их на медленный носитель) можно получить программным способом, например с помощью снапшотов файловой системы или master-slave репликацией базы данных на слабую машину, с которой уже и снимаешь копию (это нужно если сам процесс резервной копии замедляет работу на столько, что это не приемлемо).

    Поэтому не советую покупать для задач резервного копирования ssd только потому что это 'модно молодежно'
    Ответ написан
    6 комментариев
  • Как создать MJPEG поток из одного динамически изменяющегося файла JPG?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    ffmpeg -re -stream_loop -1 -i 'path/to/single_image.jpg' -c:v mjpeg -f mjpeg tcp://localhost:8080


    Не проверял, но должно работать
    Ответ написан
    Комментировать
  • Как разделить жесткий диск на 2 раздела, для установки windows и хранения данных?

    VoidVolker
    @VoidVolker Куратор тега Windows
    Dark side eye. А у нас печеньки! А у вас?
    Использовать что-то типа Ventoy.
    Ответ написан
    Комментировать
  • В css есть событие скролла страницы?

    DevMan
    @DevMan
    ховер и подобное – состояние html/документа.
    a скролл страницы – состояние окна браузера, не документа.

    css этим не управляет.
    Ответ написан
    Комментировать
  • Ошибка синтаксического анализа XML: префикс не связан c пространством имён (у поставщика RSS)?

    IvanU7n
    @IvanU7n
    nothing interesting here
    Через view-source: структура xml корректная, проверял даже валидатором.

    валидатор на помойку — xml невалиден, о чём собственно в сообщении об ошибке и указано — префикс namespace для yandex нигде не определён

    а пофиксить этот конкретный случай можно попробовать простой заменой <yandex:full-text на, например, <yandex:full-text xmlns:yandex="yandex:"
    автоматизацию такой замены можно поручить какому-нить прокси — тут можно использовать всё что угодно от nginx-а и его модуля sub до любого языка, умеющего в серверный и клиентский http
    Ответ написан
    2 комментария
  • Безопасно ли единоразово скопировать большой объём данных с жёсткого диска в память телефона?

    @rPman
    нет

    но у xiaomi дешевых очень маленькое качество внутреннего накопителя, 3-4 полных объемов записал (какраз 2-3 года использования) и скорость падает драматически

    напоминаю, ssd диски неправильно использовать для хранения данных!
    Ответ написан
    Комментировать
  • GitHub, GitLab или BitBucket?

    Kpblc
    @Kpblc
    Может для простых задач не требовательный к ресурсам gitea?
    Ответ написан
    1 комментарий
  • При загрузке торрент процессор сильно нагружается, как это решать?

    @rPman
    Подойти к клиентам и настучать по голове, чтобы в настройках торрент уменьшил количество соединений с 200 (по умолчанию в некоторых) до хотя бы 50 или лучше 10

    Отлавливать таких мониторингом соединений и ронять им скорость, когда позвонят спросить - объяснить как делать не надо.
    Ответ написан
    Комментировать