• При попытке чтения каталога ls /root процесс зависает, как починить?

    shurshur
    @shurshur
    Сисадмин, просто сисадмин...
    По умолчанию ls не только читает каталог, но и делает stat на каждый файл, чтобы цветом показать их тип и executable bit. Это очень замедляет процесс.

    Обойти вызовом ls без параметров, заданных в alias ls:

    $ alias ls
    alias ls='ls --color=auto'
    $ ls # вызывает алиас
    $ 'ls' # вызывает обычный ls без параметров


    Но лучше не выводить в консоль (особенно если сервер открыт по сети) - это будет очень долго - а перенаправить в файл и потом просмотреть.

    'ls' /root > /tmp/list_of_files
    less /tmp/list_of_files


    Удалить файлы проще всего с помощью find:

    find /root -name 'index.html.*' -delete
    Ответ написан
    2 комментария
  • Какова правда в работе и обучении будущего ИБшника?

    @nApoBo3
    Да, ИБ, это тоже самое, что и безопасность труда или пожарная безопасность и т.д., это вообще не про хакеров и подобную романтику которую показывают в кино. Это бумажки, тонным бумажек, куча ведомственный регламентов, распоряжений и инструкций весьма сомнительного качества, часто противоречивых, на основании которых вам нужно генерировать свои тонны бумажек и журналов, собирать подписи об ознакомлении и т.д.

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

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

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Это делается не через выражение триггера, а через Actions - алармы про триггеры определённой severity (или по каким-то другим параметрам отфильтрованые) отправлять, например, не сразу, а через определённый промежуток времени.
    Ответ написан
    Комментировать
  • На сколько плохо, если в винде будут установлены драйвера на 10 разных пк?

    ProgrammerForever
    @ProgrammerForever
    Учитель, автоэлектрик, программист, музыкант
    Даже XP могла запуститься с другого железа
    7ка уже почти всегда без проблем
    с 10й, думаю, проблем ещё меньше

    В любом случае: практика - критерий истины. Если будет выпадать в синий экран или не загружаться - то проблема явно есть. Если работает - то и не стоит переживать за это.
    Ответ написан
    Комментировать
  • Корректна ли будет такая организация Docker-контейнеров?

    ky0
    @ky0 Куратор тега Nginx
    Миллиардер, филантроп, патологический лгун
    СУБД в продакшене лучше не в докер. Ну или хотя бы реплику настройте с автофейловером.
    Ответ написан
    3 комментария
  • Можно ли подключиться через pgAdmin к openserver?

    @gsaw
    Вы видимо не совсем понимаете как работает клиент серверная архитектура. База данных это сервер, а phpAdmin это клиент. Обычно к серверу базы данных подключаются по сети. Тоесть теоретически можно подключиться и со своего компьютера к базе данных на сервере. Если вы знаете как. Но обычно, серевер базы данных конфигурируется так, что вы только можете подключится клиентом, который работает на том же хосте. Судя по вашему описанию, вы не сами его настраивали и лучше пока вам это самому не делать.

    Самое простое в вашем случае и дальше использовать phppgAdmin предоставляемым хостером.

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


    Вы учитесь работать с базой данных не мышкой, а набирая команды. Разберитесь, что такое DDL и DML и тогда вам откроется чудесный мир баз данных. Где вы сможете делать что угодно в каком угодно клиенте. Если нет каких то типов данных, то наверняка есть их аналоги, которые просто по другому зовутся.

    primary и foreign keys это вообще стандарт и есть в любой базе данных. Для автоинкримента вам возможно понадобится sequence.

    https://info-comp.ru/what-is-ddl-dml-dcl-tcl
    https://postgrespro.ru/docs/postgrespro/10/datatype
    mech.math.msu.su/~shvetz/54/inf/databases/chSerial...
    Ответ написан
    1 комментарий
  • Как ограничить полномочия скрипту на запись (легковесный chroot)?

    @rPman
    запускать скрипт под специально созданным пользователем backup и выдать права на каталог с бакапами только там где это допустимо
    Ответ написан
    Комментировать
  • Как собрать сервер на устаревшем ПО?

    paran0id
    @paran0id Куратор тега Linux
    Умный, но ленивый
    ОС и веб-сервер не роляют - в принципе подойдут любые. Софтину можно контейнертзировать в докере, базу тоже - получатся изолированные контейнеры со старьем внутри современной ОС.

    Еще можно выкачать образ старой версии ОС и установиться с него, потом примонтировать этот образ в качестве репозитория старых пакетов.

    Можно проделать это же в виртуалке, абстрагировавшись от железа.
    Ответ написан
    Комментировать
  • Как скомпилировать c++ код через терминал на MacOS?

    wataru
    @wataru
    Разработчик на С++, экс-олимпиадник.
    И в чем проблема? Ставите command line developers tools, открываете терминал, запускаете g++, передаете параметром ваш исходник и ключи всякие.
    Ответ написан
    4 комментария
  • Как в Telegram-боте сделать жирный текст и картинку под ссылкой?

    @Meoniz
    ничего не умею, но могу сделать что угодно
    Картинка с превью текста - это ссылка на статью. Она появляется автоматически

    Чтобы делать текст разными стилями, нужно прописать специальный атрибут parse_mode=HTML

    def jordan(bot, update):
        chat_id = update.message.chat.id
        with open('JordanPeterson.jpg', 'rb') as jordan_picture:
            caption = "<a href='https://twitter.com/jordanbpeterson'>Jordan B. Peterson</a>"
            bot.send_photo(
                chat_id, 
                photo=jordan_picture, 
                caption=caption,
                parse_mode=ParseMode.HTML
            )


    Также этот parse_mode можно прописать при импорте токена бота. Чтобы сделать текст жирным, нужно написать так:

    msg = <b>Jordan B. Peterson</b>
    Ответ написан
    3 комментария
  • Как в bash скрипте определить является ли файл видео и получить его разрешение?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    как часть ffmpeg проекта, есть ffprobe, им и пользуйтесь.

    ffmpeg.org/ffprobe.html

    Получить можно в разном формате. И обычный текст(ini) или csv,xml,json

    Примеры:
    $ ffprobe -v error -select_streams v:0 -show_entries stream=width,height -of default=nw=1 "My video file.mpg" 
    width=704
    height=576


    $ ffprobe -v error -select_streams v:0 -show_entries stream=width,height -of csv=p=0 "another vide file.mkv"
    1280,720


    $ ffprobe -v error -select_streams v:0 -show_entries stream=width,height -of json "one_more video.mkv"
    {
        "programs": [
    
        ],
        "streams": [
            {
                "width": 1152,
                "height": 480
            }
        ]
    }
    Ответ написан
    Комментировать
  • Почему apache не может создавать папки/файлы?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Вы показываете конфиги, а надо показывать каталог, в котором у вас не создаётся - кто его владелец, какие разрешения, кто в каких группах и всё такое.
    Ответ написан
    Комментировать
  • Как расставить точки над i, по вопросу использованию Bash и Python для DevOps?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Вы не годитесь в девопсы.
    Это очень частый ответ на этот очень частый вопрос.

    Девопс - это человек, который не задаёт вопросы. Он на них отвечает. Самостоятельность является для девопса одним из ключевых навыков. У вас он отсутствует.
    И это совершенно точно человек, которого НЕ пугает прочтение 326 страниц мануала.
    Девопсу приходится читать примерно в сто раз больше документации. В год. Подумайте хорошенько, а надо ли оно вам, если перспектива выучить даже самые примитивные основы вас пугает настолько, что вы пришли на тостер поторговаться?

    В девопс, как и в инфосек, очень редко можно войти с нуля.
    Надо начинать либо сисадмином (не эникейщиком), либо программистом (не вордпресс).
    И потом, уже развившись как программист/сисадмин, можно подумать о движении в сторону девопса.
    Ответ написан
    2 комментария
  • При записи данных в файл, они остаются в кеше ОС для возможности чтения из кеша?

    gbg
    @gbg Куратор тега Linux
    Любые ответы на любые вопросы
    Важно понимать следующее: нет никакой ложки

    С точки зрения Линукса, данные, которые вы якобы пишете на диск - это страницы в памяти, которые помечены как неанонимные (это значит, что на диске есть файл, который с ними связан), и грязные (а это значит, что эти страницы надо сбросить на диск).

    Причем момент, когда произойдет сброс, зависит от кучи факторов - программист на это может влиять таким образом:

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

    То есть, программист может потребовать, чтобы данные сбросились на диск пораньше, но не попозже.

    После сбрасывания страниц на диск, ОС помечает их как чистые. Это значит, что их можно занять под что-то другое. Можете запустить htop и посмотреть на желтую полоску - это как раз те самые страницы кэша, и их может быть очень много.

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

    А теперь важный вопрос - как же понять, остаются ли данные в кэше после записи. Да легко.

    -очистите кэш sync; echo 1 > /proc/sys/vm/drop_caches
    -посмотрите, что желтая часть на полоске памяти в htop исчезла
    -запустите DD, запишите на диск гигабайт. (dd if=/dev/urandom of=test.raw bs=8M count=128 status=progress)
    -посмотрите, что у вас нарисовался желтый гигабайт
    -можете потом считать этот файл и увидеть офигительную скорость - выше гигабайта в секунду (у меня получается 6, что очевидно говорит о том, что чтение происходило из RAM). Последнее лучше делать, если писали на HDD - потому что хороший SSD может выдать столько же

    Объективно, этот тест показывает, что ДА, записанные данные остаются болтаться в памяти.

    Но при этом, момент, когда эти данные оттуда уйдут, зависит от множества факторов (скажем, если памяти - в обрез, PageCache пойдет под нож в первую очередь). Так что может оказаться полезным использовать другие стратегии - например, mmap
    Ответ написан
    Комментировать
  • Есть ли утилита для быстрого переключения между ос?

    Adamos
    @Adamos
    У вас grub не видит винду? Покажите ему...
    Ответ написан
    Комментировать
  • Как запретить доступ к сайту, если посетитель заходит по прямому IP машины?

    NGINX в итоге что-то да ответит. Можно сделать отдельный конфиг, который будет ловить «все остальные» (default_server) запросы, в т.ч. по прямому IP:
    server {
        listen       80  default_server;
        server_name  _;
        return       444;
    }
    Здесь _ подчеркивание — не что-то волшебное, просто несуществующее имя домена.

    Подробнее: nginx.org/en/docs/http/server_names.html#miscellan...
    Ответ написан
    Комментировать
  • Какие книги нужны для начала пентеста?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    УК вашей страны пребывания и потенциальных целей.
    Ответ написан
    1 комментарий
  • Что делать, если удалил authorized_keys ubuntu?

    saboteur_kiev
    @saboteur_kiev Куратор тега Ubuntu
    software engineer
    в authorized_keys лежат публичные ключи, их можно восстановить из приватного.

    Найди свой приватный ключ, например id_rsa и сделай
    ssh-keygen -y -f id_rsa

    Публичный ключ (он выдается как одна строка) - вставь ее в новый authorized_keys файл.
    Ответ написан
    Комментировать
  • Как обращаться к микросервисам по именам? Нужен DNS?

    martin74ua
    @martin74ua
    Linux administrator
    Ответ написан
    Комментировать
  • Разработка программы, с платной версией?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    пользователь должен будет ввести номер карты, CVV, и срок действия

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

    Так вот, вопрос, как это осуществить на питоне

    Разве что написать web-приложение на нём. Потому что если пользователь будет иметь доступ к коду, то легко отломает вашу платёжную систему и будет пользоваться бесплатно.
    Ответ написан
    Комментировать