Оглавление Введение 1
Часть I. Выбор и установка дистрибутива
3
Глава 1. Выбор дистрибутива
5
1.1. Краткая история Linux 5
1.2. Какой дистрибутив покупать? 8
1.2.1. Red Hat и Mandrake 9
1.2.2. Fedora 9
1.2.3. Mandiva 10
1.2.4. ALT Linux и ASPLinux 10
1.2.5. Debian Sarge 11
1.2.6. Ubuntu 11
1.2.7. Slackware 12
1.2.8. openSUSE 12
Глава 2. Особенности установки Linux
14
2.1. Системные требования 14
2.2. Параметры ядра 15
2.3. Проверка носителей 20
2.4. Изменение таблицы разделов 20
2.5. Выбор групп пакетов 26
2.6. Выбор графической среды 28
2.7. Установка пароля root 29
2.8. Создание учетных записей пользователей 29
2.9. Параметры безопасности 31
2.10. Порядок установки ОС 33
2.11. Приступаем к установке Linux 33
2.12. Проблемы при установке 33
2.12.1. Проблема с APIC 33
2.12.2. Ошибка: kernel panic:VFS: Unable to mount root fs 34
2.12.3. Проблемы с LCD-мониторами 34
Часть II. Основные сведения о Linux
35
Глава 3. Сразу после установки
37
3.1. Вход в систему и завершение работы 37
3.2. Первый запуск Fedora 40
3.3. Выбор разрешения экрана в Fedora 8 45
3.4. Проблема с разрешением шрифтов 45
3.5. Выбор раскладки клавиатуры 47
3.6. Отключение ненужных сервисов 50
Глава 4. Файловая система Linux
57
4.1. Файловые системы, поддерживаемые Linux 57
4.1.1. Выбор файловой системы 59
4.1.2. Linux и файловые системы Windows 60
4.1.3. Сменные носители 61
4.2. Особенности файловой системы Linux 61
4.2.1. Имена файлов в Linux 61
4.2.2. Файлы и устройства 62
4.2.3. Корневая файловая система и монтирование 63
4.2.4. Стандартные каталоги Linux 64
4.3. Внутреннее строение файловой системы 65
4.4. Команды для работы с файлами и каталогами 69
4.4.1. Работа с файлами 69
4.4.2. Работа с каталогами 71
4.5. Использование ссылок. Команда ln 74
4.6. Права доступа. Команды chown и chmod 75
4.6.1. Права доступа к файлам и каталогам 75
4.6.2. Смена владельца файла 78
4.6.3. Специальные права доступа (SUID и SGID) 78
4.7. Монтирование файловых систем 78
4.7.1. Команды mount и umount 78
4.7.2. Файлы устройств и монтирование 80
4.7.3. Опции монтирования файловых систем 83
4.7.4. Монтирование разделов при загрузке 84
4.7.5. Подробно о UUID и файле /etc/fstab 86
4.7.6. Монтирование Flash-дисков 90
4.8. Настройка журнала файловой системы ext3 91
4.9. Использование программы fdisk для разметки диска 92
Глава 5. Командный интерпретатор bash
98
5.1. Что нужно знать о bash 98
5.2. Автоматизация задач с помощью bash 99
5.3. Привет, мир! 100
5.4. Использование переменных в собственных сценариях 101
5.5. Передача параметров сценарию 102
5.6. Массивы и bash 103
5.7. Циклы 103
5.8. Условные операторы 104
Глава 6. Пользователи и группы
107
6.1. Многопользовательская система 107
6.2. Пользователь root 108
6.2.1. Максимальные полномочия 108
6.2.2. Как работать без root 110
6.2.3. Переход к традиционной учетной записи root 114
6.3. Создание, удаление и модификация пользователей стандартными средствами 117
6.4. Группы пользователей 120
6.4.1. Управление пользователями и группами с помощью графических конфигураторов 120
6.4.2. Конфигуратор system-config-users в Fedora 121
6.4.3. Конфигуратор drakuser в Linux Mandriva 122
6.4.4. Пользователи и группы в Ubuntu 123
6.4.5. Графический конфигуратор в openSUSE 126
Глава 7. Пакеты и управление пакетами
130
7.1. Что такое пакет 130
7.2. Репозитарии пакетов 133
7.3. Программы для управления пакетами 134
7.4. Программа rpm (все Red Hat-совместимые дистрибутивы) 135
7.5. Графический менеджер пакетов Rpmdrake (Mandrake и Mandriva) 136
7.6. Программа urpmi 139
7.6.1. Установка пакетов. Управления источниками пакетов 140
7.6.2. Обновление и удаление пакетов 146
7.6.3. Поиск пакета. Получение информации о пакете 147
7.7. Программа yum 147
7.7.1. Использование yum 147
7.7.2. Управление источниками пакетов 151
7.7.3. Установка пакетов через прокси-сервер 153
7.8. Графический менеджер пакетов в Fedora: pirut или system-config-packages 153
7.9. Программы dkpg и apt-get: установка пакетов в Debian/Ubuntu 156
7.9.1. Программа dpkg 156
7.9.2. Программа apt-get 158
7.9.3. Полный листинг файла /etc/apt/sources.list 160
7.9.4. Установка RPM-пакетов в Debian/Ubuntu 161
7.9.5. Графический менеджер Synaptic в Debian/Ubuntu 161
7.10. Установка пакетов в Slackware 162
7.10.1. Управление пакетами 164
7.10.2. Нет нужного пакета: вам поможет программа rpm2tgz 167
7.10.3. Программа slackpkg: установка пакетов из Интернета 168
7.11. Установка программ в openSUSE 169
7.11.1. Менеджер пакетов zypper 169
7.11.2. Графический менеджер пакетов openSUSE 173
Часть III. Настройка сети и Интернета
179
Глава 8. Настройка локальной сети
181
8.1. Локальная сеть с использованием технологии Fast Ethernet 181
8.2. Файлы конфигурации сети в Linux 184
8.3. Настройка сети c помощью конфигуратора 186
8.3.1. Настройка сети в Linux Mandriva 186
8.3.2. Настройка сети в Fedora 193
8.3.3. Конфигуратор network-admin в Debian и Ubuntu 200
8.3.4. Конфигуратор netconfig в Slackware 201
Глава 9. Настройка модемного доступа к Интернету
202
9.1. Преимущества и недостатки коммутируемого соединения 202
9.2. Выбор модема 203
9.3. Подключение модема 205
9.4. Программа KPPP 206
9.5. Программа GNOME PPP 213
9.6. Программа KInternet: модемное соединение в openSUSE 217
9.7. Программа wvdial 222
Глава 10. Настройка ADSL-доступа к Интернету
224
10.1. Причина популярности DSL-соединений 224
10.2. Физическое подключение DSL-модема 225
10.3. Настройка DSL-соединения в openSUSE 225
10.4. Настройка DSL-соединения в Mandriva Linux 230
10.5. Настройка DSL-соединения в Fedora (ASPLinux) 234
10.6. Настройка DSL-соединения в Debian/Ubuntu 236
10.7. DSL и Slackware 240
Глава 11. GPRS-доступ к Интернету
244
11.1. Интернет по мобильному телефону 244
11.2. Выбор телефона и его подключение к компьютеру 245
11.3. Перекомпиляция ядра Linux 245
11.4. Настройка GPRS 245
Часть IV. Linux дома и в офисе
249
Глава 12. Поддержка форматов мультимедиа
251
12.1. Что такое кодеки и почему их нет в Linux? 251
12.2. Настройка дистрибутива Fedora 8 252
12.3. Установка кодеков в openSUSE 10.3 254
12.4. Установка кодеков в Ubuntu 7 262
Глава 13. Настройка X.Org
263
13.1. Конфигурационный файл xorg.conf 263
13.2. Графические конфигураторы X.Org 271
13.2.1. Для Linux Mandriva 271
13.2.2. Для Fedora/ASPLinux 273
13.2.3. Для Debian 273
13.2.4. Для Slackware Linux 275
13.3. Настройка TV-Out 277
13.4. Подключение TV-тюнера 279
13.5. Проблемы с некоторыми видеокартами 283
13.5.1. Видеокарта ATI Radeon 283
13.5.2. Видеокарта nVidia 283
13.6. Трехмерный рабочий стол 285
13.6.1. Трехмерная "надежность" 285
13.6.2. Установка Compiz Fusion в openSUSE 10.3 287
13.6.3. Установка Compiz Fusion в Fedora 8 302
13.7. Настройка Compiz Fusion 304
13.7.1. Конфигурационные файлы Compiz 304
13.7.2. Включение менеджера графических тем Emerald 305
13.7.3. Настройка эффектов рабочего стола 306
13.7.4. Удаление Compiz 313
Глава 14. Офисный пакет OpenOffice
316
14.1. Кратко об OpenOffice 316
14.2. Текстовый процессор OOо Writer 317
14.2.1. Работа с текстом 317
14.2.2. Работа с рисунками 319
14.2.3. Работа с таблицами 325
14.2.4. Печать документов 331
14.3. Электронная таблица OOо Calc 332
14.3.1. Если вы знакомы с MS Excel… 332
14.3.2. Комбинации клавиш 334
14.3.3. Формулы 336
14.3.4. Построение диаграмм 339
14.4. Создание презентации: OOo Impress 343
14.4.1. Что такое презентация? 343
14.4.2. Использование мастера презентаций. Создание новой презентации 344
14.4.3. Работа со слайдами 348
14.4.4. Сохранение презентации 354
Глава 15. Программа GIMP
355
15.1. Кратко о программе GIMP 355
15.2. Начало работы 356
15.3. Обработка фотографий 356
15.3.1. Масштабирование 358
15.3.2. Вращение 359
15.3.3. Кадрирование 361
15.3.4. Инструмент Размывание/Резкость 363
15.4. Windows-версия GIMP 364
Глава 16. Программы для "прожига" дисков
365
16.1. Что нужно для записи CD и DVD? 365
16.2. Отдельно о DVD 366
16.2.1. История создания DVD 367
16.2.2. Преимущества и недостатки DVD 368
16.2.3. Форматы и маркировка DVD-дисков 369
16.2.4. Регионы DVD-Video 372
16.2.5. Некоторые рекомендации относительно DVD 373
16.3. Программа K3b 374
16.4. Программа Nero для Linux 381
16.5. Программа Brasero: запись CD/DVD в openSUSE 383
16.6. Программа GnomeBaker 388
16.7. Стандартные средства GNOME 389
16.8. Запись CD/DVD из консоли 390
16.9. Чтение "битых" компакт-дисков 390
Глава 17. Популярные программы для работы с Интернетом
391
17.1. Браузер Firefox 391
17.1.1. Настройка Firefox в Fedora 8 392
17.1.2. Настройка Firefox в Ubuntu 392
17.2. Браузер Opera 394
17.3. Почтовый клиент Kmail 395
17.3.1. Первый запуск 395
17.3.2. Учетные записи 399
17.3.3. Работа с программой 402
17.4. Почтовый клиент Evolution 404
17.5. Клиент мгновенного обмена сообщениями Pidgin 405
17.6. FTP-клиенты 410
17.7. Менеджер закачек 412
17.8. P2P-клиенты 414
17.9. IRC-клиент 415
Глава 18. Виртуальные машины
420
18.1. Зачем нужна виртуальная машина? 420
18.2. Установка эмулятора VirtualBox 421
18.3. Создание новой виртуальной машины 422
18.4. Изменение параметров виртуальной машины 428
18.4.1. Общие параметры 428
18.4.2. Виртуальные жесткие диски 429
18.4.3. Параметры CD/DVD 430
18.4.4. Параметры Floppy 431
18.4.5. А нужен ли звук? 431
18.4.6. Параметры сети 432
18.4.7. Последовательные порты 435
18.5. Запуск виртуальной машины и установка гостевой операционной системы 436
Глава 19. Эмулятор Cedega. Запуск Windows-игр в Linux
439
19.1. Все, что нужно знать о Cedega 439
19.2. Системные требования 440
19.3. Установка эмулятора 441
19.4. Использование Cedega. Установка и запуск игр 446
Часть V. Системные трюки, или Linux изнутри
449
Глава 20. Ядро
451
20.1. Процесс загрузки ядра 451
20.2. Параметры ядра 461
20.3. Компиляция ядра 464
20.3.1. Установка исходных кодов ядра 465
20.3.2. Настройка ядра 465
20.3.3. Компиляция ядра 469
Глава 21. Загрузчики Linux
473
21.1. Основные загрузчики 473
21.2. Загрузчик GRUB 473
21.2.1. Конфигурационный файл 473
21.2.2. Установка загрузчика 475
21.2.3. Установка собственного фона загрузчика GRUB 475
21.2.4. Постоянные имена и GRUB 476
21.2.5. Восстановление загрузчика GRUB 476
21.2.6. Две и более ОС Linux на одном компьютере 477
21.3. Загрузчик LILO 479
21.3.1. Конфигурационный файл 480
21.3.2. Запись загрузчика 482
21.3.3. Восстановление загрузчика LILO 483
Глава 22. Системы инициализации Linux
484
22.1. Начальная загрузка Linux 484
22.2. Система инициализации init 485
22.3. Система инициализации initng 490
22.3.1. Установка initng 491
22.3.2. Конфигурационные файлы initng 492
22.3.3. Управление initng 494
22.4. Система инициализации upstart 496
22.4.1. Как работает upstart 496
22.4.2. Конфигурационные файлы upstart 497
22.5. Система инициализации Slackware 498
Глава 23. Процессы
501
23.1. Аварийное завершение процесса 501
23.2. Программа top: кто больше всех расходует процессорное время 503
23.3. Изменение приоритета процесса 505
23.4. Перенаправление ввода/вывода 505
Глава 24. Псевдофайловые системы sysfs и proc
507
24.1. Что такое псевдофайловая система 507
24.2. Виртуальная файловая система sysfs 508
24.3. Виртуальная файловая система proc 508
24.3.1. Информационные файлы 509
24.3.2. Файлы, позволяющие изменять параметры ядра 509
24.3.3. Файлы, изменяющие параметры сети 511
24.3.4. Файлы, изменяющие параметры виртуальной памяти 511
24.3.5. Файлы, позволяющие изменить параметры файловых систем 512
24.4. Как сохранить изменения 513
Глава 25. Команды Linux, о которых нужно знать каждому линуксоиду
514
25.1. Общие команды 514
25.1.1. Команда arch — вывод архитектуры компьютера 514
25.1.2. Команда clear — очистка экрана 514
25.1.3. Команда date 515
25.1.4. Команда echo 515
25.1.5. Команда exit — выход из системы 515
25.1.6. Команда man — вывод справки 515
25.1.7. Команда passwd — изменение пароля 516
25.1.8. Команда startx — запуск графического интерфейса X.Org 516
25.1.9. Команда uptime — информация о работе системы 516
25.1.10. Команда users — информация о пользователях 516
25.1.11. Команды w, who и whoami — информация о пользователях 518
25.1.12. Команда xf86config — настройка графической подсистемы 519
25.2. Команды для работы с текстом 519
25.2.1. Команда diff — сравнение файлов 519
25.2.2. Команда grep — текстовый фильтр 520
25.2.3. Команды more и less — постраничный вывод 520
25.2.4. Команды head и tail — вывод начала и хвоста файла 520
25.2.5. Команда wc — подсчет слов в файле 521
25.3. Команды для работы с Интернетом 521
25.3.1. Команда ftp — стандартный FTP-клиент 521
25.3.2. Команда lynx — текстовый браузер 523
25.3.3. Команда mail — чтение почты и отправка сообщений 523
25.4. Команды системного администратора 524
25.4.1. Команды free и df — информация о системных ресурсах 524
25.4.2. Команда md5sum — вычисление контрольного кода MD5 524
25.4.3. Команды ssh и telnet — удаленный вход в систему 525
Глава 26. Конфигурационные файлы Linux
526
26.1. Каталог /etc 526
26.2. Каталог /etc/acpi 527
26.3. Каталог /etc/alsa 527
26.4. Каталог /etc/audit 527
26.5. Каталог /etc/avahi — файлы конфигурации демона Avahi 528
26.6. Каталог /etc/blkid 528
26.7. Файлы конфигурации планировщиков задач 529
26.8. Каталог /etc/cups 529
26.9. Файл /etc/fonts/fonts.conf 532
26.10. Каталог /etc/gdm 532
26.11. Файлы конфигурации популярных сетевых служб 533
26.12. Каталог /etc/logrotate.d 533
26.13. Каталог /etc/mail 534
26.14. Каталог /etc/ntp 535
26.15. Каталог /etc/openldap 535
26.16. Каталоги /etc/pam.d и /etc/security 535
26.17. Каталог /etc/ppp 535
26.18. Каталог /etc/rc.d 536
26.19. Каталог /etc/sane.d 536
26.20. Каталог /etc/selinux 536
26.21. Каталог /etc/skel 536
26.22. Каталог /etc/sysconfig 537
26.23. Каталог /etc/X11 538
26.24. Конфигурационные файлы yum 538
26.25. Основные конфигурационные файлы сети 538
26.26. Остальные конфигурационные файлы каталога /etc 538
Глава 27. Протоколирование системы. Журналы
540
27.1. Демоны протоколирования системы 540
27.2. Изучаем файлы журналов 543
Часть VI. Linux на сервере
545
Глава 28. Обеспечение безопасности сервера
547
28.1. Защита от "восстановления пароля root" 547
28.2. Защита от перезагрузки 550
28.3. Отключение учетной записи root: нестандартный метод 551
28.4. Отключение учетной записи root средствами kdm 554
28.5. Система управления доступом 554
Глава 29. Модули аутентификации PAM
555
29.1. Что это такое? 555
29.2. Ограничение доступа к системе 556
29.3. Борьба с простыми паролями 557
29.4. Ограничение на используемые системные ресурсы 558
29.5. Регистрация только в рабочее время 560
Глава 30. Программа sXid
561
30.1. Специальный контроль за специальными правами 561
30.2. Установка программы 562
30.3. Настройка sXid 562
30.4. Запуск и проверка программы 563
Глава 31. Оптимизация системы
565
31.1. Оптимизация подкачки 565
31.2. Изменение планировщика ввода/вывода 566
31.3. Создание файла подкачки 568
31.4. Двухканальный режим памяти 568
Глава 32. Автоматизация выполнения задач. Планировщики задач crond, anacron, atd
570
32.1. Планировщик задач — зачем он нужен 570
32.2. Планировщик crond 570
32.3. Планировщик anacron 572
32.4. Разовое выполнение команд — демон atd 573
Глава 33. Система управления доступом SELinux
575
33.1. Что такое система управления доступом 575
33.2. Работаем с SELinux в Fedora и ASPLinux 576
33.3. Аудит политик 581
33.4. Создание роли 581
33.5. Псевдофайловая система /selinux 582
33.6. Пользователи и SELinux 583
33.7. Конфигуратор system-config-securitylevel (system-config-selinux) 584
33.8. Журналы SELinux 586
Глава 34. Использование брандмауэра
587
34.1. Что такое брандмауэр 587
34.2. Установка Firestarter 589
34.3. Первоначальная настройка 589
34.4. Формирование (редактирование) правил 592
Глава 35. Утилита GnuPG
594
35.1. Электронная подпись 594
35.2. Использование программы 594
Глава 36. Суперсервер xinetd
601
36.1. Сетевые сервисы и суперсервер 601
36.2. Конфигурационный файл суперсервера 601
Глава 37. Безопасный удаленный доступ. OpenSSH
604
37.1. Протокол SSH 604
37.2. Использование SSH-клиента 605
37.3. Настройка SSH-сервера 606
Глава 38. Web-сервер. Связка Apache + PHP + MySQL
611
38.1. Самый популярный Web-сервер 611
38.2. Установка Web-сервера и интерпретатора PHP. Выбор версии 611
38.3. Тестирование настроек 613
38.4. Файл конфигурации Web-сервера 615
38.4.1. Базовая настройка 615
38.4.2. Самые полезные директивы файла конфигурации 616
38.4.3. Директивы Directory, Limit, Location, Files 618
38.5. Управление запуском сервера Apache 621
38.6. Оптимизация Apache 621
38.7. Установка сервера баз данных MySQL 623
Глава 39. FTP-сервер
626
39.1. Зачем нужен FTP 626
39.2. Установка FTP-сервера 627
39.3. Конфигурационный файл 628
39.4. Настройка реального сервера 632
39.5. Оптимизация FTP-сервера 634
39.6. Программы ftpwho и ftpcount 637
39.7. Конфигуратор gproftpd 637
Глава 40. Почтовый сервер
639
40.1. Выбор MTA 639
40.2. Настройка Exim 641
40.2.1. Файл /etc/exim/exim.conf 641
40.2.2. Файлы /etc/mail/localdomains и /etc/mail/relaydomains 647
40.2.4. Файл псевдонимов — /etc/mail/aliases 648
40.2.5. Файл /etc/mail/access 648
Глава 41. Прокси-сервер. Squid и squidGuard
650
41.1. Зачем нужен прокси-сервер в локальной сети? 650
41.2. Базовая настройка Squid 651
41.3. Практические примеры 652
41.3.1. Управление доступом 652
41.3.2. Создание "черного" списка URL 653
41.3.3. Отказ от баннеров 653
41.4. Управление прокси-сервером squid 654
41.5. Настройка клиентов 654
41.6. Прозрачный прокси-сервер 654
41.7. squidGuard — ваше дополнительное "оружие" 657
Глава 42. DNS-сервер
661
42.1. Что такое DNS 661
42.2. Кэширующий сервер DNS 662
42.3. Полноценный DNS-сервер 666
42.4. Вторичный DNS-сервер 671
Глава 43. Сетевая файловая система NFS
672
43.1. Установка сервера и клиента 672
43.2. Настройка сервера 673
43.3. Монтирование удаленных файловых систем 674
Глава 44. Сервис Samba
675
44.1. Установка Samba 675
44.2. Базовая настройка Samba 675
44.3. Настройка общих ресурсов 676
44.4. Просмотр ресурсов Windows-сети 678
44.5. Оптимизация Samba 679
Глава 45. Chroot-окружение
680
45.1. Песочница 680
45.2. Пример создания chroot-окружения 681
Глава 46. Антивирус ClamAV
683
46.1. Зачем нужен антивирус в Linux 683
46.2. Установка ClamAV 684
46.3. Проверка файловой системы 685
46.4. Прозрачная проверка почты 685
46.5. Проверка Web-трафика 686
46.6. Клиентский антивирус 689
Глава 47. Поддержка RAID в Linux
690
47.1. Что такое RAID 690
47.2. Программные RAID-массивы 692
47.3. Создание программных массивов 693
47.4. Использование RAID-массива 696
47.5. Сбой и его имитация 697
Заключение 698
Приложения 699
Приложение 1. Графические интерфейсы: KDE и GNOME 701
П1.1. Полезные приемы при работе с KDE 702
П1.1.1. Быстрый запуск программ 703
П1.1.2. Системное меню приложения 704
П1.1.3. Управление окнами и рабочими столами 705
П1.1.4. Панель задач 706
П1.1.5. Изменение программного меню KDE 708
П1.2. Графическая среда GNOME 711
П1.2.1. Создание собственных действий в меню GNOME 713
П1.2.2. Апплеты GNOME 715
Приложение 2. Настройка принтера и сканера 721
П2.1. Настройка принтера 721
П2.2. Настройка сканера 725
П2.2.1. Программа xsane 725
П2.2.2. Проблемы с определением сканера 729
Приложение 3
. Особые операции при работе с файловой системой 734
П3.1. Создание и монтирование образов CD/DVD 734
П3.2. Запись образов на болванку 735
П3.3. Программа mkisofs 737
П3.4. Преобразование образов дисков 737
П3.5. Создание и монтирование файлов с файловой системой 738
П3.6. Создание файловой системы 738
П3.7. Проверка и восстановление файловой системы 739
П3.8. Смена корневой файловой системы. Команда chroot 740
П3.9. Подробно о монтировании NTFS 740
П3.10. Ограничение скорости CD/DVD 741
П3.11. Монтирование каталога к каталогу 741
Приложение 4. Установка Linux в VMWare 742
Приложение 5. Установка Debian 753
Приложение 6. Установка Slackware 771
Приложение 7. Установка Fedora 788
Приложение 8. Установка Mandriva 800
Приложение 9. Установка ALT Linux 807
Приложение 10. Установка OpenSUSE 814
Приложение 11. Установка Ubuntu 832
Приложение 12. Описание DVD 842
Предметный указатель 844