当前位置: 首页 > 知识库问答 >
问题:

systemd脚本:区段外的赋值;缺少'='

林英锐
2023-03-14

我有以下(匿名)名为tomcat-autostart.service的systemd脚本,存储在“/usr/lib/systemd/system/tomcat-autostart.service”中

[Unit]
Description=Tomcat Autostart Script
Requires=var-www-projects.mount
After=var-www-projects.mount

[Service]
Type=forking
ExecStart=/usr/bin/tomcat-autostart start
ExecStop=/usr/bin/tomcat-autostart stop

[Install]
WantedBy=multi-user.target

跑完之后

sudo systemctl daemon-reload
sudo systemctl enable tomcat-autostart.service
Failed to execute operation: Bad message
Feb 17 11:29:53 cheese systemd: [/usr/lib/systemd/system/tomcat-autostart.service:1] Assignment outside of section. Ignoring.
Feb 17 11:29:53 cheese systemd: tomcat-autostart.service lacks both ExecStart= and ExecStop= setting. Refusing.
Feb 17 11:29:53 cheese systemd: [/usr/lib/systemd/system/tomcat-autostart.service:1] Missing '='.
Feb 17 11:29:53 cheese systemd: [/usr/lib/systemd/system/tomcat-autostart.service:1] Missing '='.

搜索此问题已确定第二个错误消息是其他错误消息的直接原因。因为它忽略了节头,所以它从不读取ExecStart和ExecStop声明。如果我能够解决第一个和第三个错误消息,我应该能够

我的脚本的实际问题是什么?运行'sudo/usr/bin/tomcat-autostart start'如预期的那样成功,在internet上出现此错误消息的最常见原因是脚本没有使用绝对路径(在本例中我就是这么做的)

共有1个答案

冯泓
2023-03-14

我已经解决了这个问题。事实证明,当我添加注释时,文件的编码发生了变化(将文件从utf-8编码转换为utf-16编码)。我认为systemd不支持utf-16,并将其解释为ASCII(或其他东西)。将编码更改为UTF-8允许autostart脚本重新开始工作。

 类似资料:
  • null 我看到的是一般的注释 可用于排除空值。我不能使用此方法,因为我仍然希望在json中看到具有空值的空字段 可以用来排除空值和“不存在”的值。我不能使用这个,因为我仍然想看到JSON中的空字段和空字段。与相同 所以我的问题是,如果我不指定这些属性中的任何一个,我能实现我想要的吗?换句话说,如果我没有指定其中的任何一个,那么Jackson的行为是显示所有在动态意义上具有空值的字段吗?我主要关心

  • 本文向大家介绍Shell脚本定义变量和重新赋值,包括了Shell脚本定义变量和重新赋值的使用技巧和注意事项,需要的朋友参考一下 Shell支持自定义变量。 定义变量 定义变量时,变量名不加美元符号($),如: 注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。同时,变量名的命名须遵循如下规则: •首个字符必须为字母(a-z,A-Z)。 •中间不能有空格,可以使用下划线(_)。

  • 为了创建以下形式的json文件,我制作了如下的Groovy脚本,但出现了一个错误。 怎么了? 我在下一个网站。我认为我正确地编写了Groovy示例代码。https://docs.groovy-lang.org/latest/html/gapi/groovy/json/JsonBuilder.html 示例json 很棒的剧本 詹金斯错误状态 groovy.lang.MisSingProperty

  • npm错误!此运行的完整日志可以在:npm err!C:\users\ttopo\appdata\roaming\npm-cache_logs\2020-11-20t07_58_40_339z-debug.log` 0信息如果它以ok结束就可以工作1详细cli[1详细cli'c:\program Files\nodejs\node.exe',1详细cli'c:\program Files\node

  • 当我运行npm运行json: server时,我得到了这个错误。 npm错误!缺少脚本:json: 当我打开日志文件时,它是这样说的: 0信息,如果它以ok结束1详细cli['C:\Program Files\nodejs\node.exe',1详细cli'C:\用户\IanP\AppData\漫游\npm\node_modules\npm\bin\npm-cli.js',1详细cli'run',

  • 我试图在服务器端运行我的Angular应用程序,但我遇到了以下错误: npm错误!缺少脚本:Build:Universal