- •1Изучение unix® (Linux)
 - •1.1Человеко-машинные системы
 - •1.2Процедурные системы
 - •1.3Проективные системы
 - •1.4Открытые технологии
 - •1.4.1История развития gnu/Linux
 - •1.4.2Архитектура и философия unix®.
 - •2Компоненты unix®
 - •2.1Ядро
 - •2.2Управление памятью
 - •2.3Управление процессами
 - •2.4Демоны
 - •2.5Понятие файла в Linux
 - •2.6Организация хранения файлов
 - •2.6.1Что такое файловая система?
 - •2.7Файловые системы Linux
 - •2.8Утилиты
 - •2.9Типы программ
 - •3Процедура загрузки ос Linux
 - •3.1Основные конфигурационные файлы
 - •3.2Загрузка в однопользовательском режиме
 - •3.3Настройка общесистемных сервисов
 - •3.3.1Редактирование файла /etc/fstab
 - •3.4Файлы и разделы подкачки
 - •3.5Запуск демонов
 - •3.6Процессы
 - •3.7Управление процессами
 - •3.7.1Команда ps
 - •3.7.2Команда top
 - •3.7.3Приоритеты
 - •3.7.4Сигналы и команда kill
 - •3.7.5Перевод процесса в фоновый режим
 - •3.8Gnu grub загрузчик
 - •3.8.1Что такое grub?
 - •3.8.2Компиляция и инсталляция программного пакета grub
 - •3.8.3Инсталляция загрузчика grub
 - •3.8.4Конфигурация grub
 - •4Справочная система Linux
 - •4.1Руководство (man)
 - •4.1.1Утилита man
 - •4.2Утилиты whatis и apropos
 - •4.3Работа с man
 - •4.3.1Система info
 - •4.3.3Howto файлы
 - •4.3.4Ресурсы в Интеренете.
 - •5Оболочка, Shell, командный интерпетатор.
 - •5.1Начало работы с Shell
 - •5.2Программы
 - •5.2.1Выполнение команд
 - •5.3Команды Shell
 - •5.3.1Опции
 - •5.3.2Аргументы
 - •5.3.3Исключения
 - •5.4Виртуальные консоли
 - •5.5Псевдонимы и переменные
 - •5.6Навигация и редактирование
 - •5.7История команд
 - •5.8Простые регулярные выражения
 - •5.9Запуск команды на выполнение
 - •5.10Стандартный ввод/вывод
 - •5.11Фильтры
 - •6Shell как язык программирования
 - •6.1Сценарий
 - •6.2Запуск сценария
 - •6.3Встроенные переменные
 - •6.4Условия проверки
 - •6.4.1Сложные условия поиска:
 - •6.4.2Условный оператор "if"
 - •6.4.3Конструкции
 - •6.4.4Оператор вызова ("case")
 - •6.4.5Пустой оператор
 - •6.5Функции в shell
 - •6.6Популярные команды
 - •6.6.1Поиск файлов.
 - •6.6.2Поиск внутри файла
 - •7Управление пользователями
 - •7.1Структура файла /etc/passwd
 - •7.2Структура файла /etc/group
 - •7.3Псевдопользователи
 - •7.4Команды работы с учетными записями пользователей
 - •8Установка программного обеспечения
 - •8.1Утилита rpm
 - •8.2Утилита Apt
 - •8.2.1Использование apt
 - •8.2.2Установка или обновление пакетов.
 - •8.2.3Удаление установленного пакета.
 - •8.2.4Обновление всех установленных пакетов
 - •8.2.5Поиск в репозитарии
 - •9Сборка по из исходных кодов
 - •9.1.1Необходимые сведения о программировании на языке Си
 - •9.1.2Инсталляция из исходных текстов
 - •10Файловая система
 - •10.1Основы работы файловых стистем
 - •10.1.1Файлы
 - •10.1.2Каталоги
 - •10.1.3Типы файлов
 - •10.1.4Файлы физических устройств
 - •10.1.5Именованные каналы (pipes)
 - •10.1.6Сокеты (sockets)
 - •10.1.7Символические ссылки
 - •10.1.8Права доступа к файлам и каталогам
 - •10.1.9Расширенные атрибуты доступа
 - •10.2Управление файловой системой
 - •10.2.1Разбиение диска на разделы, fdisk
 - •10.2.2Создание и монтирование файловых систем
 - •10.2.3Команды для работы с файлами
 - •10.3Команда find и символы шаблонов для имен файлов
 - •10.4Команда split — разбиваем файл на несколько частей
 - •10.5Сравнение файлов и команда patch
 - •10.6Команды архивирования файлов
 - •10.6.1Программа tar
 - •10.6.2Программа gzip
 - •10.6.3Программа bzip2
 - •10.6.4Примеры применения tar
 - •11Сетевая файловая система (nfs)
 - •11.1Запуск nfs
 - •11.2Монтирование тома nfs
 - •11.4Файл exports
 - •12Популярные приложения
 - •12.1Эффективная работа с vim
 - •12.2Эффективно передвигаемся по файлу
 - •12.3Вставка
 - •12.4.1Использование mc
 - •12.4.2Встроенный ftp-клиент
 - •12.4.3Переименование групп файлов
 - •13Сетевые средства Linux
 - •13.1Общие сведения о сетях
 - •13.1.1Стек tcp/ip
 - •13.1.2Адресация Internet
 - •13.1.3Система имен доменов (dns - Domain Name System)
 - •13.1.4Модель Клиент-Сервер
 - •13.1.5Адреса tcp/ip
 - •13.1.6Преобразование адресов
 - •13.2Конфигурация сетевых интерфесов
 - •13.2.1Адрес сети
 - •13.2.2Широковещательный адрес
 - •13.2.3Адрес шлюза
 - •13.2.4Адрес сервера имен
 - •13.2.5Маска сети
 - •13.3Файлы конфигурации tcp/ip
 - •13.3.1Файл /etc/hosts
 - •13.3.2Файл /etc/networks
 - •13.3.3Файл /etc/init.D/network
 - •13.3.4Параметры dns
 - •13.3.5Файл host.Conf
 - •13.3.6Файл /etc/resolv.Conf
 - •13.4Команда ifconfig
 - •13.5Маршрутизация
 - •14Контроль состояния сети
 - •14.3Команда lsof
 - •14.4Проверка arp-таблиц
 - •15Управление работой межсетевого экрана (брандмауэра) netfilter
 - •15.1Настройка межсетевого экрана Iptables
 - •15.2Порядок прохождения таблиц и цепочек
 - •15.2.1Общие положения
 - •15.3Как строить правила - основы
 - •15.3.1Команды
 - •15.3.2Критерии
 - •15.3.3Общие критерии
 - •15.4Неявные критерии
 - •15.4.1Tcp критерии
 - •15.4.2Udp критерии
 - •15.4.3Критерий mac
 - •16Shorewall: iptables с человеческим лицом
 - •16.1Базовая настройка
 - •16.2Фильтрация трафика
 - •16.3Дополнительные возможности
 - •16.3.1Вместо заключения
 - •16.4Приложение. Устанавливаем Shorewall
 - •17Управление ядром
 - •17.1Версия ядра
 - •17.2Причины для пересборки ядра
 - •17.3Подготовка
 - •17.4Компиляция (Make)
 - •17.5Установка заплат
 - •17.6Сборка единичного модуля
 - •18Мониторинг системы
 - •18.1Система ведения логов
 - •18.2Демон Syslogd
 - •18.2.1Параметры запуска
 - •18.2.2Сигналы
 - •18.2.3Файл конфигурации
 - •18.2.4Советы по настройке syslog
 - •18.3Logger - утилита записи в журнал
 - •18.4Logrotate или "что делать со старыми журналами?"
 - •18.5Logwatch или "как извлечь полезную информация из кучи мусора?"
 - •19Cron - планирование заданий
 - •19.1Настройка задач Cron
 - •19.2Запуск и остановка службы
 - •19.3Системное время
 - •20Резервное копирование в Linux
 - •20.1Использование серверов резервного копирования
 - •20.2Аппаратные средства, предназначенные для создания резервных копий
 - •20.3Способы резервного копирования
 - •20.3.1Резервное копирование, инициируемое клиентом
 - •20.3.2Резервное копирование, инициируемое сервером
 - •20.4Использование tar
 - •20.4.1Возможности tar
 - •20.4.2Список команд tar:
 - •20.4.3Использование smbtar
 - •20.4.4Создание разделяемых объектов резервного копирования
 - •20.5Обзор и установка системы резервного копирования BackupPc
 - •20.5.1Введение
 - •20.5.2Требования к установке
 - •20.5.3Настройка BackupPc
 - •20.5.4Интерфейс
 - •21Основы безопасности Linux
 - •21.1Меры предосторожности
 - •21.2Принципы защиты
 - •21.3Идентификаторы пользователя и группы пользователей
 - •21.4.1Безопасность файлов
 - •21.5Важные системные файлы
 - •21.6Проблемы защиты /etc/passwd и /etc/shadow
 - •21.6.1Скрытые пароли
 - •21.6.2Устаревание паролей
 
