Задать вопрос
Ответы пользователя по тегу Linux
  • Как в sed заменить строку c двойными кавычками и переменной?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    #!/bin/bash
    IP=$(wget -qO- someurl.com)
    GMT=(wget -qO- someurl.com?$IP)
    OLD="TimeZone=\"600\""
    REP="TimeZone=\"$GMT\""
    sed -i "s/$OLD/$REP/" test.txt
    
    sed  "s/TimeZone=\"[^\"]*\"/TimeZone=\"$GMT\"/g" test.txt
    Ответ написан
    Комментировать
  • Почему служебные символы работают не везде?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Перенаправление ">" говорит о том, что ты хочешь перенаправить stdout в конкретный поток/файл.
    Но конструкция [1-5].txt это не имя файла, это wildcard, который развернется в пять файлов. А ">" у тебя один.
    То есть просто неправильный синтаксис, потому что для ">" можно указать только одно имя потока/файла.

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

    Говоря про "служебные символ", следует почитать документацию и различать их.
    Есть wildcards, есть variable expansion, есть regular expression, есть специальные переменные, есть команды самого баш, есть bash expansion. Зная какие к чему относится, можно понимать где и как их применять.
    Ответ написан
    Комментировать
  • Как происходит разрешения на папку в Linux?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    R на каталог - прочитать его содержимое
    W на каталог - редактировать каталог (добавлять, удалять файлы, переименовывать файлы)
    X - зайти в каталог

    Читай документацию
    Ответ написан
    Комментировать
  • При попытке чтения каталога ls /root процесс зависает, как починить?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Я подозреваю, что структура файловой системы расширяет размер каталога, чтобы в него поместился список из 15 млн файлов, а вот уменьшать размер каталога уже не умеет.
    То есть когда файлы были созданы, блоки были аллоцированы под "/root" и все, теперь ls будет вычитывать весь объем, несмотря на то, что в нем используется только несколько записей.

    Я рекомендую создать новый каталог, перенести в него все видимое содержимое, и грохнуть старый, потом новый каталог переименовать в root

    но похоже это уже сделали.
    Ответ написан
    Комментировать
  • Как сгенерировать .pem ключ на Linux для удаленного подключения?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    pem это не совсем формат, контейнер, внутри которого может быть сертификат, или цепочка из сертификата, приватного ключа и рутового сертификата.
    Следовательно посмотри что у тебя в pem генерируется.

    А так - ssh-keygen умеет генерить в PEM формате:
    ssh-keygen -t rsa -m PEM

    Или конвертнуть существующий:
    ssh-keygen -f id_rsa -e -m pem

    А так, современая версия ssh-keygen и так генерит ключ в валидном pem формате.
    Ответ написан
    3 комментария
  • Как собрать сервер на устаревшем ПО?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    ОС FreeBSD 7.2
    Lighttpd 1.4.25
    PHP 4.4.9
    MySQL 4.1.25

    Уверен, что все это также легко поднимется на Линуксе. Возможно придется поставить не самую свежую версию, а попробовать ставить свежий, пробовать ставить эти версии, если не прокатило, ставить более старую версию И так пока не заведется.
    Линукс заводить и поддерживать в виртуалке будет проще, чем FreeBSD.

    А вообще, если есть навыки программирования хотя бы минимальные, скопировать весь сайт и попробовать переписать под новые версии php, гугля ошибки и их решение. Очень много разных продуктов в мире приходилось апгрейдить. Можно вообще не знать php и с гугл-девелоп или stackoverfow-девелопментом можно все завести и на современных версиях.
    Ответ написан
    1 комментарий
  • Как сохранить права в файл?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Да просто список сделай. Потом по нему скриптом можно восстановить.

    find . -exec stat --format '%a %n' {} \;
    
    find . -exec stat --format '%a %n' {} \; > list_of_files.txt
    Ответ написан
    Комментировать
  • Как лучше хранить 13 ТиБ данных (mdadm / lvm / zfs / btrfs)?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    мне кажется zfs тут будет подходить лучше, чем связка из mdadm + lvm
    как бы весь функционал zfs позволяет делать сама, и в случае необходимости добавить диск или заменить, будет проще.
    Ответ написан
    2 комментария
  • Как в 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
            }
        ]
    }
    Ответ написан
    Комментировать
  • Можно ли исполнить команду через веб интерфейс?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    ну если вы можете править файлы веб-сайта, добавьте какой-нить phpshell и посмотрите.
    А так, не зная как настроен веб сервер - неизвестно
    Ответ написан
    Комментировать
  • Почему не могу закинуть открытый ключ SSH из Линукса в Windows?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Нужно полистать конфигурацию вашего sshd сервере на винде и посмотреть где он считает должны быть публичные ключи пользователя.
    Это может быть и $USERHOME/.ssh/authorized_keys и $USERHOME/.ssh/authorized_keys2 и что-нибудь еще.
    ssh-copy-id может не знать про то, где должны лежать публичные ключи в винде, его нет смысла использовать в данном случае.

    Прочитайте документацию к sshd серверу под виндой чтобы понять где он ищет публичные ключи пользователя.
    Ответ написан
  • Как расширить диск Linux?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Никак.
    sda/sdb это физические устройства, их нельзя расширить за счет друг друга.

    Вот раздел с файловой системой, если бы он изначально был сделан через LVM можно было бы расширить. Для этого sdb добавился бы в Volume Group где находится ваша файловая система и потом ее можно уже расширить, причем в большинстве случаев даже онлайн. Но для этого надо чтобы изначально все было сделано через LVM.

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

    У вас же на /dev/sda есть один раздел с типом обычной Linux filesystem и отформатирован как есть.

    Поэтому все, что можно сделать без кардинальной переработки - отформатировать /dev/sdb и примонтировать его в какую-то папку, скинув часть данных в эту папку.

    Вдобавок так как у вас вообще весь /dev/sda составляет единственный диск в системе, на котором и данные и сама система, то даже для каких-либо изменений текущей конфигурации уже нужно как минимум загружаться с live диска. В этом плане быстро и просто не получится.
    Ответ написан
    Комментировать
  • Почему не работает https?

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    И для записи и для чтения используется тот же механизм - page cache, только для записи они еще помечаются как dirty, которые должны быть записаны на следующий уровень.
    Ответ написан
    Комментировать
  • Как в BASH работают логические операторы?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Однако, возникает вопрос - а как именно BASH преобразовывает результат выполнения определённой команды в булевое значение?

    Он это не делает. Он проверяет код возврата команды, который согласно архитектуре линукс - может иметь значение от 0 до 255 (байт)
    Просто значение 0 считается true, любое другое значение считается false

    На код ошибки это не похоже. Так как успешное выполнение команды возвращает 0. Что полностью противоречит алгебре логики.

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    У вас есть квартира, где стоит лазерный датчик. Если на него попадает лазерный луч, он открывает все замки.
    И приходя домой, вы вставляете ключ с лазером в замок, проворачиваете и подаете сигнал на датчик.

    Но при этом у вас есть окно, через которое можно послать лазерный луч, например из окна соседнего дома.

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

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

    Хотите более подробный и понятный ответ - изучайте права доступа и принципы работы различных движков на сайте, чтобы найти варианты как можно найти применение тому, что у вас везде 755 на всех файлах.
    Ответ написан
    Комментировать
  • Загружается ли картинка через CURL если не указывать -o?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Чтобы загружать только заголовки надо не -o пропускать, а указывать -I
    если не указать -o, предполагается, что curl прямо в консоль скачает

    -o, --output <file> Write to file instead of stdout
    Ответ написан
    1 комментарий
  • Как появляется сетевой интерфейс и ip адрес на примере linux?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Ip адрес можно самому прописать на хосте или получаем с помощью dhcp, эта сущность ядра ОС?

    Можно и так и так.
    Это не сущность ядра ОС, ты же можешь вообще без сетевой карточки работать, или работать не по IP а по другому протоколу. Это настройки TCP.
    Можно ли назвать конфигурационной настройкой?

    Как хочешь называй.
    Настройки сетевого интерфейса поступают от драйвера сетевой карты?

    Ну как поступают. Некоторые ты отправляешь на сетевую карту, некоторые она тебе. А некоторые сетевые карты могут быть виртуальными.

    Можно создать виртуальные сетевые интерфейсы, обязательно для этого иметь физический сетевой интерфейс?

    Можно, не обязательно.

    Кто в ядре или где почитать отвечает за формирование пакета, кадра и отправку по сети(кабелю)?

    Драйвер UDP/TCP/IP служб отвечает за формирование пакетов TCP/UDP/IP, а сетевая карта за формирование фреймов сетевой карты или что там у нее. Есть же карты разные, wifi/ethernet/модемы

    сетевая карта это устройство, а не интернет.

    Естественно
    Ответ написан
  • Как "распаковать" параметры из переменной в bash-скрипте?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Юзай eval, он раскроет все переменные и выполнит команду.

    $ excludes=".cache,.config/google-chrome,Загрузки"
    $ eval echo -sh ~ --exclude=$HOME/{$excludes}
    -sh /home/saboteur --exclude=/home/saboteur/.cache --exclude=/home/saboteur/.config/google-chrome --exclude=/home/saboteur/Загрузки
    Ответ написан
    1 комментарий
  • Как работает slurm?

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

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

    p.s. Тут вряд ли нужен тег bash, скорее Linux
    Ответ написан
    Комментировать