Настройка автозапуска в Ubuntu

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

Настройка автозапуска в Ubuntu

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

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

Чтобы понять как работает автозагрузка, сначала нужно вспомнить, что происходит во время процесса загрузки Linux. Как только ядро завершит свою инициализацию и будет готово к дальнейшей работе, оно передаст управление системе инициализации. Система инициализации – это основной процесс, именно он запускает все другие процессы в системе.

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

Рассмотрим основные уровни автозагрузки которые вы можете использовать:

  • Автозагрузка на уровне ядра – вы можете указать любую программу, которая будет запускаться после старта ядра вместо системы инициализации;
  • Автозагрузка системы инициализации – запуск основных системных сервисов, дополнительных сервисов, а также ваших скриптов на этапе инициализации системы;
  • Автозагрузка rc.local – устаревший метод загрузки скриптов, выполняется перед запуском графического окружения;
  • Автозагрузка менеджера входа – вы можете выполнять свои скрипты или команды после запуска менеджера входа, но перед запуском окружения;
  • Автозагрузка X сервера – запуск нужных программ или скрпитов сразу после старта X сервера;
  • Автозагрузка окружения – большинство окружений поддерживают автозагрузку программ, там даже можно настроить отложенный запуск и другие параметры;
  • Автозагрузка bash – самый последний вариант – это автозагрузка на уровне отдельной командной оболочки, вы можете выполнять нужные команды автоматически, как только будет запущен терминал.

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

Автозагрузка на уровне ядра

Автозагрузка на уровне ядра вряд ли будет вам очень полезной для повседневного применения, но я решил о ней упомянуть, поскольку такая возможность есть.

С помощью параметра ядра init вы можете указать какую программу стоит запускать сразу после завершения инициализации ядра. Например, вы можете загрузить оболочку Bash вместо Systemd.

Для этого достаточно подправить строку запуска ядра в конфигурационном файле Grub или во время запуска. Добавьте в конец параметр init:

Но, обычно, удобнее изменить это значение временно, в меню Grub. Читайте подробнее об этом в статье параметры ядра Linux. Так не выполняется автозагрузка программы linux, но, тем не менее, иногда может быть полезно.

Автозагрузка в системе инициализации

Чаще всего, когда говорится автозагрузка Linux, подразумевается именно автозагрузка сервисов с помощью системы инициализации. В systemd очень продвинутая система управления службами.

Здесь поддерживается разрешение зависимостей, параллельный запуск, отсрочка запуска и перезапуск при ошибке.

В терминологии Systemd все запускаемые программы представлены файлами юнитов, в каждом юните описаны параметры программы, ее исполняемый файл, а также дополнительные требования к запуску.

Для добавления или удаления служб из автозапуска используется команда systemctl. Чтобы добавить службу в автозапуск выполните:

А чтобы отключить ее автозапуск linux:

Например, если вы хотите добавить в автозагрузку Apache, то нужно выполнить:

Также вы можете проверить добавлена ли уже служба в автозагрузку:

Если вы не знаете точное имя файла сервиса, но знаете его первую букву, то можно использовать автодополнение, как и в любом другом месте терминала с помощью кнопки Tab:

Также вы можете посмотреть все сервисы, которые были добавлены в автозагрузку с помощью команды:

Автозагрузка скриптов в Linux

Раньше было принято размещать все скрипты, которые запускаются по умолчанию в файле /etc/rc.local. Этот файл все еще существует, но это пережиток системы инициализации SysVinit и теперь он сохраняется только для совместимости. Скрипты же нужно загружать только с помощью Systemd.

Для этого достаточно создать простой юнит-файл и добавить его в автозагрузку, как любой другой сервис. Сначала создадим этот файл:

[Service] Type=idle

ExecStart=/usr/bin/local/script.sh

[Install] WantedBy=multi-user.target

В секции Unit мы даем краткое описание нашему файлу и говорим с помощью опции After, что нужно запускать этот скрипт в многопользовательском режиме (multi-user).

