/home/matthew/@/Sync/FreeFileSync "/home/matthew/@/Sync/Backup.ffs_batch"
上記を手動で実行すると機能しますが、次のサービスを介して実行すると機能しません。
matthew@matthew-pc:~$ cat /lib/systemd/system/Testing1.service
[Service]
ExecStart=/home/matthew/@/Sync/FreeFileSync "/home/matthew/@/Sync/Backup.ffs_batch"
[Install]
WantedBy=multi-user.target
エラーは次のとおりです。
matthew@matthew-pc:~$ sudo systemctl status Testing1.service
[sudo] password for matthew:
● Testing1.service
Loaded: loaded (/lib/systemd/system/Testing1.service; disabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Tue 2019-07-09 14:14:33 HKT; 1s ago
Process: 10255 ExecStart=/home/matthew/@/Sync/FreeFileSync /home/matthew/@/Sync/Backup.ffs_batch (code=exited, status=25
Main PID: 10255 (code=exited, status=255)
Jul 09 14:14:33 matthew-pc systemd[1]: Started Testing1.service.
Jul 09 14:14:33 matthew-pc FreeFileSync[10255]: 14:14:33: Error: Unable to initialize GTK+, is DISPLAY set properly?
Jul 09 14:14:33 matthew-pc systemd[1]: Testing1.service: Main process exited, code=exited, status=255/n/a
Jul 09 14:14:33 matthew-pc systemd[1]: Testing1.service: Failed with result 'exit-code'.
どうすれば解決できますか?」エラー:GTK +を初期化できません。 DISPLAYは正しく設定されていますか?」
答え1
次の手順に従ってください。
- これを行うには、サービスファイルを入力する必要があります
/etc/systemd/user
。mv /etc/systemd/system/Testing1.service /etc/systemd/user/
- 使用ユーザーモード~のシステム。
systemctl --user start Testing1.service
あなたのユーザーアカウントで実行されます(根) サービスを開始します。
説明する システム2つの動作モードがあり、システムモードそしてユーザーモード。これシステムモードユーザーがセッションにログインする前に開始されたので、今はグラフィカルなセッションはありません。無料ファイル同期そして読み取り時間の同期グラフィックへのアクセスが必要ですX11実行できないようにマーク渡すこれシステムモード。内部にユーザーモード、システムユーザーグラフィックセッションを理解して活用する(〜しない限りコマンドを実行するシェルは、ユーザーとそのグラフィック環境に属します。詳細を確認できますArchWikiからまたはスタックオーバーフローで。