Вход на сайт
Яндекс.Метрика

Рейтинг@Mail.ru

Sudo "sorry, you must have a tty to run sudo ; TTY=unknown"

 Sudo "sorry, you must have a tty to run sudo ; TTY=unknown"

Ошибка: sorry, you must have a tty to run sudo ; TTY=unknown, возникает если для пользователя, из под которого запускается команда с правами sudo, запрещена командная оболочка. Для исправления такого недуга, в sudoers нужно закомментировать строчку с опцией requiretty, т.е.

#Defaults requiretty

Как запретить двойной запуск cron задач?

Администрируя нагруженные проекты, возникает проблема повторного запуска cron задач, т.е. когда во время выполнения одного скрипта, cron запускает второй такой же скрипт. Такие ситуации порой приводят к некорректным результатам работы скрипта и другим проблемам (зависит от самого скрипта).

Как запретить двойной запуск cron задач?
Самое простое в Linux, что можно придумать это воспользоваться утилиткой flock.
Утилита принимает имя лок-файла и команду для выполнения. Как он работает: flock ставит лок на указанный файл и если лок поставлен успешно, тогда запускает указанную команду.

Итого имеем:

* * * * * /usr/bin/flock -n /tmp/email.lock -c "/usr/bin/perl /home/zvonilka/send_email3.pl" >> /var/log_email 2>&1
* * * * * (sleep 30; /usr/bin/flock -n /tmp/email.lock -c "/usr/bin/perl /home/zvonilka/send_email3.pl" >> /var/log_email 2>&1)

Кстати, тут еще показано как просто можно научить cron запускать задачу каждые 30 секунд.

Puppet+Nginx+Passenger

Puppet — клиент-серверная система, состоящая из управляющего сервера и подчиненных узлов. Сервер хранит описание конечных состояний узлов (который в терминах Puppet называется манифестом) и ждет их подключения. Клиент подключается к серверу, получает от него описание конечного состояния, сверяет его с текущим и, если оно изменилось, производит переконфигурирование системы.

 Нам потребуется установленный puppet-master (в моем случае версия 2.7, passenger (в моем случае версия 5.0), nginx с поддержкой passenger (тут либо искать готовый пакет либо компилить из исходников).

Создаем директорию, в которой будут расположены настройки наших окружений и даем группе puppet права на запись:

# ls -la /home/puppet/

...

drwxr-xr-x 6 puppet puppet 4096 Sep 1 12:50 configuration

...

[root@puppet27centos ~]# ls -la /home/puppet/configuration/

...

drwxr-xr-x 40 puppet puppet 4096 Sep 3 12:22 configs

drwxr-xr-x 5 puppet puppet 4096 Sep 1 12:49 environments

drwxr-xr-x 3 puppet puppet 4096 Sep 1 12:50 manifests

...

 Конфигурим nginx:

Подробнее: Puppet+Nginx+Passenger

Маршрутизация пакетов в Linux

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

Такое случается при включенном rp_filter.

Как работает rp_filter:
Если ответ на текущий пакет не может уйти через тот же интерфейс (когда приходит через один интерфейс, а уходит через другой), пакет отфильтровывается.

Чтобы всё заработало, необходимо отключить rp_filter:
/sbin/sysctl -w net.ipv4.conf.default.rp_filter=0
/sbin/sysctl -w net.ipv4.conf.all.rp_filter=0

И редактируем файлик /etc/sysctl.conf :

net.ipv4.conf.default.rp_filter = 0

При необходимости можно указывать интерфейсы, например:

net.ipv4.conf.eth0.rp_filter=0

Подробнее: Маршрутизация пакетов в Linux

Увеличение размера файловой системы. Увеличение раздела LVM

Есть тестовая тачка testlvm.devel.local.ru

Она у нас заинсталлена на LVM диске в контейнере XEN. 

LV Path /dev/xenvg/testlvm.devel.local.ru
LV Name testlvm.devel.local.ru
VG Name xenvg
LV UUID q52VUk-jNLB-fsTk-inPy-4pqR-5JIC-ZvsDy4
LV Write Access read/write
LV Creation host, time node16.xen.local.ru, 2015-07-08 07:13:05 +0000
LV Status available
# open 1
LV Size 5.50 GiB
Current LE 176
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:46 

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

Рассмотрим как увеличить размер диска на вот таком работающем сервере.

Увеличим размер диска /dev/xenvg/testlvm.devel.local.ru на 200Мб:

Подробнее: Увеличение размера файловой системы. Увеличение раздела LVM

Страница 4 из 7

unix-way