怎么样nagios显示器tomcat,它是一个相对简单的和复杂的事情。简单是因为,只有监控的假设web应用服务器tomcat无论是服务正常进行,很简单。假设你要监视tomcat其他例子,例如连接数jvm内存使用等更复杂,google没有合适的监控脚本;假设你要监视web上述多个应用程序tomcat服务器,并且非常多tomcat服务都是跳转式的。那就须要多做非常多事情。

一般通常都使用tcp tomcatport的方式,只是这有一个bug就是tomcat假死的情况下,tcp port是OK的,可是tomcat里面部署的web应用事实上已经不能正常訪问,这个时候须要使用http方式来监控tomcat的状态。

所以本文就记录了怎样採用http方式来监控一台web服务器上多个tomcat应用服务器。

1在tomcat web服务器上安装nrpe客户端:

Rpm包下载地址为:http://download.csdn.net/detail/mchdba/7493875

1.1。rpm方式安装nrpe客户端

[root@localhost nagios]# ll
总计 768
-rw-r--r-- 1 root root 713389 12-16 12:08 nagios-plugins-1.4.11-1.x86_64.rpm
-rw-r--r-- 1 root root 32706 12-16 12:09 nrpe-2.12-1.x86_64.rpm
-rw-r--r-- 1 root root 18997 12-16 12:08 nrpe-plugin-2.12-1.x86_64.rpm [root@localhost nagios]# rpm -ivh *.rpm --nodeps --force
Preparing... ########################################### [100%]
1:nagios-plugins ########################################### [ 33%]
id: nagios:无此用户
2:nrpe ########################################### [ 67%]
3:nrpe-plugin ########################################### [100%]
[root@cache-1 ~]#

1.2 在配置文件最末尾,加入配置信息以及监控主机服务器ip地址

[root@ localhost nagios]# vim /etc/nagios/nrpe.cfg
# add by tim on 2014-06-11
command[check_users]=/usr/local/nagios/libexec/check_users -w 8 -c 15
command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20
command[check_sda1]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda
command[check_zombie_procs]=/usr/local/nagios/libexec/check_procs -w 5 -c 10 -s Z
#command[check_total_procs]=/usr/local/nagios/libexec/check_procs -w 50 -c 80
command[check_total_procs]=/usr/local/nagios/libexec/check_procs -w 750 -c 800
command[check-host-alive]=/usr/local/nagios/libexec/check_ping -H 10.xx.xx.10 -w 3000.0,80% -c 5000.0,100% -p 5
allowed_hosts = 127.0.0.1,10.xx.xxx.xx1

check下命令是否生效:

[root@webserver nrpe-2.15]# /usr/local/nagios/libexec/check_users -w 8 -c 15
USERS OK - 2 users currently logged in |users=2;8;15;0
[root@webserver nrpe-2.15]#

看到已经USERS OK -….命令已经生效。

1.3 启动nrpe报错例如以下:

[root@webserver ~]# service nrpe restart
Shutting down nrpe: [失败]
Starting nrpe: /usr/sbin/nrpe: error while loading shared libraries: libssl.so.6: cannot open shared object file: No such file or directory
[失败]
[root@webserver ~]#
[root@db-m2-slave-1 nagios_client]# service nrpe start
Starting nrpe: /usr/sbin/nrpe: error while loading shared libraries: libssl.so.6: cannot open shared object file: No such file or directory
[失败]
[root@db-m2-slave-1 nagios_client]#

建立软连接

[root@db-m2-slave-1 nagios_client]# ln -s /usr/lib64/libssl.so /usr/lib64/libssl.so.6

(假设没有libssl.so,就採用别的libssl.so.10来做软连接,ln -s /usr/lib64/libssl.so.10 /usr/lib64/libssl.so.6)

[root@db-m2-slave-1 nagios_client]#

再又一次启动例如以下:

[root@webserver nagios_client]# service nrpe start
Starting nrpe: /usr/sbin/nrpe: error while loading shared libraries: libcrypto.so.6: cannot open shared object file: No such file or directory
[失败]
[root@web-10 ~]# ll /usr/lib64/libcrypto.so
lrwxrwxrwx. 1 root root 18 10月 13 2013 /usr/lib64/libcrypto.so -> libcrypto.so.1.0.0
[root@webserver nagios_client]#

