Как правильно удалить mountnfs из/etc/init.d/

В любой совместимой POSIX системе можно использовать etime столбец ps.

LC_ALL=POSIX ps -o etime= -p $PID

Вывод разломан на дни, часы, минуты и секунды с синтаксисом [[dd-]hh:]mm:ss. Можно работать он назад во многие секунды с простой арифметикой:

t=$(LC_ALL=POSIX ps -o etime= -p $PID)
d=0 h=0
case $t in *-*) d=$((0 + ${t%%-*})); t=${t#*-};; esac
case $t in *:*:*) h=$((0 + ${t%%:*})); t=${t#*:};; esac
s=$((10#$d*86400 + 10#$h*3600 + 10#${t%%:*}*60 + 10#${t#*:}))

1
11.11.2012, 23:44
1 ответ

Проверять, которые упаковывают файл, принадлежит, использовать dpkg -S:

$ dpkg -S /etc/init.d/mountnfs.sh
initscripts: /etc/init.d/mountnfs.sh

mountnfs.sh принадлежит существенному пакету, названному initscripts.

Если Вы не записали им, Вы никогда не должны удалять сценарии из/etc/init.d/. Именно поэтому служебное обновление-rc.d существует: удалить их символьные ссылки из/etc/rc*.d/каталогов более легким способом.

обновление-rc.d требует, чтобы Вы для называния сценариев их именами и, из-за их зависимостей, отключая их в этом порядке работали:

update-rc.d mountnfs-bootclean.sh remove ### mountnfs-bootclean.sh first
update-rc.d mountnfs.sh remove
update-rc.d umountnfs.sh remove

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

Можно полагать что как ошибку в сценариях Debian init: Вы вынуждены иметь init сценарий, не имея никаких сетевых файловых систем. Это является раздражающим, я знаю.

Если Вы настаиваете в удалении их и должны вернуться изменения, необходимо будет повторно включить им в обратном порядке, потому что mountnfs-bootclean.sh потребности mountnfs.sh быть включенным сначала:

update-rc.d umountnfs.sh defaults
update-rc.d mountnfs.sh defaults
update-rc.d mountnfs-bootclean.sh defaults ### mountnfs-bootclean.sh last
2
27.01.2020, 23:39
  • 1
    Спасибо за предупреждение о mountnfs-bootclean. Результат root@debian:~# update-rc.d mountnfs.sh remove update-rc.d: using dependency based boot sequencing insserv: Service mountnfs has to be enabled to start service mountnfs-bootclean insserv: exiting now! update-rc.d: error: insserv rejected the script header root@debian:~# update-rc.d umountnfs.sh remove update-rc.d: using dependency based boot sequencing это, mountnfs.sh и umountnfs.sh находятся все еще в/etc/init.d. –  Pro Backup 11.11.2012, 23:42
  • 2
    Добавление параметра силы к update-rc.d не улучшился. Mountnfs.sh и umountnfs.sh находятся все еще в /etc/init.d/. –  Pro Backup 11.11.2012, 23:46
  • 3
    Необходимо работать на том точном порядке. Кроме того, они будут и должны остаться на/etc/init.d. Они будут несвязанными с/etc/rcS.d. Неблагоразумно удалить что-либо из/etc/init.d. –  Teresa e Junior 11.11.2012, 23:47
  • 4
    я обновил свой ответ с большим количеством объяснений. –  Teresa e Junior 12.11.2012, 00:21

Теги

Похожие вопросы