整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          整人彈框網頁源碼,自己不要測試,根本停不下來!

          人彈框網頁源碼

          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML><HEAD><TITLE>嘻嘻 對不起咯</TITLE><META http-equiv=Content-Type content="text/html; charset=gb2312"><META content="MSHTML 6.00.2800.1106" name=GENERATOR><META content=FrontPage.Editor.Document name=ProgId><SCRIPT language=JavaScript>var msg = "呵呵";var speed = 300; var msgud = " " + msg; function titleScroll() { if (msgud.length <msg.length) msgud += " - " + msg; msgud = msgud.substring(1, msgud.length); document.title = msgud.substring(0, msg.length);window.setTimeout("titleScroll()", speed); } </SCRIPT></HEAD><BODY><script language=JavaScript>alert("咦。怎么回事?")</script><script language=JavaScript>alert("嘿 老兄 你進來容易 出去難")</script><script language=JavaScript>alert("放我出去")</script><script language=JavaScript>alert("沒法啦!你都上了,只有陪我了")</script><script language=JavaScript>alert("哈哈!呵呵!嘻嘻!")</script><script language=JavaScript>alert("我都不想的,都是想開心下")</script><script language=JavaScript>alert("別難過了~~~")</script><script language=JavaScript>alert("就和我玩玩啦!")</script><script language=JavaScript>alert("但是玩笑可能開過頭了")</script><script language=JavaScript>alert("竟然要您來陪我")</script><script language=JavaScript>alert("哎,真是的!")</script><script language=JavaScript>alert("答應我你會復制地址發給你QQ上的10個好友就會自動結束")</script><script language=JavaScript>alert("可是你怎么能回去呢?")</script><script language=JavaScript>alert("我也沒辦法")</script><script language=JavaScript>alert("要不。。。")</script><script language=JavaScript>alert("把機子關了吧!")</script><script language=JavaScript>alert("什么?你不愿意關?")</script><script language=JavaScript>alert("那怎么辦呢?")</script><script language=JavaScript>alert("讓我再想想")</script><script language=JavaScript>alert("對不起,實在沒有辦法了!")</script><script language=JavaScript>alert("都是我不好,讓你受那么大委屈!")</script><script language=JavaScript>alert("但是現在你該怎么辦呢?")</script><script language=JavaScript>alert("哎呀!求你了!!別哭好不好?!")</script><script language=JavaScript>alert("都是我的錯,行了嗎?")</script><script language=JavaScript>alert("什么?不行?孬人,快放了我")</script><script language=JavaScript>alert("別這樣嘛!")</script><script language=JavaScript>alert("我給你講個故事行嗎?")</script><script language=JavaScript>alert("從前有個山")</script><script language=JavaScript>alert("山上有個廟")</script><script language=JavaScript>alert("廟里有個老和尚有個小和尚")</script><script language=JavaScript>alert("老和尚正在給小和尚講故事")</script><script language=JavaScript>alert("從前有個山")</script><script language=JavaScript>alert("山上有個廟。。。。")</script><script language=JavaScript>alert("別罵我呀?")</script><script language=JavaScript>alert("你不愿聽這個我給你換一個")</script><script language=JavaScript>alert("從前有個山")</script><script language=JavaScript>alert("山上有個庵")</script><script language=JavaScript>alert("庵里有個老尼姑有個小尼姑")</script><script language=JavaScript>alert("老尼姑。。。哎呦別打了,我換一個!")</script><script language=JavaScript>alert("講個好聽的")</script><script language=JavaScript>alert("仔細聽啊")</script><script language=JavaScript>alert("從前有個山")</script><script language=JavaScript>alert("呵呵,先別打,和那個不一樣!")</script><script language=JavaScript>alert("山上有個廟")</script><script language=JavaScript>alert("哎呦,聽我講完!")</script><script language=JavaScript>alert("廟里有個缸")</script><script language=JavaScript>alert("不一樣了吧")</script><script language=JavaScript>alert("缸里有個瓢")</script><script language=JavaScript>alert("瓢里有個碗")</script><script language=JavaScript>alert("碗里有個勺")</script><script language=JavaScript>alert("勺里有塊肉")</script><script language=JavaScript>alert("我吃了你饞了")</script><script language=JavaScript>alert("我的故事講完了!")</script><script language=JavaScript>alert("好不好?")</script><script language=JavaScript>alert("什么?還想聽?你正孬人!")</script><script language=JavaScript>alert("那好,我再來一個!")</script><script language=JavaScript>alert("從前")</script><script language=JavaScript>alert("有一個小孩牽個羊")</script><script language=JavaScript>alert("我的故事就這么長")</script><script language=JavaScript>alert("你不愿意聽是嗎?")</script><script language=JavaScript>alert("那怎么辦?")</script><script language=JavaScript>alert("你已經出不去了")</script><script language=JavaScript>alert("還是關掉電腦來的干脆")</script><script language=JavaScript>alert("試試吧")</script><script language=JavaScript>alert("還是不愿關?")</script><script language=JavaScript>alert("那我再給你講故事!")</script><script language=JavaScript>alert("哎哎,別哭嘛!")</script><script language=JavaScript>alert("哭的我挺傷心的")</script><script language=JavaScript>alert("你真的出不去了")</script><script language=JavaScript>alert("你還不泄氣?")</script><script language=JavaScript>alert("我佩服你這種精神!")</script><script language=JavaScript>alert("你堅持這么久一定很急了")</script><script language=JavaScript>alert("你還真能堅持!")</script><script language=JavaScript>alert("你一定知道“堅持就是勝利”")</script><script language=JavaScript>alert("對不對?")</script><script language=JavaScript>alert("如果你有這種精神的話---")</script><script language=JavaScript>alert("你一定會成功的!")</script><script language=JavaScript>alert("相信我")</script><script language=JavaScript>alert("你快看到希望了")</script><script language=JavaScript>alert("我不騙你")</script><script language=JavaScript>alert("真的!")</script><script language=JavaScript>alert("你馬上就會找到出口的")</script><script language=JavaScript>alert("多虧你堅持了下來")</script><script language=JavaScript>alert("要不,關了機子多不好!")</script><script language=JavaScript>alert("是不是?")</script><script language=JavaScript>alert("對不對?")</script><script language=JavaScript>alert("喂!給你說點正事!")</script><script language=JavaScript>alert("一個人受騙是不是很難受?")</script><script language=JavaScript>alert("想不想讓別人替你分擔一下?")</script><script language=JavaScript>alert("我的意思是----")</script><script language=JavaScript>alert("把你的朋友叫過來!")</script><script language=JavaScript>alert("讓他也受騙")</script><script language=JavaScript>alert("你就在一旁哈哈大笑~~~")</script><script language=JavaScript>alert("好不好?")</script><script language=JavaScript>alert("什么?出賣朋友的事你不干?")</script><script language=JavaScript>alert("你真是好人!")</script><script language=JavaScript>alert("我太感動了!")</script><script language=JavaScript>alert("嗚嗚~~~~~~")</script><script language=JavaScript>alert("也好,我從不難為好人!")</script><script language=JavaScript>alert("我決定----")</script><script language=JavaScript>alert("讓好人多在我身邊一會!")</script><script language=JavaScript>alert("你愿不愿意?")</script><script language=JavaScript>alert("怎么還不愿意?")</script><script language=JavaScript>alert("那好,我馬上讓你出去!")</script><script language=JavaScript>alert("別著急!")</script><script language=JavaScript>alert("你只需再點100000下就可以了!")</script><script language=JavaScript>alert("開個玩笑")</script><script language=JavaScript>alert("不要生氣")</script><script language=JavaScript>alert("人生就像一場戲")</script><script language=JavaScript>alert("因為有緣才相聚")</script><script language=JavaScript>alert("相扶到老不容易")</script><script language=JavaScript>alert("是否更該去珍惜")</script><script language=JavaScript>alert("他人生氣我不氣")</script><script language=JavaScript>alert("氣出病來無人替")</script><script language=JavaScript>alert("我說的對不對?")</script><script language=JavaScript>alert("好了")</script><script language=JavaScript>alert("玩笑也開過了")</script><script language=JavaScript>alert("該說的也說了")</script><script language=JavaScript>alert("該放你出去了!")</script><script language=JavaScript>alert("高興了吧")</script><script language=JavaScript>alert("還有,您可以介紹個MM給我嗎")</script><script language=JavaScript>alert("什么,還要我介紹一個給你這個孬人")</script><script language=JavaScript>alert("呵呵,不用嬲啦!")</script><script language=JavaScript>alert("不嬲就假了,我想現在就撕開你兩邊添啦!")</script><script language=JavaScript>alert("哦,你撕開我兩邊,那你怎樣出呢")</script><script language=JavaScript>alert("你不是真的關機是嗎")</script><script language=JavaScript>alert("如果是的,我都沒辦法了,你關啦")</script><script language=JavaScript>alert("陪多我幾小時先啦!")</script><script language=JavaScript>alert("我都沒有人陪我")</script><script language=JavaScript>alert("或者你介紹一個MM給我,就不用你陪啦!好嗎")</script><script language=JavaScript>alert("好,好難啦!")</script><script language=JavaScript>alert("哦,那你就一直陪我啦!")</script><script language=JavaScript>alert("不要,不要,不要,我返出!")</script><script language=JavaScript>alert("哭~~~~~~~~~哭~~~~~~哭~~~~")</script><script language=JavaScript>alert("呵呵,我怕了您 ,你不要哭了,我放你了!")</script><script language=JavaScript>alert("叮咚!開門啦!")</script><script language=JavaScript>alert("祝賀你!你終于出來了!恭喜恭喜!")</script><script language=JavaScript>alert("看到這句話高興了吧?")</script><script language=JavaScript>alert("做任何事可不要高興太早呀!知道了嗎?")</script><script language=JavaScript>alert("聽說過樂極生悲嗎?")</script><script language=JavaScript>alert("算了,算了,還是放你出來吧,做個深呼吸吧,放松一下!")</script><script language=JavaScript>alert("這次不用擔心了,放你出來了,通過這個事,應該明白一個道理呀!")</script><script language=JavaScript>alert("那就是:堅持就是勝利,勤奮就有機遇!")</script></script><script language=JavaScript>alert("祝賀你!你終于出來了!恭喜恭喜!")</script><script language=JavaScript>alert("祝賀你!你終于出來了!恭喜恭喜!")</script><script language=JavaScript>alert("祝賀你!你終于出來了!恭喜恭喜!")</script><script language=JavaScript>alert("祝賀你!你終于出來了!恭喜恭喜!")</script><script language=JavaScript>alert("祝賀你!你終于出來了!恭喜恭喜!")</script><script language=JavaScript>alert("祝賀你!你終于出來了!恭喜恭喜!")</script><script language=JavaScript>alert("祝賀你!你終于出來了!恭喜恭喜!")</BODY></HTML>

          秋日生活打卡季#

          原文鏈接:統信UOS1060設置自動關機01

          hello,大家好啊,今天給大家介紹一篇如何在統信UOS 1060上實現自動關機的文章,本篇文章采用兩種方式,第一種使用的是crontab定時任務的方式,第二種是使用at命令的方式,兩種方式供您選擇。



          方法一:使用crontab定時任務



          1、編輯crontab文件,設置每天14:09關機


          uos@uos-PC:~/Desktop$ sudo -i
          請輸入密碼:
          驗證成功
          root@uos-PC:~# crontab -e
          no crontab for root - using an empty one
          
          
          Select an editor.  To change later, run 'select-editor'.
            1. /bin/nano        <---- easiest
            2. /usr/bin/vim.basic
            3. /usr/bin/vim.tiny
          
          
          Choose 1-3 [1]: 2
          crontab: installing new crontab
          root@uos-PC:~# 
          root@uos-PC:~# crontab -l
          # Edit this file to introduce tasks to be run by cron.
          # 
          # Each task to run has to be defined through a single line
          # indicating with different fields when the task will be run
          # and what command to run for the task
          # 
          # To define the time you can provide concrete values for
          # minute (m), hour (h), day of month (dom), month (mon),
          # and day of week (dow) or use '*' in these fields (for 'any').
          # 
          # Notice that tasks will be started based on the cron's system
          # daemon's notion of time and timezones.
          # 
          # Output of the crontab jobs (including errors) is sent through
          # email to the user the crontab file belongs to (unless redirected).
          # 
          # For example, you can run a backup of all your user accounts
          # at 5 a.m every week with:
          # 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
          # 
          # For more information see the manual pages of crontab(5) and cron(8)
          # 
          # m h  dom mon dow   command
          09 14 * * * /sbin/poweroff
          root@uos-PC:~# 
          
          



          2、等到14:09設備關機



          方法二:使用at命令來設置一次性的關機任務


          1、安裝at命令


          uos@uos-PC:~/Desktop$ sudo apt install at -y
          請輸入密碼:
          驗證成功
          正在讀取軟件包列表... 完成
          正在分析軟件包的依賴關系樹       
          正在讀取狀態信息... 完成       
          將會同時安裝下列軟件:
            exim4-base exim4-config exim4-daemon-light guile-2.2-libs libfl2 libgsasl7 libkyotocabinet16v5
            libmailutils5 libntlm0 mailutils mailutils-common
          建議安裝:
            exim4-doc-html | exim4-doc-info eximon4 spf-tools-perl swaks mailutils-mh mailutils-doc
          下列【新】軟件包將被安裝:
            at exim4-base exim4-config exim4-daemon-light guile-2.2-libs libfl2 libgsasl7 libkyotocabinet16v5
            libmailutils5 libntlm0 mailutils mailutils-common
          升級了 0 個軟件包,新安裝了 12 個軟件包,要卸載 0 個軟件包,有 116 個軟件包未被升級。
          需要下載 9,660 kB 的歸檔。
          解壓縮后會消耗 56.2 MB 的額外空間。
          獲取:1 https://professional-packages.chinauos.com/desktop-professional eagle/main arm64 libfl2 arm64 2.6.4-6.2 [103 kB]
          獲取:2 https://professional-packages.chinauos.com/desktop-professional eagle/main arm64 at arm64 3.1.23-1 [48.0 kB]
          獲取:3 https://professional-packages.chinauos.com/desktop-professional eagle/main arm64 exim4-config all 4.92.3-8+deb10u7 [325 kB]
          獲取:4 https://professional-packages.chinauos.com/desktop-professional eagle/main arm64 exim4-base arm64 4.92.3-8+deb10u7 [1,136 kB]
          獲取:5 https://professional-packages.chinauos.com/desktop-professional eagle/main arm64 exim4-daemon-light arm64 4.92.3-8+deb10u7 [533 kB]
          獲取:6 https://professional-packages.chinauos.com/desktop-professional eagle/main arm64 guile-2.2-libs arm64 2.2.4+1-2+deb10u1 [4,941 kB]
          獲取:7 https://professional-packages.chinauos.com/desktop-professional eagle/main arm64 libntlm0 arm64 1.5-1+deb10u1+rebuild [23.6 kB]
          獲取:8 https://professional-packages.chinauos.com/desktop-professional eagle/main arm64 libgsasl7 arm64 1.8.0-8+b2 [198 kB]
          獲取:9 https://professional-packages.chinauos.com/desktop-professional eagle/main arm64 libkyotocabinet16v5 arm64 1.2.76-4.2+b1 [267 kB]
          獲取:10 https://professional-packages.chinauos.com/desktop-professional eagle/main arm64 mailutils-common all 1:3.5-4+rebuild [689 kB]
          獲取:11 https://professional-packages.chinauos.com/desktop-professional eagle/main arm64 libmailutils5 arm64 1:3.5-4+rebuild [829 kB]
          獲取:12 https://professional-packages.chinauos.com/desktop-professional eagle/main arm64 mailutils arm64 1:3.5-4+rebuild [567 kB]
          已下載 9,660 kB,耗時 9秒 (1,022 kB/s)                                                                       
          正在預設定軟件包 ...
          正在選中未選擇的軟件包 libfl2:arm64。
          (正在讀取數據庫 ... 系統當前共安裝有 207780 個文件和目錄。)
          準備解壓 .../00-libfl2_2.6.4-6.2_arm64.deb  ...
          正在解壓 libfl2:arm64 (2.6.4-6.2) ...
          /var/cache/apt/archives/libfl2_2.6.4-6.2_arm64.deb
          正在選中未選擇的軟件包 at。
          準備解壓 .../01-at_3.1.23-1_arm64.deb  ...
          正在解壓 at (3.1.23-1) ...
          /var/cache/apt/archives/at_3.1.23-1_arm64.deb
          正在選中未選擇的軟件包 exim4-config。
          準備解壓 .../02-exim4-config_4.92.3-8+deb10u7_all.deb  ...
          正在解壓 exim4-config (4.92.3-8+deb10u7) ...
          /var/cache/apt/archives/exim4-config_4.92.3-8+deb10u7_all.deb
          正在選中未選擇的軟件包 exim4-base。
          準備解壓 .../03-exim4-base_4.92.3-8+deb10u7_arm64.deb  ...
          正在解壓 exim4-base (4.92.3-8+deb10u7) ...
          /var/cache/apt/archives/exim4-base_4.92.3-8+deb10u7_arm64.deb
          正在選中未選擇的軟件包 exim4-daemon-light。
          準備解壓 .../04-exim4-daemon-light_4.92.3-8+deb10u7_arm64.deb  ...
          正在解壓 exim4-daemon-light (4.92.3-8+deb10u7) ...
          /var/cache/apt/archives/exim4-daemon-light_4.92.3-8+deb10u7_arm64.deb
          正在選中未選擇的軟件包 guile-2.2-libs:arm64。
          準備解壓 .../05-guile-2.2-libs_2.2.4+1-2+deb10u1_arm64.deb  ...
          正在解壓 guile-2.2-libs:arm64 (2.2.4+1-2+deb10u1) ...
          /var/cache/apt/archives/guile-2.2-libs_2.2.4+1-2+deb10u1_arm64.deb
          正在選中未選擇的軟件包 libntlm0:arm64。
          準備解壓 .../06-libntlm0_1.5-1+deb10u1+rebuild_arm64.deb  ...
          正在解壓 libntlm0:arm64 (1.5-1+deb10u1+rebuild) ...
          /var/cache/apt/archives/libntlm0_1.5-1+deb10u1+rebuild_arm64.deb
          正在選中未選擇的軟件包 libgsasl7。
          準備解壓 .../07-libgsasl7_1.8.0-8+b2_arm64.deb  ...
          正在解壓 libgsasl7 (1.8.0-8+b2) ...
          /var/cache/apt/archives/libgsasl7_1.8.0-8+b2_arm64.deb
          正在選中未選擇的軟件包 libkyotocabinet16v5:arm64。
          準備解壓 .../08-libkyotocabinet16v5_1.2.76-4.2+b1_arm64.deb  ...
          正在解壓 libkyotocabinet16v5:arm64 (1.2.76-4.2+b1) ...
          /var/cache/apt/archives/libkyotocabinet16v5_1.2.76-4.2+b1_arm64.deb
          正在選中未選擇的軟件包 mailutils-common。
          準備解壓 .../09-mailutils-common_1%3a3.5-4+rebuild_all.deb  ...
          正在解壓 mailutils-common (1:3.5-4+rebuild) ...
          /var/cache/apt/archives/mailutils-common_1%3a3.5-4+rebuild_all.deb
          正在選中未選擇的軟件包 libmailutils5:arm64。
          準備解壓 .../10-libmailutils5_1%3a3.5-4+rebuild_arm64.deb  ...
          正在解壓 libmailutils5:arm64 (1:3.5-4+rebuild) ...
          /var/cache/apt/archives/libmailutils5_1%3a3.5-4+rebuild_arm64.deb
          正在選中未選擇的軟件包 mailutils。
          準備解壓 .../11-mailutils_1%3a3.5-4+rebuild_arm64.deb  ...
          正在解壓 mailutils (1:3.5-4+rebuild) ...
          /var/cache/apt/archives/mailutils_1%3a3.5-4+rebuild_arm64.deb
          正在設置 libkyotocabinet16v5:arm64 (1.2.76-4.2+b1) ...
          正在設置 libntlm0:arm64 (1.5-1+deb10u1+rebuild) ...
          正在設置 mailutils-common (1:3.5-4+rebuild) ...
          正在設置 libfl2:arm64 (2.6.4-6.2) ...
          正在設置 exim4-config (4.92.3-8+deb10u7) ...
          Adding system-user for exim (v4)
          正在設置 guile-2.2-libs:arm64 (2.2.4+1-2+deb10u1) ...
          正在設置 exim4-base (4.92.3-8+deb10u7) ...
          exim: DB upgrade, deleting hints-db
          正在設置 at (3.1.23-1) ...
          Created symlink /etc/systemd/system/multi-user.target.wants/atd.service → /lib/systemd/system/atd.service.
          正在設置 libgsasl7 (1.8.0-8+b2) ...
          正在設置 exim4-daemon-light (4.92.3-8+deb10u7) ...
          Initializing GnuTLS DH parameter file
          正在設置 libmailutils5:arm64 (1:3.5-4+rebuild) ...
          正在設置 mailutils (1:3.5-4+rebuild) ...
          update-alternatives: 使用 /usr/bin/frm.mailutils 來在自動模式中提供 /usr/bin/frm (frm)
          update-alternatives: 使用 /usr/bin/from.mailutils 來在自動模式中提供 /usr/bin/from (from)
          update-alternatives: 使用 /usr/bin/messages.mailutils 來在自動模式中提供 /usr/bin/messages (messages)
          update-alternatives: 使用 /usr/bin/movemail.mailutils 來在自動模式中提供 /usr/bin/movemail (movemail)
          update-alternatives: 使用 /usr/bin/readmsg.mailutils 來在自動模式中提供 /usr/bin/readmsg (readmsg)
          update-alternatives: 使用 /usr/bin/dotlock.mailutils 來在自動模式中提供 /usr/bin/dotlock (dotlock)
          update-alternatives: 使用 /usr/bin/mail.mailutils 來在自動模式中提供 /usr/bin/mailx (mailx)
          正在處理用于 systemd (241.52-deepin1) 的觸發器 ...
          正在處理用于 man-db (2.8.5-2) 的觸發器 ...
          正在處理用于 libc-bin (2.28.23-deepin1) 的觸發器 ...
          uos@uos-PC:~/Desktop$ 


          2、輸入at命令,在指定時間關機


          uos@uos-PC:~/Desktop$ sudo -i
          請輸入密碼:
          驗證成功
          root@uos-PC:~# 
          root@uos-PC:~# echo "poweroff" | at 14:25
          warning: commands will be executed using /bin/sh
          job 3 at Thu Sep 28 14:25:00 2023
          root@uos-PC:~# 



          3、系統已經關機

          工作中,我們通常遇到的問題是,如何控制systemd服務的啟動順序,同志們第一反應就會是使用Before=或者After=去進行控制。 問題來了,如果服務啟動時沒有順序要求,但是關閉時有順序要求, 該如何操作?

          通過查找如下相關文檔, 我查到了這樣一段話:

          https://www.freedesktop.org/software/systemd/man/systemd.unit.html

          When two units with an ordering dependency between them are shut down, the inverse of the start-up order is applied. I.e. if a unit is configured with After= on another unit, the former is stopped before the latter if both are shut down.

          上面這段話的意思是,如果使用After=或者Before=規定了進程的啟動順序, 那么關閉時的順序與啟動時的順序將是相反的。

          比如有A、B、C三個服務, 啟動時的順序時A->B->C, 那么服務的關閉順序將是C->B->A。 事實是這樣的嗎? 下面通過一個小實驗進行驗證。

          驗證systemd的關閉順序

          這里我們準備三個服務,服務在啟動時候會向文件中寫入相應的啟動和關閉日志,通過日志我們來判斷服務的啟動和關閉順序。

          首先是test1.sh, 該文件接受start/stop兩個命令行參數, 啟動時寫入日志start1, 關閉時寫入日志stop1。

          #!/bin/bash
          case "$1" in
          start)
          echo "start1" >> /home/test/test.log
          ;;
          stop)
          echo "stop1" >> /home/test/test.log
          ;;
          *)
          esac

          下面是test1服務的systemd的service文件test1.service,這里我們只需要腳本執行一次,因此使用的Type是oneshot類型,并且指定RemainAfterExit=yes,意思是該腳本只會執行一次,并且退出后, 不會意味著服務是inacive狀態, 將會顯示服務是active(exited)狀態。

          [Unit]
          Description=mytest:while date service
          After=network.target sshd.service
          
          [Service]
          Type=oneshot
          ExecStart= /home/test/test1.sh start
          ExecStop= /home/test/test1.sh stop
          RemainAfterExit=yes
          
          [Install]
          WantedBy=multi-user.target

          test2.sh與test1.sh類似,只是打印的日志內容不同。

          #!/bin/bash
          case "$1" in
          start)
          echo "start2" >> /home/test/test.log
          ;;
          stop)
          echo "stop2" >> /home/test/test.log
          ;;
          *)
          esac

          test2.service同test1.service, 不同的是我在After中增加了test1.service, 這就意味著test2晚于test1啟動。

          [Unit]
          Description=mytest:while date service
          After=network.target sshd.service test1.service
          
          [Service]
          Type=oneshot
          ExecStart= /home/test/test2.sh start
          ExecStop= /home/test/test2.sh stop
          RemainAfterExit=yes
          
          [Install]
          WantedBy=multi-user.target

          test3.sh同test1.sh

          #!/bin/bash
          case "$1" in
          start)
          echo "start3" >> /home/test/test.log
          ;;
          stop)
          echo "stop3" >> /home/test/test.log
          ;;
          *)
          esac

          test3.service同test1.service,不同的是我在After中增加了test2.service, 這就意味著test3晚于test2啟動。

          [Unit]
          Description=mytest:while date service
          After=network.target sshd.service test2.service
          
          [Service]
          Type=oneshot
          ExecStart= /home/test/test3.sh start
          ExecStop= /home/test/test3.sh stop
          RemainAfterExit=yes
          
          [Install]
          WantedBy=multi-user.target

          通過下面的命令將三個服務分別加入到systemd的目錄中,并且啟動它們并設為開機啟動。

          cp test1.service /usr/lib/systemd/system/
          cp test2.service /usr/lib/systemd/system/
          cp test3.service /usr/lib/systemd/system/
          systemctl daemon-reload
          systemctl enable test1
          systemctl enable test2
          systemctl enable test3
          systemctl start test1
          systemctl start test2
          systemctl start test3

          此時,test.log文件已經打印出了剛剛手動執行啟動命令產生的日志

          [root@localhost test]# cat test.log
          start1
          start2
          start3

          通過上述的步驟,我們構建出了三個服務,這三個服務的啟動順序是test1->test2->test3, 那么根據我們的推測, 關閉順序應該是test3->test2->test1,是否如此呢?

          下面就是到了最終驗證的時刻!

          reboot

          等待一小會后,我們打印出test.log

          [root@localhost test]# cat test.log
          start1
          start2
          start3
          stop3
          stop2
          stop1
          start1
          start2
          start3

          可以看到停止時依次打印出了stop3,stop2,stop1。這與我們的猜想以及文檔中的說明是一致的。

          結論

          systemd通過After和Before可以指定服務的啟動順序, 在系統關閉時,服務的關閉順序和啟動順序是相反的, 先啟動的后關閉,后啟動的先關閉。


          主站蜘蛛池模板: 亚洲色精品vr一区二区三区| 亚洲色无码一区二区三区| 精品无码一区二区三区在线| 国产亚洲综合精品一区二区三区| 精品亚洲一区二区三区在线播放| 色一乱一伦一图一区二区精品| 国产精品亚洲一区二区三区| 亚洲国产精品自在线一区二区| 国产免费一区二区三区VR| 亚洲狠狠久久综合一区77777| 夜夜精品无码一区二区三区| 国产高清在线精品一区| 国产成人无码AV一区二区在线观看 | 日亚毛片免费乱码不卡一区 | 国产伦精品一区二区三区免费迷| 天堂国产一区二区三区| 一区二区三区免费视频观看| 久久久久久人妻一区二区三区| 午夜福利一区二区三区高清视频 | 中文字幕在线观看一区二区| 国产伦精品一区二区三区在线观看| 91精品国产一区二区三区左线 | 亚洲一区二区三区电影| 成人乱码一区二区三区av| 国产精品伦子一区二区三区| 97一区二区三区四区久久| 日本精品一区二区三区在线观看| 亚洲AV无码一区二三区 | 国产在线一区二区杨幂| 亚洲国产激情在线一区| 精品国产一区二区三区免费| 国产午夜精品一区二区三区小说| 国产一区二区视频免费| 性色av闺蜜一区二区三区| 国产精品视频一区麻豆| 亚洲区精品久久一区二区三区| 国产成人久久精品一区二区三区 | 麻豆国产在线不卡一区二区| 精品动漫一区二区无遮挡| 中文字幕亚洲综合精品一区| 无码一区二区三区|