Секция Service самая важная, здесь мы указываем тип сервиса – idle, это значит, что нужно просто запустить и забыть, вести наблюдение нет необходимости, а затем в параметре ExecStart указываем полный путь к нашему скрипту.

Осталось выставить правильные права:

Затем обновить конфигурацию и добавить в автозагрузку Linux новый скрипт:

После следующей перезагрузки этот скрипт будет запущен автоматически. Обратите внимание, что для каждого скрипта, который вы собираетесь запускать должны быть правильно выставлены права, а именно нужно установить флаг выполнения. Для этого используйте команду chmod:

В параметрах мы передаем утилите адрес файла скрипта. Исполняемость – это обязательный параметр для всех способов.

Автозагрузка X сервера

Часто, в легких окружениях рабочего стола и оконных менеджеров для автозагрузки программ используется автозагрузка на уровне X сервера.

Все запускаемые, таким образом, скрипты будут стартовать после запуска X сервера. Чтобы настроить такую автозагрузку Linux вам будет достаточно добавить путь к нужному скрипту в файл ~/.

xinitrc или /etc/X11/xinit/xinitrc. Синтаксис добавляемой строки таков:

exec путь_к_скрипту &

Если файла ~/.xinitrc еще не существует, то его нужно создать:

Затем, чтобы добавить в автозагрузку linux скрипт, отредактируйте файл так, как вам нужно. Например, будем запускать Firefox:

Готово. Осталось сохранить изменения. При следующем запуске X сервера сработает автозапуск Linux и выполняется эта команда. Таким же способом может выполняться автозапуск приложений linux.

Автозагрузка окружения рабочего стола

Такие мощные окружения рабочего стола как Gnome и KDE имеют свои приложения для автозагрузки. Например, в Gnome программа называется “Запускаемые автоматически приложения”. Вы можете запустить ее из главного меню системы:

Здесь вы видите все программы, которые уже добавлены в автозагрузку. Вы можете отключить каждую из них просто сняв галочку.

Чтобы добавить новую программу или скрипт в автозагрузку нажмите кнопку “Добавить”:

Тут вам нужно заполнить три поля:

  • Имя – произвольное имя для команды, по которому вы сможете ее найти;
  • Команда – полный путь к исполняемому файлу программы;

Источник: https://ualinux.com/ru/stream/avtozapusk-prilozhenij-v-linux

Редактирование полного списка автозапуска Ubuntu 11.10, 12.04

Настройка автозапуска в Ubuntu

В Ubuntu, начиная с версии 11.10, в списке автоматически запускаемых приложений отображаются только те программы, которые пользователь установил и добавил в автозапуск самостоятельно. Это весьма неудобно, т.к. пользователь не имеет контроля над программами, которые находятся в автозапуске по-умолчанию.

Удаление некоторых ненужных Вам программ из автозапуска Ubuntu может помочь Вам в некоторой степени решить проблемы с производительностью (например, можно отключить менеджер печати, если у Вас нет принтера, аналогично менеджеры Bluetooth, Samba (общий доступ к файлам и принтерам с Windows), “Специальные возможности” и так далее). Итак, чтобы заставить редактор автозапуска показывать все программы, необходимо выполнить следующие команды в терминале:

sudo sucd /etc/xdg/autostart/

sed –in-place 's/NoDisplay=true/NoDisplay=false/g' *.desktop

Чтобы вернуть все “как было”, необходимо выполнить:

sudo sucd /etc/xdg/autostart/

sed –in-place 's/NoDisplay=false/NoDisplay=true/g' *.desktop

Теперь щелкаем в правом верхнем углу по значку системного меню и выбираем пункт “Запуск приложений…” – откроется редактор автозагрузки, в котором теперь отображаются все автоматически запускаемые программы.

Автор: Brullworfel

Интернет кипит новостями о блокировке Telegram. Каждый, кому не лень пишет о способах обхода блокировок. Можно найти бесплатный VPN или Socks прокси-сервер и настроить Telegram для работы через него.

