Часть V Более глубокое знакомство

Глава 30 Автозапуск приложений

Собственно, я закончил описание основ работы в Ubuntu. Конечно, я старался выбрать только самые востребованные темы, оставив специфические знания за пределами своего повествования. Надеюсь, вы смогли разобраться в Ubuntu и чувствуете себя в этой операционной системе вполне свободно.

Однако осталось ещё несколько полезных вещей, про которые надо бы упомянуть. В принципе, всё описанное в следующих главах нужно далеко не всем, поэтому вы спокойно можете их не читать. Но всё же информация из этих глав будет полезна даже тем, кто никогда не столкнётся с обсуждаемыми в них инструментами и параметрами.

Начнём с простой и полезной инструкции по настройке автозапуска программ после включения компьютера. Не секрет, что необходимость в автоматическом старте некоторых приложений возникает достаточно часто. Например, это нужно для различных IM клиентов.

В Ubuntu есть специальная программа для управления автозапуском. Найти её можно в меню Система→Параметры, называется она «Запускаемые приложения». Откройте её, появится список пользовательских приложений, запускаемых при старте системы. Он не содержит никаких системных программ и сервисов, только приложения, относящиеся к данному конкретному пользователю. Для добавления своей программы просто нажмите кнопку «Добавить»:


Рис. 30.1: Добавление новой программы в автозапуск.


Поля «Название» и «Комментарий» открывшегося окна заполняйте как угодно, а в поле «Команда» запишите собственно команду для запуска вашего приложения:


Рис. 30.2: Указание параметров запускаемого приложения.


Если вы её не знаете, то загляните в редактор главного меню, найдите там нужное вам приложение и нажмите кнопку «Свойства»:


Рис. 30.3: Получение команд для запуска из редактора меню.


Теперь просто скопируйте значение поля «Команда» из открывшегося окна в программу настройки автозапуска:


Рис. 30.4: Параметры пункта меню.


Вот и всё, опять всё просто и очевидно, не правда ли? Следующая тема также не отличается сложностью.

Глава 31 Редактор настроек GNOME

Я уже подробно рассказывал про настройку внешнего вида GNOME и некоторых других его параметров, теперь же я расскажу, как и где все эти настройки на самом деле хранятся.

В GNOME существует централизованная система управления всеми параметрами приложений, входящих в рабочую среду. Называется она gconf. Настройки, естественно, хранятся в виде текстовых файлов. Однако напрямую их изменять не нужно, поскольку для этих целей существует удобная графическая утилита, называемая Редактором конфигурации.

Вообще говоря эта программа нужна только для тонкой настройки GNOME и обычно нет смысла её использовать, поскольку есть куда как более понятные и удобные конфигураторы для конкретных параметров. Именно поэтому найти Редактор конфигурации где-нибудь в меню после установки Ubuntu нельзя, его там попросту нет. Однако его очень просто туда добавить. Для этого зайдите в программу редактирования главного меню и загляните в секцию Приложения→Системные. Видите пункт «Редактор конфигурации»?


Рис. 31.1: Редактор конфигурации в программе редактирования меню.


Поставьте рядом с ним галочку и закройте программу, а после загляните в меню Приложения→Системные. Там вы, как ни странно, обнаружите нужную вам программу. Запустите её, вы увидите примерно такое окно:


Рис. 31.2: Интерфейс редактора конфигурации.


Что ж, это и есть редактор конфигурации. В левой колонке содержится древовидный список настроек, а справа окно просмотра текущей ветки и область для описания конкретного выбранного параметра. Поизучайте секцию apps, видите знакомые названия?

Кстати, особенно не бойтесь экспериментировать. Для всех важных ключей существует сохранённое значение по умолчанию, которое вы всегда сможете вернуть, нажав правой клавишей на любой параметр и выбрав в открывшемся меню пункт «Установить по умолчанию».

31.1 Иконка домашней папки на рабочем столе

Практически все настройки GNOME, которые вы изменяли с помощью других утилит управления, можно найти где-то в Редакторе конфигурации. Однако, как вы уже наверно заметили, использовать его для изменения параметров не очень удобно. Но иногда всё-таки он может пригодиться. Например, загляните в секцию apps→nautilus→desktop:


Рис. 31.3: Параметры Nautilus.

