• Как вызвать подтверждение выключения убунту (команда через терминал)?

    saboteur_kiev
    @saboteur_kiev Куратор тега Ubuntu
    software engineer
    Скрипт написать, который будет спрашивать.
    Можно даже простенький пароль запрашивать, или требовать написать yes полностью.
    Ответ написан
    Комментировать
  • Как избавиться от циклического запуска ПК?

    saboteur_kiev
    @saboteur_kiev Куратор тега Windows
    software engineer
    Я бы посмотрел как подключены кнопки корпуса на материнку. Может там перепутаны пины
    Ответ написан
  • Логика работы Python?

    saboteur_kiev
    @saboteur_kiev Куратор тега Python
    software engineer
    Если там было объявление функции, то это просто объявление функции.
    А потом идет ее вызов
    Ответ написан
    3 комментария
  • Как получить список всех удаленных файлов из всех коммитов?

    saboteur_kiev
    @saboteur_kiev Куратор тега Git
    software engineer
    git log --diff-filter=D --summary | grep delete
    Ответ написан
    Комментировать
  • Как в Git в организовано хранение файлов?

    saboteur_kiev
    @saboteur_kiev Куратор тега Git
    software engineer
    Вообще-то как раз гит хранит целые копии файла.
    Для каждого файла создается его хеш, и файл-объект хранится под именем с этим кешом.

    If you again examine your objects directory, you can see that it now contains a file for that new content. This is how Git stores the content initially — as a single file per piece of content, named with the SHA-1 checksum of the content and its header. The subdirectory is named with the first 2 characters of the SHA-1, and the filename is the remaining 38 characters.


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

    Каждый коммит - содержит список файлов и хеш для содержимого.
    А ветка - это просто ссылка на конкретный коммит и немного метаданных.

    Также файлы-объекты хранятся упакованными, а периодически файлы-объекты могут быть объеденены в отдельный пакет.

    Чтобы посмотреть содержимое любого гит-объекта, юзай
    git cat-file -p ID_объекта (где айди объекта это как раз его хеш)

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

    Но, поскольку SVN - централизированная система, где все изменения хранятся только на сервере, можно менять формат хранения между версиями, так как это не нужно согласовывать со всеми пользователями репозитория.
    Например кроме диффов, в поздних SVN периодически сохраняются полные снепшоты, например каждые 1000 коммитов делается полный слепок, что ускоряет перерасчеты.
    Ответ написан
    5 комментариев
  • Какие базовые вещи из IT для backend можно изучить или хотя бы сформировать базовое понимание по ним за несколько часов в неделю?

    saboteur_kiev
    @saboteur_kiev Куратор тега IT-образование
    software engineer
    нужно не изучать а поработать.
    Написать рестфулл веб сервис с использованием ООП и чистой архитектуры, поработаьт с реляционной базой данных.
    А то, что ты "изучил" без реальной практики - ничто.
    Ответ написан
    2 комментария
  • Есть ли задача на распределенные вычисления, которую легко проверить?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    На СИ?
    Попробуйте распределенную компиляцию, например icecc, distcc
    Даже считать не нужно
    Ответ написан
    Комментировать
  • Какие есть фриланс-направления в разработке?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Для вас ответы не будут иметь смысла. Вы ищете как бы не работать и получать деньги. Как бы не учиться и получить квалификационную профессию.
    Фриланс бывает ОЧЕНЬ и очень разнообразным. Но прибыльный фриланс начинается с высокого уровня сеньорности. Когда ты можешь сделать практически все.
    К этому моменту направления могут быть какие угодно, включая ентерпрайз.
    Ответ написан
  • Можно написать скрипт удаления данных ip адресов в доменных машинах?

    saboteur_kiev
    @saboteur_kiev Куратор тега Windows
    software engineer
    Зачем бегать по машинам, если можно удаленно подключиться и перенастроить?
    Если машины в домене, то можно централизировано поковырять скриптик через политики.

    Заставлять пользователей запускать скрипты с админскими привилегиями - плохой тон. И вообще у пользователей админа быть не должно
    Ответ написан
  • Как вести базу знаний всех обновлений, исправлений и изменений, вносимых в проект?

    saboteur_kiev
    @saboteur_kiev Куратор тега Организация работы
    software engineer
    1. commit message
    2. task tracker (JIRA или аналоги)

    Если их интегрировать друг с другом, будет еще и довольно просто перемещаться по коммитам
    Ответ написан
    Комментировать
  • Есть ли open-source Bash скрипты, позволяющие собирать информацию с серверов?

    saboteur_kiev
    @saboteur_kiev Куратор тега bash
    software engineer
    В крайнем случае интересуют любые исходники подобных сервисов на иных ЯП, в которых можно прокопаться и поглядеть, как оно изнутри работает.


    Так подучите системное администрирование линукс. Вся информация о хосте берется из /proc и /dev.
    Все системные утилиты оттуда все забирают и парсят.
    Банальные команды типа df, cpuinfo, free лазят именно там
    Ответ написан
    4 комментария
  • Помощь в интернет соединении?

    saboteur_kiev
    @saboteur_kiev Куратор тега Компьютерные сети
    software engineer
    Но суть вопроса , в том что как мне определить , к какому подключается мой пк, и как если устранить? У меня оптика 100 мб

    Что именно устранить?
    Вы хотите проложить оптический кабель от вашей квартиры прямо к игровому серверу?
    Который может находиться, например, где-то в Европе? Это может потребовать миллионы а то и больше баксов.

    Чтобы посмотреть к чему подключается игра или другая программа, можно использовать, например, tcview
    https://learn.microsoft.com/en-us/sysinternals/dow...
    Ответ написан
    4 комментария
  • Алгоритм или бестпрактис для синхронизации .dotfiles?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer

    Предполагаю, что можно сделать его зашифрованным через openssl и именно его синхронизировать или даже версионировать через git (или оставить текущую схему с ансибл). При входе в систему расшифровывать его, кладя в RAM и подключать через "source .bashrc". Работать. После окончания рабочего дня расшифрованный файл надо удалить (ну или изначально при начале работы класть его в RAM).
    Но в этот файл регулярно вносятся изменения, бывает раз в день, а бывает лишь один раз в месяц.


    Не самый плохой вариант шифровать через openssl.
    Только зачем расшифровывать файл? Расшифровывайте прямо в память во время использования

    то есть в .bashrc можно например так

    dbuser=database_user
    dbpass="$(openssl enc -d -base64 -aes-128-ctr -nopad -k secret_key.txt<<<"l1k2j3kl14jjkl321h4lk124123;ljk2`13jlkj")"

    Синтаксис из головы написал, надо уточнить как указать путь к файлу с мастер секретом.
    При этом файл остается зашифрованным, но в текущей сесии переменная уже с открытым паролем.
    Либо можно сделать несколько файлов подобного типа и инклюдать их в скрипты прямо перед использованием.
    Ответ написан
    Комментировать
  • Не нажимается "+" для создания переменной?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    название сперва ввести а потом уже жать плюс?
    Ответ написан
  • Как запустить 2 команды одновременно в рамках одного скрипта?

    saboteur_kiev
    @saboteur_kiev Куратор тега Python
    software engineer
    Можно в качестве команды вызвать многострочник в шелле, или вообще отдельный шелл скрипт, где пишем, например так:

    #!/user/bin/bash
    mycommand1 &
    mycommand2 &
    wait
    echo "completed"


    В питоне я думаю можно написать однострочник:

    coproc mycommand1; coproc mycommand2;wait;echo "completed"
    Ответ написан
    Комментировать
  • Куда приложение Обо мне(mugshot) записывает данные о созданном пользователе?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    да, можно в /etc/passwd - там есть поле gecos

    username:password:userid:groupid:gecos:home-dir:shell

    которое даже имеет под-поля разделенные запятой, где можно указать дополнительную инфу:
    username:password:userid:groupid:FullName,RoomAddress,WorkPhone,HomePhone,Others:home-dir:shell

    некоторые команды умеют ее оттуда доставать, например почтовые клиенты или finger
    Ответ написан
    Комментировать
  • Cамоподписанный сертификат SSL добавить в список доверенных в браузере?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    в том-то и прикол, что
    1) если нет выхода в интернет, то как клиенты своими браузерами к вам будут заходить?
    2) если нет выхода в интернет, то где клиенты будут сами браузер брать и обновлять будут откуда?
    3) В этом и заключается суть самоподписанных сертификатов - сами мучайтесь как их ставить клиентам. Или покупайте готовые сертификаты (либо бесплатный летс енкрипт), который уже встроен во все браузеры
    Ответ написан
  • Можно ли подключить к ноутбуку монитор 27 дюймов?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    2k будет, но если вы планируете именно играться, то не факт что видяшка ноута вытянет на большом разрешении хай настройки.
    Кино смотреть или работать - без проблем потянет.
    Ответ написан
    Комментировать
  • С помощью какого контроллера(процессора или микросхемы),можно сделать диск(обычный HDD ), видимым в локальной сети ,с возможностью подключения к нему?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    чтобы диск был видимый, его нужно расшарить серверной программой.
    В винде используется расшаривание папок (в мире протокол известен под именем SAMBA), то есть самба сервер
    В *nix обычно протокол NFS, то есть NFS сервер

    То есть чтобы раздавать может подойти любая железка, на которую можно поставить и настроить SAMBA или NFS сервер.
    А вот с перформансом подсказать сложнее. Смотреть с двух устройств фильм размером 1 гб это одно, размером 16 гб 4k сетевушка должна успевать. можно погуглить кто на чем уже делал NAS и насколько их это устраивало
    Ответ написан
    3 комментария
  • Как настроить раид и кеш для приватного файлового сервера?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Готовый НАС продукт обычно включает хардварный рейд контроллер, у которого есть своя кеш память для ускорения чтения и записи.

    Настроить ssd диск, чтобы он использовался как кеш наверное технически как-то можно, но сомневаюсь, что это легко или удобно сделать.
    Опять же, зачем вам для 3-4 человек делать прям большое ускорение чтения и записи? Частично это может сделать сам рейд, с другой стороны на современных sata дисках, скорость может упереться в сеть, а не хранилище. Тем более что у вас просто приватный файловый сервер, где чтение и запись в основном линейное, в отличие от активного использования баз данных.

    Мой совет - не париться про кеширование.
    Ответ написан