开机自启
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