Книга "Python в системном администрировании UNIX и Linux" демонстрирует, как эффективно решать разнообразные задачи управления серверами UNIX и Linux с помощью языка программирования Python. Каждая глава посвящена определенной задаче, например многозадачности, резервному копированию данных или созданию собственных инструментов командной строки, и предлагает практические методы ее решения на языке Python.
Среди рассматриваемых тем: организация ветвления процессов и передача информации между ними с использованием сетевых механизмов, создание интерактивных утилит с графическим интерфейсом, организация взаимодействия с базами данных и создание приложений для Google App Engine. Кроме того, авторы книги создали доступную для загрузки и свободно распространяемую виртуальную машину на базе Ubuntu, включающую исходные тексты примеров из книги и способную выполнять примеры, использующие SNMP, IPython, SQLAlchemy и многие другие утилиты.
Книга "Python в системном администрировании UNIX и Linux" рассчитано на широкий круг специалистов - всех, кто только начинает осваивать язык Python, будь то опытные разработчики сценариев на языках командной оболочки или относительно мало знакомые с программированием вообще.
Содержание
Предисловие
Введение. Глава 1
Введение
Почему Python?
Мотивация
Основы
Выполнение инструкций в языке Python
Использование функций в языке Python
Повторное использование программного кода
с помощью инструкции import
Глава 2. IPython
Установка IPython
Базовые понятия
Справка по специальным функциям
Командная оболочка UNIX
Сбор информации
Автоматизация и сокращения
В заключение
Глава 3. Текст
Встроенные компоненты Python и модули
Анализ журналов
ElementTree
В заключение
Глава 4. Создание документации и отчетов
Автоматизированный сбор информации
Сбор информации вручную
Форматирование информации
Распространение информации
В заключение
Глава 5. Сети
Сетевые клиенты
Средства вызова удаленных процедур
SSH
Twisted
Scapy
Создание сценариев с использованием Scapy
Глава 6. Данные
Введение
Использование модуля OS для взаимодействия с данными
Копирование, перемещение, переименование
и удаление данных
Работа с путями, каталогами и файлами
Сравнение данных
Объединение данных
Поиск файлов и каталогов по шаблону
Обертка для rsync
Метаданные: данные о данных
Архивирование, сжатие, отображение и восстановление
Использование модуля tarfile для создания архивов TAR
Использование модуля tarfile для проверки
содержимого файлов TAR
Глава 7. SNMP
Введение
Краткое введение в SNMP
IPython и Net-SNMP
Исследование центра обработки данных
Получение множества значений с помощью SNMP
Создание гибридных инструментов SNMP
Расширение возможностей Net-SNMP
Управление устройствами через SNMP
Интеграция SNMP в сеть предприятия с помощью Zenoss
Глава 8. Окрошка из операционных систем
Введение
Кросс-платформенное программирование
на языке Python в UNIX
PyInotify
OS X
Администрирование систем Red Hat Linux
Администрирование Ubuntu
Администрирование систем Solaris
Виртуализация
Облачная обработка данных
Использование Zenoss для управления
серверами Windows из Linux
Глава 9. Управление пакетами
Введение
Setuptools и пакеты Python Eggs
Использование easy_install
Дополнительные особенности easy_install
Создание пакетов
Точки входа и сценарии консоли
Регистрация пакета в Python Package Index
Distutils
Buildout
Использование Buildout
Разработка с использованием Buildout
virtualenv
Менеджер пакетов EPM
Глава 10. Процессы и многозадачность
Введение
Модуль subprocess
Использование программы Supervisor
для управления процессами
Использование программы screen
для управления процессами
Потоки выполнения в Python
Процессы
Модуль processing
Планирование запуска процессов Python
Запуск демона
В заключение
Глава 11. Создание графического интерфейса
Теория создания графического интерфейса
Создание простого приложения PyGTK
Создание приложения PyGTK для просмотра
файла журнала веб-сервера Apache
Создание приложения для просмотра файла журнала
веб-сервера Apache с использованием curses
Веб-приложения
Django
В заключение
Глава 12. Сохранность данных
Простая сериализация
Реляционная сериализация
В заключение
Глава 13. Командная строка
Введение
Основы использования потока стандартного ввода
Введение в optparse
Простые шаблоны использования optparse
Внедрение команд оболочки в инструменты
командной строки на языке Python
Интеграция конфигурационных файлов
В заключение
Глава 14. Практические примеры
Управление DNS с помощью сценариев на языке Python
Использование протокола LDAP для работы с OpenLDAP, Active
Directory и другими продуктами из сценариев на языке Python
Составление отчета на основе файлов журналов Apache
Зеркало FTP
Приложение. Функции обратного вызова
|