- Учимся управлять автозагрузкой в linux
- Что такое inittab
- Что такое systemd
- Автозагрузка проложений
- Как добавить любую программу в автозагрузку Linux
- Руководство по Ubuntu для новичков
- Автозагрузка в Ubuntu
- Автозагрузка в Ubuntu
- Как добавить скрипт в автозагрузку Ubuntu
- Отсрочка автозапуска программ в Ubuntu
- Удаление из автозапуска Ubuntu
- Заключение
Учимся управлять автозагрузкой в linux
Написанием данной статьи меня побудила банальная задача: отключить графическую оболочку при старте системы. Казалось бы, поменять одну цифру в /etc/inittab. Но как выяснилось, все намного сложнее. Итак, разберем по полочкам, что такое inittab и systemd, для чего они нужны и как управлять автозагрузкой приложений в linux. Как человек, который самостоятельно пытается найти ответы, пришлось прочитать не одну статью, информации на эту тему много, но понимание приходит не сразу. На русскоязычных форумах как правило развернутого ответа нет. Скажу сразу, я не системный администратор и статья больше рассчитана на людей, кто относительно недавно познакомился с linux. Кому интересна данная тема, добро пожаловать.
Это моя первая статья, если есть замечания прошу в комментарии.
Что такое inittab
По сути inittab представляет из себя файл в котором можно посмотреть/поменять уровень загрузки операционной системы в /etc/inittab. Давайте разберем его
В linux существуют 7 уровней загрузки операционной системы. В нашем случае нулевой уровень — это режим восстановления, первый — это запуск в одиночном режиме под root. 2-5 загрузка в мульти пользовательском режиме (т.е. обычный режим). Отличаются они лишь набором стартовых скриптов. 6 уровень это перезагрузка. Скрипты берутся из директорий, которые расписаны в inittab. Наша система по умолчанию загружается на 5 уровне, посмотрим что-же находится в директории /etc/init.d/rc 5:
Скрипты в этом каталоге выполняются каждый раз при старте системы. А если быть точнее это лишь символьные ссылки на сами скрипты. Первая буква означает S(start) K(kill или stop) для изменения порядка скриптов меняется цифра, т.е. запуск скриптов выполняется по возрастанию. Руками менять можно, но рекомендуется менять через «update-rc.d»
Все просто и прозрачно.
Что такое systemd
Systemd является заменой старой традиционной загрузки inittab. Был разработан чтобы обеспечить лучшую обработку зависимостей. В настоящее время systemd поставляется по умолчанию с популярными дистрибутивами linux таких как Fedora, Mandira, Arch Linux, CentOS 7, Red Hat 7.0 и на удивление для меня в Debian 8.9.
Плюсы и минусы в явном виде для меня не понятны. Интересен в первую очередь функционал. Итак разбираемся дальше. Две вещи, которые нам нужно знать:
Чтобы посмотреть уровень загрузки, введем команду:
Как правило graphical.target аналог 5 уровня, запуск системы в графическом режиме.
Чтобы посмотреть все доступные нам уровни, введем:
проведем аналогию c inittab
При старте системы linux смотрит в файл (который является ссылкой)
Таким образом чтобы загрузиться в многопользовательском режиме, нам нужно сменить ссылку или использовать systemctl (делает тоже самое)
Автозагрузка проложений
Как мы уже поняли в каталогах /etc/rc4.d/* лежат символьные ссылки на скрипты. Где цифры от 6 это уровень загрузки у inittab или systemd. Мы можем менять руками порядок запуска, убирать и добавлять. По сути systemd пробежится по всем файлам и попытается их инициализировать при старте системы. Теперь разберем управление через команды:
chkconfig — нужна для просмотра сервисов(программ). Поддерживает режим изменения для любого уровня загрузки.
update-rc.d — служит для запуска/остановки скриптов, при старте/выключении системы. Собственно через нее мы и будем менять автозапуск графической оболочки KDE(kdm). Так уж получилось, что у меня запуск окружения KDE включен для 2-5 уровней по умолчанию.
При старте системы я отключаю 2-4 уровень загрузки и проверяю что у меня стоит 3-й уровень загрузки
Перезагружаюсь и вижу приглашение консоли tty. profit
На самом деле, это чуть больше чем консоль. Мы можем переключаться между вкладками.
CTRL+ALT+(F1-F6)
команда startx запустит графику KDE.
Вывод: Тут должен быть вывод, но вместо него я вставлю кота
Источник
Как добавить любую программу в автозагрузку Linux
У каждого пользователя есть набор программ, которые он запускает ежедневно. Чтобы избавить себя от необходимости проделывать это вручную, оные приложения можно добавить в автозагрузку. В Windows это можно сделать, закинув ярлык программы в каталог автозагрузки, прописав ее в соответствующем ключе реестра или добавив в Планировщик заданий. А как с этим дела обстоят в Linux? В операционной системе Linux также имеется автозагрузка, но работает она несколько иначе.
За автозагрузку в Linux отвечает специальный процесс, именуемый системой инициализации. Этот процесс запускает все остальные процессы после того, как ядро операционной системы передаст ему дальнейшее управление. Также в Linux имеется несколько уровней или режимов автозагрузки. Например, автозагрузка на уровне ядра позволяет заменить систему инициализации любой другой программой. Есть уровни автозагрузки специально для скриптов (rc.local и Xinitrc) , есть автозагрузка bash , позволяющая автоматически выполнять команды в открытом терминале и есть автозагрузка окружения рабочего стола.
Этот последний уровень для начинающих осваивать Linux пользователей является наиболее удобным. Добавим для примера в автозагрузки Ubuntu браузер Firefox .
Откройте поиск и начинайте вводить «автоматически запускаемые приложения», а когда в списке приложений появится одноименная утилита, запустите ее.
Нажмите кнопку «Добавить».
И укажите в открывшемся окошке название добавляемого в автозагрузку приложения и путь к его исполняемому файлу.
Исполняемые файлы пользовательских приложений в Linux копируются в папку /usr/bin , а если программа запускается с правами администратора, то в папку /usr/sbin . Если вы не нашли в них своей программы, поищите ее в папке /usr/opt , иногда разработчики прописывают в программе этот путь установки.
Поле «Описание» заполнять необязательно.
Всё, жмем «Добавить» и программа окажется в автозагрузке.
Второй способ добавить программу в автозагрузку — создать в папке
/.config/autostart конфигурационный файл desktop . Вот как, к примеру, выглядит содержимое файла автозапуска только что добавленной нами в автозагрузку Firefox.
Папка «.config» располагается в каталоге Home и является скрытой, чтобы ее показать, нажмите Ctrl + H . В папке autostart создайте пустой документ.
Откройте его текстовым редактором и вставьте в него набор команд, указанный на скриншоте.
Это минимальный набор параметров.
В нашем примере в автозагрузку добавляется текстовый редактор leafpad , его название мы указываем в параметрах Name и Exec. Осталось только переименовать файл в name.desktop , где name — название программы.
По сути, данный способ равнозначен первому способу, но при этом вы не используете утилиту настройки запуска приложений. Кстати, если вы откроете эту утилиту, то найдете в списке добавленную посредством ручного создания конфигурационного файла программу.
Как видите, добавлять программы в автозагрузку Linux не так уже и трудно.
Конечно, есть здесь и свои нюансы, Linux вообще очень гибкая система, но для начала этих знаний вам будет вполне достаточно, чтобы автоматически запускать любые пользовательские приложения.
Все сторонние приложения так или иначе используют ресурсы операционной системы, в частности, динамические библиотеки. Если .
Чтобы иметь возможность запускать в современных версиях Windows старые 16-битные приложения, необязательно использовать эмуляторы, та .
Приходилось ли вам когда-нибудь замечать, что в одних приложениях текст и графика выглядят более четкими, .
Меню «Пуск» в Windows 10 – верх эволюции этого меню на данный момент, оно самое .
Источник
Руководство по Ubuntu для новичков
Не секрет, что необходимость в автоматическом старте некоторых приложений возникает достаточно часто. Например, это нужно для различных IM клиентов.
В Ubuntu есть специальная программа для управления автозапуском. Найти её можно в меню Система→Параметры, называется она «Запускаемые приложения». Откройте её, появится список пользовательских приложений, запускаемых при старте системы. Он не содержит никаких системных программ и сервисов, только приложения, относящиеся к данному конкретному пользователю. Для добавления своей программы просто нажмите кнопку «Добавить»:
Поля «Название» и «Комментарий» открывшегося окна заполняйте как угодно, а в поле «Команда» запишите собственно команду для запуска вашего приложения:
Если вы её не знаете, то загляните в редактор главного меню, найдите там нужное вам приложение и нажмите кнопку «Свойства»:
Теперь просто скопируйте значение поля «Команда» из открывшегося окна в программу настройки автозапуска:
Вот и всё, опять всё просто и очевидно, не правда ли? Следующая тема также не отличается сложностью:
Источник
Автозагрузка в Ubuntu
В Убунту есть 2 основных уровня автозапуска — в системе инициализации systemd и в рабочем окружении. Для пользовательского софта автозагрузка в Ubuntu может быть настроена в удобной графической утилите. Добавить в автозапуск можно программу или собственный скрипт.
Автозагрузка в Ubuntu
Актуальная Ubuntu 18.04 по умолчанию в качестве рабочего окружения использует GnomeShell. Для настройки автозапуска в этой версии ОС нужно:
- Нажать на кнопку «Обзор» в левом верхнем углу экрана.
- Начать вводить в строку поиска «Автоматически запускаемые приложения» и запустить найденную утилиту.
- Далее кликнуть по кнопке «Добавить», чтобы внести желаемое приложение в автозагрузку.
- Заполнить поля «Имя» (название программы — как удобно) и «Команда» (та, которую вводят в консоли для запуска этого софта). Поле «описание» необязательное, сюда разрешено вписать любой комментарий.
Пример добавления Transmission в автозагрузку в Линукс показан на скриншоте: - Нажать кнопку «Добавить».
В ней выбрать интересующий пункт и открыть его свойства. Правильная команда копируется из одноименной строки.
Запуск приложений в Ubuntu, присутствующих в списке и помеченных галочкой, будет происходить при каждом старте ОС. Все это приложения данного пользователя, системные программы и сервисы, утилита не отображает. В предыдущих версиях операционной системы с графической оболочкой Unity утилита для настройки автозагрузки также ищется поиском по меню Dash или открывается с помощью команды в терминале:
Как добавить скрипт в автозагрузку Ubuntu
Кроме конкретного софта, добавить в автозагрузку Linux легко и самописный скрипт, чтобы оптимизировать работу за компьютером. Для этого необходимо:
- Сделать скрипт исполняемым с помощью команды:
(где user — имя пользователя, а script — название скрипта, но путь до вашего файла .sh может отличаться: его нужно прописать полностью, иначе скрипт не запустится).
Есть другой, классический, но считающийся устаревшим способ настроить автозапуск скрипта в Ubuntu. Для его выполнения нужно:
- Открыть терминал и выполнить команду:
Этот способ подойдет и для автозагрузки на UbuntuServer, где нет графики.
Отсрочка автозапуска программ в Ubuntu
Если программ в автозагрузке Убунту очень много, их необходимо подгружать в определенном порядке или запускать спустя какое-то время после загрузки системы — поможет функция отсрочки. Для ее активации используется unix-утилита sleep. Воспользоваться возможностями этого инструмента можно в уже знакомой программе «Автоматически запускаемые приложения». Для этого нужно:
- Открыть окно параметров запускаемых приложений.
- Выделить курсором программу, автозапуск которой необходимо отсрочить, и воспользоваться кнопкой «Изменить».
- В строке «Команда» перед имеющеюся записью внести:
где цифра после слова «спать» равна количеству секунд, которое приложение бездействует сразу после старта системы, перед тем как запуститься. Между данной формулой, в конце которой обязательна точка с запятой, и командой на запуск приложения, должен быть пробел.
В приведенном примере отложенной автозагрузки программ в Ubuntu приложение остается в состоянии «сна» 2 минуты, прежде чем открыться. Например, запуск через полчаса после старта ОС будет выглядеть как sleep 3h «имя программы». Пример, в котором Transmission запускается через 1 час:
Аналогичным образом можно добавить в автозагрузку в Linux отсроченное выполнение пользовательского скрипта или запуск медиафайла.
Удаление из автозапуска Ubuntu
Чтобы убрать софт из автозагрузки Ubuntu, можно воспользоваться одним из 2 способов: через «Автоматически запускаемые приложения» или вручную. В первом случае достаточно запустить утилиту, выделить нужную программу и нажать «Удалить». Простое снятие галочки отключается программа, и она не будет запускаться при старте системы.
Ручной способ подразумевает использование папки autostart в Ubuntu. Она расположена по адресу /home/имя пользователя/.config/autostart/ (чтобы увидеть эту скрытую папку, следует открыть домашний каталог в файловом менеджере и нажать одновременно клавиши Ctrl+H). В ней лежат файлы с расширением .desktop для каждой программы из автозапуска, формирующиеся автоматически при добавлении через графическую утилиту. Достаточно удалить файл, чтобы программа больше не открывалась при включении компьютера.
Заключение
Автозагрузка в Ubuntu имеет множество способов тонкой настройки. Ее возможности трудно охватить. Грамотное использование этого инструмента делает ОС Linux практичнее в повседневных задачах.
Источник