Тут можно настроить показ некоторых системных иконок на рабочем столе, а также задать для них имена[117]. Кроме того, тут же можно отключить показ ярлыков съёмных дисков. Изменить эти настройки из других графических конфигураторов GNOME по непонятным причинам нельзя, однако их умеет менять Ubuntu Tweak (http://help.ubuntu.ru/wiki/ubuntu-tweak), собственно, я уже упоминал об этом.

31.2 Включение иконок в меню «Система»

Расскажу ещё про пару скрытых параметров GNOME, которые можно поменять с помощью Редактора конфигурации. Скорее всего вы уже обратили внимание, что в меню «Система» отсутствуют иконки рядом с пунктами, в то время как в меню «Приложения» и «Переход» они есть. Возможно вы даже задумались над причинами такого странного дизайнерского решения и поинтересовались, возможно ли включить значки и в меню «Система». Чем руководствовались разработчики интерфейса, мне, увы, неизвестно, а вот как вернуть пиктограммы рядом с пунктами меню я сказать могу.

Для этого загляните в секцию desktop→gnome→interface и поставьте галочку рядом с параметром «menus_have_icons»:


Рис. 31.4: Включение пиктограмм рядом с пунктами меню.


Кстати, можете тут же включить параметр «buttons_have_icons», он отвечает за показ значков в меню приложений. Большинство программ, правда, не имеют никаких иконок для пунктов меню, так что в них ничего не поменяется. Но всё же кое-где включение этого параметра помогает сделать меню приложения более красивым, например, в графическом редакторе GIMP.

Больше, пожалуй, мне нечего сказать про Редактор конфигурации. Осталась последняя тема, которой я хотел бы коснуться, ей посвящена следующая глава.

Глава 32 Монтирование и fstab

В самом начале, при описании установки, я рассказывал про механизм монтирования дисков в Linux и объяснял его основы. Если вы забыли, что такое монтирование и для чего оно нужно, прочитайте снова главу про организацию файловой системы в Ubuntu. Ниже я попробую заполнить некоторые оставшиеся белые пятна.

Если вы с нетерпением ждали шаманств с терминалом и правки конфигурационных файлов, поздравляю, вы дождались! Вообще мне кажется, что скоро терминалом и конфигами впору будет пугать маленьких детей — столь отталкивающее мнение об этих инструментах присутствует у некоторых в принципе далёких от понимания упомянутых терминов людей. На самом деле обычно всё, конечно, очень просто, элегантно и логично. И у вас сейчас будет возможность в этом убедиться.

32.1 Монтирование и пункты меню «Переход»

Сначала немного общей теории. Она не очень лёгкая, но надеюсь вы уловите основную суть. Итак, я рассказывал, что все подключаемые устройства автоматически монтируются в подкаталоги папки /media. Возможно, вы даже не преминули проверить это и убедиться в том, что и на самом деле всё обстоит именно так.

А вот с разделами винчестера ситуация несколько иная. Я говорил вам указать точки монтирования для всех разделов при установке, но не объяснил, зачем это нужно и что будет, если вы так не сделаете. Теперь постараюсь ликвидировать это упущение, попутно разложив по полочкам весь механизм монтирования.

В Ubuntu существует специальный файл, /etc/fstab, в котором хранятся настройки монтирования различных разделов, включая корень и swap. Существенная информация из этого файла заключается в первую очередь в соответствии точек монтирования разделам. При каждой загрузке Ubuntu читает этот файл и монтирует все перечисленные в нём диски в указанные для них места. Больше нигде никакой информации и точках монтирования в системе не хранится. Соответственно при установке в /etc/fstab записывается вся указанная вами информация о монтировании ваших разделов.

Различные флешки, внешние диски, плееры и прочие устройства монтируются автоматически при подключении к вашему компьютеру. Точкой монтирования в этом случае служит один из подкаталогов /media, обычно — с именем, соответствующим метке устройства[118]. За выделением точек монтирования, определением файловой системы и решением других проблем следит Ubuntu — вам ничего делать не надо. Кроме того, все внешние устройства автоматически попадают в меню «Переход» и на рабочий стол, так что вы всегда можете легко получить к ним доступ[119].

Проблемы начинаются только тогда, когда какое-то устройство было присоединено к компьютеру до загрузки Ubuntu, но для него нету записи в /etc/fstab. В этом случае оно будет смонтировано только при вашем первом к нему обращении. Естественно, по всё тем же правилам подключения внешних источников, то есть в автоматически созданный подкаталог директории /media. В случае с флешками это некритично — в конце концов при первом вашем обращении к флешке вы всё равно сразу же получите доступ к её содержимому и вам вообще не нужно задумываться не то, что о всяких /etc/fstab, а даже просто о значении термина «монтирование». Но дело в том, что Ubuntu ровно так же будет обрабатывать и неуказанные в /etc/fstab разделы винчестера. И в чём же проблема, спросите вы?

Проблема в том, что зачастую получить доступ к содержимому винчестера нужно сразу после загрузки и до того, как вы вручную зайдёте на нужный диск. Это связано с тем, что многие программы работают с файлами без вашего непосредственного участия. Например, различные торрент-клиенты, плееры и прочие приложения, которые постоянно обращаются к файлам на винчестере, просто не смогут работать, пока вы не перейдёте на нужный диск. Кроме того, при автоматическом назначении точки монтирования в момент первого обращения есть ещё одна небольшая проблема: вообще говоря никто не может гарантировать, что каждый раз будет использоваться одна и та же точка монтирования. А это значит, что могут меняться полные пути до всех файлов, что вообще приведёт к невозможности работы с ними большого количества приложений, вроде тех же торрент-клиентов.

В общем, вы наверно уже поняли, что все нужные вам разделы должны присутствовать в /etc/fstab, чтобы Ubuntu их автоматически монтировала при запуске и у вас не было проблем при работе с ними.

Вопрос остаётся только один: а какие указывать точки монтирования для разделов? Если вы помните, при описании установки я говорил вам монтировать все дополнительные разделы в подкаталоги /media. Это и есть самый распространённый способ указания точек монтирования, однако далеко не единственный. Дело в том, что всё, смонтированное в подкаталоги /media, автоматически попадает в меню «Переход» и на рабочий стол. Но иногда хочется скрыть некоторые разделы и убрать их из всех списков и меню. Логичным решением было бы просто удалить запись о ненужном разделе из /etc/fstab. Однако это не приведёт к желаемому результату, поскольку точка монтирования для раздела, не указанного в /etc/fstab, автоматически всё равно будет назначаться в подкаталог /media, соответственно, диск всё равно будет доступен через меню «Переход». А скрыть диск на самом деле очень просто: нужно указать точку монтирования для раздела не в подкаталог /media, а в другую часть файлового дерева.


Будьте осторожны! Неаккуратное обращение с точками монтирования может привести к полной неработоспособности системы.


Например, в подкаталог /hidden/data[120]. При этом диск исчезнет из всех графических программ, но к его содержимому всё же будет доступ по полному пути относительно корня[121].

На всякий случай хочу обратить внимание на две вещи: во-первых, указанный в качестве точки монтирования для любого диска каталог должен существовать в файловой системе. То есть если вы хотите смонтировать какое-то устройство в /hidden/data, то у вас должен существовать каталог /hidden/data. И при этом он должен быть пустой, т. к. его содержимым после монтирования будет являться содержимое подключаемого устройства. А во-вторых права на запись файлов на подключаемые устройства определяются правами на запись в точку монтирования. То есть если вы что-то монтируете в /media/data, то у вас должны быть нужным образом установлены владелец, группа и права доступа к каталогу /media/data.

Осталось только немного рассказать про системные директории, вроде /home, и про их отношение к процессу монтирования. Конкретно в /home хранятся домашние каталоги для всех пользователей компьютера. Помните, при рассказе про установку я говорил, что /home рекомендуется выделять отдельным разделом для того, чтобы хранить пользовательские настройки отдельно от системы? Это нужно для того, чтобы можно было, например, отформатировать системный раздел и поставить систему заново, при этом сохранив все пользовательские данные в целостности и сохранности. Так вот, если вы ещё этого не поняли, тут стоит обратить внимание на то, что не только дополнительные разделы с помощью механизма монтирования можно вставлять в текущее дерево каталогов, но и выносить на отдельные разделы любые системные каталоги[122].

Вот так всё запутанно и с первого взгляда сложно. Если вы не уловили суть вопроса, то ничего страшного, просто запомните, что для всех разделов винчестера обязательно должны быть записи в /etc/fstab, а обо всём остальном за вас позаботится система, вот и вся соль.


Рис. 32.1: Содержимое /etc/fstab.

32.2 Конфигурационный файл /etc/fstab

А теперь собственно к практике. Осталось только рассказать, как же устроен файл /etc/fstab и что в него надо писать. Начну с того, что этот файл является системным, поэтому для его редактирования нужны права root. Если вы забыли, как редактировать конфигурационные файлы системы, прочитайте снова главу про права доступа.

Итак, открыв /etc/fstab вы увидите достаточно небольшое содержимое, у меня этот файл выглядит как на рис. 32.1.

Каждому разделу винчестера отводится одна строка. Строчки, начинающиеся с символа решётки (#), являются комментариями и системой игнорируются. Формат каждой записи очень простой:


раздел точка_монтирования файловая_система опции_монтирования два_флага


Помните, в главе про разметку диска я рассказывал, что разделы винчестера в Linux именуются как sdaX (или sdbX, sdcX и т. д. если у вас несколько винчестеров). Так вот, в fstab используется несколько другой механизм идентификации винчестеров[123]. Для этой цели используются так называемые uuid, достаточно длинные строчки из произвольных букв латинского алфавита и цифр[124]. Для того, чтобы узнать uuid для нужного вам раздела выполните в терминале команду[125]


ls -l /dev/disk/by-uuid


Вот как выглядит результат выполнения у меня:


Рис. 32.2: Информация о разделах, включая их идентификаторы.


Я думаю, понятно, что к чему, uuid для каждого раздела выделен голубым цветом.

Итак, первое поле записи в fstab для разделов винчестера выглядит так:


UUID=ваш_uuid


Второе поле — это точка монтирования, тут всё просто, собственно вам всего лишь надо указать желаемую директорию. Однако учтите, что во-первых, указываемый каталог должен существовать, а во-вторых, в записи его имени не должно быть спецсимволов и пробелов.

А вот дальше начинаются хитрости и сложности, описывать которые я не буду. С файловой системой всё просто, а вот опции монтирования — это целая эпопея, требующая не одной отдельной главы. А уж назначение двух цифирей в конце вообще покрыто мраком и мало кого интересует.

Но как-то указать все эти параметры всё-таки надо. К счастью, тут можно схитрить[126]. Дело в том, что записи о всех смонтированных дисках попадают в специальный файл /etc/mtab, а формат записей этого файла ровно такой же, как и у /etc/fstab. Поэтому если вам надо добавить запись для какого-то раздела винчестера в fstab просто зайдите на него через меню «Переход», при этом он автоматически смонтируется в подкаталог /media и следовательно запись о нём появится в mtab. Теперь откройте mtab, найдите нужную строчку (тут уже диски именуются обычным способом) и скопируйте её в fstab, заменив имя диска на его uuid и точку монтирования на желаемую. Кроме того, если в качестве ФС в mtab записано fuseblk, то при копировании необходимо подставить вместо этого значения имя своей файловой системы. Если вы не знаете, как правильно должна называться ваша ФС в fstab, то поищите информацию на эту тему в интернете. И если вы не наделаете ошибок при замене, то при следующей загрузке диск смонтируется туда, куда вы указали.

На этом я заканчиваю краткое, хоть и достаточно запутанное, знакомство с файлом /etc/fstab и системой монтирования дисков в Ubuntu. Более того, на этом также заканчивается вся информация, которую я хотел вам рассказать про Ubuntu. Ну и дабы не завершать руководство столь неочевидным рассказом про специфическую настройку системы, я завершу его главой с красивым названием «Эпилог».

Глава 33 Эпилог

Надеюсь, вы смогли разобраться в Ubuntu и освоить эту прекрасную операционную систему. Скорее всего у вас остались ещё вопросы, возможно даже очень много вопросов. Я не ставил целью описать всё до последнего винтика, это просто нереально, да и смысла не имеет. Поэтому если что-то осталось невыясненным, рекомендую вам обратиться на наш форум http://forum.ubuntu.ru, нашу вики http://help.ubuntu.ru/wiki или же просто поискать в интернете, все ответы на ваши вопросы с огромной долей вероятности уже давным-давно даны, вам просто нужно их найти.

Если же у вас есть какие-нибудь замечания или предложения по поводу конкретно этого руководства, или же вы просто хотите сообщить об ошибке, то загляните на страницу проекта на Launchpad https://launchpad.net/ubuntu-russian-guide, или же в соответствующий раздел на официальном русскоязычном форуме Ubuntu http://forum.ubuntu.ru/. Ну и наконец вы можете напрямую обратиться ко мне через систему личных сообщений форума[127].

Если вы хотите использовать материалы из этого руководства, то можете абсолютно свободно это делать и не спрашивать у автора разрешения[128], однако очень прошу, давайте ссылку на оригинал, уважайте труд других людей. Кстати, вы можете купить мне чашечку кофе со сливками[129], если захотите поблагодарить материально.

Напоследок мне хочется отдать дань уважения современным авторам книг компьютерной тематики. Большинство хороших, с моей точки зрения, экземпляров литературы такого рода, прочитанных мною за последние несколько лет, в обязательном порядке содержали посвящение кому-то или чему-то. Традиция что ли теперь такая, не знаю, но ради следования веяниям моды хочется закончить своего рода посвящением:


Всем любящим Beatles, Бродского, Лори и независимость посвящается

Загрузка...