- •1.4 Структура операционных систем
- •1.4.1 Монолитная система
- •1.4.2 Многоуровневая структура ос
- •1.4.3 Модель экзоядра
- •1.4.4 Микроядерная архитектура (модель клиент-сервер)
- •1.4.5 Обобщение сравнения моделей
- •Интерфейс пользователя
- •Команды
- •Командная строка
- •Договоренности о формате командной строки
- •C.5.4. Переназначение потоков.
- •C.5.5. Переназначение стандартного потока ошибок (в unix).
- •C.5.6. Перенаправление потока ввода.
- •C.5.7. Конвейерная обработка.
- •Управление потоком выполнения
- • Стандартный ввод/вывод
- •Диагностика и другие виды вывода
- •Командные строки и конвейеры
- •Специальные символы
- •8.2.1. Запуск команды в фоновом режиме (символ &)
- •8.2.2. Последовательное выполнение команд (символ ;)
- •8.2.4. Отмена специального значения (метасимвол кавычки)
- •8.2.4.1. Использование кавычек для отмены значения символа пробел
- •Использование кавычек
- •Окружение
- •Переменная окружения
- •Взаимодействие процессов посредством окружения
- •Переменные Shell
- •Позиционные параметры
- •Файловая система
- •Структура файловой системы
- •Монтируемые файловые системы
- •Интерфейс с файловой системой
- •Разновидности файлов
- •Обычные файлы
- •Файлы-каталоги
- •Специальные файлы
- •Связывание файлов с разными именами
- •Именованные программные каналы
- •Файлы, отображаемые в виртуальную память
- •Синхронизация при параллельном доступе к файлам
- •Процессы
- •Процессы
- •Атрибуты процесса
- •Идентификатор процесса (pid)
- •Идентификатор родительского процесса (ppid)
- •Поправка приоритета (ni)
- •Терминальная линия (tty)
- •Реальный (uid) и эффективный (euid) идентификаторы пользователя
- •Реальный (gid) и эффективный (egid) идентификаторы группы
- •Атрибуты файлов
- •Порождение процессов в Linux
- •Управление процессами
- •Типы процессов
- •Права доступа к файлам и каталогам
- •Жизненный цикл процесса в unix и основные системные вызовы
- •Контекст процесса
- •Приоритеты процессов
- •Создание процесса
- •Сон и пробуждение
- •Завершение выполнения процесса
- •Получение информации о процессах
- •Управление приоритетом процессов
- •Сигналы: посылка и обработка
- •Доставка и обработка сигнала
- •Основные сигналы
- •Посылка сигналов
- •Сигналы, посылка сигналов, команда kill
- •Приоритет выполнения процесса, команда nice
- •Текущий контроль процессов, команды ps и top
- •Защита фоновых процессов, команда nohup
- •Пользователь
- •. Привилегированный пользователь
- •Управление пользователями и правами доступа База данных пользователей системы
- •Изменение базы данных пользователей
- •Изменение прав доступа
- •Ограничения сеанса пользователя
- •Команды архивирования файлов
- •4.7.1. Программа tar
- •4.7.2. Программа gzip
- •4.7.3. Программа bzip2
- •Команды поиска grep и find
- •5.5. Перенаправление ввода/вывода, каналы и фильтры
- •5.5.2 Оператор |
- •5.5.3 Фильтры
- •Сигналы
- •Приложение. Список реентерабельных функций
- •Регистрация системных сообщений, система syslog
- •Конфигурационный файл демона syslogd
- •Info Информационные сообщения
- •Учет продолжительности соединений
- •Пользователи и группы
- •Файл /etc/passwd
- •Файл /etc/group
- •Файл /etc/shadow
- •Системные регистрационные имена
- •Изменение действующего идентификатора пользователя
- •Изменение действующего идентификатора группы
- •Изменение пароля и характеристик учетной записи, связанных с регистрацией
- •Правила построения паролей
- •Действие команды passwd
- •Устаревание паролей
- •Показ атрибутов пароля
- •Стандартные значения атрибутов
- •Просмотр базы данных учетных записей
- •Получение списка зарегистрировавшихся пользователей
- •Средства создания, изменения и удаления учетных записей пользователей
- •Средства создания, изменения и удаления групп
Приложение. Список реентерабельных функций
accept() |
access() |
aio_error() |
aio_return() |
aio_suspend() |
alarm() |
bind() |
cfgetispeed() |
cfgetospeed() |
cfsetispeed() |
cfsetospeed() |
chdir() |
chmod() |
chown() |
clock_gettime() |
close() |
connect() |
creat() |
dup() |
dup2() |
execle() |
execve() |
_Exit() |
_exit() |
fchmod() |
fchown() |
fcntl() |
fdatasync() |
fork() |
fpathconf() |
fstat() |
fsync() |
ftruncate() |
getegid() |
geteuid() |
getgid() |
getgroups() |
getpeername() |
getpgrp() |
getpid() |
getppid() |
getsockname() |
getsockopt() |
getuid() |
kill() |
link() |
listen() |
lseek() |
lstat() |
mkdir() |
mkfifo() |
open() |
pathconf() |
pause() |
pipe() |
poll() |
posix_trace_event() |
pselect() |
raise() |
read() |
readlink() |
recv() |
recvfrom() |
recvmsg() |
rename() |
sendto() |
setgid() |
setpgid() |
setsid() |
setsockopt() |
setuid() |
shutdown() |
sigaction() |
sigaddset() |
sigdelset() |
sigemptyset() |
sigfillset() |
sigismember() |
signal() |
sigpause() |
sigpending() |
sigprocmask() |
sigqueue() |
sigset() |
sigsuspend() |
sleep() |
socket() |
socketpair() |
stat() |
symlink() |
sysconf() |
tcdrain() |
tcflow() |
tcflush() |
tcgetattr() |
tcgetpgrp() |
tcsendbreak() |
tcsetattr() |
tcsetpgrp() |
time() |
timer_getoverrun() |
timer_gettime() |
timer_settime() |
times() |
umask() |
uname() |
unlink() |
utime() |
wait() |
waitpid() |
|
|
24.Система регистрации в UNIX(SYSLOG)и управление системой SYSLOG
Регистрация системных сообщений, система syslog
Система syslog в операционных системах семейства UNIX представляет собой полную систему регистрации и управления информацией, которую генерируют ядро системы и системные утилиты. Система syslog очень гибкая. С ее помощью можно сортировать сообщения по их источникам, степени важности, а так же направлять в файлы или на терминалы. Система syslog состоит из трех частей:
демон syslogd и его конфигурационный файл /etc/syslog.conf
библиотечные программы openlog, syslog, closelog, которые используются программистами для обмена данными с syslogd (в данном курсе они не рассматриваются)
программа пользовательского уровня logger для записи сообщений
Демон syslogd запускается во время начальной загрузки и работает непрерывно. Если вы изменили конфигурационный файл /etc/syslog.conf, нужно перезапустить syslogd, послав ему сигнал HUP (или 1). Сделать это можно, узнав по команде ps -ax pid процесса syslogd, введя затем команду kill.
# ps -ax | grep syslogd
# kill -1 <pid>
Можно поступить проще. В файле /var/run/syslog.pid записан pid процесса syslogd. Поэтому можно дать команду:
# kill -1 `cat /var/run/syslog.pid`
(здесь используются обратные кавычки).
Демон syslogd по этой команде закроет все файлы регистрации, перечитает файл /etc/syslog.conf и запустит регистрацию снова.