
下载安装ntfs-3g 下载驱动让linux挂载windows磁盘 https://tuxera.com/opensource/ntfs-3g_ntfsprogs-2017.3.23.tgz 安装 tar -xvf ntfs-3g_ntfsprogs-2017.3.23.tgz cd ntfs-3g_ntfsprogs-2017.3.23 ./configure make make install 下载安装chntpw 下载chntpw https://pkgs.org/download/chntpw wget http://li.nux.ro/download/nux/dextop/el7/x86_64//chntpw-0.99.6-22.110511.el7.nux.x86_64.rpm yum -y install ./hntpw-0.99.6-22.110511.el7.nux.x86_64.rpm 挂载windows磁盘 挂载windows的系统盘 默认第二个分区才是C盘 mkdir /win mount -t ntfs-3g /dev/xvdb2 /win 备份SAM文件 cd /win/Windows/System32/config/ cp SAM{,.bak} 清除Windows密码 chntpw SAM User Edit Menu: 1 - Clear (blank) user password 2 - Edit (set new) user password (careful with this on XP or Vista) 3 - Promote user (make user an administrator) (4 - Unlock and enable user account) [seems unlocked already] q - Quit editing user, back to user select Select: [q] > 1 # 1 清除密码 Password cleared! Hives that have changed: # Name 0 <SAM> Write hive files? (y/n) [n] : y # y保存 0 <SAM> - OK 将windows系统盘重新挂载回windows中即可
负载均衡实例 http{ upstream myserver { server 10.10.10.1 weight=3 max_fails=3 fail_timeout=20s; server 10.10.10.2 weight=3 max_fails=3 fail_timeout=20s; #定义后端服务器,权重3,失败3次后暂停服务20s } server { listen 80; server_name www.domain.com; index index.html; root /date/web location / { # 配置健康检查 proxy_pass http://myserver; proxy_next_upstream http_500 http_502 error timeout invalid_header; # 当出现以上状态码时,转发给下一台服务器 } } } 健康检查 指定在何种情况下一个失败的请求应该被发送到下一台后端服务器: error # 和后端服务器建立连接时,或者向后端服务器发送请求时,或者从后端服务器接收响应头时,出现错误 timeout # 和后端服务器建立连接时,或者向后端服务器发送请求时,或者从后端服务器接收响应头时,出现超时 invalid_header # 后端服务器返回空响应或者非法响应头 http_500 # 后端服务器返回的响应状态码为500 http_502 # 后端服务器返回的响应状态码为502 http_503 # 后端服务器返回的响应状态码为503 http_504 # 后端服务器返回的响应状态码为504 http_404 # 后端服务器返回的响应状态码为404 off # 停止将请求发送给下一台后端服务器 需要注意一点的是,只有在没有向客户端发送任何数据以前,将请求转给下一台后端服务器才是可行的。也就是说,如果在传输响应到客户端时出现错误或者超时,这类错误是不可能恢复的。
tomcat默认情况下不带www的域名是不会跳转到带www的域名的,而且也无法像apache那样通过配置.htaccess来实现。如果想要把不带“www'的域名重定向到带”www"域名下,又不想写代码,可以使用UrlRewriteFilter来实现。 一、前期准备 1.安装JDK yum install java-1.8.0-openjdk-devel vim /etc/profile.d/jdk.sh export JAVA_HOME=/usr/java/latest # 首先定义JAVA_HOME的环境变量 export PATH=$JAVA_HOME/bin:$PATH # 然后追加 . /etc/profile.d/jdk.sh 2.安装tomcat yum install tomcat tomcat-admin-webapps.noarch \ tomcat-webapps.noarch tomcat-docs-webapp.noarch 二、urlRewriteFilter实现重定向 urlRewriteFilter是一个用于改写URL的Web过滤器,类似于Apache的mod_rewrite。适用于任何Web应用服务器(如Tomcat,jboss,jetty,Resin,Orion等)。其典型应用就把动态URL静态化,便于搜索引擎爬虫抓取你的动态网页。 1.下载UrlRewriteFilter UrlRewriteFilter的官方网站http://tuckey.org/urlrewrite/ jar包要放在应用的WEB-INF/lib目录中 yum install wget -y cd /usr/share/tomcat/webapps/ROOT/WEB-INF/lib/ wget http://central.maven.org/maven2/org/tuckey/urlrewritefilter/4.0.3/urlrewritefilter-4.0.3.jar 2.配置过滤规则 在应用的./WEB-INF/目录下创建一个名为urlrewrite.xml规则文件,名称千万不能出错!! vim ./WEB-INF/urlrewrite.xml <urlrewrite> <rule> <name>seo redirect</name> <condition name="host" operator="notequal">^www.example.com</condition> <condition name="host" operator="notequal">^localhost</condition> <from>^/.*</from> <to type="redirect" last="true">http://www.example.com/$1</to> </rule> </urlrewrite> 3.配置tomcat 在应用的`./WEB-INF/中的web.xml中添加 vim ./WEB-INF/web.xml <web-app> # 要在web-app中,在其它servlet mapping前加入 ...... <filter> <filter-name>UrlRewriteFilter</filter-name> <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class> </filter> <filter-mapping> <filter-name>UrlRewriteFilter</filter-name> <url-pattern>/*</url-pattern> <dispatcher>REQUEST</dispatcher> <dispatcher>FORWARD</dispatcher> </filter-mapping> </web-app> 参考http://tuckey.org/urlrewrite/
简述 在公司内部搭建内部视频学习网站,经过对比选择了wordpress进行站点搭建。但是在上传视频遭遇到了各种问题,特将此处理过程进行记录。 原因排查 1.上传一个十几兆mp4的文件上传进度到达百分之百,会媒体提示http错误 2.刚开始怀疑是PHP、Nginx的上传大小限制了。但是查看PHP、Nginx配置均配置了1000M vim /etc/nginx/conf.d/default.conf location / { root /data/web; index index.php index.html index.htm; client_max_body_size 1000M; } vim /etc/php.ini upload_max_filesize = 1000M post_max_size = 1000M max_execution_time = 300 3.查看Nginx erro日志 tail /var/log/nginx/error.log 2018/02/14 09:32:07 [error] 87522#87522: *1 client intended to send too large body: 35016434 bytes, client: 36.111.88.33, server: localhost, request: "POST /wp-admin/async-upload.php HTTP/1.1", host: "117.66.240.116:81", referrer: "http://117.66.240.116:81/wp-admin/media-new.php" 只有下面这一行是最主要的保存信息。以下错误就是body限制大小的问题 client intended to send too large body 4.将限制大小的设定在http中后上串资源就不会在有限制 vim /etc/nginx/nginx.conf http{ client_max_body_size 1000M; keepalive_timeout 300; }
Beats 平台集合了多种单一用途数据采集器。这些采集器安装后可用作轻量型代理,从成百上千或成千上万台机器向 Logstash 或 Elasticsearch 发送数据。 一、架构图 此次试验基于前几篇文章,需要先基于前几篇文章搭建基础环境。 二、安装Filebeat 下载并安装Filebeat wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-6.0.1-x86_64.rpm yum install ./filebeat-6.0.1-x86_64.rpm 修改Filebeat配置文件 vim /etc/filebeat/filebeat.yml # 主配置文件 \- type: log # 文档类型 paths: \- /var/log/httpd/access.log* # 从哪里读入数据 # 输出在elasticsearch与logstash二选一即可 output.elasticsearch: #将数据输出到Elasticsearch。与下面的logstash二者选一 hosts: ["localhost:9200"] output.logstash: # 将数据传送到logstash,要配置logstash使用beats接收 hosts: ["172.18.68.14:5044"] 启动Filebeat systemctl start filebeat 三、配置Filebeat 配置Logstash接收来自Filebeat采集的数据 vim /etc/logstash/conf.d/test.conf input { beats { port => 5044 # 监听5044用于接收Filebeat传来数据 } } filter { grok { match => { "message" => "%{COMBINEDAPACHELOG}" # 匹配HTTP的日志 } remove_field => "message" # 不显示原信息,仅显示匹配后 } } output { elasticsearch { hosts => ["http://172.18.68.11:9200","http://172.18.68.12:9200","http://172.18.68.13:9200"] # 集群IP index => "logstash-%{+YYYY.MM.dd}" action => "index" document_type => "apache_logs" } } 启动Logstash /usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/test.conf 四、模拟日志访问 通过curl命令来模拟客户访问,生成访问日志 curl 127.0.0.1 curl 172.18.68.51 curl 172.18.68.52 curl 172.18.68.53 五、验证信息 清除之前实验的旧数据(删除时要在对话框中输入删除),然后可以看到filebeat采集数据经过Logtash过滤再送给Elasticsearch的数据。 扩展 随着ELK日志系统逐渐升级,现在已经能基于Filebeat采集各节点日志,Logstash过滤、修剪数据,最后到ELasticsearch中进行索引构建、分词、构建搜索引擎。现在可以基于Elasticsearch的Head查看在浏览器中查看,但是Head仅仅能简单查看并不能有效进行数据分析、有好展示。要想进行数据分析、有好展示那就需要用到Kibana,Kibana依然放在下一篇文章中讲解,这里先放上架构图。