Ошибка запуска Debian 10
Только хотел разобраться в линукс дошел до вопроса о том зачем нужен /etc/inittab . Оказолось у меня не было такого файла и я начал гуглить , нашел какой-то форум с командой которая произвела к написанию этой статьи .
Ошибка появилась сразу после ввода команды
$ sudo apt install sysinit-core
После чего у меня пропала возможность менять яркость моего ноута и по привычке я перезапустился , увидил оболочку kde , до это у меня был gnome3 . Я попытался ввести пароль (он коректный , даже нету ответа), но ничего не происходит , даже создал нового пользователя , но никакого еффекта
Хочу попытатся отключить kde на рестарт но не понял как называется сервис ( systemctl disable kde — не работает )
Вопросы на которые я хочу себе ответить : 1. Как вернуть всё как было 2. Почему команда apt install sysinit-core удалила пакеты kde и другие 3. Почему нету файла inittab
Adx04-444
31.01.21 22:22:22 MSK
Поставь kde-plasma-desktop из первой консоли (Ctrl+Alt+F1):
sudo apt insrall kde-plasma-desktop
anonymous
( 31.01.21 22:33:04 MSK )

- Хз, я бы в жизни не подумал так ломать Debian, но теоретически всё можно вернуть. наверное.
- По зависимостям могут удаляться и ставиться самые неожиданные пакеты, если не читать вывод apt ДО того, как подтверждать действие.
- Дело в том, что ты читал устаревшую статью. Ранее в Debian по 7 версию включительно был sysvinit, и там был файл /etc/inittab — но с 8 версии Debian перешел на systemd, и теперь этот файл, как и сам sysvinit и его компоненты не используется (хотя есть форк Devuan с sysvinit и openrc на выбор как init).
Короче говоря, ты поломал свой Debian 10 потому, что по неграмотности попробовал на нём способы настройки из времен 6 или 7, а то и более ранних. Когда читаешь статьи и рассказы о том, как устроено всё в Linux, смотри на даты публикаций — есть перемены.
Vsevolod-linuxoid ★★★★★
( 31.01.21 22:42:28 MSK )
Последнее исправление: Vsevolod-linuxoid 31.01.21 22:44:50 MSK (всего исправлений: 1)