再建软链接:

[root@webserver nagios_client]# ln -s /usr/lib64/libcrypto.so /usr/lib64/libcrypto.so.6
(或者假设没有libcrypto.so,就採用libcrypto.so.10做软连接。 ln -s /usr/lib64/libcrypto.so.10 /usr/lib64/libcrypto.so.6)
[root@webserver nagios_client]# service nrpe start
Starting nrpe: [确定]
[root@webserver nagios_client]#

1.4 检測下nrpe是否正常执行:

去nagios服务器端check下

[root@cache-2 ~]#  /usr/local/nagios/libexec/check_nrpe -H 10.xx.xx.10
NRPE v2.12
[root@cache-2 ~]#

看到返回NRPE v2.15表示已经连接成功。

1.5 在web应用下加入检測jsp文件

(1) 建立測试文件

vim ./webapps/nagios_test_0611/nagios_test_0611.jsp
<%@ page language="java" contentType="text/html; charset=gb2312"
pageEncoding="gb2312"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>nagios test here</title>
</head>
<body>
<center>Now time is: <%=new java.util.Date()%></center>
</body>
</html>

(2) 去check下check_http命令

[root@webserver~]# /usr/local/nagios/libexec/check_http -I 10.xx.xx.10 -p 8300 -u /nagios_test_0611/nagios_test_0611.jsp -e 200
HTTP CRITICAL - Invalid HTTP response received from host on port 8300: HTTP/1.1 404 Not Found

须要重新启动一下tomcat,使新加入的jsp生效能打开,执行例如以下stop start命令:

/usr/local/app/apache-tomcat-6.0.37_8300/bin/shutdown.sh

/usr/local/app/apache-tomcat-6.0.37_8300/bin/startup.sh

再执行check_http命令

[root@webserver~]# /usr/local/nagios/libexec/check_http -I 10.xx.xx.10 -p 8300 -u /nagios_test_0611/nagios_test_0611.jsp -e 200
HTTP OK: Status line output matched "200" - 571 bytes in 0.882 second response time |time=0.882479s;;;0.000000 size=571B;;;0
[root@ webserver ~]#

1.6查看NRPE的监控命令

[root@webserver nrpe-2.15]#  cat /etc/nagios/nrpe.cfg |grep -v "^#"|grep -v "^$"
log_facility=daemon
pid_file=/var/run/nrpe.pid
server_port=5666
nrpe_user=nagios
nrpe_group=nagios dont_blame_nrpe=0
debug=0
command_timeout=60
connection_timeout=300
command[check_users]=/usr/local/nagios/libexec/check_users -w 8 -c 15
command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20
command[check_sda1]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda
command[check_zombie_procs]=/usr/local/nagios/libexec/check_procs -w 5 -c 10 -s Z
command[check_total_procs]=/usr/local/nagios/libexec/check_procs -w 750 -c 800
command[check-host-alive]=/usr/local/nagios/libexec/check_ping -H 10.xx.xx.10 -w 3000.0,80% -c 5000.0,100% -p 5
allowed_hosts=127.0.0.1,10.xx.xxx.xx1
[root@webserver nrpe-2.15]#

2。去nagios服务器端加入host等监控信息。

2.1 在hosts.cfg里面加入主机信息

define host{
use linux-server
host_name webserver
alias webserver
address 10.xx.xx.10
check_command check-host-alive
max_check_attempts 5
check_period 24x7
contact_groups ops
notification_interval 60
notification_period 24x7
notification_options d,u,r
}


2.2 在service.cfg里面加入web机器监控的命令信息