16.3.1Вместо заключения
Shorewall позволяет создавать конфигурации практически любой сложности: с несколькими провайдерами (в том числе разделяющими один сетевой интерфейс), мостами, шейпингом и учетом трафика, VPN... На худой конец, его можно сравнительно легко модифицировать под свои нужды, а лицензия (GPLv2) позволяет даже распространять измененные копии. Искусство в том, чтобы понять, не забиваете ли вы микроскопом гвозди (и не идете ли с саблей на танки), но выбор инструмента, оптимальным образом подходящего под конкретную задачу, - это тема совсем для другой статьи. Или даже учебника.
16.4Приложение. Устанавливаем Shorewall
Из всех крупных дистрибутивов Linux, по умолчанию Shorewall включен только в Mandriva (где он является межсетевым экраном по умолчанию) и репозитории Debian. Пакеты существуют для Red Hat/Fedora и других RPM-дистрибутивов, а также Arch Linux.
Если все это не про вас, установить Shorewall можно вручную. Вам потребуется два архива: shorewall-common-4.2.x, содержащий файлы, общие для всех разновидностей Shorewall, и компилятор: shorewall-perl-4.2.x или shorewall-shell-4.2.x. Настоятельно рекомендую также загрузить и документацию: она содержится в архиве shorewall-docs-html-4.2.x. А вот shorewall-lite пока можете оставить: это облегченный вариант, позволяющий загружать уже готовые правила, заранее сгенерированные на отдельном компьютере, но не компилировать их. С зависимостями проблем возникнуть не должно: потребуется достаточно новое ядро и Iptables/iproute2, а также интерпретатор Perl с рядом распространенных модулей или Bash. Все подробности можно найти в документации.
17Управление ядром
17.1Версия ядра
Номер версии ядра состоит из трех компонентов - старшего (major), младшего (middle) и версии номера исправления (patch-level или minor). Старший номер увеличивается при внесении существенных изменений в ядро. Младший позволяет судить о устойчивости (стабильности) ядра. Четные номера зарезервированы для стабильных версий, а нечетные присваиваются версиям, которые находятся в стадии разработки и могут изменяться. Ядра, находящиеся в стадии разработки могут неоднократно подвергаться модернизации. Рассмотрим три примера : первый 2.4.19-трех компонентный номер стабильного ядра 19 версия исправления (patch-level или minor); второй 2.5.70 -70-я стадия модернизации нестабильного ядра (5); третий - 2.4.18-14 - четырехкомпонентный номер ядра 4 -ый компонент - номер дополнения (EXTRAVERSION)-наиболее часто встречается в системах Red Hat, ASPLinux.
Посмотреть свою версию ядра можно командой
# cat /proc/version
17.2Причины для пересборки ядра
Существует несколько причин, по которым вы можете принять решение, что вам необходима сборка ядра вместе с тем достаточно и одной из них:
Вы занимаетесь разработкой и тестированием ядра.
Вы установили новое оборудование, не поддерживаемое текущей версией.
Вы решили собрать ядро, оптимизированное только под ваше оборудование.
У Вас устаревшее/несовременное ядро.
Разрабатываемое вами программное обеспечение требует специальной настройки ядра.
Вы решили пересобрать ядро для ускорения работы вашей машины или для минимизации ядра.
