SMF: Работа с сервисами Solaris 10 - продолжениеSolaris 10: советы и приёмы системного администрирования |
|
Sponsored LinksКатегорииLinksUnix Tutorial
Personal Development Ruslan Valiev Solaris Performance Team Damien Farnham Fintan Ryan Nicky Veitch Niall Mullen Sean McGrath DTrace Bryan Cantrill Brendan Gregg ZFS Tim Foster General Ben Rockwood Learning Solaris 10 Privacy policy |
Thursday, 9 December. 2004SMF: Работа с сервисами Solaris 10 - продолжение
Продолжая начатую ранее тему про SMF, хочу рассказать немного о том, как работать с сервисами.
Итак, команда svcs -a поможет получить текущий список инстансов (instances) сервисов в системе, с указанием их статусов. Далее, можно воспользоваться командой svcs -l чтобы узнать о конкретном сервисе побольше. Этот вариант вызова svcs покажет всю доступную информацию об инстансе сервиса. В общем-то, вся выводимая этой командой информация полезна, но особенно полезны поля state_time - когда инстанс сервиса перешёл в текущее состояние, logfile - где можно почитать про то, как и когда именно запускался данный сервис, и ещё очень полезны зависимости этого сервиса - список тех сервисов, без которых данный инстанс не может быть запущен. Указывается состояние этих сервисов, так что удобно замечать те их зависимостей, которые в состоянии, отличном от online, чтобы смотреть уже информацию про них с помощью той же svcs -l... CODE: bash-3.00$ svcs -l svc:/network/nfs/client:default fmri svc:/network/nfs/client:default name NFS client service enabled true state online next_state none state_time Mon Dec 06 15:45:08 2004 logfile /var/svc/log/network-nfs-client:default.log restarter svc:/system/svc/restarter:default dependency require_any/error svc:/milestone/network (online) dependency require_all/error svc:/network/nfs/nlockmgr (online) dependency optional_all/error svc:/network/nfs/cbd (online) dependency optional_all/error svc:/network/nfs/mapid (online) dependency require_all/restart svc:/network/rpc/bind (online) dependency optional_all/none svc:/network/rpc/keyserv (online) dependency optional_all/none svc:/network/rpc/gss (online) dependency require_all/refresh svc:/milestone/name-services (online) В данном примере видно, что сервис NFS client запущен, потому что все его жёсткие зависимости (те сервисы, которые обязательно должны быть запущены, чтобы позволить инстансу этого сервиса так же быть запущенным). Если бы некоторые из дополнительных зависимостей (которые видны в строчках optional_all) не были запущены, NFS client всё равно бы запустился. На самом деле, после небольшой практики работы с командами, вырабатывается методика нахождения и решения проблем с запусками сервисов, и тогда начинают использоваться другие ключи команды svcs. На пример, ключик -d поможет вывести лишь список зависимостей указанного инстанса: CODE: bash-3.00$ svcs -d svc:/network/nfs/client:default STATE STIME FMRI online Dec_06 svc:/milestone/network:default online Dec_06 svc:/network/rpc/bind:default online Dec_06 svc:/network/rpc/keyserv:default online Dec_06 svc:/milestone/name-services:default online Dec_06 svc:/network/rpc/gss:default online 17:52:29 svc:/network/nfs/nlockmgr:default online 17:52:29 svc:/network/nfs/cbd:default online 17:52:29 svc:/network/nfs/mapid:default Есть ещё один полезный вариант вызова команды svcs - это svcs -D. Такая команда покажет список всех сервисов, зависимых от указанного - т.е. расследование какой-то проблемы можно начать и с другой стороны. CODE: bash-3.00$ svcs -D svc:/network/nfs/client:default STATE STIME FMRI online Dec_06 svc:/system/filesystem/autofs:default online Dec_06 svc:/system/dumpadm:default online Dec_06 svc:/milestone/multi-user:default Также полезной является опция -p, которая показывает PID процессов, связанных с указанным инстансом сервиса. В примере ниже мы может увидеть процесс и его идентификатор для сервиса svc:/network/nis/client:default (ВНИМАНИЕ! В этом примере используется nis/client, а не nfs/client, как во всех предыдущих примерах) CODE: bash-3.00$ svcs -p svc:/network/nis/client:default STATE STIME FMRI online Dec_06 svc:/network/nis/client:default Dec_06 176 ypbind Этот полезный ключик можно использовать и без указания сервиса, тогда вы получите очень длинный список сервисов с указанием процессов, к ним относящихся. СЛЕДУЕТ ПОМНИТЬ: Сервисы - это не только демоны и запущенные в системе процесс, поэтому в длинном списке, полученном после выполнения на вашей системе svcs -p, далеко не каждый инстанс сервиса будет иметь относящийся к нему процесс. Обратные ссылки
URI этой записи для создания обратных ссылок (trackback)
Нет обратных ссылок
|