Однако бесплатные сервисы часто “пропадают без вести” или показывают нежелательную рекламу. Да к тому-же, им тоже нельзя доверять – ведь через них проходит весь ваш трафик.

Раз уж ты линуксоид (и скореее всего – убунтовод), почему бы тебе не настроить СВОЙ ЛИЧНЫЙ прокси-сервер?

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

Поэтому, придется обзавестись каким-нибудь VPS, например, #rootwelt – просто отличный провайдер VPS-серверов на Linux – сделан профессионалами для профессионалов! Приобрести виртуальную машину с выделенным IP и установленным Linux там можно от 5 евро в месяц, трафик на всех тарифах безлимитный и скорость подключения на высоте – поэтому если ты собираешься приобрести его только для организации своего прокси-сервера – бери самый дешевый тариф, он подойдет.

Устанавливаем SOCKS-сервер на Ubuntu/Debian

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

wget –no-check-certificate https://raw.github.com/Lozy/danted/master/install.sh -O install.sh

Теперь запустим установку:

sudo bash install.sh

Теперь осталось только добавить логин и пароль (мы ведь не хотим, чтобы наш прокси обнаружили, он попал в какой-нибудь публичный список прокси-серверов и через него качали тонны чего-попало):

/etc/init.d/sockd adduser USERNAME PASSWORD

Конечно же, вместо USERNAME и PASSWORD ставим свои данные.

Готово! Теперь настраиваем Telegram (или что там у тебя еще) для работы с твоим собственным Socks5-сервером, указываем его IP, порт по-умолчанию: 2016, логин и пароль (который ты задал командой выше).

Более подробные инструкции по настройки этого прокси можно найти (на английском языке) здесь: https://github.com/Lozy/danted

Не даем себя обнаружить!

Недавно прошла новость о том, что РКН сканирует интернет в поисках прокси с серверов Mail.ru и блокирует все, что находит. Поэтому просто заблокируем доступ к своему серверу из подсети mail.ru =):

iptables -A INPUT -s 128.140.168.0/21 -j DROP

Page 3

Англоязычный ресурс “OMG! Ubuntu” приводит ответ на 4 часто-задаваемых Google вопроса, начинающихся с “Can Ubuntu” (“Может ли Ubuntu…”).

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

Может ли Ubuntu заменить Windows?

Да. Ubuntu – самостоятельная полноценная операционная система, которая может быть как единственной системой на вашем компьютере, так и использоваться поочередно с другими, например – Windows. На любой компьютер, на котором работает Windows, можно установить Ubuntu (за очень редким исключением).

Если вы используете компьютер исключительно для работы с офисными приложениями, работы в интернете, просмотра мультимедиа – все необходимо вы найдете в Ubuntu сразу же после ее установки. Сотни других приложений и игр можно установить в Ubuntu из различных интернет-источников.

Единственная проблема, с которой вы можете столкнуться, это если вам необходимо использовать какую-то конкретную программу, выпущенную исключительно для Windows, такую как Microsoft Office, Adobe Creative Suite, AutoCAD или другие. Однако, присмотритесь получше к тому, что доступно в Ubuntu – большинству пользователей подойдут аналоги этих продуктов.

Vw-avtoruss.ru: сервисное обслуживание Volkswagen Пассат у официального дилера.

Можно ли в Ubuntu запускать программы для Windows (файлы .exe)?

В Ubuntu можно запускать некоторые программы для Windows. Например, Adobe Creative Suite 2, который бесплатно доступен для скачивания с официального сайта Adobe, прекрасно работает в Ubuntu при помощи Wine. Для установки Wine и помощника для установки некоторых необходимых для запуска Windows-программ компонентов Winetricks, выполните в терминале (CTRL+ALT+T) команду:

sudo apt-get install winetricks

