在工作中,我们经常有个需求,那就是在系统启动之后,自动启动某个脚本或服务。在 Windows 下,我们有很多方法可以设置开机启动,但在 Linux 系统下我们需要如何操作呢?
Unix系统使用比较广泛的便是Linux系统,而基于Linux内核下也有很多衍生的其他的系统,其中就有Debian、Ubuntu这类的系统,在Linux系统下平时使用习惯的开机启动/etc/rc.local或/etc/rc.d/rc.local就没有了,那在Debian、Ubuntu下需要开启启动时就需要使用update-rc.d用来定义开机启动的命令 ,举一个简单的例子在Debian、Ubuntu开机启动iptables:
#!/bin/sh # # This script will be executed *after* all the other init scripts. # You can put your own initialization stuff in here if you don’t # want to do the full Sys V style init stuff.
Linux下/etc/init.d和/etc/rc.d/rc.local的区别说明:
Tomcat有Tomcat7,Tomcat8和Tomcat9等版本,目前企业使用较多的是Tomcat8,所以这里以Tomcat8为列
下载网址 http://download.redis.io/releases/
2) 下载新的CentOS-Base.repo 到/etc/yum.repos.d/
摘要:以往的服务通常使用supervisord或者crontab的方式来守护或者定时执行,最近遇到了自己写的服务所依赖到一些组件服务,在开机的没有自动启动的问题,所以这次对添加linux开机自启动的一些方式做一个总结。让自己的服务可以做到无人托管开机自启动,减少运营成本的同时可以防止有人偷偷写入开机启动项,启动一些没有必要的服务。
自己写一个shell脚本 将写好的脚本(.sh文件)放到目录 /etc/profile.d/ 下,系统启动后就会自动执行该目录下的所有shell脚本。
jdk-8u161-linux-x64.tar.gz 博主安装的时候,jdk最新版是8u161,大家可根据自己需要进行下载。
点击 Download 后会进去另一个页面,这里可以选择我们想要版本,图中箭头指向的就是我们Linux使用的版本。
之前开发了windows部署jar包为服务的工具在实际生产环境中使用非常简单方便,公司部分项目是部署在linux系统中的,所以决定整合一个通用的jar包部署脚本,并注册为开机启动服务,为开发实施的同事提供方便,以下操作实际系统环境为centos8
由于要学习Dubbo,需要用到Zookeeper,所以这里记录一下CentOS 7 Linux的Zookeeper安装与配置。
Holer exposes local servers behind NATs and firewalls to the public internet over secure tunnels.
本文将会介绍两种实现方式:添加服务方法和添加启动脚本方法,注意Zookeeper启动一个最小集群一般至少需要3台机器完成。
作者:Vamei 出处:http://www.cnblogs.com/vamei 严禁转载。
项目创建完成后,需要修改Program.cs文件 手动指定启动的Url为:http://*:5000
树莓派是一款低成本的电脑,因此它的一个应用场景就是充当小型的服务器。我平时就会在自己的局域网下接入一个树莓派,做一些数据备份和上传的工作。这种时候,我们希望减少对树莓派的直接操作,就可以采用一些任务规
开机启动应该是我们很经常的需求了,我们常需要在开机时就自动执行某些命令来开启服务,进程等,有了它我们不必再在每次开机时输入同一堆命令。
作为运维工程师来说,最怕遇到服务器崩了、内存爆了、CPU满了等情况,尤其对于生产环境来说影响是非常巨大的。对于运维工程师来说可能面临被“炒鱿鱼”的风险。那么遇到这种情况怎么办呢,首先是要沉着冷静,然后按照下面的Shell命令来排查服务器本身的问题。
却会爆出Permission Denied的错误,这个是因为对于这个文件没有可执行权限。可以使用chmod添加可执行权限:
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
sudo mv mongodb-linux-x86_64-ubuntu1604-3.4.0 /usr/local/mongodb
在一开始,我选择了参考网上所说的定义一个rc.local文件,修改/etc/rc.local,但发现这种方法可以实现自启动脚本,但是通常只能启动一个服务,然后后面的服务就不能启动了。这个是因为自己做了实验发现的。
Tomcat是其中一个开源的且免费的java Web服务器,是Apache软件基金会的项目,所以安装Tomcat之前要安装java JDk,请参照Linux安装jdk
VPN 全称是 Virtual Private Network(虚拟专用网络),可以在多台设备之间建立安全的通信网络。VPS 是 Virtual Private Server,虚拟专用服务器,指的是一台虚拟的电脑,用于提供服务。
例如,每次开机时要执行一个hello.sh,这个脚本放在/usr下面,那就可以在"/etc/rc.local"中加一行"/usr/./hello.sh",或者" cd /opt && ./hello.sh "
/etc/profile、/root/.bash_profile /etc/bashrc、/root/.bashrc /etc/profile.d/*.sh、/etc/profile.d/lang.sh /etc/sysconfig/i18n、/etc/rc.local(/etc/rc.d/rc.local)
(1).下载ventoy这个软件,下载地址https://www.ventoy.net/en/download.html选择ventoy-1.0.29-linux.tar.gz文件下载并解压
环境说明: 服务器:ubuntu 20.04 客户端:Win10 / DeepinV20 社区版 网易云音乐版本:V2.8.1(Win10) / V1.2.1(Deepin)
使用Linux系统,很有必要熟悉一些常用的命令。本文收集整理一些常用的用于检测服务器的配置和硬件信息的命令,需要时可查阅。包括:操作系统、CPU、内存、硬盘分区、系统时间、负载、网络相关、进程、用户、开关机、启动等方面,适用于主流Linux操作系统比如centos、ubuntu、debian等
由于从ubuntu-16.10开始ubuntu不再使用initd管理系统,改用systemd 看了systemd的使用方法,发现改动有点大,包括包括用 systemctl 命令来替换了 service 和 chkconfig 的功能。 比如以前启动 mysql 服务用: sudo是管理权限,如果当前用户是管理员请忽略。
一些比较常见的linux命令,主要用于检测服务器的配置和硬件信息,包括:操作系统、CPU、内存、硬盘分区、系统时间、负载、网络相关、进程、用户、开关机、启动等方面,适用于主流操作系统,常见的centos、ubuntu、debian等。
Linux attack defense scripts tool --- Linux CC攻击防御工具脚本
linux任务计划cron crontab -u :指定某个用户,不加-u选项则为当前用户; -e :制定计划任务; -l :列出计划任务; -r :删除计划任务。 格式:分 时 日 月 周 user command 可用格式1-5表示一个范围1到5。如1-5月或者1-5点等 可用格式1,2,3表示1或者2或者3。如1,2,3月份或者1点,2点,3点或者星期一,星期二,星期三。 可用格式*/2表示被2整除的数字,比如小时,那就是每隔2小时;月份,那就是偶数月2月,4月…..。
如果你用的是root用户,要修改/etc/profile文件,在最后添加上面的代码。
1.把开机启动脚本(mysqld)copy到文件夹/etc/init.d 或 /etc/rc.d/init.d 中
背景 设置比较炫酷的开机启动脚本 首先,新建一个kaiji.sh 后缀名的脚本——>新建的脚本在任何位置创建都可以,只要在使用.sh 文件,时候使用绝对路径即可 [root@hf-01 ~]# cd ./234 [root@hf-01 234]# touch kaiji.sh 然后在脚本中添加以下脚本文件内容到kaiji .sh中 [root@hf-01 234]# vim kaiji.sh #!/bin/bash echo -ne "\033[0;33m" cat<<EOT
https://www-eu.apache.org/dist/zookeeper/
如果要运行脚本或者程序,可以定义变量,但是会涉及一个开机自启程序读取本地配置或者文件的问题。
systemd是目前Linux系统上主要的系统守护进程管理工具,由于init一方面对于进程的管理是串行化的,容易出现阻塞情况,另一方面init也仅仅是执行启动脚本,并不能对服务本身进行更多的管理。所以从CentOS 7开始也由systemd取代了init作为默认的系统进程管理工具。
curl -sSL https://raw.githubusercontent.com/dotnet/cli/rel/1.0.0-preview1/scripts/obtain/dotnet-install.sh | bash /dev/stdin --version 1.0.0-preview1-002702 --install-dir ~/dotnet
若提示没有mono-complete,使用mono-devel或monoDevelop或monodevelop
公司服务器使用的是阿里云CentOS7,CentOS7和CentOS6目前最大区别就是service变成了现在的systemctl,简单的查了一下并结合使用,发现systemctl功能上等同于6上面的service+chkconfig,也就是说配置service与设置开机启动都是使用systemctl。
领取专属 10元无门槛券
手把手带您无忧上云