Ответы пользователя по тегу Linux
  • Как сделать readinessProbe по тексту файла?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    вам не нужен cat и ненужный pipe - просто
    grep -q "app start" /app/log

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Здравствуйте, можно ли соединить несколько компьютеров в одну локальную сеть через OpenVpn, чтобы каждый из них мог пинговать любой другой без задействия сервера?

    OpenVPN это не волшебное что-то, это просто виртуальный сетевой интерфейс с шифрованным каналом.

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

    С другой стороны, вы можете настроить у каждого участника VPN сервер, и будете подключаться друг к другу. Но это надо всем все настроить и подключаться каждый с каждым, с огромным количеством виртуальных интерфейсов.

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Вы не так понимаете, как это работает.
    В линукс файловая система использует структуру iNode в качестве хранения метаинформации о файлах. И когда вы открываете файл, по имени файла ищется iNode файловый дескриптор привязывается и лочит уже iNode. При этом имя файла на диске можно свободно удалять (а сами данные файла при этом удалятся позже, когда процесс который открыл файловый дескриптор его освободит).

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

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    while read; do
      echo $REPLY
    done<links.txt
    Ответ написан
    Комментировать
  • Как повысить привилегии в системе без sudoers?

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

    Можно поправить pam.d чтобы разрешить su на рута без пароля

    Можно на сам httpd сделать suid, chown root:root но в конфиге указать apache юзера - апач сам переключит

    Ну есть еще один хитрый вариант - поднимать апач на непривелированном порту, типа 8080, и в iptables сделать редирект с 80 на 8080. Тогда апач можно запускать свободно от имени юзера, а сайт будет работать и на 80 и на 8080.
    Ответ написан
    Комментировать
  • Есть ли консольный редактор для Linux, в котором просто выделять весь текст?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    А что подразумевается под буфером обмена?
    Ты сидишь в линуксе под линуксовым текстовым терминалом?
    Ты сидишь в линуксе под гуи и запускаешь терминал?
    Ты сидишь и подключешься к линуксу удаленной машиной и буфер обмена у тебя не в линуксе а в твоей локальной машине, который нужно передать удаленно по ssh?

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    sudo su -l user -c 'pip3 install --user bs4 lxml requests'


    под sudo, команда su не будет запрашивать пароль.
    Ответ написан
    7 комментариев
  • Как вы понимаете работу следующей команды?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Это ответ начала установки tcp соединения?

    Нет конечно, это уже ответ от вашего TCP сервера. Скорее всего там какой-то простое приложение которое по telnet протоколу в ответ на PING возвращает вам "PONG"
    Ответ написан
  • Как поднять сервис с помощью bash скрипта?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Файлы вроде как у вас везде заданы с полным путем, но я подозреваю, что при запуске крона PATH не содержит всего чего нужно
    В идеале было бы просто добавить в кроне скрипт с перенаправлением вывода ошибок и посмотреть логи, типа так

    Попробуйте либо прописать полный путь к iconv и grep либо добавить в кроне перенаправление вывода в лог и посмотреть на что ругается скрипт
    1 * * * * /bin/sh /home/user/script.sh>>$HOME/script.log 2>&1
    Ответ написан
    Комментировать
  • Как отформатировать в NTFS?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    cat /proc/filesystems
    и смотри, есть ли там ntfs
    если нет, то никак, надо устанавливать подержку, или ждать пока ntfs появится в ядре вашего дистрибутива (еще нет ни одного дистрибутива, хотя планируется)
    Ответ написан
    Комментировать
  • Выравнивание строк в терминале?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    В терминале как такового выравнивания не существует.

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

    Конечно можно написать функцию и вывод каждой команды через нее пропускать, чтобы через какой-нить printf выровнять все направо.

    Вывести один символ справа, можно например так:
    read WindowHeight WindowWidth<<<$(stty size)
    printf "%$WindowWidth" "A"

    Вычислять длину каждой строки и выравниваешь по центру или по правому краю.
    Но адекватного смысла такой вопрос лишен.

    Если надо весь вывод парсить, запусти новый баш с перенаправлением, например так:
    bash|(while read;do printf "%80s\n" $REPLY;done)
    вместо (..) можешь свой скрипт написать, который будет детально все парсить - вывод команд будет выравниваться.
    Ответ написан
  • Как запустить функцию в bash из командной строки?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    1. Просто выполнить функцию в командной строке.

    2. Добавить ее в .bashrc или в .profile, чтобы она загружалась при логине

    3. Выполнить ваш скрипт с функцией в текущей оболочке, она будет доступна после этого (
    $ source script_with_function.sh
    $ Autobak
    Ответ написан
    3 комментария
  • Ошибка при установке программ?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Если выдает ошибку, то ее надо исправить.
    Самый простой способ - загуглить текст ошибки и почитать первые 10-15 ссылок.

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

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Сомневаюсь. Даже при идентичном железе, некоторые устройства могут быть прописаны по пути.
    Включишь диск через другой SATA разъем - уже поменялся ID

    Нужно пробовать, зависит от того, насколько совпадет железо. Но даже при идентичности железа, я бы поставил 50%.
    Ответ написан
    Комментировать
  • Какой дистрибутив Linux выбрать для системного администратора и\или DevOps инженера на свой ПК?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    В крупных конторах чаще всего используются rhel, ubuntu и популярные облачные решения (например aws linux)
    Выбирай любой. Вообще особой разницы нет.
    Ответ написан
    Комментировать
  • Работа с памятью и гибернация в linux как в windows?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    1. Сжатая память? Вы уверены? можно документацию где это работает по дефолту?
    2. гибернация это не своп. Не путайте pagefile.sys и hiberfil.sys - это совершенно разные и независимые штуки.
    Swap на линуксе может быть вообще какой угодно.
    3. Это не совсем так работает. С достаточным объемом памяти Линукс сам со всем разбирается. Просто Линукс не то, чтобы привык что его часто ребутают. А если не ребутать, он в принципе старается кешировать все, что может.
    Ответ написан
  • Как решить проблему с экспортом $PATH?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    посмотри в домашнем каталоге .profile, .bashrc
    там возможно PATH переназначается как-то так PATH=/opt/java/latest/bin
    а должно быть PATH=$PATH:/opt/java/latest/bin - то есть сохраняя предыдущее значение и дописывая в него новое.
    Ответ написан
  • Почему для скриптинга в шелле используется bash а не более современный язык программирования?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Насколько я понимаю раньше шеллы использовались в качестве примитивных высокоуровневых языков. Сейчас у нас есть Perl, Python, nodejs, php...


    Ну давайте вместо рабочего стола пользователю дадим сразу Visual Studio, ведь какая разница как программу запускать - иконкой на рабочем столе, или форкать из высокоуровневого языка?

    shell - это оболочка операционной системы. То, что кроме графической есть еще и command line interface - это совершенно нормально и адекватно. И шелл позволяет пользователю и администратору работать в операционной системе гораздо удобнее, чем через язык программирования.

    То, что sh/bash и другие, настолько развиты что сами по себе являются неплохими языками программирования - это просто следствие того, что командый интерфейс и создавался тогда, когда каждый пользователь был немного программистом, и следствие того, что cmd line удобен для автоматизации просто по своей архитектуре.
    Поэтому Powershell, bash/zsh/ksh будут продолжать развиваться.

    Но ты можешь попробовать писать всю автоматизацию на любом другом языке программирования. И со временем немного столкнуться с тем, что скрипт, написанный на шелл 10 лет назад - просто работает, а скрипт написанный на питон 10 лет назад - несовместим.
    Ответ написан
    42 комментария
  • В airmon-ng нет Wlan0. Как исправить?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Вопрос о том, что следует изучить базовые навыки работы с линукс, а именно - что такое интерфейс и как посмотреть список интерфейсом в текущей системе.
    Ответ написан