Однако не стоит устанавливать Ubuntu для того, чтобы пользоваться в ней Windows-программами – используйте эту возможность только в крайнем случае. Зайдите в Центр Приложений Ubuntu (ссылка работает в Ubuntu) или Steam, чтобы увидеть, что для Ubuntu доступно огромное количество “родных” программ и игр.

Есть ли в Ubuntu вирусы?

На самом деле, для Linux вирусы есть. Но шансы их “подцепить” в миллионы раз меньше, чем в Windows, и во много раз меньше, чем Mac OS X – без преувеличений.

А связано это во-первых с архитектурой системы – если вы обновляете систему хотя-бы изредка (а обновления весят намного меньше и устанавливаются быстрее, чем в Windows, а также почти никогда не требуют перезагрузки), ваша система навряд ли будет подвержена даже актуальным на данный момент вирусам.

Во-вторых, это связано с намного меньшей популярностью Linux-систем вообще, и особенно – среди “компьютерно-неграмотных” людей, что очень сильно затрудняет и препятствует распространению вирусов (ведь большинство вирусов попадают на компьютеры пользователей в результате скорее “мошенничества”, а не “взлома”).

Из личного опыта могу сказать, что использую Ubuntu в течение 9 лет как основную операционную систему, не пользуюсь антивирусным ПО и за это время ни разу не встречался с такой проблемой, как вирусы на Ubuntu.

Ошибки – да, они бывают везде. И в Ubuntu тоже.

Можно ли играть в Ubuntu в игры?

Можно, и еще как! На Ubuntu портировано множество ставших классикой Windows-игр, таких как Half Life, Portal, Counter Strike, Neverwinter Nights, Serious Sam и другие, а также все время появляются новый игры.

Выпуск Linux-версий популярных игр стал трендом в основном благодаря Valve с ее планами по выпуску собственной игровой приставки, работающей на Linux.

Кроме этого, это побудило разработчиков графических плат на более внимательное отношение к обеспечению производительности графических драйверов для Linux.

Посетите магазины Steam и Humble Bundle, чтобы убедиться в этом самим. Если покупка лицензионных игр – не ваша привычка, то вы думаю и сами сможете найти, где эти игры можно скачать в другом месте =).

Кроме того, очень много игр для Windows работает в Ubuntu через Wine (смотрите ответ на второй вопрос), например, World of Warcraft.

2601 игра для Linux доступа в магазине Steam в момент написания этой статьи!

Page 4

Источник: http://StartUbuntu.ru/?p=93475

Учимся управлять автозагрузкой в linux

Настройка автозапуска в Ubuntu

Добрый день, Написанием данной статьи меня побудила банальная задача: отключить графическую оболочку при старте системы. Казалось бы, поменять одну цифру в /etc/inittab. Но как выяснилось, все намного сложнее.

Итак, разберем по полочкам, что такое inittab и systemd, для чего они нужны и как управлять автозагрузкой приложений в linux.

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

Скажу сразу, я не системный администратор и статья больше рассчитана на людей, кто относительно недавно познакомился с linux. Кому интересна данная тема, добро пожаловать. Это моя первая статья, если есть замечания прошу в комментарии.

Что такое inittab

По сути inittab представляет из себя файл в котором можно посмотреть/поменять уровень загрузки операционной системы в /etc/inittab. Давайте разберем его # The default runlevel.id:5:initdefault:# Runlevel 0 is halt.# Runlevel 1 is single-user.# Runlevels 2-5 are multi-user.# Runlevel 6 is reboot. l0:0:wait:/etc/init.d/rc 0l1:1:wait:/etc/init.

d/rc 1l2:2:wait:/etc/init.d/rc 2l3:3:wait:/etc/init.d/rc 3l4:4:wait:/etc/init.d/rc 4l5:5:wait:/etc/init.d/rc 5l6:6:wait:/etc/init.d/rc 6 В linux существуют 7 уровней загрузки операционной системы. В нашем случае нулевой уровень — это режим восстановления, первый — это запуск в одиночном режиме под root. 2-5 загрузка в мульти пользовательском режиме (т.е.

обычный режим). Отличаются они лишь набором стартовых скриптов. 6 уровень это перезагрузка. Скрипты берутся из директорий, которые расписаны в inittab. Наша система по умолчанию загружается на 5 уровне, посмотрим что-же находится в директории /etc/init.d/rc 5: Скрипты в этом каталоге выполняются каждый раз при старте системы.

