Jetson Orin (ubuntu20.04)rc自启动程序无法成功启动报错解决: Failed to start /etc/rc.local Compatibility.7月 07 09:40:

错误一:

: Failed to start /etc/rc.local Compatibility.7月 07 09:40:03Ubuntusystemd[1]: rc-local.service: Unit entered failed state.7月 07 09:40:03Ubuntu systemd[1]: rc-local.service: Failed with result 'exit-code'  

按照一般的排查都是查看rc-local.service文件和rc.local文件内容是否写错,添加exit 0 更改脚本内的#! /bin/bash等,替换以后不行,看到错误里面关于有no such file的提示可能是和文件未成功识别加载有关,ubuntu下的格式改为unix格式,一般情况下下载dos2unix即可 sudo apt install dos2unix

再运行 dos2unix xx.sh(或者rc.local等文件)为你要运行的sh文件,这是将文件格式转换为unix的

重新执行错误二的步骤即可

错误二: (其实就是没完全删除步骤一里面的错误文件,重新换格式做一次即可)

 sudo systemctl disable rc-local

Failed to disable unit: Refusing to operate on alias name or linked unit 

删除/usr/lib/systemd/system/rc-local.servive  /lib/systemd/system/rc-local.service /etc/systemd/system/rc-local.service 

重新使用dos2unix 把rc-local.service文件转换一下格式 dos2unix 加文件名回车即可

将新的rc-local.service文件拷贝到上面的/lib/systemd/system/

重新链接

sudo ln -fs /lib/systemd/system/rc-local.service /etc/systemd/system/

如果不放心,重新给/etc/rc.local文件赋予权限chmod +x /etc/rc.local 

重新加入到系统服务中

sudo systemctl enable rc-local   #这条语句就是创建一个超链接,在系统启动服务程序中.

sudo systemctl daemon-reload  #
sudo systemctl stop   rc-local.service
sudo systemctl start  rc-local.service
sudo systemctl status rc-local.service

成功运行如下两图,附systemctl 解释说明

systemctl [command] [unit] :控制systemd系统和服务(单一服务的启动/关闭/观察)
      command 主要有:
            start :立刻启动后面接的 unit
            stop :立刻关闭后面接的 unit
            restart :立刻关闭后启动后面接的 unit,亦即执行 stop 再 start 的意思
            reload :不关闭后面接的 unit 的情况下,重载配置文件,让设定生效
            enable :设定下次开机时,后面接的 unit 会被启动
            disable :设定下次开机时,后面接的 unit 不会被启动
            status :目前后面接的这个 unit 的状态,会列出有没有正在执行、开机预设执行否、登录等信息等!
            is-active :目前有没有正在运作中
            is-enable :开机时有没有预设要启用这个 unit

systemctl [command] [--type=TYPE] [--all] :观察系统上所有的服务
      command 主要有:
            list-units :依据 unit 列出目前有启动的 unit。若加上 --all 才会列出没启动的。
            list-unit-files :依据 /usr/lib/systemd/system/ 内的文件,将所有文件列表说明。
            --type=TYPE:就是之前提到的 unit type,主要有 service, socket, target 等

systemctl [command] [unit.target] :管理不同的操作环境
      command:
             get-default :取得目前的 target
             set-default :设定后面接的 target 成为默认的操作模式
             isolate :切换到后面接的模式

systemctl list-dependencies [unit] [--reverse] :分析各服务之间的相依性
      --reverse :反向追踪谁使用这个 unit 的意思!

systemctl daemon-reload :重载 systemd 的脚本配置文件内容

systemctl poweroff 系统关机

systemctl reboot 重新启动

systemctl suspend 进入暂停模式

systemctl hibernate 进入休眠模式

systemctl rescue 强制进入救援模式

systemctl emergency 强制进入紧急救援模式

 

Jetson Orin (ubuntu20.04)rc自启动程序无法成功启动报错解决: Failed to start /etc/rc.local Compatibility.7月 07 09:40:_第1张图片

 

 

你可能感兴趣的:(服务器,linux,运维)