# No.007 webserver
# service definition
define service{
host_name webserver
service_description check_load
check_command check_nrpe!check_load
max_check_attempts 5
normal_check_interval 3
retry_check_interval 2
check_period 24x7
notification_interval 10
notification_period 24x7
notification_options w,u,c,r
contact_groups opsweb
} define service{
host_name webserver
service_description check-host-alive
check_command check-host-alive
max_check_attempts 5
normal_check_interval 3
retry_check_interval 2
check_period 24x7
notification_interval 10
notification_period 24x7
notification_options w,u,c,r
contact_groups opsweb
} define service{
host_name webserver
service_description Check Disk sda1
check_command check_nrpe!check_sda1
max_check_attempts 5
normal_check_interval 3
retry_check_interval 2
check_period 24x7
notification_interval 10
notification_period 24x7
notification_options w,u,c,r
contact_groups opsweb
} define service{
host_name webserver
service_description Total Processes
check_command check_nrpe!check_total_procs
max_check_attempts 5
normal_check_interval 3
retry_check_interval 2
check_period 24x7
notification_interval 10
notification_period 24x7
notification_options w,u,c,r
contact_groups opsweb
} define service{
host_name webserver
service_description Current Users
check_command check_nrpe!check_users
max_check_attempts 5
normal_check_interval 3
retry_check_interval 2
check_period 24x7
notification_interval 10
notification_period 24x7
notification_options w,u,c,r
contact_groups opsweb
} define service{
host_name webserver
service_description Check Zombie Procs
check_command check_nrpe!check_zombie_procs
max_check_attempts 5
normal_check_interval 3
retry_check_interval 2
check_period 24x7
notification_interval 10
notification_period 24x7
notification_options w,u,c,r
contact_groups opsweb
} define service{
host_name webserver
service_description Check Tomcat 9300 Status
check_command check_nrpe!check_tomcat_9300_status
max_check_attempts 5
normal_check_interval 3
retry_check_interval 2
check_period 24x7
notification_interval 10
notification_period 24x7
notification_options w,u,c,r
contact_groups opsweb
}


2.3 在vim contacts.cfg加入新的opsweb邮件组信息

define contactgroup{
contactgroup_name opsweb
alias pl ops team
members tim,mch,nagiosadmin
}

2.4 加入新的监控tomcat的命令,check_tomcat_9300_status

这里不採用check_tcp!8080port的方式。是由于在实际中tomcat服务假死之后。jsp的网页都是打不开的,可是这个监控port8080都是正常的。不会报警出来。所以採用check_http的方式。新建立一个通用的/nagios_test_0611/nagios_test_0611.jsp文件。来检測这个jsp的訪问情况。例如以下所看到的:

vim commands.cfg
# add by tim on 20140611
define command{
command_name check_tomcat_9300_status
command_line $USER1$/check_http -I $HOSTADDRESS$ -p $PORT$ -u $URL$ -e $N200$ -w $Warning$ -c$Cri$
}

Jsp文件内容例如以下:

[root@webserver webapps]# vim . /nagios_test_0611/nagios_test_0611.jsp
<%@ page language="java" contentType="text/html; charset=gb2312"
pageEncoding="gb2312"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>nagios test here</title>
</head>
<body>
<center>Now time is: <%=new java.util.Date()%></center>
</body>
</html>

2.5 在被监控客户端的nrpe.cfg配置文件中面加入tomcatport配置信息:

command[check_tomcat_9300_status]=/usr/local/nagios/libexec/check_http -I 10.xx.xx.10 -p 9444 -u /nagios_test_0611/nagios_test_0611.jsp -e 200 -w 5 -c 10
command[check_tomcat_8300_status]=/usr/local/nagios/libexec/check_http -I 10.xx.xx.10 -p 8300 -u /nagios_test_0611/nagios_test_0611.jsp -e 200 -w 5 -c 10

2.6 測试报错

[root@cache-2 objects]# /usr/local/nagios/libexec/check_nrpe -H 10.xx.xx.10  -c check_load
NRPE: Unable to read output
[root@cache-2 objects]#

已经加入了tomcat930port,如今再加入一个tomcat8300port

去服务器端shell命令行里面check下

/usr/local/nagios/libexec/check_nrpe -H 192.168.15.178 -c check_mysql_myisam_lock
[root@cache-2 etc]# /usr/local/nagios/libexec/check_nrpe -H 10.xx.xx.10 -c check_load
NRPE: Unable to read output
[root@cache-2 etc]#

相同报错,那么可能就是nagios被监控端的问题。

终于检查是nrpe.cfg里面路径有误,源代码安装默认路径是:/usr/local/nagios/libexec/check_http,rpm安装默认路径是:/usr/lib/nagios/plugins/。这里是rpm安装。所以nrpe.cfg配置文件中面用后面rpm的路径/usr/lib/nagios/plugins/,替换下service nrpe restart之后,问题解决。例如以下图所看到的:

3 tomcat多port监控报警

已经加入了tomcat930port。如今再加入一个tomcat8300port

3.1 客户端的nrpe.cfg里面加入配置

[root@webserver root]# vim /etc/nagios/nrpe.cfg
command[check_tomcat_8300_status]=/usr/lib/nagios/plugins/check_http -I 10.xx.xx.10 -p 8300 -u /xx_xx_xx/index.html -e 200 -w 5 -c 10

3.2 nagios服务器端
加入command命令

[root@cache-2 etc]# vim ./objects/commands.cfg
define command{
command_name check_tomcat_8300_status
command_line $USER1$/check_http -I $HOSTADDRESS$ -p $PORT$ -u $URL$ -e $N200$ -w $Warning$ -c$Cri$
}

加入service服务

define service{
host_name webserver
service_description Tomcat_8300_Status
check_command check_nrpe!check_tomcat_8300_status
max_check_attempts 5
normal_check_interval 3
retry_check_interval 2
check_period 24x7
notification_interval 10
notification_period 24x7
notification_options w,u,c,r
contact_groups opsweb
}

3.3 在nagios服务器上check下新加入的命令是否生效

[root@cache-2 etc]# /usr/local/nagios/libexec/check_nrpe -H 10.xx.xx.10  -c check_tomcat_8300_status
HTTP OK HTTP/1.1 200 OK - 611 bytes in 0.003 seconds |time=0.003152s;5.000000;10.000000;0.000000 size=611B;;;0
[root@cache-2 etc]#

看到命令已经生效。

3.4 重新启动nagios服务器,查看结果

[root@cache-2 etc]# service nagios reload
Running configuration check...
Reloading nagios configuration...
done
[root@cache-2 etc]#

重新启动后,过3分钟,新的tomcat8300已经监控起来了,例如以下图所看到的:

为了验证tomcat的监控效果。在web服务器客户端,停掉tomcat的9300port,一会就会收到报警email,也会在nagios页面看到红色报警提示。例如以下所看到的:

这标示2个nagios选项监控的是2个port,一个9300。一个8300;

4  加入新port8200检測-e 200报错问题解决

[root@webserver OCC_MANAGER_Web]#  /usr/lib/nagios/plugins/check_http -I 10.xx.xx.10 -p 8200 -u /OCC_REPORT_Web/index.html -e 200 -w 5 -c 10
HTTP CRITICAL - Invalid HTTP response received from host on port 8200
[root@webserver OCC_MANAGER_Web]#


4.1 直接訪问tomcat服务以及indexhtml

http://10.xx.xx.10:8200/OCC_REPORT_Web/index.html是能够訪问的,可是会跳转到

http://www.xxxx.xx/OCC_SSO_Web/login.htm?redirect=http%3A%2F%2F10.xx.xx.10%3A8200%2FOCC_REPORT_Web%2Findex.html的页面。证明web应用都是正常的,仅仅是已经被跳转到别的域名页面而已。

4.2 –v具体分析

这个时候tomcat服务器是正常running的。并且web应用也是正常返回的,仅仅是执行 看到这里大概意思是从8200port获取无效的HTTP响应。由于这条命令最重要的是监控/OCC_REPORT_Web/index.html获取http信息并通过-e 200来推断http正常响应的OK状态,所以去掉报警的-w 5 –c 10參数。去掉-e 200的字符比对信息。看下check的返回信息。

[root@webserver OCC_MANAGER_Web]# /usr/lib/nagios/plugins/check_http -I 10.xx.xx.10 -p 8200 -u /OCC_REPORT_Web/index.html
HTTP OK - HTTP/1.1 302 Found - 0.003 second response time |time=0.003367s;;;0.000000 size=317B;;;0

看到返回的是HTTP/1.1 302 Found 查看Tomcat错误代码知道是产生了新的URL信息

……

301  Moved Permanently  客户请求的文档在其它地方。新的URL在Location头中给出,浏览器应该自己主动地訪问新的URL。

302  Found  相似于301。但新的URL应该被视为暂时性的替代。而不是永久性的。注意,在HTTP1.0中相应的状态信息是“Moved Temporatily”。

……

最后加入-v參数调试看具体的获取信息:

[root@webserver OCC_MANAGER_Web]# /usr/lib/nagios/plugins/check_http -H www.xxxx.com -I 10.xx.xx.10 -p 8200 -u /OCC_REPORT_Web/index.html -v
GET /OCC_REPORT_Web/index.html HTTP/1.0
User-Agent: check_http/v1861 (nagios-plugins 1.4.11)
Connection: close
Host: www.xxxx.com http://10.xx.xx.10:8200/OCC_REPORT_Web/index.html is 323 characters
STATUS: HTTP/1.1 302 Found
**** HEADER ****
Server: Apache-Coyote/1.1
Set-Cookie: ploccSessionId=45CD9C9921A5B89C59FCB2E34FE52734; Path=/
Location: http://www.xxx.com/OCC_SSO_Web/login.htm? redirect=http%3A%2F%2Fwww.xxx.com%2FOCC_REPORT_Web%2Findex.html
Content-Length: 0
Date: Thu, 12 Jun 2014 02:52:45 GMT
Connection: close
**** CONTENT ****
HTTP OK - HTTP/1.1 302 Found - 0.003 second response time |time=0.003268s;;;0.000000 size=323B;;;0

看到页面重定向到域名系统,tomcat服务器是正常执行的。所以302 Found也能够表示tomca服务器正常运转无误,由于架构是用的lvs负载均衡。所以假设动用跳转后的公用域名来推断的话,就不能确定是否是这个主机的tomcat,由于公用域名每次仅仅相应当中一个tomcat服务,由于这里是监控具体的一台web服务器的tomcat,所以去监控302port也是一个不错的办法,这里能够去改动客户端nrpe.cfg里面的8200port的监控命令。改成监控tomcat的302状态值:

Vim /etc/nagios/nrpe.cfg
/usr/lib/nagios/plugins/check_http -I 10.xx.xx.10 -p 8200 -u /OCC_REPORT_Web/index.html -e 302 -w 3 -c 10

报错记录(一): NRPE: Unable to read output

[1402557345] SERVICE ALERT: webserver;Tomcat_6100_OCC_SSO_Service_Status;UNKNOWN;SOFT;3;NRPE: Unable to read output

解决:通常是nrpe路径不正确。

报错记录(二):CHECK_NRPE: Error - Could not complete SSL handshake.

[root@cache-2 etc]# /usr/local/nagios/libexec/check_http -I 10.xx.3.xx -p 8100 -u /tradeAdmin/index.html

HTTP OK: HTTP/1.1 302 Found - 319 bytes in 0.064 second response time |time=0.064033s;;;0.000000 size=319B;;;0

[root@cache-2 etc]#

[root@cache-2 etc]# /usr/local/nagios/libexec/check_nrpe -H 10.xx.3.xx -c check_load

CHECK_NRPE: Error - Could not complete SSL handshake.

[root@cache-2 etc]#

解决:/etc/nagios/nrpe.cfg里面没有加入nagios服务器主机ip地址

Vim /etc/nagios/nrpe.cfg

allowed_hosts=127.0.0.1,10.xx.xxx.xx1

之后重新启动nrpe,service nrpe restart;再去nagios服务器上验证OK:

[root@cache-2 etc]# /usr/local/nagios/libexec/check_nrpe -H 10.xxx.3.xx -c check_load
OK - load average: 0.43, 0.17, 0.06|load1=0.430;15.000;30.000;0; load5=0.170;10.000;25.000;0; load15=0.060;5.000;20.000;0;
[root@cache-2 etc]#

版权声明:本文博主原创文章。博客,未经同意不得转载。