А если быть точнее это лишь символьные ссылки на сами скрипты. Первая буква означает S(start) K(kill или stop) для изменения порядка скриптов меняется цифра, т.е. запуск скриптов выполняется по возрастанию. Руками менять можно, но рекомендуется менять через «update-rc.d» usage: update-rc.d [-n] [-f] basename remove update-rc.

d [-n] basename disable|enable [S|2|3|4|5] -n: not really -f: force Все просто и прозрачно.

Что такое systemd

Systemd является заменой старой традиционной загрузки inittab. Был разработан чтобы обеспечить лучшую обработку зависимостей. В настоящее время systemd поставляется по умолчанию с популярными дистрибутивами linux таких как Fedora, Mandira, Arch Linux, CentOS 7, Red Hat 7.0 и на удивление для меня в Debian 8.9.

Плюсы и минусы в явном виде для меня не понятны. Интересен в первую очередь функционал. Итак разбираемся дальше. Две вещи, которые нам нужно знать: Чтобы посмотреть уровень загрузки, введем команду: root@asterisk:/home/rus# systemctl get-defaultgraphical.targetroot@asterisk:/home/rus# runlevelN 5 Как правило graphical.

target аналог 5 уровня, запуск системы в графическом режиме. Чтобы посмотреть все доступные нам уровни, введем: проведем аналогию c inittab Runlevel Описание Systemd0 poweroff.target1 rescue.target2 multi-user.target3 multi-user.target4 multi-user.target5 graphical.target6 reboot.

target При старте системы linux смотрит в файл (который является ссылкой) root@asterisk:/home/rus# ls -la /etc/systemd/system/default.target lrwxrwxrwx 1 root root 37 ноя 27 14:45 /etc/systemd/system/default.target -> /lib/systemd/system/graphical.

target Таким образом чтобы загрузиться в многопользовательском режиме, нам нужно сменить ссылку или использовать systemctl (делает тоже самое)

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

Как мы уже поняли в каталогах /etc/rc[0-6].d/* лежат символьные ссылки на скрипты. Где цифры от [0-6] это уровень загрузки у inittab или systemd. Мы можем менять руками порядок запуска, убирать и добавлять. По сути systemd пробежится по всем файлам и попытается их инициализировать при старте системы.

Теперь разберем управление через команды: chkconfig — нужна для просмотра сервисов(программ). Поддерживает режим изменения для любого уровня загрузки. update-rc.d — служит для запуска/остановки скриптов, при старте/выключении системы. Собственно через нее мы и будем менять автозапуск графической оболочки KDE(kdm).

Так уж получилось, что у меня запуск окружения KDE включен для 2-5 уровней по умолчанию. При старте системы я отключаю 2-4 уровень загрузки и проверяю что у меня стоит 3-й уровень загрузки Перезагружаюсь и вижу приглашение консоли tty. profit На самом деле, это чуть больше чем консоль. Мы можем переключаться между вкладками. CTRL+ALT+(F1-F6) команда startx запустит графику KDE.

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

ask.xmodulo.com/boot-into-command-line-ubuntu-debian.html

landoflinux.com/linux_runlevels_systemd.html
lpi.bezha.od.ua/change-runlevels
unix.stackexchange.com/questions/210117/how-to-set-up-a-runlevel-3-in-debian-8 автозагрузка,linux,inittab,systemd,chkconfig Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.

Источник: https://habr.com/sandbox/112588/

Поделиться:
Нет комментариев

    Добавить комментарий

    Ваш e-mail не будет опубликован. Все поля обязательны для заполнения.