# ДЛЯ UBUNTU 22.04.
Воссоздать использование для автозагрузки
(авто-исполнение файла) /etc/rc.local

# Последовательность взята отсюда: https://linuxhint.com/use-rc-local-on-ubuntu/

 

user@cot4: sudo ls -l /etc # Убеждаемся, что файл /etc/rc.local изначально ОТСУТСТВУЕТ

user@cot4:~$ sudo nano /etc/rc.local # Воссоздаём этот файл


Набираем в него примерно следующее СОДЕРЖИМОЕ:


#!/bin/bash

#

# My handmade (by vas_vic). Рукоделье то есть:

/Laba_help/FIRST_LIN.2/first_client.sh 1

#

exit 0 # Сообщем, что файл завершён без заполнения кодов ошибок



# Узнаём, объявлен ли данный файл системным процессом:

user@cot4:~$ sudo systemctl status rc-local


# Отклик ПОЛНО:

* rc-local.service - /etc/rc.local Compatibility

Loaded: loaded (/lib/systemd/system/rc-local.service; static)

Drop-In: /usr/lib/systemd/system/rc-local.service.d

`-debian.conf

Active: inactive (dead)

Docs: man:systemd-rc-local-generator(8)


# Тот же отклик КРАТКО:

Active: inactive (dead)

# То есть воссоздать файл не достаточно, чтобы Операционная Система его начала обрабатывать.



# Пытаемся этот файл без создания предварительного файла конфигурации объявить системным процессом:

user@cot4:~$ sudo systemctl enable rc-local  


# Отклик: СООБЩЕНИЕ ОБ ОШИБКЕ команды systemctl enable

The unit files have no installation config (WantedBy=, RequiredBy=, Also=,

Alias= settings in the [Install] section, and DefaultInstance= for template

units). This means they are not meant to be enabled using systemctl.

Possible reasons for having this kind of units are:

* A unit may be statically enabled by being symlinked from another unit's

.wants/ or .requires/ directory.

* A unit's purpose may be to act as a helper for some other unit which has

a requirement dependency on it.

* A unit may be started when needed via activation (socket, path, timer,

D-Bus, udev, scripted systemctl call, ...).

* In case of template units, the unit is meant to be enabled with some

instance name specified.


# Вручную создаём конфигурационный файл для процесса:

user@cot4:~$ sudo nano /etc/systemd/system/rc-local.service


# С например таким СОДЕРЖИМЫМ:

[Unit]

Description=/etc/rc.local Compatibility

ConditionPathExists=/etc/rc.local


[Service]

Type=forking

ExecStart=/etc/rc.local start

TimeoutSec=0

StandardOutput=tty

RemainAfterExit=yes

SysVStartPriority=99

 

[Install]

WantedBy=multi-user.target


# Не забыть сам автозапускной файл /etc/rc.local сделать исполнимым:

user@cot4:~$ sudo chmod +x /etc/rc.local

user@cot4:~$ : sudo ls -l /etc # Убеждаемся, что файл /etc/rc.local получил права на исполнение


 

# Объявляем этот файл системным процессом:

user@cot4:~$ sudo systemctl enable rc-local


# НОРМАЛЬНЫЙ ОТКЛИК команды systemctl enable

Created symlink /etc/systemd/system/multi-user.target.wants/rc-local.service -> /etc/systemd/system/rc-local.service.


 

# Запускаем созданный системный процесс:

user@cot4:~$ sudo systemctl start rc-local.service


# НОРМАЛЬНЫЙ ОТКЛИК команды systemctl start

# БЕЗ сообщений об ошибках, предположительно НОРМА


 

# Убеждаемся в статусе это системного процесса:

user@cot4:~$ sudo systemctl status rc-local.service


# Отклик ПОЛНО:

* rc-local.service - /etc/rc.local Compatibility

Loaded: loaded (/etc/systemd/system/rc-local.service; enabled; vendor preset: enabled)

Drop-In: /usr/lib/systemd/system/rc-local.service.d

`-debian.conf

Active: active (exited) since Sun 2024-02-04 18:46:06 UTC; 2min 18s ago

Process: 10000 ExecStart=/etc/rc.local start (code=exited, status=0/SUCCESS)

CPU: 2.910s


<D1><84><D0><B5><D0><B2> 04 18:45:56 cot4 systemd[1]: Starting /etc/rc.local Compatibility...

<D1><84><D0><B5><D0><B2> 04 18:45:56 cot4 rc.local[10001]: <D0><9F><D1><80><D0><BE><D0><B3><D1><80><D0><B0><D0><BC><D0><BC><D0><B0> /Laba_hel>

<D1><84><D0><B5><D0><B2> 04 18:45:58 cot4 rc.local[10049]: Unable to apply some actions, aborting

<D1><84><D0><B5><D0><B2> 04 18:46:06 cot4 systemd[1]: Started /etc/rc.local Compatibility.


# Отклик КРАТКО:

Active: active (exited)


Ура!!!