Bug 8863

Summary: --list теперь не показывает выключеные сервисы
Product: Sisyphus Reporter: Vadim Gusev <kopilo4ka>
Component: chkconfigAssignee: placeholder <placeholder>
Status: CLOSED NOTABUG QA Contact: qa-sisyphus
Severity: normal    
Priority: P4 CC: abulava, glebfm, ldv, placeholder, rider
Version: unstable   
Hardware: all   
OS: Linux   

Description Vadim Gusev 2006-01-18 12:41:34 MSK
Если сервис выключен то по --list он не показывается, а раньше показывал. 
 
$ rpm -qf /sbin/chkconfig 
chkconfig-1.2.24-alt5 
$ chkconfig --list gpm 
gpm             0:выкл  1:выкл  2:вкл   3:вкл   4:вкл   5:вкл   6:выкл 
$ chkconfig --del gpm 
$ chkconfig --list gpm 
gpm             0:выкл  1:выкл  2:выкл  3:выкл  4:выкл  5:выкл  6:выкл 
$ apt-get install chkconfig 
Чтение списков пакетов... Завершено 
Построение дерева зависимостей... Завершено 
Следующие пакеты будут ОБНОВЛЕНЫ: 
  chkconfig 
Следующие пакеты будут УДАЛЕНЫ: 
  ntsysv 
1 будет обновлено, 0 новых установлено, 1 пакетов будет удалено и 172 не будет 
обновлено. 
Необходимо получить 0B/104kB архивов. 
После распаковки потребуется дополнительно 316kB дискового пространства. 
Продолжить? [Y/n] 
Совершаем изменения... 
Preparing...                 ########## [100%] 
1: chkconfig                 ########## [100%] 
Завершено. 
$ chkconfig --list gpm 
gpm             0:выкл  1:выкл  2:вкл   3:вкл   4:вкл   5:вкл   6:выкл 
$ chkconfig --del gpm 
$ chkconfig --list gpm 
сервис gpm поддерживает chkconfig, но неиспользуется ни в одном уровне 
выполнения (запустите 'chkconfig --add gpm') 
$ chkconfig --add gpm 
$ chkconfig --list gpm 
gpm             0:выкл  1:выкл  2:вкл   3:вкл   4:вкл   5:вкл   6:выкл 
$ rpm -qf /sbin/chkconfig 
chkconfig-1.3.25-alt1 
Steps to Reproduce:
1. chkconfig --del gpm 
2. chkconfig --list gpm 
3.
Comment 1 Anton Farygin 2006-01-18 13:19:23 MSK
Всё даже веселее:
[root@amd64 ~]# chkconfig --list ethtool
ethtool         0:off   1:off   2:off   3:off   4:off   5:off   6:off
[root@amd64 ~]# chkconfig --add ethtool
[root@amd64 ~]# chkconfig --list ethtool
ethtool         0:off   1:off   2:off   3:off   4:off   5:off   6:off
[root@amd64 ~]# chkconfig --del ethtool
[root@amd64 ~]# chkconfig --list ethtool
service ethtool supports chkconfig, but is not referenced in any runlevel (run
'chkconfig --add ethtool')

версия та же.
Comment 2 Dmitry V. Levin 2006-01-18 16:05:31 MSK
upstream сделал это изменение сознательно;
у вас есть основания желать возврата к прежнему поведению?
Comment 3 Andrei Bulava 2006-01-19 13:27:37 MSK
IMHO, всё наконец-то стало на свои места: после 'chkconfig --del' ожидать хоть
чего-то от 'chkconfig --list' по меньшей мере странно.

В сторонку: хватит того, что в Debian 'chkconfig --list' работал и показывал
'on' даже после 'apt-get remove' пакета с инитскриптом, пока не пропишешь dpkg
"пургена".
Comment 4 Anton Farygin 2006-01-19 13:29:51 MSK
Почему же странно ? а как посмотреть список _выключенных_ сервисов ?
Comment 5 Andrei Bulava 2006-01-19 13:49:56 MSK
(In reply to comment #4)
> Почему же странно ? а как посмотреть список _выключенных_ сервисов ?
 
# chkconfig --list

теперь (chkconfig-1.3.25-alt1) показывает список _зарегистрированных_ сервисов,
предлагая считать, что _незарегистрированный_ == выключенный.

Общая фраза "как посмотреть список _выключенных_ сервисов" требует уточнения:
"глазами" или скриптом? С "глазами", по-моему, никаких проблем, а скрипты в
любом случае сначала получают вывод "chkconfig --list" - где проблема?
Comment 6 Anton Farygin 2006-01-19 14:01:17 MSK
chkconfig --list тоже не показывает этот сервис (для которого было выполнено --del)
Comment 7 Andrei Bulava 2006-01-19 14:31:34 MSK
(In reply to comment #6)
> chkconfig --list тоже не показывает этот сервис (для которого было выполнено
--del)
> 

Это понятно. А зачем это нужно знать (это не сарказм - я правда не понимаю)?
Ведь 'chkconfig --del' подразумевает, что сервис удалён, и понятия
"включен-выключен" к нему уже не относятся.

Вспомнился Станислав Лем: "Как известно, драконов не существует. Но их не
существует ровно три вида. И каждый вид драконов не существует по собственным
причинам." ;-)
Comment 8 Anton Farygin 2006-01-19 14:37:58 MSK
раньше --del выключал сервис.

Теперь он его удаляет ?

а как теперь принято выключать ? chkconfig service off ?
Comment 9 Andrei Bulava 2006-01-19 15:15:50 MSK
(In reply to comment #8)
> раньше --del выключал сервис.

Потому что раньше 'chkconfig service off' и 'chkconfig --del service' меньше
отличались, что давало простор фантазии до наложения жгута на шею для остановки
носового кровотечения :-)

> Теперь он его удаляет ?

Да.

> а как теперь принято выключать ? chkconfig service off ?

Так было принято столько, сколько я пользуюсь chkconfig (последние 4,5 года).
Comment 10 Dmitry V. Levin 2006-01-19 17:13:52 MSK
Я теперь понял, в чём у вас проблема.

# chkconfig --list |fgrep rawdev
rawdevices      0:off   1:off   2:off   3:off   4:off   5:off   6:off

С помощью --del сервис не выключают а удаляют.  Так было всегда.
С помощью off сервис выключают.  Так тоже было всегда.
Comment 11 Anton Farygin 2006-01-19 17:23:38 MSK
ну да.. всё верно.. я тоже вспомнил что никогда не использовал --del ;-)
Comment 12 Vadim Gusev 2006-01-19 18:56:13 MSK
Да, всегда думалось что --del хватает чтобы выключить сервис. 
Comment 13 Andrei Bulava 2006-01-19 19:04:42 MSK
(In reply to comment #12)
> Да, всегда думалось что --del хватает чтобы выключить сервис. 

Читаю как "что убить насмерть хватает, чтобы человек умолк". Это уже сарказм :-)
Достаточно его вежливо попросить, поигрывая в руках пистолетом.