保健励志美文体育育儿作文
投稿投诉
作文动态
热点娱乐
育儿情感
教程科技
体育养生
教案探索
美文旅游
财经日志
励志范文
论文时尚
保健游戏
护肤业界

Linux服务开机自启动三种方式,你觉得哪种最优雅?

  很多时候,我们需要将一些服务在Linux系统启动时即自动运行,省得每次都要去手动启动一遍,如Redis,MySQL,Nginx等。本文对CentOS与Ubuntu下开机自启动的配置方法进行整理,供参考查阅。CentOS7的开机自启动配置一。rc。local方式
  rc。local是CentOS以前版本的方式,在CentOS7中仍然以兼容的形式存在,虽仍可用,但不推荐(推荐使用systemdservice)。
  1、编写需要开机自启动的脚本,并添加执行权限〔rootdevserver1〕vimtestrclocal。sh!binbashtimedateFTechotimefromrc。localtmptest。log〔rootdevserver1〕chmodxtestrclocal。sh复制代码
  作为测试,上述脚本打印一个时间到tmptest。log文件中
  2、在etcrc。drc。local配置文件中添加脚本运行命令(使用绝对路径)〔rootdevserver1〕vimetcrc。drc。local!binbash。。。注释部分touchvarlocksubsyslocalroottestrclocal。shdevnull2devnull复制代码
  3、添加etcrc。drc。local文件的执行权限
  在centos7中,etcrc。drc。local没有执行权限,需要手动授权〔rootdevserver1〕chmodxetcrc。drc。local复制代码
  以上三步,即可使roottestrclocal。shdevnull2devnull命令在服务器系统启动时自动运行。二。chkconfig方式
  1、编写需要开机自启动的测试脚本,并添加执行权限〔rootdevserver1〕vimtestchkconfig。sh!binbashtimedateFTechotimefromchkconfigtmptest。log〔rootdevserver1〕chmodxtestchkconfig。sh复制代码
  2、在etcrc。dinit。d目录下添加一个可执行脚本testchkconfig〔rootdevserver1〕vimetcrc。dinit。dtestchkconfig!binbashchkconfig:23459010description:testchkconfigroottestchkconfig。shdevnull2devnull〔rootdevserver1〕chmod755etcrc。dinit。dtestchkconfig复制代码
  上述testchkconfig脚本的头部必须遵循一定的格式chkconfig:23459010,其中2345指定服务在哪些执行等级中开启或关闭,90表示启动的优先级(0100,越大优先级越低),10表示关闭的优先级。执行等级包括0:表示关机1:单用户模式2:无网络连接的多用户命令行模式3:有网络连接的多用户命令行模式4:保留未使用5:带图形界面的多用户模式6:重新启动
  3、加入开机启动服务列表〔rootdevserver1〕chkconfigaddtestchkconfig〔rootdevserver1〕chkconfiglistNote:ThisoutputshowsSysVservicesonlyanddoesnotincludenativesystemdservices。SysVconfigurationdatamightbeoverriddenbynativesystemdconfiguration。Ifyouwanttolistsystemdservicesusesystemctllistunitfiles。Toseeservicesenabledonparticulartargetusesystemctllistdependencies〔target〕。netconsole0:off1:off2:off3:off4:off5:off6:offnetwork0:off1:off2:on3:on4:on5:on6:offtestchkconfig0:off1:off2:on3:on4:on5:on6:off复制代码
  使用chkconfiglist可查看当前加入开机自启动的服务列表,但如Note部分所述,该命令只显示SysV服务,不包含原生的systemd服务,查看systemd服务可使用systemctllistunitfiles命令。
  以上三步,即可使roottestchkconfig。shdevnull2devnull命令在服务器系统启动时自动运行。
  chkconfig的其它命令参考chkconfiglist表示查看所有服务在各个运行级别下的状态。chkconfigtestchkconfigon表示指定服务在所有的运行级别下都是开启状态。chkconfigtestchkconfigoff表示指定服务在所有的运行级别下都是关闭状态。chkconfiglevel5testchkconfigon表示指定服务在运行级别5图形模式的状态下开机启动服务。chkconfiglevel5testchkconfigoff表示指定服务在运行级别5图形模式的状态下开机不启动服务。复制代码三。自定义systemdservice方式
  CentOS7的systemd服务脚本存放在:usrlibsystemdsystem(系统级)usrlibsystemduser(用户级)下,以。service结尾。这里以nginx为例
  1、在usrlibsystemdsystem目录下创建nginx。service文件〔devusertestserver1〕sudovimusrlibsystemdsystemnginx。service〔Unit〕DescriptionnginxserverDocumentationhttp:nginx。orgendocs依赖服务,仅当依赖的服务启动之后再启动自定义的服务Afternetwork。targetremotefs。targetnsslookup。target〔Service〕启动类型,包括simple、forking、oneshot、notify、dbusTypeforkingpid文件路径PIDFilevarrunnginx。pid启动前执行的操作ExecStartPreusrlocalnginxsbinnginxtcusrlocalnginxconfnginx。conf启动命令ExecStartusrlocalnginxsbinnginxcusrlocalnginxconfnginx。conf重载命令ExecReloadusrlocalnginxsbinnginxsreload停止命令ExecStopusrlocalnginxsbinnginxsstop是否给服务分配独立的临时空间PrivateTmptrue〔Install〕服务安装的用户模式,一般使用multiuser即可WantedBymultiuser。target复制代码
  其中Service部分的Type包括如下几种类型:simple:表示ExecStart启动的进程是该服务的主进程。如果它需要为其他进程提供服务,那么必须在该服务启动之前先建立好通信渠道,比如套接字,以加快后续单元的启动速度。forking:表示ExecStart进程将会在启动时使用fork()函数,这是传统Unix系统的做法,也就是说这个进程将由systemd进程fork出来,然后当该进程都准备就绪时,systemd进程退出,而fork出来的进程作为服务的主进程继续运行,对于此类型的进程,建议设置PIDFile选项,以帮助systemd准确定位该服务的主进程。oneshot:该进程会在systemd启动后续单元之前退出,适用于仅需要执行一次的程序。比如清理磁盘,你只需要执行一次,不需要一直在后台运行这个程序。notify:与simple类似,不同之处在于该进程会在启动完成之后通过sdnotify之类的接口发送一个通知消息。systemd在启动后续单元之前,必须确保该进程已经成功地发送了一个消息。dbus:该进程需要在DBus上获得一个由BusName指定的名称,systemd将会在启动后续单元之前,首先确保该进程已经成功获取了指定DBus名称。
  2、开启开机自启动〔devusertestserver1〕sudosystemctlenablenginx。serviceCreatedsymlinkfrometcsystemdsystemmultiuser。target。wantsnginx。servicetousrlibsystemdsystemnginx。service。复制代码
  以上两步,就将nginx服务配置成了在操作系统启动时自动启动。
  其它命令参考sudosystemctlstartnginx。service启动sudosystemctlrestartnginx。service重启sudosystemctlreloadnginx。service重载sudosystemctlstopnginx。service停止sudosystemctlstatusnginx。service查看服务状态sudosystemctlcatnginx。service查看服务配置systemctllistunitfilesgrepnginx查看服务enabled状态sudosystemctldisablenginx。service关闭开机自启动sudojournalctlfunginx。service查看日志sudosystemctldaemonreload配置修改后,重新加载复制代码
  根据以上配置,通过start启动nginx服务时,报PIDfilevarrunnginx。pidnotreadable(yet?)afterstart。的错误,启动失败,日志如下〔devusertestserver1〕sudojournalctlfunginx。serviceLogsbeginatWed2020032509:14:55CST。Mar2511:02:27testserver1nginx〔14144〕:nginx:configurationfileusrlocalnginxconfnginx。conftestissuccessfulMar2511:02:27testserver1systemd〔1〕:PIDfilerunnginx。pidnotreadable(yet?)afterstart。Mar2511:04:29testserver1systemd〔1〕:nginx。servicestartoperationtimedout。Terminating。Mar2511:04:29testserver1systemd〔1〕:Failedtostartnginx。Mar2511:04:29testserver1systemd〔1〕:Unitnginx。serviceenteredfailedstate。Mar2511:04:29testserver1systemd〔1〕:nginx。servicefailed。复制代码
  从字面看是PID文件不可读,查看varrunnginx。pid,该文件也确实不存在,查看nginx。conf配置文件,发现是pidvarrunnginx。pid;这行配置被注释掉了,如果不指定pid文件位置,nginx默认会把pid文件保存在logs目录中。所以出现systemd启动服务时找不到pid文件而报错,将nginx。conf中的pid配置注释去掉,重启nginx。service即可。Ubuntu18。04的开机自启动配置
  在Ubuntu18。04中,主要也是以systemd服务来实现开机自启动,systemd默认读取etcsystemdsystem下的配置文件,该目录下的一些文件会链接到libsystemdsystem下的文件。
  因此可以在etcsystemdsystem目录下面创建一个自启动服务配置,以内网穿透服务frp客户端为例,如〔Unit〕DescriptionfrpcAfternetwork。targetWantsnetwork。target〔Service〕TimeoutStartSec30ExecStarthomedevuserappsfrpfrpcchomedevuserappsfrpfrpc。iniExecStopbinkillMAINPIDRestart1〔Install〕WantedBymultiuser。target复制代码
  各配置项与CentOS类似。然后将服务器加到自启动列表中并启动服务sudosystemctlenablefrpcsudosystemctlstartfrpc复制代码
  其它更多systemctl命令与CentOS类似。
  也可以使用libsystemdsystemrclocal。service来执行一些开机需要执行的脚本,该文件内容为SPDXLicenseIdentifier:LGPL2。1Thisfileispartofsystemd。systemdisfreesoftware;youcanredistributeitandormodifyitunderthetermsoftheGNULesserGeneralPublicLicenseaspublishedbytheFreeSoftwareFoundation;eitherversion2。1oftheLicense,or(atyouroption)anylaterversion。Thisunitgetspulledautomaticallyintomultiuser。targetbysystemdrclocalgeneratorifetcrc。localisexecutable。〔Unit〕Descriptionetcrc。localCompatibilityDocumentationman:systemdrclocalgenerator(8)ConditionFileIsExecutableetcrc。localAfternetwork。target〔Service〕TypeforkingExecStartetcrc。localstartTimeoutSec0RemainAfterExityesGuessMainPIDno复制代码
  从Description看它是为了兼容之前版本的etcrc。local的,该服务启动命名就是etcrc。localstart,将该文件链接到etcsystemdsystem下sudolnslibsystemdsystemrclocal。serviceetcsystemdsystemrclocal。service复制代码
  创建etcrc。local文件,并赋予可执行权限vimetcrc。local!binbashechotestrcvartest。logsudochmodxetcrc。local复制代码完
  作者:半路雨歌
  链接:https:juejin。cnpost6844904104515338248

