Задать вопрос
  • Проживёт ли долго «игровой ноутбук», если на нём не играть?

    saboteur_kiev
    @saboteur_kiev Куратор тега Железо
    software engineer
    Если ноут перегревается - это плохой производитель.
    У нормального производителя ноут не должен перегреваться.
    Он может нагреваться, может громче гудеть кулерами, но перегреваться не должен.

    Просто не закрывайте выходные отверстия, держите в комнате чистоту и возможно периодически нужно чистить ноут от пыли.
    Ответ написан
    3 комментария
  • Как открыть доступ к локальному серверу на apache tomcat(java) извне?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Что значит "открыл порт на роутере"?
    Куда вы его открыли?
    Вам нужно какой-то порт снаружи замапить на ваш ноутбук+порт.
    Поищите на роутере port forwarding, это может быть в настройке NAT и замапьте, что например порт 80 мапится на ваш 192.168.0.23:8090
    Ответ написан
  • Как правлильно запускать jar на удаленной машине через jenkins?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    3. Дженкинс выполняет java -jar app.jar

    Запускайте приложение в фоне, с nohup
    nohup java -jar app.jar &

    4. Дженкинс закрывает соединение , тем самым закрывает запуск комманды java

    Закрытие команды java, запущенной через nohup не произойдет, но вам нужно будет добавить шаг, который сможет проверить, что приложение запустилось. и шаг, который впоследствии остановит приложение.

    Например проверить лог файлы на определенные слова (ERROR, FAIL).
    Либо добавить в ваше приложение некий API, который можно дернуть, а он в ответ "application version xxx is running"
    И добавить остановку вашего приложения - через kill или через тот же API.
    Ответ написан
    1 комментарий
  • Как закрыть чужой процесс через c++/win api?

    saboteur_kiev
    @saboteur_kiev Куратор тега C++
    software engineer
    Изучить win api, написать программу.
    Вы не чувствуете, что у вас совершенно не средние вопросы, а вопросы начинающего программиста, который еще не успел научиться писать даже helloworld программы, но уже считает что он учится быть хакером?

    Хакер это не меньше, чем программист, а зачастую больше.
    Сперва научитесь просто писать программы, тогда будете понимать как они работают и как можно их взламывать.
    Последние ваши 10 вопросов вызывают в основном смех именно по причине некорректной формулировки самих вопросов.

    Пример того, что вам нужно находится по первой ссылке в гугле:
    #include <cstdio>
    #include <windows.h>
    #include <tlhelp32.h>
    
    int main( int, char *[] )
    {
        PROCESSENTRY32 entry;
        entry.dwSize = sizeof(PROCESSENTRY32);
    
        HANDLE snapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, NULL);
    
        if (Process32First(snapshot, &entry) == TRUE)
        {
            while (Process32Next(snapshot, &entry) == TRUE)
            {
                if (stricmp(entry.szExeFile, "minecraft.exe") == 0)
                {  
                    HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, entry.th32ProcessID);
    
                    // Тут можно закрыть процесс.
    
                    CloseHandle(hProcess);
                }
            }
        }
        CloseHandle(snapshot);
    
        return 0;
    }
    Ответ написан
  • Насколько полезным может оказаться изучение какого-либо языка программирования, для сист. администратора linux?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Очень полезно.

    bash - линукс админу маст хев.
    perl или python - а лучше и то и другое на уровне уверенного джуниора, дальше можно что-то одно. Никогда не знаешь с чем столкнешься.
    html/css и js - весьма полезно для визуализации и всякого такого. К этому еще знать про CGI

    Хорошо бы еще подучить C/C++, чтобы мог написать сам себе небольшую утилиту, или учитывая сплошной opensource что-то подправить. Ну и раз такая пьянка - то еще и java (тоже на уровне джуниора).
    Ответ написан
    2 комментария
  • Где находится файл .profile в git?

    saboteur_kiev
    @saboteur_kiev Куратор тега Git
    software engineer
    В домашнем каталоге. Напишите и выполните следующий скрипт:
    echo ~
    В этом каталоге и создавайте .bashrc или .profile для bash в виндовс.
    Ответ написан
    Комментировать
  • Как написать help к собственному bash скрипту?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Проверяете аргументы командной строки, например

    if [[ "$1" == "--help" ]]; then
      echo "Тут справка
    fi

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Системное администрирование
    software engineer
    Слушать процессы нельзя. Можно посмотреть список запущенных процессов.
    Чтобы "слушать процесс", вы должны его заранее запрограммировать на возможность прослушки, создать какой-нить API, но в этом случае вы должны быть скорее разработчиком этой программы.

    А так - включите средства планирования задач, и там по расписанию или по триггеру получайте информацию.
    Ответ написан
  • Как заставить компьютер на windows запускаться после нажатии на клавишу?

    saboteur_kiev
    @saboteur_kiev Куратор тега Windows
    software engineer
    Такая поддержка может быть в BIOS, если ее нет, своими средствами реализовать будет весьма сложно.
    Если же в BIOS есть, просто включаете на реакцию - есть варианты прошивки BIOS, которые позволяют реагировать на клавишу power, на любую клавишу, на ввод пароля - в общем все от BIOS
    Ответ написан
    Комментировать
  • Почему программа, требующая 1 гб оперативной памяти, работатет в двух экзмемлярах на компьютере, где присутствует всего лишь 1 гб памяти?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    1. Откуда вы взяли, что программа требует 1 гб памяти? Если из инструкции, то возможно программа на максимуме может потребовать до 1 гб памяти, а не требует этого при старте.
    2. Swap.
    Ответ написан
    5 комментариев
  • Что нужно прописать в договоре аренды, чтобы не нести ответсвенность за действия арендаторов в интернете?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Ничего не поможет.

    Если они будут нарушать правила на каком-то ресурсе и ваш IP забанят, ваш договор аренды никак не поможет.

    Если они будут нарушать закон, их вычислят по IP и придут люди в форме, вам нужно будет алиби, но опять таки в договоре аренды указывать "арендаторы обязуются не нарушать закон" как бы излишне.

    Если они нарушат пункты, согласно договору связи (например перерасход трафика, активный спам, после чего провайдер решит рассторгнуть с вами договор) - пункты в договоре аренды тоже не спасут, ибо отвечает за использование услуг связи тот, кто подписывал договор - вы же добровольно даете им доступ к вашей сети. Это если бы вас взломали, подключились к вашему интернету - тогда еще может быть где-то и помогло бы.
    Ответ написан
  • Как запустить rdp, чтобы работал NOX?

    saboteur_kiev
    @saboteur_kiev Куратор тега Системное администрирование
    software engineer
    RDP в пользовательских и серверных версиях винды работает по-разному.
    Например при попытке подключиться к рабочему столу текущего пользователя - лочит "основной" экран.

    Попробуйте поковыряться настройках RDP клиента разрешение/глубину цвета подключения?
    Ответ написан
  • Почему .if не работает?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    .IF не сравнивает строки. Вам нужно написать свою функцию для сравнения строк побайтно.
    Ответ написан
    Комментировать
  • Где посмотреть, какие операции можно применить к определенному типу данных в C++?

    saboteur_kiev
    @saboteur_kiev Куратор тега C++
    software engineer
    Это legacy наследние, которое сейчас считается устаревшим.
    Когда трава была зеленее, а С++ еще слишком молод, в чистом С вообще не было boolean, поэтому использовался int, который использовался в качестве flag переменных.
    При этом 0+1 = true, 1+1 = true, 2+1 = true (все верно)
    Но при этом 1-0=false (верно), однако 2-1=true, 3-1=true.

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

    Когда появился boolean, то для совместимости сохранили возможность инкремента boolean, но с самого начала это считалось deprecated.

    The value obtained by applying a postfix ++ is the value that the operand had before applying the operator. [Note: the value obtained is a copy of the original value ] The operand shall be a modifiable lvalue. The type of the operand shall be an arithmetic type or a pointer to a complete object type. After the result is noted, the value of the object is modified by adding 1 to it, unless the object is of type bool, in which case it is set to true. [Note: this use is deprecated, see annex D. ]


    Кстати это в 2015 году уже официально отменили:
    www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/p...
    "The ++ operator for bool was deprecated in the original 1998 C++ standard, and it is past time to formally remove it.
    Ответ написан
    Комментировать
  • Правильно ли я составил регулярки?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    ^172\.16\.3[6-9]|4[69]|239\.\d*$
    ^172\.16\.42|198|60|91|77|84|61\.\d*$

    Обратите внимание на ваши альтернативы
    172\.ab|c|de будет распарсено не как 172.ab | 172.c | 172.de, а как 172.ab | c | de
    Правильный синтаксис: 172\.(ab|c|de)
    Перепишите с использованием группировок.
    Ответ написан
    Комментировать
  • Можно ли на одном vps с одним доменом, хостить несколько несколько проектов?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    Если просто на поиграться, можно просто на домашнем компе поставить virtualbox (или wmware), и ставьте на него Линукс.
    Если у вас белый IP, то в виртуалке пробрасываете порт и можно снаружи заходить.

    Домен нужно покупать, если вы хотите чтобы ваши сервисы были доступны всем.

    Если только вам самому немного поиграться, просто в hosts файле можно прописать вымышленные домены на ваш IP и с ними работать.

    Несколько сайтов на одном домене - легко - либо в разных каталогах, либо в поддоменах.
    Ответ написан
  • Как в sed выделить часть строки?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    А зачем это нужно делать именно через SED?
    обычный CUT как раз больше подходит для разделения текста по столбцам, например так:
    grep UUID /etc/fstab | tr -s " " " "| cut -d " " -f 2


    Если через SED, то это неудобнее. Нужно будет мутить с референсами в регулярках, что-то типа /(\w+)(\w+)(\w+)/$2. Вариант без SED в данном случае надежнее и лучше.
    Ответ написан
    1 комментарий
  • Почему Telegram Desktop съедает много ресурсов Mac?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Создатели телеграмм не писали клиенты самостоятельно. Они опубликовали API и документацию к нему, затем на конкурсной основе разные программисты/команды написали свои варианты десктоп клиентов. Некоторые из них стали "официальными", но на деле это просто наиболее популярные. И автором может быть кто угодно - отсюда и возможные проблемы с десктоп-клиентами.
    На Маке есть ошибка с отображением gif файлов, которая жрет CPU, когда это исправится - пока неясно. Воркэраунды - покликать в панель с эмоциями (закрыть/открыть) - временно помогает.
    Возможно имеет смысл поотключать лишние стикеры/эмоджи.
    Ответ написан
    Комментировать
  • Как определяется конец строки при чтении бинарного файла?

    saboteur_kiev
    @saboteur_kiev Куратор тега Python
    software engineer
    При чтении бинарного файла не читайте его через readlines, читайте просто через read
    Ответ написан
    1 комментарий
  • Как загрузить картинку?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    В директорию кладется картинка.
    В базу кладется название файла и путь.

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