开机自启

1.Win7系统下做虚拟机开机自启

1.1. Vmware快捷方式复制一个

1.2. 修改快捷方式

右键快捷方式,点击属性,修改目标(T),在后面加上 -x "虚拟机路径.vmx"

如:"C:\Program Files (x86)\VMware\VMware Workstation\vmware.exe" -x "F:\物资管理\centos8.3_wzgl\CentOS 8 64 位.vmx"

 

1.3. 将快捷方式加入到开机自启

Windows+R 打开命令行,输入shell:startup 回车,将修改后的vmware快捷方式复制进去,重启win7,虚拟机就可以开机自启了

   

2.Win7服务做开机自启

2.1. 写启动脚本

打包一个java服务,如文件名为rfid.jar

创建一个.bat文件,如startup.bat, 内容如下

java -jar D:\rfid_wzgl\rfid.jar

2.2. 配置环境

Win+R ,输入cmd ,点击确定进入命令框

 

在命令框输入如下内容

C:\Users\Administrator>D:

D:\>cd rfid_wzgl

D:\rfid_wzgl>instsrv.exe rfid_wzgl d:\rfid_wzgl\srvany\srvany.exe

 

运行后点击允许本次操作

 instsrv.exe和srvany.exe连接

链接:https://pan.baidu.com/s/1XJ3qySe8kXRUZdI0U-ue6A 
提取码:xded

 

2.3. 配置注册表

Win+R ,输入regedit ,点击确定进入注册表

在路径HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ 找到刚才输入的服务名(rfid_wzgl)

 

右键rfid_wzgl选择新建项:Parameters

右键Parameters 选择新建字符串值: 名称为: Application 值: D:\rfid

右键Parameters 选择新建字符串值: 名称为: AppDirectory 值: D:\rfid\startup.bat

 

打开服务控制面板,找到自己刚才所创建的服务名,设置为自动,启动服务

 

总结

#Windows 下 把EXE 程序变成服务运行
1. 下载  instsrv.exe 和 srvany.exe   
我下载的地址:https://www.cr173.com/soft/64394.html 
2. cmd  cd  到 解压目录 
              cd c:\srvany
3. 命令  instsrv.exe 你的服务名 [srvany.exe] 所在的目录
            instsrv.exe ServerName C:\program\srvany\srvany.exe
4. 打开注册表 
            路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ 找到你刚才输入的服务名
5. 在下面新建项:Parameters
6. 在Parameters 下新建字符串值:  名称为: Application     值: exe 所在的全路径 包含exe  如果有参数  一起写上 写在后面
7. 在Parameters 下新建字符串值:  名称为: AppDirectory  值: exe 所在的路径 不包含 只要路径
8. 打开服务控制面板
9. 找到自己刚才所创建的服务名  控制相关属性 就行了 可以启动试一试
10. 如果想删除服务  cd 到instsrv.exe 所在目录  然后 执行 instsrv.exe ServerName remove  就好了

3.Centos7 服务开机自启

# 第一种方法 编辑etc/rc.local 在后面添加一行
/home/admin/satrtup.sh  # 默认root权限执行
su - admin -s /home/admin/satrtup.sh  # admin权限执行
su - admin -c /home/admin/satrtup.sh  # admin权限执行
'''
执行sudo su -后切换至root,同时环境变量HOME也切换到root下。而执行sudo -s后成功切换至root用户,但是家目录并没有切换到root下。
su - user 能切换到一个用户中去执行一个指令或脚本,切换用户只执行一条命令的可以用: su - oracle -c command -c是command的缩写
  列如 su - oracle -c "lsnrctl start" 这样的好处就是不用切换到oracle用户下去执行,如果是在脚本中就更方便了。
切换用户执行一个shell文件可以用:su - oracle -s /bin/bash shell.sh
'''
执行source /etc/rc.local 
# 添加执行权限 
chmod +x /etc/rc.local 
chmod +x /home/admin/satrtup.sh

bashrc是在系统启动后就会自动运行,而profile则是在用户登录后运行,我这里选择在profile里进行配置。打开profile,在底部加上几句代码
# 第二种方法 编辑etc/frofile 在后面添加一行
/opt/start_django.sh

执行source /etc/frofile
# 制作服务脚本
[root@localhost ~]# vim /opt/start_django.sh
#! /bin/bash
nohup python3 /opt/zabbix3d/manage.py runserver 0.0.0.0:8000

4.Centos7 python脚本开机自启

[root@localhost ~]# cd /usr/lib/systemd/system
[root@localhost system]# 
[root@localhost system]# vim python_switch.service 
[Unit]
# 文件放置目录(CentOS 7)/usr/lib/systemd/system/python.service
# 服务描述
Description=Python_Switch Service  
# 在多用户运行后启动        
After=multi-user.target
[Service]
Type=idle
Restart=on-failure
PIDFile=/tmp/python.pid
# 运行命令
ExecStart=/usr/local/python3/bin/python3.8 /opt/switch.py
ExecStop='ps -ef |grep erpServer |awk '{print $2}' | xargs kill -9 '
RestartSec=10s
[Install]
WantedBy=multi-user.target

[root@localhost system]# chmod 644 python_switch.service 
#重载服务列表
[root@localhost system]# systemctl daemon-reload
#开启服务
[root@localhost system]# systemctl start python_switch.service
#查看服务是否正常运行
[root@localhost system]# systemctl status python_switch.service
● python_switch.service - Python_Switch Service
   Loaded: loaded (/usr/lib/systemd/system/python_switch.service; disabled; vendor preset: disabled)
   Active: active (running) since 四 2023-05-18 13:38:31 CST; 10s ago
 Main PID: 113073 (python3.8)
    Tasks: 1
   CGroup: /system.slice/python_switch.service
           └─113073 /usr/local/python3/bin/python3.8 /opt/switch.py

5月 18 13:38:31 localhost.localdomain systemd[1]: [/usr/lib/systemd/system/python_switch.service:13] Trailing gar...ing.
5月 18 13:38:31 localhost.localdomain systemd[1]: Started Python_Switch Service.
5月 18 13:38:31 localhost.localdomain systemd[1]: Starting Python_Switch Service...
Hint: Some lines were ellipsized, use -l to show in full.
#设置开机自启动
[root@localhost system]# systemctl enable python_switch.service
Created symlink from /etc/systemd/system/multi-user.target.wants/python_switch.service to /usr/lib/systemd/system/python_switch.service.
[root@localhost system]# 
#查看进程是否启动
[root@localhost system]# ps -ef | grep python
root        966      1  0 11:40 ?        00:00:01 /usr/bin/python -Es /usr/sbin/tuned -l -P
root      21206  21205  1 13:55 pts/1    00:00:00 python3 /opt/zabbix3d/manage.py runserver 0.0.0.0:8000
root      21239  21206  8 13:55 pts/1    00:00:03 /usr/bin/python3 /opt/zabbix3d/manage.py runserver 0.0.0.0:8000
root      22690   2377  0 13:56 pts/0    00:00:00 grep --color=auto python
root     113073      1  0 13:38 ?        00:00:06 /usr/local/python3/bin/python3.8 /opt/switch.py
#如果失败重启查看能否自启动。
[root@localhost system]# reboot

 

posted @ 2023-03-02 14:11  老虎死了还有狼  阅读(249)  评论(0编辑  收藏  举报