第八週作業

*1、 systemd查看日誌文件有隱藏該如何處理?

答:Centos7.x使用systemd提供的journalctl日誌管理

a.基本上,系統由systemd所管理,那所有經由systemd啓動的服務()如果在啓動或結束的過程中發生了一些問題或是正常的信息),就會將該信息由systemd-journald.service以二進制的方式記錄下來,之後再將信息發個rsyslog.service作進一步的記載。
b.systemd-journald.service的記錄主要都放置與內存中,因此在存取方面效能比較好。我們也能透過journalctl以及systemctl status unit.service 來查看各個不同服務的日誌。
c.7個級別的含義爲
serverity-level table(服務級別列表)

數字代碼 服務級別 描述
0 emerg 系統不可用
1 alert 必須馬上採取救援行動
2 crit 嚴重錯誤信息
3 error 錯誤信息
4 warning 警告信息
5 notice 普通但是值得注意的信息
6 info 一般信息
7 debug 調試信息
    **日誌的分析是很重要的!你可以自行vim或者是journalctl進入日誌去查看相關信息。Centos提供了logwatch這個日誌分析程式。

k.yum install logwatch.noarch –y
**

systemd2、 自己動手寫一個systemd的配置文件, 讓nginx服務可以開機啓動

答:[root@localhost ~]# cd /etc/systemd/system
        [root@localhost system]# vi nginx.service 
        [Unit]
        Description=nginx - high performance web server
        Documentation=http://nginx.org/en/docs/
        After=network.target remote-fs.target nss-lookup.target

        [Service]
        Type=forking
        PIDFile=/usr/local/nginx/logs/nginx.pid
        ExecStartPre=/usr/local/nginx/sbin/nginx
        ExecStart=/usr/local/nginx/sbin/nginx
        ExecReload=/usr/local/nginx/sbin/nginx -s reload
        ExecStop=/usr/local/nginx/sbin/nginx -s stop
        PrivateTmp=true
        [Install]
        WantedBy=multi-user.target

3、 SIGHUP、SIGQUIT、SIGTERM、SIGINTERRUPT的區別

答:通過命令man 7 signal來查看每個信號的含義。
        SIGHUP 控制終端關閉或控制進程退出時,終端會話內的子進程與控制進程的子進程都會收到這樣的信號,系統對SIGHUP信號的默認處理是終止收到該信號的進程。所以若程序中沒有捕捉該信號,當收到該信號時,進程就會退出。
        SIGQUIT  和SIGINT類似, 但由QUIT字符(通常是Ctrl-\  )來控制. 進程在因收到SIGQUIT退出時會產生core文件, 類似於一個程序錯誤信號。
        SIGTERM程序結束(terminate)信號, 與SIGKILL不同的是該信號可以被阻塞和處理。通常用來要求程序自己正常退出,shell命令kill缺省產生這個信號。如果進程終止不了,我們纔會嘗試SIGKILL,就是我們有時使用kill -9 pid來強行殺死進程。
        SIGINTERRUPT   程序終止(interrupt)信號, 在用戶鍵入INTR字符(通常是Ctrl-C)時發出,用於通知前臺進程組終止進程。

4、用awk查看tcp連接處於TIMEOUT的連接個數

答:netstat -ta | awk '/^tcp\>/{if ($NF == "LISTEN") sum++}END {print sum}'
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章