ubuntu添加系统服务实现开机root权限运行

2023-05-16

需求

开机自动运行程序(或脚本),需要以root权限运行但不输入密码,也不能将密码写入文件。

环境

Ubuntu 20.04

解决方案

添加系统服务,然后通过systemctl控制。

操作步骤

假设目标程序为/home/xxx/test

1、创建service配置文件

[Unit]
Description=test
DefaultDependencies=no
#Before=cloud-init-local.service
After=vgauth.service
After=apparmor.service
#RequiresMountsFor=/tmp
After=systemd-remount-fs.service systemd-tmpfiles-setup.service systemd-modules-load.service

[Service]
ExecStart=/home/xxx/test
TimeoutStopSec=5

[Install]
WantedBy=multi-user.target
Alias=test

保存为test.service。

2、执行下面的命令安装

sudo cp ./test.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable test

3、重启,查看服务是否运行

sudo systemctl list-units |grep test
sudo systemctl list-unit-files |grep test

参考文献

https://www.cnblogs.com/ggzhangxiaochao/p/15039617.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ubuntu添加系统服务实现开机root权限运行 的相关文章

  • ubuntu20.04设置自动文字模式登录

    文字模式登录后取得的程序称为 Shell xff08 壳 xff09 xff0c Linux 的壳程序是bash xff08 Bourne Shell的增强版本 xff09 设置文字模式登录 xff1a 第一步 xff1a 进入grub文件
  • 从高考到程序员

    记得当年进入考场的时候也是志气满满 xff0c 心里念叨着一定要考上自己理想的大学 xff0c 光宗耀祖 当时坐在学校安排的bus上向考场的方向行进 xff0c 看到路边的交警叔叔 xff0c 情不自禁的喊了一声 xff0c 交警大哥辛苦了
  • Android内存优化(二)之如何分析native heap

    如何获取native heap请阅读上篇文章 xff0c 本篇文章将主要介绍如何分析一个native heap文件 xff0c 以及我们的native memory leak问题如何发现并定位 首先先来看一下实际中我们看到的native h
  • 基于springboot的薪资管理系统设计

    一 系统介绍 项目源码 xff1a https gitee com oklongmm code 这是一个界面简洁的薪资管理系统 xff0c 虽然界面简单 xff0c 但其工资项配置 xff0c 与考勤挂钩 xff0c 自动核算功能强大 xf
  • Dijkstra算法详解

    1 dijkstra算法简介 Dijkstra算法是由E W Dijkstra于1959年提出 xff0c 又叫迪杰斯特拉算法 xff0c 它应用了贪心算法模式 xff0c 是目前公认的最好的求解最短路径的方法 算法解决的是有向图中单个源点
  • C++建立动态二维数组

    C 43 43 建立动态二维数组主要有两种方法 xff1a 1 使用数组指针 xff0c 分配一个指针数组 xff0c 将其首地址保存在b中 xff0c 然后再为指针数组的每个元素分配一个数组 int b 61 new int row 分配
  • 理解负载均衡

    什么是平均负载 xff1f 单位时间内 xff0c 系统处于可运行状态和不可中断状态的平均进程数 xff0c 也就是平均活跃进程数 xff0c 它和CPU使用率并没有直接关系 所谓可运行状态的进程 xff0c 是指正在使用CPU或者等待CP
  • 理解CPU使用率和CPU上下文切换

    1 CPU使用率 1 1 CPU使用率查看 当发现服务或机器卡的时候 xff0c 我们都是先通过top命令查看服务器CPU使用率 默认每3秒刷新一次 top top 18 10 58 up 1216 days 7 38 4 users lo
  • 自动驾驶概述

    1 自动化能力定义 对自动驾驶能力有多个定义标准 xff0c 比较常用的是SAE International关于自动化层级的定义 具体是 L0 驾驶员完全掌控车辆 L1 自动系统有时能够辅助驾驶员完成某些驾驶任务 L2 自动系统能够完成某些
  • java遍历泛型的方法

    一 List遍历 Java中List遍历有三种方法来遍历泛型 xff0c 主要为 xff1a 1 for循环遍历 2 iterator遍历 3 foreach遍历 package com gmail lsgjzhuwei import ja
  • java web文件下载功能实现

    需求 xff1a 实现一个具有文件下载功能的网页 xff0c 主要下载压缩包和图片 两种实现方法 xff1a 一 xff1a 通过超链接实现下载 在HTML网页中 xff0c 通过超链接链接到要下载的文件的地址 lt DOCTYPE htm
  • java创建线程的三种方式及其对比

    Java中创建线程主要有三种方式 xff1a 一 继承Thread类创建线程类 xff08 1 xff09 定义Thread类的子类 xff0c 并重写该类的run方法 xff0c 该run方法的方法体就代表了线程要完成的任务 因此把run
  • 史上最全面最易懂的,Spring框架学习教程

    Spring通过PlatformTransactionManager平台事务管理器接口对事务的管理进行高度抽象 xff0c 但是该接口下具体的实现是由各个平台自己实现 xff0c Spring并不直接管理事务 xff0c 而是提供了多种事务
  • 'hibernate.dialect' must be set when no Connection available

    今天碰到的这个问题 xff0c 很无厘头 xff0c 网上搜索了很多 xff0c 都不靠谱 xff0c 还是靠自己 解决方法是在hibernate cfg xml中添加 lt property name 61 34 dialect 34 g
  • javascript动态插入html元素

    主要有是两种方案 xff1a 1 使用DOM span class hljs comment 使用createElement创建元素 span span class hljs keyword var span dialog 61 docum
  • python中switch语句用法

    python中是没用switch语句的 xff0c 这应该是体现python大道至简的思想 xff0c python中一般多用字典来代替switch来实现 coding utf 8 from future import division d
  • ROS的 sudo rosdep init 的报错终极解决方案

    ROS的 sudo rosdep init 的报错解决方案 安装ROS时sudo rosdep init指令报错 xff1a ERROR span class token operator span cannot download span
  • 干支纪年

    干支纪年 摘自 xff1a http baike baidu com view 187057 htm 1 天干 xff08 甲 xff09 象草林破土而萌 xff0c 阳在内而被阴包裹 又有认为 xff0c 甲者铠甲也 xff0c 把万物冲
  • “密码不满足密码策略的要求,检查最小密码长度、密码复杂性和密码历史的要求”的解决办法(Windows...

    Windows Server 2003解决办法是 xff1a 选择 开始 gt 程序 gt 管理工具 gt 域安全策略 gt 帐户策略 gt 密码策略 密码必须符合复杂性要求 xff1a 由 已启用 改为 已禁用 xff1b 密码长度最小值
  • 解决android studio 不同ApplicationId可能导致xmlns命名空间报错

    遇到一个需求 xff0c 想出不同渠道 xff0c 我们可以知道在build gradle里面声明 productFlavors dev minSdkVersion 21 applicationId 34 xxx xxx xxx 34 ma

随机推荐