Программное обеспечение Linux
По итогам разговора на тему «какой спецкурс по Linux нам нужен» была выработана такая концепция. Linux распространяется всё шире и шире, так что большинство тех, кто видит его впервые, почти не представляют, с чем они имеют дело. Это принципиально новое положение дел: раньше знакомство с Linux было следствием как минимум знакомства с Linux-оидом, а возможно и активной просветительской деятельности со стороны этого нового знакомого .
Вот вам и концепция: «Мне сказали, что у меня — Linux! Что мне теперь делать?»
В каждой лекции предполагается не только информация для совсем неподготовленного пользователя, но и более глубокие сведения для пользователя «продвинутого». Linux — огромное пространство для изучения, хватит на всех.
По субъективным причинам развёрнутые планы лекций пока не готовы.
Об экзамене
Я очень хочу избежать разговора с незнакомыми людьми на не интересующие их темы. Для того, чтобы такой разговор побыстрее прекратить, я попрошу каждого максимально кратко ответить на один-два вопроса. Ответившие неверно освобождаются от сдачи экзамена досрочно и безо всякой оценки. С остальными пойдёт разговор более глубокий.
Материалы к лекциям
При подготовке к экзамену стоит стоит обратить внимание на:
лекции «Дистрибутивы Linux»: http://uneex.cs.msu.su/uneex/LecturesDistro2006
учебник «Введение в OC Linux»: http://heap.altlinux.ru/alt-docs/textbooks/LinuxIntro.george/index.html
конспект, сделанный Евгением Сыромятниковым: http://esyr.nizm.ru/wiki/index.php/UN%D0%98X%2C_%D0%BE%D1%81%D0%B5%D0%BD%D1%8C_2007 . Конспект вёлся методом прямого набора текста в процессе лекции, я его не вычитывал.
Вопросы
Вопросы, подразумевающие короткий ответ, отмечены и набраны полужирным шрифтом. Если в вопросе присутствует часть, на которую можно ответить только длинно, она набрана обычным шрифтом.
Свободное ПО
Свойство безущербного копирования ПО и его последствия.
Что такое «свободное ПО»?
Что такое «копилефт» (copyleft) и для чего он нужен?
- «Лицензии» и российское законодательство: передача неисключительных имущественных прав
Почему в хранилище так много программ?
- Причины несовместимости аппаратного обеспечения с Linux.
- Различие (в плане наполнения ПО) дистрибутивов свободных и правовладельческих (проприетарных) ОС.
Особенности Linux
- Зачем обычному человеку Linux?
- Варианты использования Linux: LiveCD, двухсистемная установка, установка в виртуальную машину, «чистый» Linux
- Зачем нужны пользователи Linux-системы? Что такое и зачем нкжен суперпользоватеь (root)?
FHS: что такое и какая от него польза?
- LILO, карта размещения; недостатки организации загрузки с помощью карты размещения
Сколько программных продуктов входит в типичный «большой» дистрибутив Linux (порядок)?
Linux как операционная система
- Межсетевой экран (firewall) в Linux: где находится и почему нет простого интерфейса для простого пользователя? А зачем тогда такой интерфейс есть в Windows?
Разбиение диска на разделы. Чем отличается основной (primary) раздел диска от дополнительного (secondary)? Именование разделов в Linux.
Этапы досистемной загрузки; BootROM → BootBlock → BootProg → Kernel
- Стартовый виртуальный диск (initrd)
- Что такое «дистрибутив операционной системы»?
- Что такое «операционная» система (ОС)? Что такое «ядро ОС»?
Linux: технология и сообщество
- Три возможных определения «Linux»: ядро, дистрибутив, сообщество
- Сообщество: ядро → разработчики → пользователи; роль информационной связности
- Хранилище свободного ПО: репозиторий → стабильная ветка → дистрибутив
Что такое «сопровождающий» (maintainer)?
- Что (по минимуму) нужно знать перед началом работы с Linux?
- Что нужно знать для настройки сети?
- Что нужно сделать с разделами на диске, чтобы можно было установить Linux?
Пакеты
- Как программный продукт, написанный немцем и чехом, попадает в турецкий дистрибутив Linux?
- Пакет: архив, регистрация в системе, служебные сценарии, зависимости, конфликты и альтернативы
Что такое «зависимость пакетов», откуда берутся зависимости и какая от них польза?
- Функции диспетчера пакетов (apt).
- Функции установщика пакетов (rpm).
- Понятие о сборке пакета из исходников (src.rpm); почему это проще, чем сборка авторского ПО?
- Правила гигиены при установке стороннего ПО (По не из хранилища) в Linux
Настройка
- Плоский и размеченный текст, сферы применения. Понятие «человекоприемлемости» (human readable и human writeable)
Задание профиля системы с помощью /etc/: пространство имён, правила ориентации в этом пространстве, гибкость представления данных
Что и почему является эффективным инструментом модификации «профиля системы»: набора конфигурационных файлов в /etc/?
- Области, в которых приложения-«конфигураторы» эффективнее текстовой обработки данных в конфигурационном файле
- Проблемы построения «общего конфигуратора системы»; что предлагается вместо него?
- Системные и пользовательские настройки. Реализован ли в Linux «перемещаемый профиль»?
Рабочий стол
Связь графической подсистемы (X.Org) и Linux. Что такое «X11»?
- X-клиент и X-сервер. Примеры виртуальных X-серверов
- Компоненты «рабочего стола». Окновод (window manager)
- Использование различных (или одних и тех же) интерфейсных библиотек в приложениях: достоинства и недостатки
- Оконная организация интерфейса: понятие окна, потока событий, фокуса; зачем это всё понадобилось?
- Проблемы интеграции «рабочего стола» и системы: старт/останов приложения, документация, внешние носители, печать и т. п.
- Freedesktop.org: введение стандартов на устройство рабочего стола
Информационное пространство Linux
- Проблема познавательной пассивности; почему она особенно остра для Linux?
- Первый эшелон документации: manual pages, info; различия между man и info.
Второй эшелон документации: «документация к дистрибутиву» (зачем нужна? что, man-ов недостаточно?) и /usr/share/doc
- Третий информационный эшелон: информационные сайты сообщества; какие они бывают?
- Четвёртый информационный эшелон: гугл - твой другл.
- Коллективный разум: списки рассылки; как правильно задавать вопрос?
- Обратная связь с разработчиками: как организована и зачем она пользователю?
Особенности ПО под Linux
- Какое нам дело до открытых стандартов? Определение и пример открытого стандарта.
- Поддержка аудио и видеокодеков в свободном ПО.
Принципиальное отличие Jabber от ICQ и прочих IM.
- Программная и интерактивная обработка растровых изображений.
- Программное и интерактивное построение графов и диаграмм.
- Свободное ПО и IP-телефония.
- С каким видом ПО можно ожидать наибольшие трудности под Linux?