Ниже будет приведён скрипт, который позволяет перехватить удаление файла и вывести сообщение на консоль. При этом, на место блока /* INSERT HERE */ можно вставить свои обработчики, которые будут выполняться каждый раз, когда кто-то захочет удалить файл.
Категорія: Solaris
По умолчанию, при падении сервиса (и даже при kill -9) он автоматически поднимается через restarter. Бывают моменты, когда это нужно отключить. И так, выполняем такие действия (покажу на примере nginx’a)
#svccfg -s svc:/network/cswnginx:default
svc:/network/cswnginx:default> addpg startd framework
Если выругается, что группа уже есть, просто переходите к следующему пункту
svc:/network/cswnginx:default> setprop startd/duration = astring: transient
svc:/network/cswnginx:default> validate
Команда validate покажет, если есть какие-то ошибки. Если ничего не выдало, просто выходим через exit
Теперь применяем конфигурацию:
#svcadm refresh svc:/network/cswnginx:default
Если вдруг не сработало, тогда ещё сделайте disable/enable сервису.
Что бы включить обратно restarter – просто удалим то, что создали.
Обновление Solaris 11
После выхода 11-ой версии и очень больших изменениях изменилась и сама процедура обновления. Теперь не нужно никаких LiveUpgrade, всё делается через пакетный менеджер pkg.
Ниже будет описан способ обновления для пользователей, у которых нет поддержки Oracle
В статье будем рассмотрен механизм замены дисков корневого пула на диски большей ёмкости. Данный метод подходит как для Solaris-family так и для FreeBSD.
Часто бывают такие ситуации, когда вы открыли через vi/vim файл, сделали очень много изменений и в конце понимаете, что забыли выполнить sudo. Что же делать? Заново править файл очень как не хочется. на помощь приходит такая команда:
:w !sudo tee %
а для Solaris можно ещё и такую
:w !pfexec tee %
После этого выдаётся запрос на ввода пароля и подтверждение, что вы хотите перезаписать файл и всё (с вариантом pfexec запрос пароля не происходит).
Количество ip/alias на сетевой карте
По умолчанию вы сможете задать на сетевую карту всего 256 ip (или алиасов). Узнаём текущее значение:
# ndd -get /dev/ip ip_addrs_per_if
256
Если нужно больше (допустим, у вас очень много зон), то делаем так:
# ndd -set /dev/ip ip_addrs_per_if 8191
Между прочим, это так же максимальное количество неглобальных зон, которые можно создать в global зоне.
Для сохранения при ребуте, можно внести изменения в /etc/system:
set ip:ip_addrs_per_if=8191
В Solaris существует встроенных механизм определения неполадок, называемый fmadm. Он позволяет определять, что вышло из строя и сигнализировать об этом. Этим всем управляет служба svc:/system/fmd:default. Например, вот вывод из системы, где вышел из строя 1 диск из зеркального пула
Обзор нового менеджера пакетов pkg
В Solaris 11 появился новый менеджер пакетов pkg. Он очень удобен, так как позволяет не только работать с пакетами (устанавливать, удалять, обновлять и т.д.), а и обновлять ОС.
В статье расскажу некоторые применения pkg.
ACL в Solaris
В последних предыдущих версиях Solaris поддерживалась реализация списков ACL, в первую очередь основанная на спецификации списков ACL согласно проекту стандарта POSIX. Списки ACL на основе проекта POSIX используются для защиты файлов UFS. Они преобразуются в версиях NFS, предшествующих версии 4.
При внедрении NFSv4 новая модель списков ACL полностью поддерживает возможности совместного функционирования клиентов UNIX и не UNIX, обеспечиваемые NFSv4. Новая реализация списков ACL согласно спецификации NFSv4 обеспечивает расширенную семантику на основе списков ACL типа NT.
Solaris
В Solaris есть удобный механизм для ограничения количества запускаемых процессов/потоков – это проэкт. Что бы пользователи не смогли положить сервер fork-бомбой, нужно им ограничить количество LWP. Создадим проект и поместим туда пользователя testuser:
#projadd -U testuser -K 'project.max-lwps=(privileged,2048,deny)' user.testuser
Теперь пользователь testuser не сможет запустить более 2048 потоков.
Для тестирования можно использовать такую бомбу:
#!/usr/bin/bash
:(){ :|:& };:
Больше for bomb на разных языках можно взять здесь