Использование оболочки :Я предполагаю, что имена tar-файлов не содержат пробелов, а имена примеров не содержат пробелов:
{
read header
while read -r tarfile sample; do
if [[ -f "$tarfile" ]]; then
echo mv "$tarfile" "$sample.tar.gz"
fi
done
} < names.txt
systemctl status firefox.service
(, в которых предполагается, что firefox.service — это имя ), могут помочь в отладке тех же проблем. oneshot
, предпримут некоторые действия и немедленно завершат работу (, таким образом, на самом деле они не являются службами, не остается запущенных процессов ). Обычный шаблон для этих типов услуг должен определяться установкой и действием по удалению. Это работает!
Файл сервисного модуля должен находиться в ~/.config/systemd/user
.
Поскольку это сервис для каждого -пользователя, вы должны манипулировать им с помощью --user
параметра systemctl
без sudo. Например:
Включить :Например.systemctl --user enable firefox
Это также относится к его включению и отключению.
~/.config/systemd/user/firefox.service:
И одна из задач systemd, которую люди должны сделать для каждого -пользователя, чтобы сервисы выглядели так, как для -входа в систему -сервисы сеанса, — это весь графический -механизм сеанса, который ваша сервисная единица должна включать с настройкой:
[Unit]
PartOf=graphical-session.target
Если graphical-session.target
не активен после графического входа в систему (, у вас может быть старая или стабильная система ).
Не было хука по умолчанию для запуска служб при входе в систему, поэтому вы должны активировать его самостоятельно. Я делаю это из моего файла ~/.xsession
.
systemctl --user import-environment PATH DBUS_SESSION_BUS_ADDRESS
systemctl --no-block --user start xsession.target
Первая строка импортирует некоторые переменные среды в сеанс пользователя systemd, а вторая запускает цель. Мой xsession.target
файл:
[Unit]
Description=Xsession running
BindsTo=graphical-session.target
Мой юнит-файл:
Description=Start Firefox
PartOf=graphical-session.target
[Service]
ExecStart=/usr/bin/firefox Type=simple
Restart=on-failure
[Install]
WantedBy=xsession.target```