- Почему Debian выводит: отсутствуют команды poweroff, sudo, shutdown, reboot, и другие?
- unixforum.org
- bash не «признаёт» команды останова системы из под рядовых пользователей
- bash не «признаёт» команды останова системы из под рядовых пользователей
- Re: bash не «признаёт» команды останова системы из под рядовых пользователей
- Re: bash не «признаёт» команды останова системы из под рядовых пользователей
- Re: bash не «признаёт» команды останова системы из под рядовых пользователей
- Re: bash не «признаёт» команды останова системы из под рядовых пользователей
- Re: bash не «признаёт» команды останова системы из под рядовых пользователей
- Re: bash не «признаёт» команды останова системы из под рядовых пользователей
- Re: bash не «признаёт» команды останова системы из под рядовых пользователей
- Re: bash не «признаёт» команды останова системы из под рядовых пользователей
- Перезагрузка Linux через консоль
- Перезагружаем Linux через консоль
- Способ 1: Команда reboot
- Способ 2: Команда shutdown
- Способ 3: Init Script
- Способ 4: Служба системных сообщений D-Bus
- Способ 5: Горячие клавиши SysRq
- Способ 6: Удаленная перезагрузка
- Способ 7: Перезагрузка в Recovery Mode
Почему Debian выводит: отсутствуют команды poweroff, sudo, shutdown, reboot, и другие?
Здравствуйте. Выводит:
5f13f4106a48e435217841.png
да, Вы правильный путь подсказали. sudo без проблем поставил через apt, но. команды выключения, такие как poweroff, shutdown, reboot не ставятся — пишет, что такого пакета не существует.
не криво, при установке Debian задаётся пароль su и пароль пользователя, вход идёт по паролю пользователя, управление идёт по паролю su, если при установке не указывать пароль su, то управление автоматически переходит пользователю по sudo
ТС при установке задал пароль su, поэтому у него нет sudo, хотя это всё легко настраивается, только какой в этом смысл.
что заходить под root пользователем не безопастно
если при установке Debian не указал пароль для su (не создал суперпользователя), то пользователь получает возможность управления при помощи sudo, при чём тут вход под root? )))
просто sudo ему настроит установщик тогда, чтобы не задавать вот этот вопрос в котором мы сидим
MaksSmag, можно было не указывать (пропустить) пароль суперюзера и тогда после установки ты сразу мог бы иметь управление при помощи sudo и пароля своего пользователя, sudo был бы уже настроен, понимаешь?)
в терминале ты бы тогда не вводил su и пароль от su, ты бы вводил sudo . и потом у тебя запрашивался бы пароль твой, твоего пользователя
короче как в бурбунту было бы
если ты создавал su, то теперь если ты хочешь sudo, то это нужно настраивать отдельно
Источник
unixforum.org
Форум для пользователей UNIX-подобных систем
- Темы без ответов
- Активные темы
- Поиск
- Статус форума
bash не «признаёт» команды останова системы из под рядовых пользователей
Модератор: /dev/random
bash не «признаёт» команды останова системы из под рядовых пользователей
Сообщение Tir » 06.05.2009 01:14
Re: bash не «признаёт» команды останова системы из под рядовых пользователей
Сообщение grouzen » 06.05.2009 02:15
Re: bash не «признаёт» команды останова системы из под рядовых пользователей
Сообщение Tir » 06.05.2009 16:25
Re: bash не «признаёт» команды останова системы из под рядовых пользователей
Сообщение (asper » 06.05.2009 17:18
делайте выводы, либо пропишите задание переменной окружающей среды PATH непосредственно в .bash_profile
Ещё один вариант:
пропишите значения PATH прямо в /etc/profile
Re: bash не «признаёт» команды останова системы из под рядовых пользователей
Сообщение grouzen » 06.05.2009 23:10
Re: bash не «признаёт» команды останова системы из под рядовых пользователей
Сообщение Tir » 07.05.2009 12:22
делайте выводы, либо пропишите задание переменной окружающей среды PATH непосредственно в .bash_profile
Ещё один вариант:
пропишите значения PATH прямо в /etc/profile
Ну это относится, я так понимаю, к .bashrc, который свой у каждого пользователя и лежит у каждого пользователя в домашней папке. Я же хотел создать через bashrc алиасы для всех пользователей через редактирование bashrc, который в /etc/ лежит. Точнее должен лежать, но в моём случае его почему то там не оказалось. Аналогично насчёт .bash_profile. Менять каждому пользователю персональные настройки в данном случае ИМХО не кошерно. Кошерно ИМХО поменять общие настройки. Вот только никак не соображу, как это сделать. Писать в $PATH путь до /sbin/ тоже не хочется, ибо тогда всем станут доступны все программы, которые там лежат (какая-никакая, а защита от дурака). Оптимальный вариант в данном случае ИМХО алиас. Осталось только сообразить куда его написать
Re: bash не «признаёт» команды останова системы из под рядовых пользователей
Сообщение grouzen » 07.05.2009 13:53
Re: bash не «признаёт» команды останова системы из под рядовых пользователей
Сообщение Tir » 07.05.2009 16:13
Или вы про man sudo упомянули просто чтобы на умняк выпасть? Собственно, вы сами указали 2 проблемы, которые могут возникнуть при попытке останова системы из-под обычного пользователя:
- bash не знает про команды останова, т.к. не знает про программы лежащие в /sbin/
- у обычного пользователя нету прав на выполнение этих программ
Первая проблема решается созданием алиасов/добавлением соответствующих путей в $PATH/и т.д. Через sudo как раз решается вторая проблема.
Я вам в предыдущем своём посте писал, что судя по сообщениям баша он для начала не может найти эти программы. Т.е. права тут не причём (пока). Права будут причём когда баш таки найдёт эти программы и попытается запустить. Т.е. это как раз первая из двух вышеуказанных проблем. В ответ вы начинаете мне петь про man sudo. И кто после этого несёт чушь?
По теме
Раскурка стартовых скриптов баша показала, что алиасы в /etc/bashrc не помогают по одной простой причине — они не создаются. А не создаются они потому что /etc/bashrc нигде в ходе запуска bash-а не вызывается. Соотетственно проблему решил следующим образом: создал скрипт, создающий соответствующие алиасы и положил его в /etc/profile.d/. Алиасы естественно делал с вызовом через sudo:
Re: bash не «признаёт» команды останова системы из под рядовых пользователей
Сообщение SLEDopit » 07.05.2009 16:58
$ ifconfig bash: ifconfig: команда не найдена [16:55]note:
$ sudo ifconfig lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:38 errors:0 dropped:0 overruns:0 frame:0 TX packets:38 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:2984 (2.9 KiB) TX bytes:2984 (2.9 KiB) wlan0 Link encap:Ethernet HWaddr 00:1c:bf:54:ae:66 inet addr:192.168.1.63 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::21c:bfff:fe54:ae66/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:777933 errors:0 dropped:0 overruns:0 frame:0 TX packets:472017 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1140888116 (1.0 GiB) TX bytes:42762823 (40.7 MiB) [17:02]note:
$ sudo ifconfig eth1 up [17:02]note:
$ sudo ifconfig eth1 Link encap:Ethernet HWaddr 00:1e:33:07:9c:c7 UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) Interrupt:17 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:38 errors:0 dropped:0 overruns:0 frame:0 TX packets:38 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:2984 (2.9 KiB) TX bytes:2984 (2.9 KiB) wlan0 Link encap:Ethernet HWaddr 00:1c:bf:54:ae:66 inet addr:192.168.1.63 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::21c:bfff:fe54:ae66/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:840010 errors:0 dropped:0 overruns:0 frame:0 TX packets:510451 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1233716735 (1.1 GiB) TX bytes:46237874 (44.0 MiB) [17:03]note:
$ /sbin/ifconfig eth1 down SIOCSIFFLAGS: Отказано в доступе ##часть судоерса и никаких извращений с алиасами User_Alias EXAMPLE = user Host_Alias LOCAL = localhost,note Cmnd_Alias NET = /sbin/ifconfig EXAMPLE LOCAL = NOPASSWD: NET
Источник
Перезагрузка Linux через консоль
Обладатели разных дистрибутивов Linux время от времени сталкиваются с необходимостью перезагрузки операционной системы, что требуется делать после внесения каких-либо изменений в параметры или при появлении неполадок. Обычно поставленная задача осуществляется через графический интерфейс, но этот вариант не всегда получается использовать эффективно. Именно поэтому многие прибегают к вводу терминальных команд, которые и отвечают за подачу сигнала на перезагрузку. Сегодня мы хотим рассказать вам обо всех доступных способах перезапуска Линукс через консоль на примере Ubuntu.
Перезагружаем Linux через консоль
Как вы уже знаете, сегодняшние инструкции будут основаны на Ubuntu, однако и обладателям других дистрибутивов они тоже окажутся полезными, поскольку различия практически никогда не наблюдаются. Если же вдруг вы увидите сообщение об ошибке при попытке ввода какой-то команды, в следующих строках отобразится информация о том, почему этот запрос не может быть выполнен. Используйте полученные сведения, чтобы найти альтернативу, например, в официальной документации. Мы же переходим к рассмотрению всех методов, а их существует достаточное количество.
Способ 1: Команда reboot
О команде reboot наверняка слышали даже самые начинающие пользователи операционных систем Linux. Вся ее суть как раз и заключается в отправке текущего сеанса на перезагрузку, а дополнительные аргументы при этом не указываются.
- Откройте меню приложений и запустите оттуда «Терминал». Для этого вы можете задействовать и другой удобный вариант, например, стандартную горячую клавишу Ctrl + Alt + T.
Действие перезагрузки через reboot обязательно выполняется от имени суперпользователя, поэтому вводимая строка выглядит так: sudo reboot .
Соответственно, потребуется подтвердить учетную запись, написав пароль от нее. Учитывайте, что вводимые символы пароля в консоли никогда не отображаются.
Компьютер сразу же завершит свою работу, и через несколько секунд запустится новый сеанс в обычном режиме. Автоматически включится виртуальная консоль с графической оболочкой, даже если до этого вы использовали другой терминал.
Способ 2: Команда shutdown
Иногда юзеру требуется, чтобы ПК перезапустился через определенное количество времени, например, через несколько минут. Команда reboot не очень подходит для таких целей, поэтому мы предлагаем воспользоваться альтернативой в виде shutdown.
- Запустите «Терминал» и укажите sudo shutdown -r +1 , где +1 — время, через которое команда будет приведена в действие. В данном случае это одна минута. Укажите 0 или now, если хотите запустить интересующий процесс немедленно.
Команда shutdown тоже зависит от суперпользователя, поэтому для ее активации понадобится ввести пароль.
Способ 3: Init Script
Некоторые дистрибутивы поддерживают Init Script, о чем более детально вы можете прочесть в их официальных документациях. Там же будет написано и об основных настройках, связанных с данными скриптами. Сейчас мы опустим все эти моменты, поскольку они не вписываются в рамки этого материала. Расскажем лишь то, что у init есть шесть параметров, где 0 — выключение компьютера, а 6 — перезагрузка сеанса. Именно последний параметр мы и будем применять сейчас. Для его активации в консоли придется ввести sudo init 6 . Как вы уже поняли из приставки sudo, это действие тоже осуществляется только через root.
Способ 4: Служба системных сообщений D-Bus
Как вы наверняка заметили, все три приведенных выше способа для активации требовали наличия пароля суперпользователя, однако не у всех юзеров есть возможность ввести его. Специально для таких целей мы и предлагаем воспользоваться службой системных сообщений D-Bus. Это стандартная утилита Linux, позволяющая программам взаимодействовать друг с другом, а длинная и непонятная команда, отправляющая систему на перезапуск, следующая: /usr/bin/dbus-send —system —print-reply —dest=»org.freedesktop.ConsoleKit» /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Restart . После ее ввода и активации текущий сеанс сразу же будет завершен.
Способ 5: Горячие клавиши SysRq
Этот метод только косвенно связан с консолью, поскольку через нее производится настройка, а дальнейшая перезагрузка выполняется через горячие клавиши. Однако мы решили включить его в этот список из-за необычности и особенностей использования. Горячие клавиши SysRq пригодятся в тех ситуациях, когда графическая оболочка попросту не отвечает.
- Запустите «Терминал» и введите там echo 1 > /proc/sys/kernel/sysrq .
Следом откройте файл конфигурации через удобный текстовый редактор, например, sudo nano /etc/sysctl.conf .
Этот файл расположен в системном разделе, поэтому для открытия понадобятся права суперпользователя.
Опуститесь вниз файла и вставьте туда строку kernel.sysrq = 1 .
Сохраните настройки и закройте текстовый редактор.
После этого потребуется зажать Alt + SysRq + Код клавиши. Об этом мы детальнее поговорим далее.
Корректный перезапуск осуществляется путем указания определенной последовательности кодов клавиш. Каждый из них имеет следующий вид:
- R — вернет управление клавиатурой, если работа той была непредвиденно завершена.
- E — пошлет всем процессам сигнал SIGTERM, что приведет к их завершению.
- I — делает то же самое, но только через сигнал SIGKILL. Требуется в тех случаях, если некоторые процессы не были завершены после SIGTERM.
- S — отвечает за синхронизацию файловых систем. Во время этой операции вся информация будет сохранена на жестком диске.
- U — отмонтирует ФС и смонтирует их заново в режиме только для чтения.
- B — запустит процесс перезагрузки компьютера, игнорируя все предупреждения.
Вам осталось только нажать каждую эту комбинацию в этой же очередности, чтобы перезагрузка прошла корректно.
Способ 6: Удаленная перезагрузка
Некоторые пользователи активно задействуют специальные инструменты по удаленному управлению рабочими столами. Часто в подобных решениях имеются соответствующие команды, позволяющие отправить необходимый компьютер на перезапуск. Например, обратите внимание на следующий параметр SSH: ssh root@remote-server.com /sbin/reboot . Именно по этому принципу происходит перезапуск выбранного удаленного ПК на этом сервере. Если вы используете другие средства управления, прочтите официальную документацию, чтобы получить нужные сведения.
Способ 7: Перезагрузка в Recovery Mode
В качестве последнего способа мы хотим рассказать, как осуществляется перезагрузка ПК в Recovery Mode, поскольку многие пользователи теряются в этом меню и просто выключают компьютер через кнопку, а потом заново его запускают. В случае, когда вы перешли в режим восстановления, можете запустить консоль и использовать любой из приведенных выше методов:
- В меню восстановления вас интересует пункт «Продолжить нормальную загрузку» или «Перейти в командный интерпретатор суперпользователя». В первом случае просто начнется старт ОС в обычном режиме, а второй пункт запустит консоль в root.
Если вы запускаете терминал, то подтвердите эту операцию нажатием на клавишу Enter.
Далее остается только ввести подходящую команду, например, reboot , чтобы отправить ПК на перезапуск.
Как видите, существует огромное количество методов, позволяющих быстро перезагрузить систему Linux через консоль. Осталось только понять, какой из этих вариантов следует использовать в определенной ситуации, чтобы соответствовать возникшим условиям, которые требуют перезапуска ОС.
Помимо этой статьи, на сайте еще 12315 инструкций.
Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Источник