描写秋天稻谷的初中作文果实累累的秋季,到处都是金灿灿的一片,尤其是稻田,只要你一看见那金黄的稻田就会忍不住拿出相机拍一张照或沉迷于者美丽的稻田。以下是专门为你收集整理的关于描写秋天稻田的初中作文,供……我长大了小学四年级作文500字无论长多大,在爸爸妈妈的眼里,我永远只是个小孩子,直到那件事情的发生,多少改变了他们的看法。那是一个星期天的早晨,爸爸和姐姐都不在家,留下我和妈妈两个人。突然,妈妈很难受……关于写熟悉的人作文熟悉的人就是你了解认识的人,下面是小编整理的相关作文,欢迎阅读参考!关于写熟悉的人作文一提起我最熟悉的一个人,那就一定是我的表姐了,她可是一个书呆子哦。表姐四方脸,……有关城南旧事的好词好句该作品通过英子童稚的双眼对童年往事的回忆,讲述了一段关于英子童年时的故事,反映了作者对童年的怀念和对北京城南的思念。小编收集了城南旧事的好词好句,欢迎阅读。好词:糊……青春无悔小学作文渴慕成功,那么不要跟随潘多拉的脚步。去追随天使的笑容,展开洁白无瑕的翅膀,去寻找属于自己的那一份希望。题记成长的尽头是一片黑色的漩涡,但却吸引着一颗颗青春火热的心,……宝石花作文范文爸爸养了一盆热带的宝石花。宝石花是热带植物,一到春天它便绽开五角星似的花来,那花有着白色的花瓣、红色的花蕊,花瓣的末端非常尖。它的叶子很厚实,每一片都非常的饱满,就是再大……关于新年英语作文NewYearPartyIntheendoftheyear,peopleheldmanyactivitiestocelebrateandwelcometheNewYear……欧美暂停中国邮包服务?联邦快递消息不实人民日报客户端4月23日,网上有消息称欧美多国宣布暂停中国邮政包裹服务。记者从联邦快递中国公司获悉,暂停中国邮包服务的消息不实,恰恰相反,联邦快递准备从4月25日起恢复部……魔蝎座的女孩每一个女孩,出生后不久,就能确定自己的星座。有双鱼座、射手座、水瓶座、天蝎座等等,曾经的我原以为我是射手座的,每每谈起自己的星座,就眉飞色舞,滔滔不绝。但我是12月26日出生的……爱情的名言摘录爱情就像两个拉橡皮筋的人,受伤的总是不愿放手的那一个!以下是品学网小编整理的爱情的名言,欢迎大家阅读。爱情的名言精选10句:一、因为爱情常常是不可预知的,所以它的消……精选小学作文1000字8篇在我们平凡的日常里,大家都经常接触到作文吧,借助作文可以宣泄心中的情感,调节自己的心情。作文的注意事项有许多,你确定会写吗?以下是小编为大家收集的小学作文1000字8篇,希望能……六年级作文把握就会导语:机遇往往都是瞬间出现,而又瞬间消失。再出现是我们要好好把握,小编收集把握机会的作文,欢迎阅读。第一篇:把握机会机遇往往都是瞬间出现,而又瞬间消失。从而善于把握……
折叠屏手机厂商内卷背后配件供应吃紧应用或先走向繁荣本报记者贾丽在小米、OPPO、vivo、荣耀等厂商涌入后,折叠屏手机市场一下子变得热闹起来。4月28日,华为常务董事、华为终端BGCEO余承东表示:厚重、折痕、怕摔是折叠……关于初二叙事作文天使之音音乐,是一种艺术。她可以触动我们的灵魂。就在这个风和日丽的星期天,学校组织了一部分同学去参加了一场便于我们深入了解乐器的音乐会。下午2:30,大家在校集合,3……天使没有翅膀作文400字波说过一句话很经典女孩子都是天使,为了爱折掉翅膀来到人间。所以不要伤害女孩子。因为她们已没有了翅膀,再也回不到天堂。我想这句话很经典。真的很经典。题记十四岁的……文明病了议论文文明病了,躺在病床上,脸色苍白,痛苦地呻吟着。经过医生的初步诊断,文明患了皮肤病、眼病与血液病。医生决定先医治文明的皮肤病。医疗团队与警察一同来到大街上,他们想调查出文明……今天大扫除的日记中午放学回家时,我看到桌子下面有一只蟑螂,我就吓破了胆(咋办?),我只好拿起一把扫把来保护自己,呸,应该是攻击他(我强它就弱嘛),来啊,我不怕你!我对小强说,小强急速的跑过来,……互相关爱作文精编导语:关爱,就是关心爱护,它在我们身边无处不在。我们每个人都需要关爱,生活上也少不了关爱,别人给予我们关爱,那我们更应该去关心爱护他人,这样世界上才会充满爱!下面是小编整理的互……2017年爱家乡爱阳泉征文精选我的家乡mdash;mdash;阳泉,雄居太行,俯瞰华北,人杰地灵,文化发达。小编收集了2017年爱家乡爱阳泉征文精选,欢迎阅读。第一篇:爱家乡爱阳泉我的家乡在阳泉……高一写人作文时光流逝,母爱依旧1160字雨打花残,摧毁了昔日最美的容颜;风拂雁往,消逝了前刻最美的伟岸。世间万物,变幻莫测,然而,有种最美的情感却永不逝变。题记是谁,陪我静看春华秋实,栉风沐雨?是谁,为我……读勿忘国耻有感品学网专稿未经允许不得转载你们知道什么是ldquo;国耻rdquo;吗?《勿忘国耻》这本书讲述了清朝末年,我国饱受帝国主义列强侵略、宰割、欺凌、压榨的一段不可抹的历……关于细节描写的作文后悔我刚才的举动,因为我刚才在和同学们商量明天的跳舞比赛,我们的队形是个子矮的在前面,个子高的在后面,我的个子很高,可是我不想在后面,只想在前面。可是同学们对我的想法不同意,我……我的偶像我的偶像母亲我的偶像mdash;mdash;母亲!在我的记忆里,母亲是一个很美丽,很伟大,很严厉的人!她并不特别,她很普通!她并不高,只是一般!她并不是最美丽的,但在我眼中是最美的!……2021年愤怒的小鸟2观后感观看愤怒的小鸟2感悟五篇电影《愤怒的小鸟2》是根据愤怒的小鸟的游戏制作的,保留了游戏中通过弹弓的元素,虽然是小鸟,可他们不会飞,只能通过弹弓来飞翔。在游戏中小鸟和猪猪就是敌对的,在电影中他们依然是对立……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网