Nagios经check_http监视web申请书server多个tomcat维修的更多相关文章

  1. NAGIOS(网络监视工具)

    Nagios是一款开源的免费网络监视工具,能有效监控Windows.Linux和Unix的主机状态,交换机,路由器等网络设备,打印机等.在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员 ...

  2. virtualbox搭建ubuntu server nginx+mysql+tomcat web服务器1 (未完待续)

    virtualbox搭建ubuntu server nginx+mysql+tomcat web服务器1 (未完待续) 第一次接触到 linux,不知道linux的确很强大,然后用virtualbox ...

  3. web cache server方案比较:varnish、squid、nginx

    linux运维中,web cache server方案的部署是一个很重要的环节,选择也有很多种比如:varnish.squid.nginx.下面就对当下常用的这几个web cache server做一 ...

  4. Office Web Apps Server 概述

    Office Web Apps Server 是新的 Office 服务器产品,它提供 Word.PowerPoint.Excel 和 OneNote 的基于浏览器的版本.单个 Office Web ...

  5. [转载]部署Office Web Apps Server并配置其与SharePoint 2013的集成

    Office Web Apps Server 是新的 Office 服务器产品,它提供 Word.PowerPoint.Excel 和 OneNote 的基于浏览器的版本.单个 Office Web ...

  6. 部署Office Web Apps Server并配置其与SharePoint 2013的集成

    部署Office Web Apps Server并配置其与SharePoint 2013的集成   Office Web Apps Server 是新的 Office 服务器产品,它提供 Word.P ...

  7. office web apps server 问题和解决办法

    New-OfficeWebAppsFarm –InternalURL "http://owa.zjkhlib.com" –AllowHttp –EditingEnabled 错误1 ...

  8. Office Web Apps Server

    Office Web Apps Server Office Web Apps Server 是一款 Office 服务器产品,可提供针对 Office 文件的基于浏览器的文件查看和编辑服务.Offic ...

  9. office web apps server安装部署

    操作系统:windows 2012 软件下载地址: 链接:https://pan.baidu.com/s/1c3WWFs8 密码:4dcy NDP452-KB2901954-Web.exe(.Net ...

随机推荐

  1. android 多媒体数据库详解

    主要分为几节: 1. Android的媒体文件内部是如何存储的? 2. Andoid的媒体文件如何获取? 3. 在使用媒体文件的一些小技巧. 1. Android的多媒体如何存储的? Android的 ...

  2. 源代码编译lamp环境

    没有办法用 rpm查询一个源代码包是否安装 因为 并不是用rpm安装的 可以先吧 selinux 给禁用掉  iptables -F 把防火墙规则全部删除 首先确保 gcc  gcc-c++   ma ...

  3. 屏幕对象的F1/F4输入帮助功能

    1.HELP-REQUST[FOR{LOW|HIGH}]字段的F1帮助 当选择SAP屏幕功能的制定字段按F1键时可以调关注用自定义的程序或者系统帮助文件,该功能通常称为F1帮助. TYPES:syst ...

  4. VC实现文件拖拽OnDropFiles

    文章转自http://blog.csdn.net/zamaolangzi/article/details/5645284 使用过QQ的人都知道,只要把文件拖拽到消息框中就可以传送文件了.那么这种功能是 ...

  5. Lucene.Net 2.3.1开发介绍 —— 二、分词(三)

    原文:Lucene.Net 2.3.1开发介绍 -- 二.分词(三) 1.3 分词器结构 1.3.1 分词器整体结构 从1.2节的分析,终于做到了管中窥豹,现在在Lucene.Net项目中添加一个类关 ...

  6. [计算机基础]URI与URL

    URI : uniform resource identifier统一资源标示符用于指定Web资源的字符串,它定义了Web资源中的各个不同的部分.ex:http://example.org/absol ...

  7. STM8S 串口应用 UART2 STM8S105

    //少说话.多做事,下面是我验证过没有问题的串口发送接受数据 //使用MCU stm8s105c6 UART2 //初始化时调用: GPIO_DeInit(GPIOD); /* Configure P ...

  8. 修改Hosts文件

    Hosts文件是一个用于存储计算机网络中节点信息的文件,它可以将主机名映射到相应的IP地址,实现DNS的功能,它可以由计算机的用户进行控制. Hosts文件的存储位置在不同的操作系统中并不相同,甚至不 ...

  9. 小米手机usb共享网络mac

    今天.我想去FQgoogle,mac在墙上,不便于使用.甚至只是用Android手机wifi,打开墙软件.然后usb分享到mac.然后mac互联网. 在谈到一些复杂.其实,关键一,小米手机usb共享, ...

  10. [C#基础] 继承

    虚方法和覆写方法 虚方法可以使基类的引用访问"升至"派生类中 可以使用基类引用调用派生类的方法,只需满足下面的条件 派生类的方法和基类的方法有相同的签名和返回类型 基类的方法使用v ...