Tomcat日誌在/usr/local/tomcat/logs/目錄下,大概有這麼幾類文件:catalina.out、catalina.xxxx-xx-xx.log、host-manager.xxxx-xx-xx.log、manager.xxxx-xx-xx.log、localhost.xxxx-xx-xx.log、xxx_access_log.xxxx-xx-xx.txt。哇~怎麼這麼多?遇到問題咱們該查哪一個?php
記住一點便可,遇到問題查catalina.out,這個日誌是核心日誌,不管正確的信息仍是錯誤的信息,無論是tomcat服務自己的仍是tomcat跑的應用(如,zrlog)都會記錄到這個日誌裏。 兩個manager日誌是管理臺相關的日誌,不用關注。而access_log是訪問日誌,記錄客戶端訪問網站的狀況,這個日誌其實能夠不讓它記,而是在前端Nginx代理上記錄,因此也不用關注。這個帶日期的catalina.xxxx-xx-xx.log是catalina引擎相關的日誌,能夠認爲是tomcat服務自己的日誌,其實這個也不用關注,由於它和catalina.out是重複的,也就是說這個裏面記錄的信息在catalina.out裏就有。還有個localhost.xxxx-xx-xx.log,它主要是應用初始化(listener, filter, servlet)未處理的異常最後被tomcat捕獲而輸出的日誌,其實也不用怎麼關注。前端
日誌配置文件conf/logging.properties,裏面主要定義了非訪問日誌的一些屬性,好比日誌路徑、哪些日誌記錄到哪一個文件(名字)、日誌級別、存儲週期等信息,這個配置文件咱們通常都不會更改,保持默認便可。而訪問日誌的格式、路徑是在server.xml中定義的,以下爲訪問日誌的配置片斷:mysql
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log" suffix=".txt" pattern="%h %l %u %t "%r" %s %b" />
細心的你也許一經發現,catalina.out文件並無日期後綴,這樣就意味着該文件並不會自動切割,它會越寫越大。解決該問題的方法有兩個:web
1)每隔一段時間清空該文件,好比增長一個計劃任務sql
0 0 */5 * * echo "" > /usr/local/tomcat/logs/catalina.out
2)用系統自帶的logrotate工具切割apache
# vim /etc/logrotate.d/tomcat //寫入以下內容 /usr/local/tomcat/logs/catalina.out { copytruncate # 建立新的catalina.out副本後,截斷源catalina.out文件 daily # 天天進行catalina.out文件的輪轉 rotate 7 # 至多保留7個副本 missingok # 若是要輪轉的文件丟失了,繼續輪轉而不報錯 compress # 使用壓縮的方式(節省硬盤空間) size 16M # 當catalina.out文件大於16MB時,就輪轉 }
補充:vim
任務計劃:windows
crontab -e 格式:分 時 日 月 周 命令 0 3 * * * /bin/bash /usr/local/sbin/1.sh 1,2,3 */5 0 8-10 * * * 1-7 0-6
4.65 FTP服務tomcat
FTP服務:bash
文件傳輸協議,能夠上傳和下載文件。好比,咱們能夠把Windows上的文件上傳到Linux上。也能夠把Linux上的文件 下載到windows上。固然,反過來也能夠,由於FTP也能夠安裝在Windows上。
CentOS上默認有一個 vsftpd
Linux下安裝pure-ftpd
yum install -y epel-release yum install -y pure-ftpd
配置pure-ftpd
vi /etc/pure-ftpd/pure-ftpd.conf PureDB /etc/pure-ftpd/pureftpd.pdb MinUID 1000 useradd ftpuser mkdir /data/ftp chown ftpuser:ftpuser /data/ftp pure-pw useradd user1 -u ftpuser -d /data/ftp pure-pw mkdb pure-pw list systemctl start pure-ftpd firewall-cmd --add-port=21/tcp --permanent firewall-cmd --reload
測試:
yum install -y lftp lftp user1@127.0.0.1
Win測試:
下載filezilla client https://filezilla-project.org/download.php?type=client 安裝
SFTP
走的ssh的端口 22 支持SFTP的經常使用軟件:filezilla xftp
[root@test01 tomcat]# ls bin CONTRIBUTING.md logs RELEASE-NOTES webapps BUILDING.txt lib NOTICE RUNNING.txt work conf LICENSE README.md temp www.aaa.com [root@test01 tomcat]# cd logs [root@test01 logs]# ls catalina.2019-03-11.log localhost.2019-03-12.log catalina.2019-03-12.log localhost.2019-03-13.log catalina.2019-03-13.log localhost_access_log.2019-03-11.txt catalina.out localhost_access_log.2019-03-12.txt host-manager.2019-03-11.log localhost_access_log.2019-03-13.txt host-manager.2019-03-12.log manager.2019-03-11.log host-manager.2019-03-13.log manager.2019-03-12.log localhost.2019-03-11.log manager.2019-03-13.log catalina.out [root@test01 tomcat]# cat /etc/crontab SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root # For details see man 4 crontabs # Example of job definition: # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * user-name command to be executed 分 時 日 月 周 minute hour day month day of week 咱們仍是用系統自帶的工具logrotate [root@test01 tomcat]# vim /etc/logrotate.d/tomcat /usr/local/tomcat/logs/catalina.out { copytruncate # 建立新的catalina.out副本後,截斷源catalina.out文件 daily # 天天進行catalina.out文件的輪轉 rotate 7 # 至多保留7個副本 missingok # 若是要輪轉的文件丟失了,繼續輪轉而不報錯 compress # 使用壓縮的方式(節省硬盤空間) size 16M # 當catalina.out文件大於16MB時,就輪轉 4.65 FTP服務 [root@test01 ~]# yum install -y epel-release (這個擴展源建議安裝完系統就安裝上這個擴展源) [root@test01 ~]# yum install -y pure-ftpd 安裝完上面的才能安裝puftpd [root@test01 ~]# vi /etc/pure-ftpd/pure-ftpd.conf 這個是puftpd的配置文件 PureDB /etc/pure-ftpd/pureftpd.pdb 找到這句把#號給去掉 [root@test01 ~]# useradd ftpuser 建立一個用戶 [root@test01 ~]# id ftpuser 查看一下用戶 uid=1003(ftpuser) gid=1004(ftpuser) 組=1004(ftpuser) [root@test01 ~]# mkdir /data/ftp 建立一個目錄 [root@test01 ~]# ls -ld /data/ftp 查看一下權限 全部者是root的,ftpuser是沒用權限寫的 drwxr-xr-x. 2 root root 6 3月 13 23:16 /data/ftp [root@test01 ~]# chown ftpuser:ftpuser /data/ftp 更改所屬主ftpuser [root@test01 ~]# ls -ld /data/ftp drwxr-xr-x. 2 ftpuser ftpuser 6 3月 13 23:16 /data/ftp [root@test01 ~]# pure-pw pure-pw pure-pwconvert [root@test01 ~]# pure-pw useradd user1 -u ftpuser -d /data/ftp 建立ftp的虛擬用戶user1,是映射系統的ftpuser的 Password: 設置密碼。密碼爲champin Enter it again: [root@test01 ~]# pure-pw list 列出pureftpd虛擬用戶有哪些 user1 /data/ftp/./ [root@test01 ~]# pure-pw mkdb 還要用這個命令建立密碼文件 [root@test01 ~]# ls -l /etc/pure-ftpd/pure pure-ftpd.conf pureftpd-mysql.conf pureftpd.pdb pureftpd-ldap.conf pureftpd.passwd pureftpd-pgsql.conf [root@test01 ~]# ls -l /etc/pure-ftpd/pureftpd.pdb 能夠查看一下,不能cat會亂碼由於是二進制的文件 -rw-------. 1 root root 2215 3月 13 23:37 /etc/pure-ftpd/pureftpd.pdb [root@test01 ~]# systemctl start pure-ftpd 啓動pure-ftpd服務 [root@test01 ~]# netstat -ltnp |grep ftpd tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 3914/pure-ftpd (SER tcp6 0 0 :::21 :::* LISTEN 3914/pure-ftpd (SER [root@test01 ~]# ps aux |grep ftpd root 3914 0.0 0.1 202492 1212 ? Ss 23:39 0:00 pure-ftpd (SERVER) root 3918 0.0 0.0 112728 980 pts/1 R+ 23:40 0:00 grep --color=auto ftpd [root@test01 ~]# firewall-cmd --add-port=21/tcp --permanent 同時還要添加防火牆規則開放21端口 success [root@test01 ~]# firewall-cmd --reload success 接下來就是測試了 [root@test01 ~]# yum install -y lftp 這個是fpt客戶端 [root@test01 ~]# lftp user1@127.0.0.1 測試本機 口令: 虛擬用戶user1的密碼 lftp user1@127.0.0.1:~> ls drwxr-xr-x 2 1003 ftpuser 6 Mar 13 23:16 . drwxr-xr-x 2 1003 ftpuser 6 Mar 13 23:16 .. lftp user1@127.0.0.1:/> pwd ftp://user1@127.0.0.1/ lftp user1@127.0.0.1:/> 複製打開一個新終端。 [root@test01 ~]# cd /data/ftp/ [root@test01 ftp]# ls [root@test01 ftp]# touch 1.txt [root@test01 ftp]# echo "12121212121" > 1.txt 再回到原來的終端 lftp user1@127.0.0.1:/> exit [root@test01 ~]# lftp user1@127.0.0.1 口令: lftp user1@127.0.0.1:~> ls drwxr-xr-x 2 1003 ftpuser 19 Mar 13 23:48 . drwxr-xr-x 2 1003 ftpuser 19 Mar 13 23:48 .. -rw-r--r-- 1 0 0 12 Mar 13 23:48 1.txt lftp user1@127.0.0.1:/> cat 1.txt 12121212121 13 bytes transferred 我用的是xftp,要勾選使用主動模式才能顯示文件。我上傳了一個文件。 下載也是同樣的。 [root@test01 ~]# ls -l /data/ftp 總用量 12 -rw-r--r--. 1 root root 12 3月 13 23:48 1.txt -rw-r--r--. 1 ftpuser ftpuser 5512 3月 14 00:12 champin.top.ssl.txt