Почему /var/run/libvirt не существует?

Хорошо, согласно комментарию icarus, я использовал cat -vи увидел, что ^Mсчитаются частью команды. Я использовал эти решения в этом посте, чтобы удалить их:
https://stackoverflow.com/questions/800030/remove-carriage-return-in-unix
они работали над тестовым сценарием, а не над OSscript. наконец я узнал, что мои файлы повреждены. Я удалил OSscript, создал его снова и добавил свой скрипт. это сработало.

1
24.02.2021, 13:22
1 ответ

Политика Debian требует, чтобы пакет создавал каталоги в /runи /var/runпо мере необходимости, поскольку эти каталоги могут быть очищены или созданы при загрузке. (С практической точки зрения это также обычно имеет место для Ubuntu. )Это может сделать сама программа или скрипт, который ее запускает. Если служба не запущена, каталог может даже не существовать.

В WSL система инициализации не systemd. systemd в большинстве дистрибутивов запускает множество служб и монтирует множество файловых систем, ни одна из которых не будет полезна в большинстве сред WSL. Вместо этого WSL использует собственную пользовательскую систему инициализации, которая выполняет всего несколько задач, а это означает, что система WSL может загружаться гораздо быстрее.

Поскольку инструменты, поставляемые с systemd, обычно отказываются запускаться, если systemd не запущен, вы не можете их использовать. Вместо этого вы можете вызвать service libvirtd start, чтобы попытаться использовать сценарий инициализации, который может поставляться с пакетом. Использование команды serviceимеет несколько преимуществ :она делегирует полномочия systemd, если systemd включен, и работает со сценариями инициализации, если нет, и поэтому обычно работает во всех системах Linux независимо от того, используют ли они systemd или другой система инициализации. Возможно, сценарий инициализации не существует, и в этом случае вам придется запустить его самостоятельно, что вы можете сделать, посмотрев конфигурацию в файле службы.

0
18.03.2021, 22:28

Теги

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