Ладно, давай попробуем всё починить. Прочти вот это: Как правильно копировать вывод терминала и покажи мне выводы команд:
uname -a lsb_release -a ls -l /sbin/init cat /etc/apt/sources.list ls -l /etc/apt/sources.list.d cat /etc/apt/sources.list.d/*
А так же выполни команду
apt list --installed > packages.txt
и выложи на pastebin содержимое packages.txt , так же выложи туда содержимое /var/log/apt/history.log
Попробуем понять, как всё плохо.
Vsevolod-linuxoid ★★★★★
( 31.01.21 22:56:06 MSK )
Ответ на: комментарий от Vsevolod-linuxoid 31.01.21 22:56:06 MSK
Ps. Благодарю за правильное правописание
ls_release -a No LSB modules are available. Distributor ID: Debian Description: Debian GNU/Linux 10 (buster) Release: 10 Codename: buster
uname -a Linux debian 4.19.0-13-amd64 #1 SMP Debian 4.19.160-2 (2020-11-28) x86_64 GNU/Linux
Некоторые репозитории я добавлял вручную ( там где OLD squeeze репозитории)
cat /etc/apt/sources.list # # deb cdrom:[Debian GNU/Linux 10.7.0 _Buster_ - Official amd64 NETINST 20201205-11:16]/ buster main # deb cdrom:[Debian GNU/Linux 10.7.0 _Buster_ - Official amd64 NETINST 20201205-11:16]/ buster main deb http://deb.debian.org/debian/ buster main deb-src http://deb.debian.org/debian/ buster main deb http://security.debian.org/debian-security buster/updates main deb-src http://security.debian.org/debian-security buster/updates main # buster-updates, previously known as 'volatile' deb http://deb.debian.org/debian/ buster-updates main deb-src http://deb.debian.org/debian/ buster-updates main ###############| Old |##############3 deb http://archive.debian.org/debian/ squeeze main contrib deb-src http://archive.debian.org/debian/ squeeze main contrib deb http://deb.debian.org/debian/ squeeze main deb-src http://deb.debian.org/debian/ squeeze main deb http://security.debian.org/debian-security squeeze/updates main deb-src http://security.debian.org/debian-security squeeze/updates main # This system was installed using small removable media # (e.g. netinst, live or single CD). The matching "deb cdrom" # entries were disabled at the end of the installation process. # For information about how to configure apt package sources, ####deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main # deb-src [arch=amd64] https://packages.microsoft.com/repos/vscode stable main # see the sources.list(5) manual. #Ansible repo deb http://ppa.launchpad.net/ansible/ansible/ubuntu trusty main #For old repository # deb http://security.ubuntu.com/ubuntu bionic-security main # deb http://deb.debian.org/debian/ stretch main contrib non-free # deb-src http://deb.debian.org/debian stretch main contrib non-free # deb http://deb.debian.org/debian/ stretch main contrib non-free deb http://repo.r1soft.com/apt stable main
ls -l /etc/apt/sources.list.d* total 16 -rw-r--r-- 1 root root 131 Jan 18 13:49 old_repository_ubuntu.list -rw-r--r-- 1 root root 131 Jan 18 13:49 old_repository_ubuntu.list.save -rw-r--r-- 1 root root 205 Jan 18 13:49 vscode.list -rw-r--r-- 1 root root 205 Jan 18 13:49 vscode.list.save -rw-r--r-- 1 root root 0 Jan 18 13:49 yannubuntu-ubuntu-boot-repair-hirsute.list -rw-r--r-- 1 root root 0 Jan 18 13:49 yannubuntu-ubuntu-boot-repair-hirsute.list.save cat /etc/apt/sources.list.d/* deb http://deb.debian.org/debian/ stretch main contrib non-free deb-src http://deb.debian.org/debian stretch main contrib non-free deb http://deb.debian.org/debian/ stretch main contrib non-free deb-src http://deb.debian.org/debian stretch main contrib non-free ### THIS FILE IS AUTOMATICALLY CONFIGURED ### # You may comment out this entry, but any other modifications may be lost. deb [arch=amd64,arm64,armhf] http://packages.microsoft.com/repos/vscode stable main ### THIS FILE IS AUTOMATICALLY CONFIGURED ### # You may comment out this entry, but any other modifications may be lost. deb [arch=amd64,arm64,armhf] http://packages.microsoft.com/repos/vscode stable main
Ссылки на вывод команд из файлов :
- apt list –installed > packages.txt
- /var/log/apt/history.log
Where is the inittab file?
I’m on Ubuntu 10.10, and I’ve just joined the Linux world coming from OS X. I’m learning about runlevels and the rc directory in /etc/ , and everywhere (manuals, tutorials, etc) I’m reading about inittab . But I can’t find it in my Ubuntu installation. Why? Does Ubuntu follow the runlevel model? How are rc and levels loaded without inittab ?
325 2 2 silver badges 14 14 bronze badges
asked Apr 10, 2011 at 0:24
2,005 7 7 gold badges 22 22 silver badges 24 24 bronze badges
5 Answers 5
If you do man inittab in your terminal, all shall be revealed:
The /etc/inittab file was the configuration file used by the original System V init(8) daemon. The Upstart init(8) daemon does not use this file, and instead reads its configuration from files in /etc/init. See init(5) for more details.
answered Apr 10, 2011 at 1:37
2,113 2 2 gold badges 24 24 silver badges 30 30 bronze badges
Worth to note, in /usr/share/doc/upstart/README.Debian.gz there is some other info.
Apr 10, 2011 at 6:17
but upstart keep using /etc/rc.* ?
Apr 10, 2011 at 10:33
@nkint: upstart keep using /etc/rc.* for packages not aware of upstart
Apr 10, 2011 at 12:23
No manual entry for inittab on 16.04. (he says, years later)
Jun 23, 2017 at 14:41
Aye, apropos inittab will give nothing, in 16.04 the closest bit of info in the OS itself left seems to be in man runlevel .
Aug 2, 2017 at 20:12
Back in the days the «System-V» init service was used in Ubuntu, and it used the /etc/inittab file.
Some time ago (around 2006) the «Upstart» init service replaced SysV. During these days you could follow the top answer and use man inittab to get info on this change.
At the time of writing (e.g. for Ubuntu 16.04) the «systemd» boot process is in use and there is no reference left to «inittab» (e.g. if you do apropos inittab you’ll probably not find anything). Instead you could do man runlevel to get similar information.
Bottom line: the /etc/inittab file is nowhere, likely because you use a newer version for Ubuntu that has a different init service, e.g. systemd.
How To Change Default runlevel in Debian 10 / Debian 9

In Debian 10 / Debian 9, systemd uses targets instead of run-levels. The /etc/inittab file is no longer used by systemd to change run levels.
This post will help you to set up the default runlevel in Debian 10 / Debian 9.
Change Default runlevel
The Default runlevel can be set either by using the systemctl command or making a symbolic link of runlevel targets file to the default target file.
Method 1
Let’s check the current run level by using the following command.
sudo systemctl get-default
Output:
graphical.target
Before changing the default runlevel, check out the available targets.
sudo systemctl list-units --type=target
The output will look like below:
UNIT LOAD ACTIVE SUB DESCRIPTION basic.target loaded active active Basic System cryptsetup.target loaded active active Encrypted Volumes getty.target loaded active active Login Prompts graphical.target loaded active active Graphical Interface local-fs-pre.target loaded active active Local File Systems (Pre) local-fs.target loaded active active Local File Systems multi-user.target loaded active active Multi-User System network-online.target loaded active active Network is Online network.target loaded active active Network nss-user-lookup.target loaded active active User and Group Name Lookups paths.target loaded active active Paths remote-fs.target loaded active active Remote File Systems slices.target loaded active active Slices sockets.target loaded active active Sockets sound.target loaded active active Sound Card swap.target loaded active active Swap sysinit.target loaded active active System Initialization time-sync.target loaded active active System Time Synchronized timers.target loaded active active Timers LOAD = Reflects whether the unit definition was properly loaded. ACTIVE = The high-level unit activation state, i.e. generalization of SUB. SUB = The low-level unit activation state, values depend on unit type.
Issue the following command to change the default runlevel to runlevel 3 (nothing but a multi-user.target).
sudo systemctl set-default multi-user.target
Confirm the default runlevel.
sudo systemctl get-default
Output:
multi-user.target
Reboot and check it out.
sudo reboot
Method 2
In the previous method, we made the runlevel 3 as the default runlevel. You can also confirm that using the following command.
sudo systemctl get-default
Output:
multi-user.target
For a demo, issue the following command to make runlevel 5 as the default runlevel.
sudo ln -sf /lib/systemd/system/runlevel5.target /etc/systemd/system/default.target
sudo ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
Again check the current level. Now the default runlevel is the graphical mode(runlevel 5).
sudo systemctl get-default
Output:
graphical.target
Reboot the machine and check it out.
sudo reboot
Conclusion
That’s All. I hope this helped you. We welcome your comments.
Глава 11. Пользовательская настройка системы Debian GNU/Linux
11.1. Как убедиться, что все программы используют одинаковый формат бумаги?
Установите пакет libpaper1 , и вас попросят указать формат бумаги по умолчанию для всей системы. Настройка будет сохранена в файле /etc/papersize .
Users can override the paper size setting using the PAPERSIZE environment variable. For details, see the manual page papersize (5) .
11.2. Как обеспечить доступ к файлам устройств без нарушения защиты системы?
Многие файлы устройств в каталоге /dev принадлежат предопределённым группам. Например, /dev/sr0 принадлежит группе cdrom .
Если вы хотите предоставить конкретному пользователю доступ к устройству, то включите пользователя в группу, которой принадлежит это устройство, т. е. сделайте:
adduser пользователь группа
Благодаря этому, вам не нужно изменять права доступа на сами файлы устройств.
Если вы выполняли это из оболочки командной строки или графического окружения этого пользователя, то вам нужно выйти из системы и войти снова, чтобы стать членом этой группы. Чтобы посмотреть, в какие группы вы входите, введите команду groups .
Заметим, что при использовании udev если вы изменяете права доступа к оборудованию, то для некоторых устройств они могут измениться при запуске системы; если это происходит с каком-то важным для вас оборудованием, то вам следует изменить соответствующие правила в /etc/udev .
11.3. Как в Debian правильно сменить консольный шрифт при запуске системы?
Для этой задачи существуют пакет kbd , отредактируйте файл /etc/kbd/config .
11.4. Как настроить параметры по умолчанию для приложений X11?
В Debian файлы ресурсов программ X11 устанавливаются в каталог /etc/X11/app-defaults/ . Если вы хотите глобально изменить настройки приложений X, то отредактируйте файлы настроек из этого каталога. Эти файлы считаются настроечными, так что их содержимое будет сохраняться при обновлениях системы.
11.5. How does a Debian system boot?
Like all Unices, Debian boots up by executing the program init . Like most Linux distributions, a default Debian system uses systemd as the implementation of init . Traditional System-V style init and other methods are also supported. [6]
To control the order in which services are started, traditional System-V style Unix systems use runlevels . These are replaced by targets under systemd. To display the default target to which systemd will bring the system, run the command
systemctl get-default
During boot-up, systemd starts the services or other targets listed in the default target file /lib/systemd/system/default.target . The files for these services and targets are installed and the service is enabled during Debian package installation. If you specifically wish not to start a service during boot-up, instead of removing the corresponding package, you can run the command
systemctl disable service.service
using the name of the service file installed in /lib/systemd/system (usually based on the name of the package).
The service file /lib/systemd/system/rc-local.service provides an easy way to run customized scripts in the file /etc/rc.local after boot-up, similar to what’s offered on Debian systems running System-V style init. Beware: this script will fail if it tries to interact with the console such as asking for a user password or trying to clear the screen.
You can check the status of any service by the command
service package status
. To start or stop a service, run
service package start
service package stop
. The service command works with any init system supported on a Debian system, not just with systemd. If you however prefer to use the same command on any systemd-supported Linux system, for checking the status run
systemctl status package.service
to get the same information.
For more information on systemd for Debian, see https://wiki.debian.org/systemd.
11.6. And how about Debian and traditional System V init?
Debian supports booting using traditional System V init, via the sysvinit-core package. The configuration file for System V init (which is /etc/inittab ) specifies that the first script to be executed should be /etc/init.d/rcS . This script runs all of the scripts in /etc/rcS.d/ by forking subprocesses to perform initialization such as to check and to mount file systems, to load modules, to start the network services, to set the clock, and to perform other initialization.
По окончании процесса загрузки init выполняет все сценарии запуска в каталоге, соответствующем установленному по умолчанию уровню запуска (этот уровень задаётся записью id в /etc/inittab ). Как и в большинстве Uniх-ов, совместимых с System V, в Linux имеется 7 уровней запуска:
- 0 (останов системы),
- 1 (однопользовательский режим),
- с 2 по 5 (различные многопользовательские режимы), и
- 6 (перезагрузка системы).
В системах Debian что означает, что по умолчанию будет установлен уровень запуска ‘2’ (вход в многопользовательский режим), и будут запущены сценарии из каталога /etc/rc2.d/ .
Debian использует порядок загрузки в соответствии с зависимостями при помощи insserv , в каждом сценарии в /etc/init.d/ используются заголовки LSB, а также параллельную одновременную загрузку при помощи startpar , что ускоряет процесс загрузки системы.
Сценарии в любом каталоге, /etc/rcN.d/ являются лишь символьными ссылками на сценарии в /etc/init.d/ . Тем не менее, имена файлов в каждом из каталогов /etc/rcN.d/ выбираются таким образом, что они обозначают способ запуска сценариев в /etc/init.d/ . Например, до выхода на любой уровень запуска запускаются все сценарии, имена которых начинаются с ‘K’; эти сценарии завершают работу служб. После этого запускаются все сценарии, имена которых начинаются с ‘S’; эти сценарии запускают работу служб. Число после букв ‘K’ или ‘S’ обозначает порядок запуска сценария. Сценарии, имена которых содержат меньшее число, запускаются раньше.
Для поддержки этого метода все сценарии в каталоге /etc/init.d/ принимают один из параметров: «start», «stop», «reload», «restart» или «force-reload» и затем выполняют задачу, определяемую этим параметром. Эти сценарии можно использовать даже после окончания процесса загрузки системы для управления различными процессами.
Например, при задании параметра «reload» команда
/etc/init.d/sendmail reload
отправляет службе sendmail сигнал для выполнения повторного чтения файла настройки.
Заметьте, что invoke-rc.d не следует использовать для вызова сценариев /etc/init.d/ , нужно использовать service .
11.7. And are there yet other ways of booting a Debian system?
If you do like System V init, but don’t like the /etc/rc?.d/* links, you could install the file-rc package. That will convert the links into one single configuration file /etc/runlevel.conf instead.
If you like neither System V nor systemd, you might like openrc or runit or daemontools .
11.8. Как система управления пакетами работает с пакетами, содержащими настроечные файлы для других пакетов?
Предположим, что какие-то пользователи захотели настроить новый сервер, установив группу пакетов Debian и собственный пакет, состоящий из настроечных файлов. Вообще, это не очень хорошо, поскольку dpkg не будет знать о файлах настроек, если они находятся в отдельном пакете, и может затереть эти файлы при обновлении одного из пакетов исходной «группы».
Вместо этого создайте собственный пакет, который правит настроечные файлы интересующей «группы» пакетов. Впоследствии dpkg и другие утилиты системы управления пакетов увидят, что файлы были отредактированы локальным «администратором», и не станут их трогать при обновлении указанных пакетов.
11.9. Как заменить программу, установленную из какого-либо пакета, на свою собственную?
Предположим, что системный администратор или пользователь хотят использовать программу «login-local» вместо «login» из пакета Debian login .
НЕ надо:
- перезаписывать /bin/login программой login-local .
Система управления пакетами не будет знать об этих изменениях и при последующих обновлениях или установках просто заменит изменённый вами /bin/login новым из пакета login (или любого другого пакета, предоставляющего /bin/login ).
- выполните:
dpkg-divert --divert /bin/login.debian /bin/login
cp login-local /bin/login
Запустите dpkg-divert —list , чтобы узнать, какие замены (отклонения) уже имеются в вашей системе.
Details are given in the manual page dpkg-divert (8) .
11.10. Как включить самостоятельно собранный пакет в список доступных пакетов, известных системе управления пакетами?
dpkg-scanpackages КАТ_ДВОИЧН_ФАЙЛОВ ФАЙЛ_OVERRIDE [ПРЕФИКС_ПУТИ] > my_Packages
- КАТ_ДВОИЧН_ФАЙЛОВ — это каталог, где находятся файлы-архивы Debian (обычно имеющие расширение «.deb»).
- OVERRIDE_FILE is a file that is edited by the distribution maintainers and is usually stored on a Debian archive at indices/override.main.gz for the Debian packages in the «main» distribution. You can ignore this for local packages.
- ПРЕФИКС_ПУТИ — это необязательная строка, которая может предшествовать именам файлов в my_Packages .
После создания файла my_Packages , сообщите системе управления пакетами о новых пакетах командой:
dpkg --merge-avail my_Packages
If you are using APT, you can add the local repository to your sources.list (5) file, too.
11.11. Некоторым пользователям нравится mawk, другим gawk; некоторым vim, другим elvis; некоторым trn, другим tin. Как осуществляется поддержка предпочтений в Debian?
Бывают случаи, когда в двух пакетах имеются две разные версии какой-либо программы, в целом обеспечивающих одну и ту же функциональность. Одни пользователи могут предпочитать одну из этих программ другой в силу привычки или более привлекательного интерфейса. У других же пользователей этой же системы может быть иное мнение.
Для того, чтобы системные администраторы (или пользователи) могли выбирать для себя из нескольких пакетов с одинаковой функциональностью один предпочтительный, соблюдая в то же время зависимости без необходимости указания конкретного пакета, в Debian используется система «виртуальных» пакетов.
Например, в системе может существовать две различные версии программ чтения новостей. Пакет сервера новостей может ‘рекомендовать’, чтобы в системе была установлена некая программа для чтения новостей, но какая именно — tin или trn , предлагается выбрать пользователю. Решается это созданием виртуального пакета news-reader , который предоставляется пакетами tin и trn . Какая именно из этих программ будет вызываться, определяется символьной ссылкой файла виртуального пакета /etc/alternatives/news-reader на выбранный файл, например, на /usr/bin/trn .
Простого создания символьной ссылки для полного решения задачи использования альтернативной программы недостаточно; обычно необходимо также заменить страницы руководства и, возможно, вспомогательные программы. Для обеспечения того, чтобы все эти файлы, относящиеся к указанному пакету, выбирались в системе по умолчанию, используется сценарий на Perl update-alternatives .
Например, чтобы проверить, какие программы предоставляют «x-window-manager», выполните:
update-alternatives --display x-window-manager
Если вы хотите изменить программу:
update-alternatives --config x-window-manager
И следуйте инструкциям на экране (просто укажите номер желаемой программы из списка).
Если пакет почему-то не зарегистрировал себя как оконный менеджер (если это ошибка, сообщите о ней), или если вы используете менеджер из каталога /usr/local, то на экране вы не увидите предпочитаемой вами программы. Ссылку можно обновить с помощью указания дополнительных параметров для команды, например:
update-alternatives --install /usr/bin/x-window-manager \ x-window-manager /usr/local/bin/wmaker-cvs 50
Первый аргумент параметра «—install» представляет собой символьную ссылку на /etc/alternatives/NAME, где NAME задаётся вторым аргументом. Третий аргумент указывает программу, на которую должна указывать ссылка /etc/alternatives/NAME, а четвёртый задаёт приоритет (чем больше значение, тем больше вероятность автоматического выбора данной альтернативы).
Чтобы удалить добавленный вами вариант, просто выполните:
update-alternatives --remove x-window-manager /usr/local/bin/wmaker-cvs
[6] In 2014, Debian changed its default init system from System V init to systemd. Debian 8 «jessie» in April 2015 was the first release to ship with systemd as default init. Four decisions of the Debian Technical Committee were involved: Bug #727708 2014-02-11: «The committee decided that the default init system for Linux architectures in jessie should be systemd.» Bug #746715 2014-08-01: «The technical committee expects maintainers to continue to support the multiple available init systems», and merge reasonable contributions. Bug #746578 2014-11-15: «The committee decided that systemd-shim should be the first listed alternative dependency of libpam-systemd instead of systemd-sysv.» This decision made it easier to keep running a non-systemd Debian system. Bug #7621942017-11-04: «On automatic init system switching on upgrade»
|
![]() |
|
| Глава 10. Debian и ядро | ![]() |
Глава 12. Поддержка Debian GNU/Linux |

