Задать вопрос
  • Почему в системе ubuntu20.04 время от времени на разных директориях появляется файл по имени 1, формат файла ASCII?

    gedev
    @gedev
    сисадмин-энтузиаст
    А вы случаем не запускете неправильное перенаправление потоков? Например, так:
    ~ $ echo Hello, World 2&>1
    ~ $ file 1
    1: ASCII text
    ~ $ cat 1
    Hello, World 2

    Должно быть 2>&1. Иногда остаются такие артефакты, если невнимательно набирать команды.
    Ответ написан
    3 комментария
  • Как правильно заключить ГПХ чтобы в конце заплатили? Ежемесячные выплаты?

    Jacen11
    @Jacen11
    вы думаете какой то пункт на бумажке может помешать кинуть вас? Вы новости смотрели? Государства то и те друг друга постоянно кидают несмотря на бумажки. Если заказчик честный, будут все платить как надо, если нет, в любом случае кинут и будут проблемы. Главное не вестись на обещания "вот вот деньге будут, мамой клянусь, только доделай". Тогда максимум один месяц потеряете.
    Сам я работал по достаточно бесправным договорам, все платят вовремя в полном объеме. Зато как кидали моих знакомых по трудовому я тоже видел. Все зависит от работодателя
    Ответ написан
    Комментировать
  • Люди которые делегируют работу на фрилансе, как вы выбираете исполнителя?

    an-tar
    @an-tar
    Full stack web developer
    Фото и имя конечно должны присутствовать :), но они не являются определяющими. Пол не важен совсем.
    Отзывы и рейтинг вносит основную лепту, полезно почитать отзывы (обеим сторонам), цена также важна - хороший специалист не стоит слишком дешево. Чем больше выполненных работ с хорошими отзывами, тем лучше при прочих равных этот исполнитель.
    Но и это все может не сработать - можно встретить подающего надежды ретивого новичка, с которым комфортно работать и напротив, вредного матерого фрилансера, просто не сойдетесь характерами(неверно выстроенными дистанциями/ непроработанными требованиями и кривыми ожиданиями) и что-то пойдет не так.
    Ну и имхо в описании себя исполнитель немногословен, все по существу, его профайл и регалии говорят за него сами.
    Ответ написан
    Комментировать
  • Какая разница на практике между clang и gcc?

    @MarkusD Куратор тега C++
    все время мелю чепуху :)
    Однажды я на подобный вопрос уже отвечал, правда там вопрос был о кроссплатформенности, а не о трансляторах.

    Какая разница между clang и GCC.
    Разница большая. GCC обладает обширной поддержкой наследия идиом и конструкций из языка C, которые, вынужденно или по своей воле, поддерживает в современном C++.
    VLA, тип по умолчанию, всевозможные изыски синтаксиса C. Это все GCC не глядя принимает за C++ код и позволяет трансляцию.
    GCC даже сегодня многократно нарушает стандарты C++ просто потому что выбрал стратегию поддержки экзотической функциональности C в коде C++. Так же GCC не хвастается и скоростью поддержки стандартов C++.
    В 2016 году Google полностью отказались от поддержки GCC в Android NDK из-за слишком плохой поддержки стандартов и слишком свободного следования стандартам C++. В этот момент GCC стал неконкурентоспособным относительно оставшихся двух самых широко используемых трансляторов.
    Clang же, наоборот, сегодня считается, буквально, бастионом идеального следования стандартам C++. Clang точно поддерживает стандарты во всех деталях, максимально быстро интегрирует изменения и добавления стандартов, позволяет в самых первых рядах поиграться с функциональностью из драфтов следующего стандарта C++.
    Clang обладает обширной системой статической и динамической проверки кода: богатый статический анализ, возможность подключения санитайзеров, поддержка C++ Core Guidelines, очень качественные отчеты об ошибках трансляции, хорошая скорость трансляции.
    Это все ставит clang в предпочтение перед GCC на третьих для GCC платформах.

    О полной совместимости между трансляторами.
    Полная совместимость между трансляторами есть. Иначе я бы не мог делать то, что я делаю. А дело мое заключается в создании полностью кроссплатформенного кода, который однозначно собирается на всех целевых платформах и на всех них выполняется так же однозначно.
    Полная совместимость между трансляторами заключается в строгом соответствии кода выбранному стандарту C++. Всё, точка. На этом к трансляторам требования заканчиваются.
    Только тут есть небольшая проблема. Каждый транслятор по-своему поддерживает стандарт и по-своему реализует неоговоренные стандартом механики. Каждый транслятор имеет свои ошибки трансляции. И вскрывается это все именно в процессе работы над кроссплатформенным кодом.

    Я в своей работе видел многое. Я видел как при смене GCC на clang люди хватались за голову и отказывались от последнего просто потому что он нашел горы нарушений стандарта, которые молча принимал GCC. Я видел как группа из 5 человек 3 месяца рефакторила код при переходе с MSVS2015 на MSVS2017 (т.е. просто при смене версии транслятора) просто потому что разработчики из рук вон плохо знают используемый ими стандарт C++.
    Я видел ошибки в clang, приводящие к неверной генерации кода. Я видел ошибки в GCC, не позволяющие использовать его для кроссплатформенной сборки. Я видел ошибки в MSCL, в результате которых последний явно нарушает стандарт, а команда его разработки отказывается это исправлять потому что "иди нафиг".

    И, тем не менее, конкретно у меня есть возможность писать код ровно один раз и собирать его на 5 совершенно разных целевых платформ совершенно разными трансляторами, на которых этот код работает абсолютно равнозначно. Просто потому что я знаю стандарт и то, как этот стандарт поддерживают выбранные мной трансляторы.
    Ответ написан
    3 комментария
  • Как удалить созданные ресурсы c помощью terraform через gitlab?

    akelsey
    @akelsey
    1. у пользователя gitlab-runner нет доступа к terraform.tfstate
    2. файл terraform.tfstate отсутствует
    3. что-то ещё, что мы не знаем
    Ответ написан
    Комментировать
  • Как выйти из тупика, как поднять уровень?

    AgentSmith
    @AgentSmith
    Это мой правильный ответ на твой вопрос
    я освоил весь фулстек в том числе девопс и nodejs на уровень middle+

    Весь фуллстек освоить невозможно.
    Что в твоём понимании "фуллстек"? Ты указал всего лишь nodejs, а это не фуллстек. Что ты знаешь в девопсе?
    Судя по описанию вопроса, то ты только слышал о технологиях по верхам, а это middle-
    Чтобы расширить знания - нужна только практика, чтение приходит как раз в процессе.
    Ты уж определись, ты хочешь быть разработчиком или лидом? Это разные скиллы и обязанности.
    Ответ написан
  • Как убрать сообщение "операция отменена из за ограничений действующих на этом компьютере"?

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    FineReader после сканирования документа вызывает системный браузер для того, чтобы отобразить отсканированный документ в формате .pdf
    Помимо уже сделанного, Вам нужно деинсталлировать все браузеры в системе, а также переопределить программы, с помощью которых открываются файлы определённых форматов (которые открываются браузерами).
    Ответ написан
    1 комментарий
  • Если синхронизировать данные с удаленного сервера, где правильно запускать rsync, на сервере или на клиенте?

    Adamos
    @Adamos
    Не сильно же удален ваш сервер, если они в одной подсети.
    И вообще-то backup пишется иначе.
    Я обычно запускаю бэкап с той машины, на которой он хранится.
    Во-первых, обратной связи сплошь и рядом просто не бывает (реально удаленный сервер не дотянется до локального за NAT),
    Во-вторых, это же бэкап. Вы его делаете - на случай факапа. И вот на этот крайний случай логично настраивать все так, чтобы та машина, на которой ожидаются проблемы, не имела доступа к бэкапу и не могла его испортить ни при каком сценарии.
    Ответ написан
    Комментировать
  • Как отправлять API запрос с сервера?

    jorix
    @jorix
    sysadmin
    если вас беспокоят API запросы, которые каждый пользователь или устройство посылает каждые 10 секунд, то от этого вы не избавитесь, если хотите давать пользователям актуальную информацию. Или увеличьте интервал запросов или масштабируйте ресурсы, чтобы была возможность обрабатывать такое количество запросов. А лучше правильно настроить кеш. Если он есть, то для железа отдать тысячу ответов из кеша по нагрузке эквивалентна одному рабочему запросу
    Ответ написан
    Комментировать
  • Как настроить резервное копирование серверов?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Был в десятке разных компаний. У всех - по разному.
    Бэкап это по большей части организационный вопрос. Главное что в этом топике вам никто правильно не ответит.

    Нужно спрашивать ваш бизнес о требованиях к базе. Например:

    1) Как долго бизнес согласен ждать восстановления? Это влияет например на стратегию делания инкрементальных кумулятивных и полных бэкапов для БД. Разумеется все БД - в режиме arhivelog/wal.
    2) От чего мы страхуемся? От физических повреждений. Или еще нужно предохранится от неверно поставленного обновления на базу. Тут - надо прикупить дополнительных дисков или магнитных накопителей.

    Самое главное что у вас должны быть учебные тревоги. Тоесть вы должны реально откатать бэкап+восстановление хотя-бы несколько раз. Иначе то что вы делаете будет фейком. Часто видел такое. Бэкап делает какой-то сисадмин средствами Акрониса например. Но этот сисадмин и понятия не имеет как работает Oracle и что вообще нужно предварительно подготовить чтоб бэкапные файлы не стали ненужным балластом.
    Ответ написан
    Комментировать
  • Можно ли экспортировать активность git?

    akelsey
    @akelsey
    Клонируете с gitlab:
    git clone %gitlab_url%
    Создаете репозиторий в github и меняете remote url:
    git remote set-url origin %github_url%
    git push


    Все ваши коммиты в github.
    PS
    Само собой gitlab/github аккаунты должны быть настроены.
    Ответ написан
    Комментировать
  • Как организовать изолированную среду выполнения собранного dotnet приложения?

    Кажется, что прощё сделать софт как SaaS, а хостинг на серверах заказчика сделать только для тех ситуаций, когда это заказчику действительно необходимо и за индивидуальный прайс.
    Даже в случае утечки будет сразу ясно, кто это сделал и набутылить.

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

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

    @Voland69
    ИМХО вариант только хостить у себя.
    Всякая виртуалка в шифрованном томе не выход, т.к. чтобы оно запустилось, у клиента так или иначе должен быть ключ.
    Ответ написан
    1 комментарий
  • Как лучше организовать доменную сеть и централизованную аутентификацию?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    Присутсвует ли LDAP сервер в решении Samba DC? Подходит ли Samba для организации централизованной аутентификации?

    Да, присутствует. Более того - он и в AD присутствует :) Любой контроллер домена можно открыть любым LDAP-браузером и ldapsearch работает прекрасно.
    Да, подходит.
    Samba AD DC несовместима с OpenLDAP?

    В смысле? openldap - часть самбы (в том смысле, что используется в ней, а не часть проекта). Вы совместимы со своей рукой?
    Прочитал что Samba AD DC функционирует на уровне контроллера доменов Windows 2008 R2. Что это значит с точки зрения возможного функционала?

    Что домен MS увидит в самбе контроллер домена уровня w2k8
    Например из документации гитлаба, в перечне поддерживаемых служб каталогов, Samba DC отсутствует

    Самба не является отдельной уникальной службой каталогов, это просто AD не на Windows. Причем AD, лишенная многих виндовоспецифичных фишек и поэтому довольно бесполезная. Годится только с голодухи для импортозамещения
    Единственное, известное решение кроме самбы - это IPA.
    Все, кто поддерживает AD - поддерживает и самбу (а вот причем тут openvpn - я не понял)
    Ответ написан
    4 комментария
  • Есть ли какой монитор изменения прав доступов к папке и файлам?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Чаще всего такое бывает из-зза совокупности неочевидных проблем в конфигурации логов, скриптов запуска логгируемуго софта и сиетемы ротации или бэкапа логов.
    Например, описанная вами ситуация может быть порождена следующим стечением ошибок и обстоятельств.
    Бывает, что на бэкенде в один и тот же лог-файл пишут несколько скриптов. Это уже конкуренный доступ к файлам и не есть хорошо. Такое случается, когда по образцу одной проги с логгированием потом делают другую, а конфигурация логгирования не предусматривает такую ситуацию. Вот когда два таких скрипта работают и логи в конфликтный файл пишутся не часто, могут случиться такие проблемы.
    Ещё один из таких скриптов может запускаться под рутовыми правами, а другой после него под пользовательскими. Если запущщеный от рута скрипт вызвал ротацию лог-файла, то новый файл мог создаться уже с рутовыми правами по умолчанию, а это значит, что другой скрипт (или этот же, но запущеный от обычного пользователя) уже не сможет в него писать.

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

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

    Важно. чтобы в каждый отдельный лог-файл писал один и только один процесс. Он же занимался его ротацией (если, к примеру, вы логгируете стандартной питонячьей либой). Ещё хорошая идея не засталять софт писать логи в файлы, пусть пишет логи в stderr и/или stdout, а оттуда вы их на уровне системы перенаправите куда положено и отфильтруете как надо. если необходимо.

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

    UPD:
    Почему-то не обратил внимания, что речь о логах mysql. Но всё по-прежнему: конфиг логгирования и ротации, распсиание и механизм ротации и бэкапа, поиск по конфигам фрагментов этого пути на предмет аномалий и повторов.
    Ответ написан
    Комментировать
  • Какую базу выбрать для bigdata?

    @alexdora Автор вопроса
    Топ-менеджер
    Я прошу прощения что не-про-лайкал, но за темой следил. Утонули в работе. Хочу ответить к чему все пришло, кому будет интересно

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

    Clickhouse – не зашел, кажется что он слишком простой, но он требует инженерить. Это все не так просто оказалось как 1,2,3.
    Да, быстро читает
    Да, чуть сэкономил место на тестовом стенде (2%)
    Но: кучу геморроя с настройкой и потребуется вложить время в переделку всего (ч.к деньги). А у нас никто им не владеет

    Kafka Немного не под эту задачу, но взяли её в оборот на будущие доработки внутри микросервисов

    Далее отвлеклись, а когда вернулись к вопросу с холодной головой оказалось что купить Б/У сервера с новыми NVME дисками (нет перезаписи - нет проблем с ресурсом) выгоднее, чем тратить время на оптимизацию. Провели работу над соединениями, основному софту mysql теперь нужно только чтоб сделать старт. Далее база не нужна, а данные читают как читались большими выборками
    Поработали над буфером, добавили mysql серверов и вот нагрузка уже не такая печальная.
    Ответ написан
    Комментировать
  • Как добавить в автозагрузку программу работающую фоном?

    ky0
    @ky0 Куратор тега Системное администрирование
    Миллиардер, филантроп, патологический лгун
    Нужно перечитывать конфиг squid каждую секунду или быстрее

    Вы явно что-то делаете не так.
    Ответ написан
    Комментировать
  • Как почистить Git-репозиторий?

    sergey-kuznetsov
    @sergey-kuznetsov Куратор тега Git
    Автоматизатор
    Вот несколько фактов, которые помогут понять как работает Git.
    • Файл .gitignore действует только на ещё не отслеживаемые файлы.
    • Файл .gitignore предназначен для описания того, что мы не хотим СЛУЧАЙНО добавить в репозиторий. Либо не хотим случайно удалить переключив ветку.
    • Мы можем ПРИНУДИТЕЛЬНО добавить в репозиторий ЛЮБОЙ файл, даже если он описан в .gitignore.
    • Добавление файла в .gitignore не удалит сам файл из репозитория. Если файл УЖЕ в репозитории, то он продолжит отслеживаться, независимо от наличия .gitignore.
    • Если больше не хотим отслеживать какой-то файл, то просто удаляем его из репозитория. Ключ --cached позволит оставить файл в рабочем каталоге текущего репозитория если он нужен.
    git rm --cached -- '.DS_Store'
    git commit

    Но последний рецепт сработает только на одном компьютере. Если коллеги переключатся на этот коммит, то файл удалится у них из рабочего каталога.
    Ответ написан
    4 комментария
  • Делегаты, зачем?

    MSerhio
    @MSerhio
    Вхожу в IT
    Делегат позволяет ослабить связность кода, а рассматривать их стоит вместе с событиями.
    Я объясню на примере игростроя.
    Популярный в сети пример: во врага попала пуля. Должно случиться сразу много вещей - нужно снять здоровье врага, выяснить, не погиб ли он, проиграть анимацию, уничтожить пулю, начислить очки игроку и еще что-то.
    Если мы будем всё это вызывать напрямую, то быстро запутаемся и ошибемся. А когда будем переделывать, сломаем всё окончательно.
    Вот тут нас выручат делегаты и события. Мы определим событие, которое срабатывает (вызывает свой делегат) в момент попадания пули. И соответственно, определим делегат для этого события.
    Теперь каждый метод, которому это событие интересно, может подписаться на его делегат (внести себя в список вызываемых делегатом методов - их может быть больше одного).
    И теперь мы можем переделывать что угодно. Главное, не забывать подписываться и отписываться.
    Делегат, это как автолавка в деревне: приезжает и сигналит. Кому надо - выходит. При этом ни автолавке ни покупателям не интересно, что происходит у каждой из сторон в отдельности.
    Ответ написан
    Комментировать
  • Как правильно набирать заказчиков на фрилансе?

    Привет, чтобы найти клиентов - нужно разместить информацию по своим услугам.
    Это можно сделать с помощью разных способов, навскидку:

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

    2) сделать свой сайт (тот же одностраничник), дать рекламу.
    Очень рекомендую.
    Плюсы - отходите от конкуренции, меньше тратите времени на убалтывание клиента, можно ставить выше расценки и т.п. Кстати, правильно настроенная реклама жрет не очень много денег. Но всё же жрет, и это минус.

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

    4) сделать аккаунты в соцсетях, какие ещё работают: типа инсты, ютуб, вк и т.п. И туда залить ваши услуги. Можно также получать клиентов бесплатно, но придется готовить контент для соцсетей, там свои стандарты, просто статьи не прокатят.

    5) разместить посты на профильных форумах или ресурсах типа хабр или vс или яндекс дзен и т.п., если есть что рассказать интересное.

    6) сделать спамную емейл рассылку по базе целевых клиентов. Не солидно, но иногда может сработать очень хорошо за минимальные деньги.

    Ну и где ещё подскажет фантазия.
    Общий смысл такой: где присутствует ваша целевая аудитория, - там вы с услугой. И будут заявки.
    Ответ написан
    Комментировать