首页 > 系统服务 > 详细

Ubuntu制作系统服务时服务程序需要root权限

时间:2021-01-13 18:03:00      阅读:72      评论:0      收藏:0      [点我收藏+]

Ubuntu制作系统服务时服务程序需要root权限

1、简单service

start_service.service

[Unit]
Description=MonitorIP
After=network-online.target
Wants=network-online.target

[Service]
WorkingDirectory=/home/up/docker-compose-test/test_demo/service_test
ExecStart=/home/up/docker-compose-test/test_demo/service_test/start.sh
Type=simple
Restart=always
TimeoutSec=infinity
User=root

[Install]
WantedBy=multi-user.target

 

2、服务程序需要root权限

方案一(推荐)

  • 设置service文件中Userroot

 

方案二(不推荐)

  • 设置service文件中User当前用户(非root)

    [Unit]
    Description=MonitorIP
    After=network-online.target
    Wants=network-online.target
    
    [Service]
    WorkingDirectory=/home/up/docker-compose-test/test_demo/service_test
    ExecStart=/home/up/docker-compose-test/test_demo/service_test/start.sh
    Type=simple
    Restart=always
    TimeoutSec=infinity
    User=up
    
    [Install]
    WantedBy=multi-user.target
    
  • 修改sudo时不需要输入密码

    • sudo vim /etc/sudoers

      sudo下一行添加your_username ALL = (ALL) NOPASSWORD: ALL

      #
      # This file MUST be edited with the ‘visudo‘ command as root.
      #
      # Please consider adding local content in /etc/sudoers.d/ instead of
      # directly modifying this file.
      #
      # See the man page for details on how to write a sudoers file.
      #
      Defaults        env_reset
      Defaults        mail_badpass
      Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"
      
      # Host alias specification
      
      # User alias specification
      
      # Cmnd alias specification
      
      # User privilege specification
      root    ALL=(ALL:ALL) ALL
      
      # Members of the admin group may gain root privileges
      %admin ALL=(ALL) ALL
      
      # Allow members of group sudo to execute any command
      %sudo   ALL=(ALL:ALL) ALL
      up ALL=(ALL) NOPASSWD: ALL    # 例如这里添加up用户不输入密码
      # See sudoers(5) for more information on "#include" directives:
      
      #includedir /etc/sudoers.d
      

Ubuntu制作系统服务时服务程序需要root权限

原文:https://www.cnblogs.com/linagcheng/p/14272945.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!