LINUX.ORG.RU

Сообщения sandrey81

 

Перевод части скрипта в цикл

Есть вывод json , я хочу к каждой строке по номеру добавить определенный текст. Это выглядит следующим образом

wget -cq http://ссылка -O - | jq '.time, .data, .sent, .error' |

sed '1s/^/Текст1: /' |
sed '2s/^/Текст2: /' |
sed '3s/^/Текст3: /' |
sed '4s/^/Текст4: /' |
и тд
Всё работает, проблем нет
Но я понимаю что добавлять sed каждый раз это геморно, так как там будет еще куча строк Хочу добавить это в цикл, что бы он брал текст из файла. Сделал вот так

wget -cq http://ссылка -O - | jq '.time, .data, .sent, .error' |

while read y
do
sed '2s/^/&y: /'
done < mycontent.txt

Но тут появились проблемки. 1) while затирает вывод, а мне нужно что бы он добавлял к ней. Я понимаю что это так не работает как у меня) 2) надо сделать так что бы менялось число у sed '2s, предполагаю что это можно сделать вот таким образом

i=1
while read y
do
sed '$is/^/&y: /'
i=i+1
done < mycontent.txt
Если со вторым пунктом более менее понятно, то как решить первую проблему?) Как сделать что бы это всё заработало?)

Перемещено hobbit из general

 

sandrey81
()

Не выполняется крон

Почему если имя сохраняемого файла сделать $(date +«%H-%M-%d-%m-%Y»).bak , то задача перестаёт выполняться?

* * * * * cp /home/www/Downloads/test.txt /home/www/Downloads/$(date +"%H-%M-%d-%m-%Y").bak

Пробовал отправлять вывод в лог, но лога нету. Сама задача выполняется

(root) CMD (cp /home/www/Downloads/test.txt /home/www/Downloads/$(date +")
Если имя сделать обычное, то всё работает. Скорее всего проблема в "

 

sandrey81
()

Grep лога

Есть лог в котором нужно за час вывести сколько было строк в каждую минуту. Я бы тут сделал цикл for и каждую минуту грепал количество строк. Но тогда бы grep происходился 60 раз по файлу. А это не очень хорошо. Каким образом это можно сделать за один проход?

 

sandrey81
()

Сравнение значений на bash

Есть 2 файла с содержимым следующего вида

имя значение
Файл 1
green 1
yellow 5
red 11
blue 6
Файл 2
green 22
yellow 66
red 52
blue 89
Мне нужно из значений файла 2 вычесть значения файла 1 и получать эту разницу

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

Как мне это лучше всего реализовать?

 

sandrey81
()

Как работает сохранение страницы в браузере

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

 

sandrey81
()

Запуск elastic+kibana в docker

Пытаюсь поработать с elasticsearch,kibana и столкнулся с проблемой.

Запускаю контейнер согласно инструкции

docker run -d --name elasticsearch --net elastic -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:8.2.2

После чего нужно выполнить команду для получения токена в кибану

docker exec -it elasticsearch /usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token -s kibana

Я так понимаю в ответе я должен получить тот самый токен.

Но вместо этого получаю лог ошибки

WARNING: Owner of file [/usr/share/elasticsearch/config/users] used to be [root], but now is [elasticsearch]
WARNING: Owner of file [/usr/share/elasticsearch/config/users_roles] used to be [root], but now is [elasticsearch]
Failed to determine the health of the cluster. Cluster health is currently RED.
This means that some cluster data is unavailable and your cluster is not fully functional.
The cluster logs (https://www.elastic.co/guide/en/elasticsearch/reference/8.2/logging.html) might contain information/indications for the underlying cause
It is recommended that you resolve the issues with your cluster before continuing
It is very likely that the command will fail when run against an unhealthy cluster.

If you still want to attempt to execute this command against an unhealthy cluster, you can pass the `-f` parameter.

ERROR: Failed to determine the health of the cluster. Cluster health is currently RED.

Совершенно не понимаю почему он мне втирает про кластер, я хочу работать и запускаю без кластера. Возможно проблема кроется в WARNING: Owner of file

 

sandrey81
()

Создание зеркала на truenas

Пытаюсь создать зеркало и не понимаю правильно делаю или нет)

Имеется 4 диска по 2тб.

Захожу в Пулы, в Data Vdevs добавляю 2 диска. И выбираю тип Mirror. После чего добавляю еще один Data Vdevs. И так же добавляю туда 2 диска с типом зеркала. И сохраняю.

Но вопрос вот в чём.

Я создал два зеркала по 2 диска в каждом? Или я создал 1 зеркало с 4мя дисками, где 2 из них зеркало других 2х.

Извините если туплю и непонятно :)

NAME                                            STATE     READ WRITE CKSUM
        RAID1                                           ONLINE       0     0     0
          mirror-0                                      ONLINE       0     0     0
            gptid/df11e800-d278-11df-a7ce-68b59972d64a  ONLINE       0     0     0
            gptid/deea4ffe-d278-11df-a7ce-68b59972d64a  ONLINE       0     0     0
          mirror-1                                      ONLINE       0     0     0
            gptid/deb28ac6-d278-11df-a7ce-68b59972d64a  ONLINE       0     0     0
            gptid/dec69c32-d278-11df-a7ce-68b59972d64a  ONLINE       0     0     0

errors: No known data errors

  pool: boot-pool
 state: ONLINE
config:

        NAME        STATE     READ WRITE CKSUM
        boot-pool   ONLINE       0     0     0
          ada4p2    ONLINE       0     0     0

 

sandrey81
()

Где лежит публичный ключ сервера?

Когда подключаешься первый раз к сервере, система запрашивает доверять ли этому открытому ключу или нет. Если да, то он падает в known_hosts на стороне клиента. А где этот ключ найти со стороны сервера? Что бы можно было его перед первым подключением его добавить на клиенте?

 

sandrey81
()

Где можно поправить mysql в postfixadmin?

postfixadmin должен создавать запись в mysql вида

username:andrey domain:site.ru

А он почему-то создает.

username:andrey@site.ru domain:site.ru

И из за этого соответственно не работает проверка почтового ящика в dovecot, так как получается andrey@site.ru@site.ru Где можно это поправить? Где то наверно лежит какой-то файл в котором описано формирование username.

 

sandrey81
()

Как работает почта

Сколько читаю и не пойму одну вещь. Есть к примеру сервер smtp(postfix) и imap/pop3(dovecot). Когда я отпрввляю письмо, понятное дело что оно отправляется на сервер к примеру yandex.ru к примеру по 25 порту. Но не пойму как это работает в обратную сторону. Мне шлют письмо, как оно ко мне попадает? Яндекс шлет по 25 порту мне на postfix, а мой postfix шлет мне на 993(на dovecot), это так работает? Или как он доставляет мне письмо на dovecot? Или dovecot просто смотрит папки в каталоге. Хотя врятли. Он же слушает 993 порт. Значит скорее всего postfix принимая письмо, по 993 отправляет в dovecot. Немного не понимаю это взаимодействие между ними

 

sandrey81
()

RSS подписка на новые темы