• Возможно ли узнать список файлов доступных для загрузки, если страница с прямой ссылкой на их скачивание удалена, но прямая ссылка работает?

    shurshur
    @shurshur
    Сисадмин, просто сисадмин...
    В общем случае - нет, нельзя. Но кое-что сделать можно.

    Во-первых, можно посмотреть в Web Archive наличие страниц и даже самих файлов. Не всегда удаётся, но всё же.

    Во-вторых, если файлы были доступны недавно, то можно попытаться поискать их в кэше поисковика. Например, можно поискать "altered_state.zip site:fatapejungle.com"

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

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    В каком-то server_name прописан IP? Если да - убрать. У какого-то сервера прописан default_server? Если да - все запросы с непонятным/не найденным среди server{} именем server_name попадают в этот server{} по умолчанию. Перекиньте default_server на конфиг с IP, как написали в соседнем ответе - и получите желаемое в усиленном варианте.
    Ответ написан
    Комментировать
  • Как сайты обнаруживают использование VPN пользователями?

    @Drno
    они видят IP датацентра и делают вывод... вот и всё )
    Ответ написан
    4 комментария
  • Как запустить bash скрипт в crontab?

    saboteur_kiev
    @saboteur_kiev Куратор тега bash
    software engineer
    1. Пропиши в скрипте полный путь к tmux. И вообще первым делом в скриптах для крона проверяй пути. Проще везде прописать полные, или разбираться с PATH
    2. Для отладки, проще внутри самого скрипта сделать какой-то
    echo "script started" >> /root/script.log
    Ответ написан
    6 комментариев
  • Можно ли лезть в ИБ с python?

    @Drno
    Можно. Иб это не про програмирование
    Ответ написан
    Комментировать
  • Для чего на микрике мыши 3 контакта?

    Stalker_RED
    @Stalker_RED
    микрик для мыши распиновка
    bc6c5b.jpg
    Один нормально замкнутый, другой нормально разомкнутый, можно было и догадаться или прозвонить.
    Теперь ваша мышь ловит наводки на провод, либо же, даблклики были из-за излома в проводе, и перепайка микриков ничем не помогла (а может проблемы были и в микрике и проводе одновременно).
    Попробуйте отрезать несколько сантиметров провода, чаще всего он убивается в точке выхода из мыши. Жилы изламываются и начинают плохо контачить, изоляция изнашивается, вот это все.
    Ответ написан
  • Прошёл курс, как проверить свой реальный уровень знаний?

    vabka
    @vabka
    Токсичный шарпист
    Сходи на собеседование и попытайся устроиться на работу.
    Ответ написан
    7 комментариев
  • Есть ли смысл использовать rest api с http вместе с tcp или websockets?

    GavriKos
    @GavriKos
    Что быстрее - поднять готовый HTTP-сервер, или самому разруливать нагрузку, нестандартное железо/оси, дыры в безопасности и еще пачку проблем, которые уже решены? Если вы готовы конкурировать с предложеными решениями - окей, пожалуйста, делайте без них

    лучше иметь возможность применять нестандартные решения и подстраивать протокол под нужды проекта,

    Нестандартные решения плохи тем, что вы кратно множите бас-фактор. Вот написали вы какую то свою реализацию http-сервера. И умерли (вас сбил автобус). Кому поддерживать? Стандартную реализацию поддержит любой спец. И есть еще гонка технологий, за которой вы не угонитесь.

    Нет, я не говорю что нельзя использовать свои решения, писать напрямую в ТСП и вот это все. Но только в том случае, если плюсы перевесят минусы. Плюсы вы перечислили - научитесь и видеть минусы ;-)
    Ответ написан
    4 комментария
  • Что из себя представляет должность администратора баз данных?

    Melkij
    @Melkij
    PostgreSQL DBA
    являясь собственно DBA последние сколько-то там лет...

    Основная рутина:
    - внесение изменений схемы данных без даунтайма собственно приложения
    - выполнение каких-то массивных операций над данными (удалить половину данных из полутеррабайтной таблички, например)
    - исследование проблем производительности со стороны базы
    - решение в целом проблем на серверах баз, не только производительности
    - текущее сопровождение: бекапы, репликация, переезды с одних серверов на другие, настройка новых серверов, минорные обновления базы
    - major обновления базы
    - заведение пользователей и организация прав доступа
    - консультации разработчикам "как лучше сделать"
    - консультации "так это работать не будет, придётся менять"
    Ответ написан
    Комментировать
  • Как сделать так, чтобы программа закрывалась после третьего неудачного ввода?

    saboteur_kiev
    @saboteur_kiev Куратор тега bash
    software engineer
    while true; do
    вместо тру собственно надо и поставить условие, например проверка переменной, которую ты инкрементируешь
    Ответ написан
    Комментировать
  • Как сделать так, чтобы программа закрывалась после третьего неудачного ввода?

    yarkov
    @yarkov
    Помог ответ? Отметь решением.
    Переменная счётчик. При неудачной попытке увеличивать на 1. В while написать "переменная меньше 3".
    Ответ написан
    2 комментария
  • Неужто количество установленных приложений настолько сильно влияет на расход аккумулятора телефона?

    xez
    @xez
    TL Junior Roo
    Видимо, из этих 500 было одно или несколько приложений, которые работали и потребляли заряд аккумулятора.
    Ответ написан
    Комментировать
  • Как обновить ssl в docker-compose?

    akelsey
    @akelsey
    Два варианта минимум:
    • первый - сгенерить серты, скопировать в контейнер и обновить контейнер
    • второй - сгенерить серты, оставить на хостовой машине, примонтировать
    Ответ написан
  • Как мне найти самый простой урок по созданию локальных сетей?

    ValdikSS
    @ValdikSS
    Чтобы построить локальную сеть, вам не нужно профессиональное оборудование — во многих случаях мелкому бизнесу будет достаточно обычного домашнего маршрутизатора верхнего ценового сегмента из магазина, да свитч к нему, если портов не хватает. Устройства для домашнего использования уже настроены так, как нужно подавляющему большинству технически не подкованных пользователей.

    Уроки вроде «Сети для самых маленьких» нацелены на людей, которые стремятся создать собственный интернет-провайдер (или хотя бы быть значимым узлом в глобальной сети). В SoHo-сегменте вы не столкнётесь с BGP, MPLS/VPLS, вряд ли будете настраивать динамическую маршрутизацию, использовать SFP. Если ваш провайдер предоставляет вам кабель из стены, а не спрашивает: «ну чё, как и где пириться будем?», то вам просто не нужны эти знания.

    Вот прям тыкните меня, пожалуйста, лицом в санную тряпку где найти видео/текст/аудиокнигу где будет такое обучение с нуля (пропустим для начало протоколы, 7 моделей OSI и т.д. - ну можно и с ними):
    - Вот из стены торчит провод от провайдера
    - Провод втыкаем в такой маршрутизатор, в такой то порт, настраиваем так то...
    - Провода от маршрутизатора идут сюда (это для этого), эти сюда (для другого)
    -- Схема примерно такая - провод - маршрутизатор - сервак + локальная сеть...

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

    martin74ua
    @martin74ua Куратор тега Linux
    Linux administrator
    INPUT - для входящего трафика на саму машинку. Если у вас ДНС крутится в докере - то там уже отрабатывает цепочка FORWARD
    Ответ написан
    5 комментариев
  • Почему все говорят что писать ботов это сложно?

    Vindicar
    @Vindicar
    RTFM!
    А сложность начинается, как только задачи, стоящие перед ботом, перерастают уровень примера в документации видеотуториале пятилетней давности.

    Нужно сделать несколько под-команд у команды. Напишу цепочку if-elif-else, делов то. Ой, а теперь простыня кода на пять экранов, в которой фиг чего найдёшь. Потому что нет привычки структурировать код.

    Нужно, чтобы несколько команд/событий формировали цепочку (сценарий). Например, пользователь отправил тре сообщения, первое с именем, второе с возрастом, третье с адресом. Ой, а как это сделать вообще? Не зная понятия "конечный автомат" (finite state machine, FSM), очень трудно догадаться, как тут поступить.

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

    Нужно, чтобы бот выполнил длительную задачу, и написал сообщение, когда она выполнится. Не вопрос, напишу функцию, вызову её, а сразу после отправлю сообщение. Ой, а бот не отвечает! Потому что рабочий цикл asyncio занят этой длительной операцией и не может отреагировать на поступающие данные. Нужно иметь хорошее представление о том, как работает асинхронная программа.

    Нужно добавить боту графический интерфейс - админку. Ой, а работает или интерфейс, или сам бот! Потому что нужно представлять, как устроено большинство GUI-фреймворков, и как устроена асинхронное приложение. А заодно понимать многопоточность, вопросы синхронизации действий между двумя потоками, и особенности работы с asyncio в многопоточных приложениях. Потому что одним потоком тут обойтись будет очень непросто.

    Нужно хранить данные в БД. Ой, а почему у меня проблемы при записи в БД имени пользователя? А потому что погромист собирает SQL-запрос через форматирование строк. Надо было почитать доки, чтобы наткнуться на prepared statements, они же parameterized queries.

    Нужно хранить данные в БД. Вот только данные имеют связи многие-ко-многим. Я знаю! Я буду просто добавлять или удалять столбцы в таблицу! Потому что не освоены даже азы проектирования БД. Тут уже nuff said. И да, я такое видел на этом сайте.

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

    bingo347
    @bingo347
    Crazy on performance...
    readelf -h /home/usr/qt-android/mylib.so
    Ответ написан
    Комментировать
  • Из-за чего if может выполнятся, если условие неистинно?

    John_Norton
    @John_Norton Автор вопроса
    Game developer
    Я нашел ошибку: получается, что я использовал присваивание, а не знак равно

    if (a = b) {} //Тут происходило, что a присваивало значение b
    if (a == b) {}//А тут уже по условии a ровно b
    Ответ написан
    2 комментария