1、root下,vi /etc/sudoers :
[root@guanz etc]# vi /etc/sudoers [root@guanz etc]# # 添加如下内容: guanz ALL=(ALL) ALL 示例: Allow root to run any commands anywhere root ALL=(ALL) ALL guanz ALL=(ALL) ALL Allows members of the 'sys' group to run networking, software,
讯享网
2、切换至普通用户guanz,并测试命令:
2.1 方式一:【echo ‘passwd’ | sudo -S java -jar 】
讯享网[root@guanz etc]# su guanz [guanz@guanz etc]$ # 进入jar包所在目录下: [guanz@guanz dell]$ cd app/ [guanz@guanz app]$ ll total -rw-rw-r--. 1 guanz guanz 59162 Jul 1 11:09 log--01.txt -rwxrwxr-x. 1 guanz guanz Jul 1 14:36 test-1.0.jar # 查看当前在运行的窗口程序 [guanz@guanz app]$ screen -ls No Sockets found in /var/run/screen/S-guanz. # 创建窗口,并进入,直接执行java -jar启动,会提示你输入密码: [guanz@guanz app]$ screen -S jar [guanz@guanz app]$ sudo java -jar test-1.0.jar > log-01.txt [sudo] password for guanz: # 通过【echo 'passwd' | sudo -S java -jar 】再次执行,会直接启动,无需再输入密码。 [guanz@guanz app]$ echo '' | sudo -S java -jar test-1.0.jar > log-01.txt [sudo] password for guanz: # 查看当前在运行的窗口 [guanz@guanz app]$ screen -ls There is a screen on: 17362.jar (Detached) 1 Socket in /var/run/screen/S-guanz. [guanz@guanz app]$ # 查看日志文件,发现文件已启动: 2021-07-01 15:01:02.531 INFO 17548 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8890 (http) with context path '' 2021-07-01 15:01:02.534 INFO 17548 --- [ main] com.example.demo.DemoApplication : Started DemoApplication in 29.065 seconds (JVM running for 30.46) 至此,此命令有效。
2.2 方式二:【EOF】文本块方式
sudo -S java -jar test-1.0.jar > log-01.txt << EOF > passwd > EOF
讯享网# 通过【EOF】文本块的方式,再次执行,会直接启动,无需再输入密码。 [guanz@guanz app]$ sudo -S java -jar test-1.0.jar > log-01.txt << EOF > > EOF # 查看日志文件,发现文件已启动: 2021-07-01 15:04:39.160 INFO 17848 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8890 (http) with context path '' 2021-07-01 15:04:39.162 INFO 17848 --- [ main] com.example.demo.DemoApplication : Started DemoApplication in 29.111 seconds (JVM running for 30.618) 至此,此命令有效。
3、自启动.sh脚本文件:
#!/bin/bash #cd ~/app #sudo java -jar test-1.0.jar > log.txt screen_name=$"jar" screen -dmS $screen_name cmd1=$"cd /home/app"; screen -x -S $screen_name -p 0 -X stuff "$cmd1" screen -x -S $screen_name -p 0 -X stuff $'\n' cmd3=$"echo '' | sudo -S java -jar test-1.0.jar > log-01.txt"; screen -x -S $screen_name -p 0 -X stuff "$cmd3" screen -x -S $screen_name -p 0 -X stuff $'\n' cmd4=$"screen -d jar"; screen -x -S $screen_name -p 0 -X stuff "$cmd4" screen -x -S $screen_name -p 0 -X stuff $'\n'
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/35175.html