背景:微信浏览器能访问,出现,请在微信客户端打开链接。
user agent switcher for firefox:
https://addons.mozilla.org/en-US/firefox/addon/user-agent-switcher/
FF越来越不行了,下载都下载不下来~
user agent switcher1.0.34中文版for chrome:
http://www.pc6.com/soft/FireFox_133175.html
http://bbs.kafan.cn/thread-1712463-1-1.html
Chrome的在扩展里拖动安装后,在右上出现一个戴眼镜的人,
使用方法:
输入粘贴的URL,微信浏览器能访问不让进时,点右边那个戴眼镜的人换成IOS或Android的,也就是修改头的chrome重新发起了http头,就Ok了。
还是不行啊,那就在右边那个戴眼镜的头像上给右键->选项->自己模拟下能过得去的http头。
最简单办法:
右击桌面上的Chrome浏览器快捷图标,在弹出的右键菜单中选择“属性”,打开相应的对话框,在“目标”文本框的字符后面添加以下语句:“–user-agent=”Android””或“–user-agent=”iPhone””,需注意在“chrome.exe”与“–user”之间有一个空格,然后确定双击打开就成手机版了。如需恢复电脑版,改回即可。
什么,还不行?找到原因是开启了网页授权用户基本信息,是不是用户需要微信登录标识,这得要模拟cookie啥的了,和浏览器头无关了。
———————————————————————————————————————————————————————————————
火狐浏览器模拟微信浏览器内核教程 :
http://blog.csdn.net/qwangwei1231/article/details/40980281
首先,下载火狐浏览器的User Agent Switcher 插件,下载地址:https://addons.mozilla.org/zh-CN/firefox/addon/user-agent-switcher/ 插件如图:
笔者用自己的GT-I9300获取的agent为:Mozilla/5.0 (Linux; U; Android 4.1.2; zh-cn; GT-I9300 Build/JZO54K) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30 MicroMessenger/5.2.380
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
http://archives.guao.hk/posts/chrome-extension-chromeleon-user-agent-spoofer.html
现在很流行微信网页小游戏,用html5制作的小游戏移过来,可以放到微信浏览器中打开,关键是可以做成微信分享朋友圈的形式,大大提高游戏的传播,增强好友的游戏互动。
微信浏览器中打开网页游戏效果还不错,对手机要求不高,而且微信网页游戏不用考虑手机兼容性问题,采用html5,而且大部分手机浏览器,特别是微信浏览器对html5的支持很高。
怎么把别人的微信网页游戏移植到自己的网站上并分享给好友呢?
许多网站的微信网页游戏都设置了判断浏览器,只有使用微信浏览器打开才能访问,这使我们在电脑上打开网址找不到源代码。方法很简单,我们可以伪造微信浏览器HTTP_USER_AGENT,从而在pc上可以访问,这样就可以获取你想要的css,js,html等资源,移植到自己的网站上。
如何伪造微信浏览器HTTP_USER_AGENT
使用谷歌浏览器非常方便伪造微信浏览器HTTP_USER_AGENT,打开你需要伪造HTTP_USER_AGENT的网页,按F12,进入开发者模式,下面默认是显示css调试的工具,你找到下面一排,有个图片所示的地方:
用谷歌浏览器如何伪造微信浏览器HTTP_USER_AGENT
用谷歌浏览器伪造微信浏览器HTTP_USER_AGENT
这里有一个模拟器,既可以设置模拟很多型号的手机设备,也可以伪造你想要的HTTP_USER_AGENT。选择USER_AGENT,选other,微信的HTTP_USER_AGENT是:
在iPhone下,返回
Mozilla/5.0 (iPhone; CPU iPhone OS 5_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Mobile/9B176 MicroMessenger/4.3.2
在Android下,返回
Mozilla/5.0 (Linux; U; Android 2.3.6; zh-cn; GT-S5660 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 MicroMessenger/4.5.255
经过这样的设置之后,你刷新就可以访问之前不能访问的网页了,现在你就是伪装成微信浏览器访问,同时你使用谷歌浏览器查看源代码,就可以找到资源的路径了。
user agent switcher for firefox:
https://addons.mozilla.org/en-US/firefox/addon/user-agent-switcher/
FF越来越不行了,下载都下载不下来~
user agent switcher1.0.34中文版for chrome:
http://www.pc6.com/soft/FireFox_133175.html
http://bbs.kafan.cn/thread-1712463-1-1.html
Chrome的在扩展里拖动安装后,在右上出现一个戴眼镜的人,
使用方法:
输入粘贴的URL,微信浏览器能访问不让进时,点右边那个戴眼镜的人换成IOS或Android的,也就是修改头的chrome重新发起了http头,就Ok了。
还是不行啊,那就在右边那个戴眼镜的头像上给右键->选项->自己模拟下能过得去的http头。
最简单办法:
右击桌面上的Chrome浏览器快捷图标,在弹出的右键菜单中选择“属性”,打开相应的对话框,在“目标”文本框的字符后面添加以下语句:“–user-agent=”Android””或“–user-agent=”iPhone””,需注意在“chrome.exe”与“–user”之间有一个空格,然后确定双击打开就成手机版了。如需恢复电脑版,改回即可。
什么,还不行?找到原因是开启了网页授权用户基本信息,是不是用户需要微信登录标识,这得要模拟cookie啥的了,和浏览器头无关了。
———————————————————————————————————————————————————————————————
火狐浏览器模拟微信浏览器内核教程 :
http://blog.csdn.net/qwangwei1231/article/details/40980281
首先,下载火狐浏览器的User Agent Switcher 插件,下载地址:https://addons.mozilla.org/zh-CN/firefox/addon/user-agent-switcher/ 插件如图:
笔者用自己的GT-I9300获取的agent为:Mozilla/5.0 (Linux; U; Android 4.1.2; zh-cn; GT-I9300 Build/JZO54K) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30 MicroMessenger/5.2.380
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
http://archives.guao.hk/posts/chrome-extension-chromeleon-user-agent-spoofer.html
现在很流行微信网页小游戏,用html5制作的小游戏移过来,可以放到微信浏览器中打开,关键是可以做成微信分享朋友圈的形式,大大提高游戏的传播,增强好友的游戏互动。
微信浏览器中打开网页游戏效果还不错,对手机要求不高,而且微信网页游戏不用考虑手机兼容性问题,采用html5,而且大部分手机浏览器,特别是微信浏览器对html5的支持很高。
怎么把别人的微信网页游戏移植到自己的网站上并分享给好友呢?
许多网站的微信网页游戏都设置了判断浏览器,只有使用微信浏览器打开才能访问,这使我们在电脑上打开网址找不到源代码。方法很简单,我们可以伪造微信浏览器HTTP_USER_AGENT,从而在pc上可以访问,这样就可以获取你想要的css,js,html等资源,移植到自己的网站上。
如何伪造微信浏览器HTTP_USER_AGENT
使用谷歌浏览器非常方便伪造微信浏览器HTTP_USER_AGENT,打开你需要伪造HTTP_USER_AGENT的网页,按F12,进入开发者模式,下面默认是显示css调试的工具,你找到下面一排,有个图片所示的地方:
用谷歌浏览器如何伪造微信浏览器HTTP_USER_AGENT
用谷歌浏览器伪造微信浏览器HTTP_USER_AGENT
这里有一个模拟器,既可以设置模拟很多型号的手机设备,也可以伪造你想要的HTTP_USER_AGENT。选择USER_AGENT,选other,微信的HTTP_USER_AGENT是:
在iPhone下,返回
Mozilla/5.0 (iPhone; CPU iPhone OS 5_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Mobile/9B176 MicroMessenger/4.3.2
在Android下,返回
Mozilla/5.0 (Linux; U; Android 2.3.6; zh-cn; GT-S5660 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 MicroMessenger/4.5.255
经过这样的设置之后,你刷新就可以访问之前不能访问的网页了,现在你就是伪装成微信浏览器访问,同时你使用谷歌浏览器查看源代码,就可以找到资源的路径了。
背景:单位一90后MM刷公交直接用手机,刚开始觉得新奇,简单了解了下NFC,当时是Ip4s,没有NFS,后来在军师博物馆地铁被小偷偷了,从大姐那儿拿了一个魅族MX4 Pro,发现有NFS,近来刷公交卡倍感麻烦,经常手机不离手,一想用上这个手机的NFC功能支付可好,于是实践了一把。
1.打电话给10086,问清办理NFC的SIM卡是不要钱的,查到公主坟那个移动营业厅可办理。
2.第二天上班时路过,就去办理,一看,一大队老头老太太在那儿排队办理上网,我晕倒。
3.拿到号就办理,问说是要10块钱,我说不是说不要钱的嘛,免费办理,他问了下领导:
1)卡不要钱,但开了发票:里写的经营项目是NFC补换卡材料费(当时我再打10086人工没有人接听,我看卡里有钱也就算了不打10086)。
2)里面充了10块钱。(经核对确实在10块钱)
3)于是坐了一把103公交,打开nfc功能刷卡时发现没反映,于是,我就回来上网查了下,原因是:
在手机->设置->网络->NFC->安全模块位置->SIM卡中的安全模块(勾选),晚上下班回家试试,估计就Ok了。
其实啊,这个功能挺好,但是手机丢了可能就坏了,卡钱估计被盗刷可能,但是用的是Iphone的话(打广告了,魅族好像也有锁定),可能锁定,但是再高的水平也怕遇到NB的小偷,
不还你手机,把手机给刷机了怎么办?这块从MEIZU MX5 Pro里就没有NFC功能,这个功能可能对市场不是大众市场,同时看到移动做的手机APP软件和包,感觉也不是一个互连网的界面产品,这个功能基本上成小众功能了。
1.打电话给10086,问清办理NFC的SIM卡是不要钱的,查到公主坟那个移动营业厅可办理。
2.第二天上班时路过,就去办理,一看,一大队老头老太太在那儿排队办理上网,我晕倒。
3.拿到号就办理,问说是要10块钱,我说不是说不要钱的嘛,免费办理,他问了下领导:
1)卡不要钱,但开了发票:里写的经营项目是NFC补换卡材料费(当时我再打10086人工没有人接听,我看卡里有钱也就算了不打10086)。
2)里面充了10块钱。(经核对确实在10块钱)
3)于是坐了一把103公交,打开nfc功能刷卡时发现没反映,于是,我就回来上网查了下,原因是:
在手机->设置->网络->NFC->安全模块位置->SIM卡中的安全模块(勾选),晚上下班回家试试,估计就Ok了。
其实啊,这个功能挺好,但是手机丢了可能就坏了,卡钱估计被盗刷可能,但是用的是Iphone的话(打广告了,魅族好像也有锁定),可能锁定,但是再高的水平也怕遇到NB的小偷,
不还你手机,把手机给刷机了怎么办?这块从MEIZU MX5 Pro里就没有NFC功能,这个功能可能对市场不是大众市场,同时看到移动做的手机APP软件和包,感觉也不是一个互连网的界面产品,这个功能基本上成小众功能了。
背景:一外包项目其字段名为order,且是字符串,还order by order,这样的一个搞法,为此,这块Mysql通过sql排序是有问题的,因为里面存的是整数,这块直接修改表为整数也就Ok了。
MySQL字符串相信大家都不陌生,在MySQL字符串排序时经常会遇到一些问题,比如下面的这
今天解决了一个关于MySQL字符串排序的很奇怪的问题,在数据里面定义的是varchar类型,实际存放的是Int类型的数据,按一下查询语句进行排序:
将字段*1或者+0可以将MySQL字符串字段按数值排序
如:
select * from table where 1 order by id*1 desc;
或者
select * from table where 1 order by id+0 desc;
除了上述方法外,这里附上一种排序方法,利用find_in_set()进行无敌排序
附上Mysql函数 find_in_set() 的用法:
-------------------------------------------------------
举个例子来说:
有个文章表里面有个type字段,他存储的是文章类型,有 1头条,2推荐,3热点,4图文 .....11,12,13等等
现在有篇文章他既是 头条,又是热点,还是图文,
type中以 1,3,4的格式存储.
们我们如何用sql查找所有type中有4图文标准的文章呢??
这就要我们的find_in_set出马的时候到了.
以下为引用的内容:
select * from article where FIND_IN_SET('4',type)
FIND_IN_SET(str,strlist)
Returns a value 如果字符串 str 在由 N 个子串组成的列表 strlist 中,返回一个 1 到 N 的值。一个字符串列表是由通过字符 “,” 分隔的多个子串组成。如果第一个参数是一个常数字符串,并且第二个参数是一个 SET 列类型,FIND_IN_SET() 函数将被优化为使用位运算!如果 str 在不 strlist 中或者如果 strlist 是一个空串,返回值为 0。如果任何一个参数为 NULL,返回值也是 NULL。如果第一个参数包含一个 “,”,这个函数将完全不能工作:
mysql> SELECT FIND_IN_SET('b','a,b,c,d');
-> 2
for example:
$sql = "select p.*, find_in_set(p.products_id,$string_hot_pid) as rank from products p where p.products_id in ($string_hot_pid) order by rank";
大家有什么好的想法和建议可以留下宝贵的意见 以便共同进步
来自:http://www.cnblogs.com/yhyjy/archive/2012/07/25/2607818.html
http://1055592535.iteye.com/blog/1674734
MySQL字符串相信大家都不陌生,在MySQL字符串排序时经常会遇到一些问题,比如下面的这
今天解决了一个关于MySQL字符串排序的很奇怪的问题,在数据里面定义的是varchar类型,实际存放的是Int类型的数据,按一下查询语句进行排序:
将字段*1或者+0可以将MySQL字符串字段按数值排序
如:
select * from table where 1 order by id*1 desc;
或者
select * from table where 1 order by id+0 desc;
除了上述方法外,这里附上一种排序方法,利用find_in_set()进行无敌排序
附上Mysql函数 find_in_set() 的用法:
-------------------------------------------------------
举个例子来说:
有个文章表里面有个type字段,他存储的是文章类型,有 1头条,2推荐,3热点,4图文 .....11,12,13等等
现在有篇文章他既是 头条,又是热点,还是图文,
type中以 1,3,4的格式存储.
们我们如何用sql查找所有type中有4图文标准的文章呢??
这就要我们的find_in_set出马的时候到了.
以下为引用的内容:
select * from article where FIND_IN_SET('4',type)
FIND_IN_SET(str,strlist)
Returns a value 如果字符串 str 在由 N 个子串组成的列表 strlist 中,返回一个 1 到 N 的值。一个字符串列表是由通过字符 “,” 分隔的多个子串组成。如果第一个参数是一个常数字符串,并且第二个参数是一个 SET 列类型,FIND_IN_SET() 函数将被优化为使用位运算!如果 str 在不 strlist 中或者如果 strlist 是一个空串,返回值为 0。如果任何一个参数为 NULL,返回值也是 NULL。如果第一个参数包含一个 “,”,这个函数将完全不能工作:
mysql> SELECT FIND_IN_SET('b','a,b,c,d');
-> 2
for example:
$sql = "select p.*, find_in_set(p.products_id,$string_hot_pid) as rank from products p where p.products_id in ($string_hot_pid) order by rank";
大家有什么好的想法和建议可以留下宝贵的意见 以便共同进步
来自:http://www.cnblogs.com/yhyjy/archive/2012/07/25/2607818.html
http://1055592535.iteye.com/blog/1674734
[实践OK]Linux /FreeBSD踢掉终端里登录连接上的ssh用户办法。
Unix/LinuxC技术 jack 2015-10-28 09:44
背景:可能电脑是办工环境,你现在在外面用手机连接上linux上的ssh,又想这个时候关掉在PC登录连接上的ssh,怎么办?
Linux系统root用户可强制踢制其它登录用户,首先以root登录以便查看全部的在线用户信息,可用 w 或者 who 命令查看用户所在的终端。
强制踢人命令格式:pkill -kill -t pts
解释:
pkill -kill -t 踢人命令
tty 所踢用户的TTY
如上踢出tty1用户的命令为: pkill -kill -t pts/4
用户已经被强制踢掉了
实践如下:
1)谁还在用ssh连接到本linux上?
[root@iZ25dcp92ckZ ~]# w
17:52:38 up 118 days, 1:38, 5 users, load average: 2.01, 2.02, 2.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 202.108.16.80 09:36 2:45m 1:36 0.34s -bash
root pts/1 202.108.16.80 09:36 2:45m 0.19s 0.19s -bash
root pts/3 202.108.16.80 09:36 2:45m 0.26s 0.26s -bash
root pts/9 202.108.16.80 09:40 3:48m 0.11s 0.11s -bash
2)根据1作pkill操作,自己的ssh连接得留下:
[root@iZ25dcp92ckZ ~]# pkill -kill -t pts/0
[root@iZ25dcp92ckZ ~]# pkill -kill -t pts/1
[root@iZ25dcp92ckZ ~]# pkill -kill -t pts/3
[root@iZ25dcp92ckZ ~]# pkill -kill -t pts/9
3)确认已经把pc的ssh连接杀死并Ok了:
[root@iZ25dcp92ckZ ~]# w
17:53:21 up 118 days, 1:39, 1 user, load average: 1.44, 1.89, 2.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/10 117.136.0.88 17:32 1.00s 0.05s 0.00s w
[root@iZ25dcp92ckZ ~]#
Freebsd一样的: last
root pts/12 111.199.58.196 Wed Oct 11 22:40 still logged in
root pts/11 111.199.58.196 Wed Oct 11 22:38 still logged in
root pts/10 111.199.58.196 Wed Oct 11 22:34 still logged in
root pts/9 111.199.58.196 Wed Oct 11 22:29 still logged in
root pts/8 111.199.58.196 Wed Oct 11 22:28 still logged in
root pts/7 111.199.58.196 Wed Oct 11 22:16 still logged in
root pts/1 111.199.58.196 Wed Oct 11 22:16 still logged in
root pts/6 111.199.58.196 Wed Oct 11 22:06 still logged in
root pts/0 111.199.58.196 Wed Oct 11 22:05 still logged in
root pts/5 111.199.58.196 Wed Oct 11 21:48 still logged in
root pts/4 111.199.58.196 Wed Oct 11 21:04 still logged in
root pts/3 111.199.58.196 Wed Oct 11 21:03 still logged in
root pts/2 111.199.58.196 Wed Oct 11 20:57 still logged in
踢掉命令:
pkill -kill -t pts/12
pkill -kill -t pts/11
pkill -kill -t pts/10
pkill -kill -t pts/9
pkill -kill -t pts/8
pkill -kill -t pts/7
pkill -kill -t pts/1
pkill -kill -t pts/6
pkill -kill -t pts/0
pkill -kill -t pts/5
pkill -kill -t pts/4
pkill -kill -t pts/3
pkill -kill -t pts/2
Linux系统root用户可强制踢制其它登录用户,首先以root登录以便查看全部的在线用户信息,可用 w 或者 who 命令查看用户所在的终端。
强制踢人命令格式:pkill -kill -t pts
解释:
pkill -kill -t 踢人命令
tty 所踢用户的TTY
如上踢出tty1用户的命令为: pkill -kill -t pts/4
用户已经被强制踢掉了
实践如下:
1)谁还在用ssh连接到本linux上?
[root@iZ25dcp92ckZ ~]# w
17:52:38 up 118 days, 1:38, 5 users, load average: 2.01, 2.02, 2.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 202.108.16.80 09:36 2:45m 1:36 0.34s -bash
root pts/1 202.108.16.80 09:36 2:45m 0.19s 0.19s -bash
root pts/3 202.108.16.80 09:36 2:45m 0.26s 0.26s -bash
root pts/9 202.108.16.80 09:40 3:48m 0.11s 0.11s -bash
2)根据1作pkill操作,自己的ssh连接得留下:
[root@iZ25dcp92ckZ ~]# pkill -kill -t pts/0
[root@iZ25dcp92ckZ ~]# pkill -kill -t pts/1
[root@iZ25dcp92ckZ ~]# pkill -kill -t pts/3
[root@iZ25dcp92ckZ ~]# pkill -kill -t pts/9
3)确认已经把pc的ssh连接杀死并Ok了:
[root@iZ25dcp92ckZ ~]# w
17:53:21 up 118 days, 1:39, 1 user, load average: 1.44, 1.89, 2.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/10 117.136.0.88 17:32 1.00s 0.05s 0.00s w
[root@iZ25dcp92ckZ ~]#
Freebsd一样的: last
root pts/12 111.199.58.196 Wed Oct 11 22:40 still logged in
root pts/11 111.199.58.196 Wed Oct 11 22:38 still logged in
root pts/10 111.199.58.196 Wed Oct 11 22:34 still logged in
root pts/9 111.199.58.196 Wed Oct 11 22:29 still logged in
root pts/8 111.199.58.196 Wed Oct 11 22:28 still logged in
root pts/7 111.199.58.196 Wed Oct 11 22:16 still logged in
root pts/1 111.199.58.196 Wed Oct 11 22:16 still logged in
root pts/6 111.199.58.196 Wed Oct 11 22:06 still logged in
root pts/0 111.199.58.196 Wed Oct 11 22:05 still logged in
root pts/5 111.199.58.196 Wed Oct 11 21:48 still logged in
root pts/4 111.199.58.196 Wed Oct 11 21:04 still logged in
root pts/3 111.199.58.196 Wed Oct 11 21:03 still logged in
root pts/2 111.199.58.196 Wed Oct 11 20:57 still logged in
踢掉命令:
pkill -kill -t pts/12
pkill -kill -t pts/11
pkill -kill -t pts/10
pkill -kill -t pts/9
pkill -kill -t pts/8
pkill -kill -t pts/7
pkill -kill -t pts/1
pkill -kill -t pts/6
pkill -kill -t pts/0
pkill -kill -t pts/5
pkill -kill -t pts/4
pkill -kill -t pts/3
pkill -kill -t pts/2
背景:我的T60P机器是老了还是啥的,开机假死发生多次,强制关机后重启正常,怀疑过固态硬盘,怀疑过风扇FanError,换了个风扇依旧,于是查了下开机日志,发现大量的acpi的警告:警告 2015/10/27 星期二 23:49:44 ACPI 15 无。。。。。于是,解决办法如下:
系统城的小编这里要跟大家分享的是关于如何在BIOS中关闭ACPI的方法,ACPI表示高级配置和接口(Advanced Configuration and Power Management Interface),帮助操作系统控制划拨给每一件与计算机相连的设备的电量,有了ACPI,操作系统就可以把不同的外设关闭。但是针对有些用户在安装系统的时候会出现假死的现象,因此有大神建议先关闭ACPI即可解决问题!
电脑如何进入BIOS设置
win7系统如何关闭ACPI:
开机按del键,找到Advanced Configuration and Power Interface即可关闭。
win7系统如何关闭ACPI
开机后如发现设备栏中有黄色惊叹号,未知设备,可以打开系统光盘,把power manegement目录下的setup.exe执行一下,惊叹号就没有了!
来自:http://www.xitongcheng.com/jiaocheng/win7_article_1687.html
====================================================================================
通过----windows系统日志----查看开关机时间:
(1)
在“开始”菜单的“运行”中输入“eventvwr.msc”,打开事件查看器,在左侧窗口中选择Windows日志->“系统”,从右侧系统事件中查找事件ID为6005、6006的事件
事件ID:6005表示事件日志服务已启动,即开机
事件ID:6006表示关机。它们对应的时间就分别是开机时间和关机时间
简单点
还你可以使用“筛选”使内容简洁。在事件查看器的“查看”菜单中选择“筛选”选项,在属性对话框中选择“筛选器”选项卡,并在其中勾选“信息”、“警告”、“错误”三项,在“事件来源”下拉列表中选择“eventlog”,单击“确定”按钮后,系统事件中的内容就少了很多,可以轻易找到最近的开关机时间。
(2)
在“开始”菜单中的“运行”中输入“C:\WINDOWS\schedlgu.txt”,在打开的schedlgu.txt文件中有“任务计划程序服务”已启动于和“任务计划程序服务”已退出于的时间,分别对应着开机和关机时间
来自:http://blog.sina.com.cn/s/blog_518b64290100fewh.html
错误 2015/10/28 星期三 0:22:28 SharedAccess_NAT 34001 无,
看看windows firewall服务是不是被禁用了,原来 是NOD32会接管Windows系统自带的防火墙。
http://bbs.kafan.cn/thread-1691369-1-1.html
系统城的小编这里要跟大家分享的是关于如何在BIOS中关闭ACPI的方法,ACPI表示高级配置和接口(Advanced Configuration and Power Management Interface),帮助操作系统控制划拨给每一件与计算机相连的设备的电量,有了ACPI,操作系统就可以把不同的外设关闭。但是针对有些用户在安装系统的时候会出现假死的现象,因此有大神建议先关闭ACPI即可解决问题!
电脑如何进入BIOS设置
win7系统如何关闭ACPI:
开机按del键,找到Advanced Configuration and Power Interface即可关闭。
win7系统如何关闭ACPI
开机后如发现设备栏中有黄色惊叹号,未知设备,可以打开系统光盘,把power manegement目录下的setup.exe执行一下,惊叹号就没有了!
来自:http://www.xitongcheng.com/jiaocheng/win7_article_1687.html
====================================================================================
通过----windows系统日志----查看开关机时间:
(1)
在“开始”菜单的“运行”中输入“eventvwr.msc”,打开事件查看器,在左侧窗口中选择Windows日志->“系统”,从右侧系统事件中查找事件ID为6005、6006的事件
事件ID:6005表示事件日志服务已启动,即开机
事件ID:6006表示关机。它们对应的时间就分别是开机时间和关机时间
简单点
还你可以使用“筛选”使内容简洁。在事件查看器的“查看”菜单中选择“筛选”选项,在属性对话框中选择“筛选器”选项卡,并在其中勾选“信息”、“警告”、“错误”三项,在“事件来源”下拉列表中选择“eventlog”,单击“确定”按钮后,系统事件中的内容就少了很多,可以轻易找到最近的开关机时间。
(2)
在“开始”菜单中的“运行”中输入“C:\WINDOWS\schedlgu.txt”,在打开的schedlgu.txt文件中有“任务计划程序服务”已启动于和“任务计划程序服务”已退出于的时间,分别对应着开机和关机时间
来自:http://blog.sina.com.cn/s/blog_518b64290100fewh.html
错误 2015/10/28 星期三 0:22:28 SharedAccess_NAT 34001 无,
看看windows firewall服务是不是被禁用了,原来 是NOD32会接管Windows系统自带的防火墙。
http://bbs.kafan.cn/thread-1691369-1-1.html
linux下怎样删除以横线开关的文件
Unix/LinuxC技术 jack 2015-10-23 17:16
背景:在写代码程序里写文件时不小心出现了一个带横线的文件,如下:
[root@iZ25dcp92ckZ temp]# ls
-000 84b1052c-ebc5-11e4-bf9b-b9856d949d58-002.mp4
[root@iZ25dcp92ckZ temp]# ll -i
总用量 58140
1211764 -rw-r--r-- 1 48 root 0 10月 23 17:14 -000
1187168 -rw-r--r-- 1 48 root 11904973 10月 23 17:14 84b1052c-ebc5-11e4-bf9b-b9856d949d58-002.mp4
干掉它:
find . -inum 1211764 -exec rm {} \;
————————————————————————————————————————————
linux下怎样删除以横线开关的文件:
一些客户用FTP上传了一些以横线开关的文件,然后需要删除或改名时都不能操作.所以很苦恼.
在删除时报以下错误:
以下是解决方法:
1.首先以ll -i 查看下文件的inode值.
2.有以下命令删除或改名此类文件:
find 命令
使用 UNIX find 命令,您可以完成使用 ls 命令所开始的工作。对于要进行操作的文件,您已经知道了它们的索引编号,那么就可以开始进行相应的操作了!
要删除看似无名的文件,您只需要使用 find 和 -inum 开关对索引编号和文件进行定位。然后,在找到该文件之后,使用 find 和 -exec 开关删除该文件:
# find . -inum 393228 -exec rm {} \;
要对该文件进行重命名或删除,可以使用 mv 或 rm:
删除文件:
# find . -inum 393228 -exec mv {} passwd.txt \;
重命名文件:
问题解决.
来自:http://blog.chinaunix.net/uid-23683795-id-2391090.html
[root@iZ25dcp92ckZ temp]# ls
-000 84b1052c-ebc5-11e4-bf9b-b9856d949d58-002.mp4
[root@iZ25dcp92ckZ temp]# ll -i
总用量 58140
1211764 -rw-r--r-- 1 48 root 0 10月 23 17:14 -000
1187168 -rw-r--r-- 1 48 root 11904973 10月 23 17:14 84b1052c-ebc5-11e4-bf9b-b9856d949d58-002.mp4
干掉它:
find . -inum 1211764 -exec rm {} \;
————————————————————————————————————————————
linux下怎样删除以横线开关的文件:
一些客户用FTP上传了一些以横线开关的文件,然后需要删除或改名时都不能操作.所以很苦恼.
在删除时报以下错误:
以下是解决方法:
1.首先以ll -i 查看下文件的inode值.
2.有以下命令删除或改名此类文件:
find 命令
使用 UNIX find 命令,您可以完成使用 ls 命令所开始的工作。对于要进行操作的文件,您已经知道了它们的索引编号,那么就可以开始进行相应的操作了!
要删除看似无名的文件,您只需要使用 find 和 -inum 开关对索引编号和文件进行定位。然后,在找到该文件之后,使用 find 和 -exec 开关删除该文件:
# find . -inum 393228 -exec rm {} \;
要对该文件进行重命名或删除,可以使用 mv 或 rm:
删除文件:
# find . -inum 393228 -exec mv {} passwd.txt \;
重命名文件:
问题解决.
来自:http://blog.chinaunix.net/uid-23683795-id-2391090.html
[最好语言]PHP下的fastcgi使用fastcgi_finish_request真的提高页面响应速度无副作用?与session锁的一个相关性问题的探讨性性业余非正式研究。
Php/Js/Shell/Go jack 2015-10-23 16:38
背景:提高了性能,任何事情都可以辩证的看,稳定性于鲁棒性,光的波粒二象性,凡事都有两面性,如戴眼镜虽然可以装丝文,但是雨中漫步的时候容易撞电线杆;抽烟可以让身上有女生喜欢的淡淡烟草味,但是会危害周围人的健康;醉酒虽然可以让人精神愉悦,但是会说出真话,这些都是我的亲身体验.......写不下去了。
wintiongXX - sng<wintiXX@gmail.com> 14:39:09
php里哪个函数,是可以在php执行过程中直接响应nginx,但是让php继续执行?
cody(2501385XX) 14:40:44
fastcgi_finish_request();
wintiongXX - sng<wintiXX@gmail.com> 14:41:22
我就记得有这个函数,一时想不起来了
@cody
X哥chen(X哥)<blXXX.c@163.com> 14:45:09
用fastcgi_finish_request要注意一下,
如果fastcgi_finish_request"之后", 到整个程序完成的时间还很久或有其他的阻塞调用,
当前进程是无法处理请求的, 可能导致各种问题
wintiongXX - sng<wintiXX@gmail.com> 14:46:23
这个知道的,其实总体而言进程耗时没变化,只是有些东西没必要让用户等你
erikYXXX-TEG(744366XXX) 14:48:32
使用这个函数不能使用file存储session(使用其他存储也需要关掉session 锁)。不然用户A第一次持有session访问,如果后续操作有耗时操作,用户的session会被锁住,导致后续访问卡住。
问苍天个猫(13427XXX) 15:01:35
可以提前session_write_close啊
erikYXXX-TEG(744366XXX) 15:01:59
也是可以的。
——————扯淡开始———————
JackX-回忆未来有甚用(372647XXX) 16:19:27
请问各位弟兄们,这两个函数放在一块有啥区别:
1.PHP ignore_user_abort() 函数, ignore_user_abort(true); php关闭浏览器还能运行函数。
2. fastcgi_finish_request();
都解决了啥么子问题???
JackX-回忆未来有甚用(372647XXX) 16:24:06
我问的问题就没一个人接一个?还是认为我不是搞PHPer的啊
问题太肤浅?
allendai<snowheart.dai@gmail.com> 16:24:56
没用过。。
JackX-回忆未来有甚用(372647XXX) 16:27:31
我只是好奇,哈哈~
你说这些鸡肋功能开发出来有毛用啊,还好天峰说没有之一,哈哈。
Ran-韩最好语言(128112XX) 16:29:13
因为PHP设计之初只有 请求开始到请求结束 这段生命周期,后面的它控制不了。各种函数的出现就是为了弥补这个缺陷。
JackX-回忆未来有甚用(372647XXX) 16:29:16
PHP ignore_user_abort() 函数,我用来做一些导表由PHP从A到B做下逻辑导入数据库,浏览器上访问下容易超时,于是用到。
至于这个: fastcgi_finish_request(); 我也是听x哥在说,于是问下,都用来干嘛子?上传视频后-》转码->入库->推前台,第二三四都可以连接起来???
Ran-韩最好语言(128112XX) 16:29:28
使用消息队列异步处理才是正途。
erikYXXX-TEG(744366XXX) 16:29:54
php session lock主要是各个session促出模块实现自己实现的锁。默认的session 存储是文件,实现是在打开之前flock session文件。如果选择memcached存储session,锁是在memcache扩展里面实现的。
如果自己实现SessionHandler接口存储,可以选择不实现锁。
fastcgi_finish_request 可以提前把结果返回给nginx,之后脚本还可以保留上下文执行一些任务,可以算是伪异步。最好还是使用MQ来异步处理任务。
allendai<snowheart.dai@gmail.com> 16:30:06
……用浏览器调用导入程序
这就是你的不专业了
JackX-回忆未来有甚用(372647XXX) 16:31:05
我觉得也是,所以我觉得兄弟们都是专业的,
可为何发明这个鸡肋功能,有点玩的感觉哟。
结论:
X哥chen(X哥)<blXXX.c@163.com> 16:38:59
+1
异步化才是正途
wintiongXX - sng<wintiXX@gmail.com> 14:39:09
php里哪个函数,是可以在php执行过程中直接响应nginx,但是让php继续执行?
cody(2501385XX) 14:40:44
fastcgi_finish_request();
wintiongXX - sng<wintiXX@gmail.com> 14:41:22
我就记得有这个函数,一时想不起来了
@cody
X哥chen(X哥)<blXXX.c@163.com> 14:45:09
用fastcgi_finish_request要注意一下,
如果fastcgi_finish_request"之后", 到整个程序完成的时间还很久或有其他的阻塞调用,
当前进程是无法处理请求的, 可能导致各种问题
wintiongXX - sng<wintiXX@gmail.com> 14:46:23
这个知道的,其实总体而言进程耗时没变化,只是有些东西没必要让用户等你
erikYXXX-TEG(744366XXX) 14:48:32
使用这个函数不能使用file存储session(使用其他存储也需要关掉session 锁)。不然用户A第一次持有session访问,如果后续操作有耗时操作,用户的session会被锁住,导致后续访问卡住。
问苍天个猫(13427XXX) 15:01:35
可以提前session_write_close啊
erikYXXX-TEG(744366XXX) 15:01:59
也是可以的。
——————扯淡开始———————
JackX-回忆未来有甚用(372647XXX) 16:19:27
请问各位弟兄们,这两个函数放在一块有啥区别:
1.PHP ignore_user_abort() 函数, ignore_user_abort(true); php关闭浏览器还能运行函数。
2. fastcgi_finish_request();
都解决了啥么子问题???
JackX-回忆未来有甚用(372647XXX) 16:24:06
我问的问题就没一个人接一个?还是认为我不是搞PHPer的啊
问题太肤浅?
allendai<snowheart.dai@gmail.com> 16:24:56
没用过。。
JackX-回忆未来有甚用(372647XXX) 16:27:31
我只是好奇,哈哈~
你说这些鸡肋功能开发出来有毛用啊,还好天峰说没有之一,哈哈。
Ran-韩最好语言(128112XX) 16:29:13
因为PHP设计之初只有 请求开始到请求结束 这段生命周期,后面的它控制不了。各种函数的出现就是为了弥补这个缺陷。
JackX-回忆未来有甚用(372647XXX) 16:29:16
PHP ignore_user_abort() 函数,我用来做一些导表由PHP从A到B做下逻辑导入数据库,浏览器上访问下容易超时,于是用到。
至于这个: fastcgi_finish_request(); 我也是听x哥在说,于是问下,都用来干嘛子?上传视频后-》转码->入库->推前台,第二三四都可以连接起来???
Ran-韩最好语言(128112XX) 16:29:28
使用消息队列异步处理才是正途。
erikYXXX-TEG(744366XXX) 16:29:54
php session lock主要是各个session促出模块实现自己实现的锁。默认的session 存储是文件,实现是在打开之前flock session文件。如果选择memcached存储session,锁是在memcache扩展里面实现的。
如果自己实现SessionHandler接口存储,可以选择不实现锁。
fastcgi_finish_request 可以提前把结果返回给nginx,之后脚本还可以保留上下文执行一些任务,可以算是伪异步。最好还是使用MQ来异步处理任务。
allendai<snowheart.dai@gmail.com> 16:30:06
……用浏览器调用导入程序
这就是你的不专业了
JackX-回忆未来有甚用(372647XXX) 16:31:05
我觉得也是,所以我觉得兄弟们都是专业的,
可为何发明这个鸡肋功能,有点玩的感觉哟。
结论:
X哥chen(X哥)<blXXX.c@163.com> 16:38:59
+1
异步化才是正途
背景:有时在做一些Nginx的Proxy时,如从80端口请求后代码到其它web服务器如tomcat的8080端口,需要一些主备的思想,也就是万一主服务器挂了怎么办?用备机了,这块Nginx支持这样一个功能的。
一)nginx从前端域名支向代理并负载均衡代理到其他ip并配置了域名的机器,这儿得有proxy_set_header Host $host;相当于以域名访问IP:
经测试,这个Nginx的七层代理感觉还是比Lvs差一点,压力测试时这块儿还是有点卡:
二)如nginx暴露出域名反向代理到一台tomcat的以IP指向的8080端口:
——————————————————————————————————————————
只要在希望成为后备的服务器ip后面多添加一个backup参数,这台服务器就会成为备份服务器。
在平时不使用,nginx不会给它转发任何请求。只有当其他节点全部无法连接的时候,nginx才会启用这个节点。
一旦有可用的节点恢复服务,该节点则不再使用,又进入后备状态。
可以两台机子互为热备,平时各自负责各自的服务。在做上线更新的时候,关闭一台服务器的tomcat后,nginx自动把流量切换到另外一台服务的后备机子上,从而实现无痛更新,保持服务的持续性,提高服务的可靠性。
关于这个参数的官档说明:
http://wiki.nginx.org/NginxHttpUpstreamModule
backup - (0.6.7 or later) only uses this server if the non-backup servers are all down or busy (cannot be used with the directive ip_hash)
摘自:http://hillside.iteye.com/blog/703281
http://chattool.sinaapp.com/?p=1063
一)nginx从前端域名支向代理并负载均衡代理到其他ip并配置了域名的机器,这儿得有proxy_set_header Host $host;相当于以域名访问IP:
经测试,这个Nginx的七层代理感觉还是比Lvs差一点,压力测试时这块儿还是有点卡:
二)如nginx暴露出域名反向代理到一台tomcat的以IP指向的8080端口:
——————————————————————————————————————————
只要在希望成为后备的服务器ip后面多添加一个backup参数,这台服务器就会成为备份服务器。
在平时不使用,nginx不会给它转发任何请求。只有当其他节点全部无法连接的时候,nginx才会启用这个节点。
一旦有可用的节点恢复服务,该节点则不再使用,又进入后备状态。
可以两台机子互为热备,平时各自负责各自的服务。在做上线更新的时候,关闭一台服务器的tomcat后,nginx自动把流量切换到另外一台服务的后备机子上,从而实现无痛更新,保持服务的持续性,提高服务的可靠性。
关于这个参数的官档说明:
http://wiki.nginx.org/NginxHttpUpstreamModule
backup - (0.6.7 or later) only uses this server if the non-backup servers are all down or busy (cannot be used with the directive ip_hash)
摘自:http://hillside.iteye.com/blog/703281
http://chattool.sinaapp.com/?p=1063
linux 多线程函数 pthread_cond_wait 及pthread_cond_wait()用法分析。
Unix/LinuxC技术 jack 2015-10-20 11:28
最近找到一篇很好的文章将linux多线程函数pthread_cond_wait,是我茅塞顿开,豁然开朗,决定转载过来,以便经常复习记忆。
条件变量的结构为pthread_cond_t,函数pthread_cond_init()被用来初始化一个条件变量。它的原型为:
extern int pthread_cond_init __P ((pthread_cond_t *__cond,__const pthread_condattr_t *__cond_attr));
其中cond是一个指向结构pthread_cond_t的指针,cond_attr是一个指向结构pthread_condattr_t的指针。结构 pthread_condattr_t是条件变量的属性结构,和互斥锁一样我们可以用它来设置条件变量是进程内可用还是进程间可用,默认值是 PTHREAD_ PROCESS_PRIVATE,即此条件变量被同一进程内的各个线程使用。注意初始化条件变量只有未被使用时才能重新初始化或被释放。释放一个条件变量的函数为pthread_cond_destroy(pthread_cond_t cond)。
也可以静态的初始化条件变量
pthread_cond_t my_condition = PTHREAD_COND_INITIALIZER;
函数pthread_cond_wait()使线程阻塞在一个条件变量上。它的函数原型为:
extern int pthread_cond_wait __P ((pthread_cond_t *__cond,pthread_mutex_t *__mutex));
调用这个函数时,线程解开mutex指向的锁并被条件变量cond阻塞。线程可以被函数pthread_cond_signal和函数 pthread_cond_broadcast唤醒线程被唤醒后,它将重新检查判断条件是否满足,如果还不满足,一般说来线程应该仍阻塞在这里,被等待被下一次唤醒。这个过程一般用while语句实现。
通过下面的程序来理解:
__________________华丽的CODE分割线_________________________
pthreadCondWait.c
___________________至关重要的绚烂的结果分割线_________________
[root@iZ25dcp92ckZ testdemo]# vi pthreadCondWait.c
[root@iZ25dcp92ckZ testdemo]# gcc pthreadCondWait.c -lpthread -o pthreadCondWaitStudy
[root@iZ25dcp92ckZ testdemo]# ./pthreadCondWaitStudy
thead1:1
Up Unlock Mutex
thead1:2
Up Unlock Mutex
Up Unlock Mutex
thread2:3
Down Ulock Mutex
thread2:3
Down Ulock Mutex
thead1:4
Up Unlock Mutex
thead1:5
Up Unlock Mutex
Up Unlock Mutex
thread2:6
Down Ulock Mutex
thread2:6
Down Ulock Mutex
thead1:7
Up Unlock Mutex
thead1:8
Up Unlock Mutex
Up Unlock Mutex
thread2:9
Down Ulock Mutex
_________________HOW IT WORKS________
i不是三的倍数的时候.
thread2条件变量阻塞,释放Mutex
thread1加锁,打印thread1:i,释放锁,打印"Up Unlock Mutex"
i为3的倍数的时候,
thread1,加锁,条件变量通知,唤醒条件变量阻塞线程,打印"Up Unlock Mutex"
thread2,被唤醒,加锁,打印"thread2:i",释放锁,打印"Down Ulock Mutex"
所以说函数pthread_cond_wait()调用时,不仅对条件变量起作用,还对互斥锁有作用!
++++++++++++++++唯美的好书推荐线++++++++++++
"Beiginning Linux Programming" by Neil Matthrew & Richard Stones
You can choose the English version or Chinese version, but I recommend the English one. Maybe it' easier to understand what the authers say than the Chinese one , even if you're Chinese.
原文地址:http://blogold.chinaunix.net/u1/53448/showart_431857.html
条件变量的结构为pthread_cond_t,函数pthread_cond_init()被用来初始化一个条件变量。它的原型为:
extern int pthread_cond_init __P ((pthread_cond_t *__cond,__const pthread_condattr_t *__cond_attr));
其中cond是一个指向结构pthread_cond_t的指针,cond_attr是一个指向结构pthread_condattr_t的指针。结构 pthread_condattr_t是条件变量的属性结构,和互斥锁一样我们可以用它来设置条件变量是进程内可用还是进程间可用,默认值是 PTHREAD_ PROCESS_PRIVATE,即此条件变量被同一进程内的各个线程使用。注意初始化条件变量只有未被使用时才能重新初始化或被释放。释放一个条件变量的函数为pthread_cond_destroy(pthread_cond_t cond)。
也可以静态的初始化条件变量
pthread_cond_t my_condition = PTHREAD_COND_INITIALIZER;
函数pthread_cond_wait()使线程阻塞在一个条件变量上。它的函数原型为:
extern int pthread_cond_wait __P ((pthread_cond_t *__cond,pthread_mutex_t *__mutex));
调用这个函数时,线程解开mutex指向的锁并被条件变量cond阻塞。线程可以被函数pthread_cond_signal和函数 pthread_cond_broadcast唤醒线程被唤醒后,它将重新检查判断条件是否满足,如果还不满足,一般说来线程应该仍阻塞在这里,被等待被下一次唤醒。这个过程一般用while语句实现。
通过下面的程序来理解:
__________________华丽的CODE分割线_________________________
pthreadCondWait.c
___________________至关重要的绚烂的结果分割线_________________
[root@iZ25dcp92ckZ testdemo]# vi pthreadCondWait.c
[root@iZ25dcp92ckZ testdemo]# gcc pthreadCondWait.c -lpthread -o pthreadCondWaitStudy
[root@iZ25dcp92ckZ testdemo]# ./pthreadCondWaitStudy
thead1:1
Up Unlock Mutex
thead1:2
Up Unlock Mutex
Up Unlock Mutex
thread2:3
Down Ulock Mutex
thread2:3
Down Ulock Mutex
thead1:4
Up Unlock Mutex
thead1:5
Up Unlock Mutex
Up Unlock Mutex
thread2:6
Down Ulock Mutex
thread2:6
Down Ulock Mutex
thead1:7
Up Unlock Mutex
thead1:8
Up Unlock Mutex
Up Unlock Mutex
thread2:9
Down Ulock Mutex
_________________HOW IT WORKS________
i不是三的倍数的时候.
thread2条件变量阻塞,释放Mutex
thread1加锁,打印thread1:i,释放锁,打印"Up Unlock Mutex"
i为3的倍数的时候,
thread1,加锁,条件变量通知,唤醒条件变量阻塞线程,打印"Up Unlock Mutex"
thread2,被唤醒,加锁,打印"thread2:i",释放锁,打印"Down Ulock Mutex"
所以说函数pthread_cond_wait()调用时,不仅对条件变量起作用,还对互斥锁有作用!
++++++++++++++++唯美的好书推荐线++++++++++++
"Beiginning Linux Programming" by Neil Matthrew & Richard Stones
You can choose the English version or Chinese version, but I recommend the English one. Maybe it' easier to understand what the authers say than the Chinese one , even if you're Chinese.
原文地址:http://blogold.chinaunix.net/u1/53448/showart_431857.html
背景:Raspberry Pi下的mysql启动出现如下:
151017 8:33:10 [Note] Server socket created on IP: '127.0.0.1'.
151017 8:33:10 [ERROR] Can't start server: Bind on TCP/IP port: Cannot assign requested address
151017 8:33:10 [ERROR] Do you already have another mysqld server running on port: 3306 ?
注意关键词 Bind
这时,可以打开/etc/mysql/my.cnf
...
bind-address = 192.168.141.25
...
如果你也是这么写的,那么把它改成
bind-address = 0.0.0.0
然后重启即可
另外,mysql在启动时进行了端口的bind,那么当ip更换时,请注意这些细节
vi /etc/mysql/my.cnf
#bind-address = 127.0.0.1
bind-address = 0.0.0.0
来自:http://www.educity.cn/wenda/403390.html
实际情况是因为自己把lo给干掉了,没有127.0.0.1这个端口:
vi /etc/network/interfaces
auto lo
iface lo inet loopback
....
同理,apache2也是一样的道理,因为这个软的IP,没有了,于是也没法访问,得特别注意:
vi /etc/network/interfaces
151017 8:33:10 [Note] Server socket created on IP: '127.0.0.1'.
151017 8:33:10 [ERROR] Can't start server: Bind on TCP/IP port: Cannot assign requested address
151017 8:33:10 [ERROR] Do you already have another mysqld server running on port: 3306 ?
注意关键词 Bind
这时,可以打开/etc/mysql/my.cnf
...
bind-address = 192.168.141.25
...
如果你也是这么写的,那么把它改成
bind-address = 0.0.0.0
然后重启即可
另外,mysql在启动时进行了端口的bind,那么当ip更换时,请注意这些细节
vi /etc/mysql/my.cnf
#bind-address = 127.0.0.1
bind-address = 0.0.0.0
来自:http://www.educity.cn/wenda/403390.html
实际情况是因为自己把lo给干掉了,没有127.0.0.1这个端口:
vi /etc/network/interfaces
auto lo
iface lo inet loopback
....
同理,apache2也是一样的道理,因为这个软的IP,没有了,于是也没法访问,得特别注意:
vi /etc/network/interfaces
背景:有时一些小的网站,比如个人博客需要每天备份数据,鉴于此,得自动化不是,这儿就是一个简单可行的好方法,配置上后就不用管了。更牛B点就是主辅助同步,在辅库上运行下面的脚本更发妥当。
1)备份权限列表需要哪些?
1.Select 读取
2.SHOW DATABASES 允许访问完整的数据库列表
4. LOCK TABLES 允许锁定表
5.RELOAD 允许载入和刷新服务器缓存
以上几点是必须的.请注意
主辅助是不复制角色表的。
2)实践添加备份用户如下:
grant SELECT, RELOAD, SHOW DATABASES, LOCK TABLES on *.* to 'back'@'localhost' identified by "************"
3)实现下面自动备份脚本:
cat backUpJustWinDatas.sh
4) 定时生成定时删除命令:
1)定时生成:
0 0 * * * /bin/bash /usr/local/scripts/backUpJustWinDatas.sh
2)删除旧的:
0 1 * * * find /data/backup/db.JustWin.com -mtime +7 -exec rm -R {} \;
最后,参考实践来源自:http://www.jb51.net/article/49099.htm
http://blog.163.com/o5655@126/blog/static/166742834201181393837133/
1)备份权限列表需要哪些?
1.Select 读取
2.SHOW DATABASES 允许访问完整的数据库列表
4. LOCK TABLES 允许锁定表
5.RELOAD 允许载入和刷新服务器缓存
以上几点是必须的.请注意
主辅助是不复制角色表的。
2)实践添加备份用户如下:
grant SELECT, RELOAD, SHOW DATABASES, LOCK TABLES on *.* to 'back'@'localhost' identified by "************"
3)实现下面自动备份脚本:
cat backUpJustWinDatas.sh
4) 定时生成定时删除命令:
1)定时生成:
0 0 * * * /bin/bash /usr/local/scripts/backUpJustWinDatas.sh
2)删除旧的:
0 1 * * * find /data/backup/db.JustWin.com -mtime +7 -exec rm -R {} \;
最后,参考实践来源自:http://www.jb51.net/article/49099.htm
http://blog.163.com/o5655@126/blog/static/166742834201181393837133/
[实践OK]简单实现限定phpmyadmin访问ip的方法,phpadmin因PHP的session目录及自身目录权限引发错误解决。
Php/Js/Shell/Go jack 2015-10-16 14:27
背景:在外面上面放一个phpmyadmin的发现阿里的云盾发现有人居然来试着访问,网上不安全。
攻击IP 攻击时间 攻击URL 攻击类型 处理结果
199.191.57.182 2015-10-16 05:29:33 101.20*.1*.**/phpmyadmin/scripts/setup.php Match1:/phpmyadmin/scripts/setup.php 其他 已拦截
——————————————————————————————————————————————————————————————————————
修改:config.inc.php
在第一行加入
$ip_prefix = '192.168.121.';
if (substr($_SERVER['REMOTE_ADDR'], 0, strlen($ip_prefix)) != $ip_prefix ) die('illegal access error');
ip可以设置成你自己电脑的ip。如果是内网建议直接设置成自己的ip地址取代ip地址段。这样的话可以防止其它用户在内网中访问。如果是公网ip限制,直接使用即可。
只是简单的限定,没有太大要求只是暂时限定,可以使用这种方式。临时性的限制用户去访问。
当然,也可以用foreach写成一个数组来处理..........
摘自:http://www.jb51.net/article/34509.htm
phpMyAdmin 因PHP的session目录及自身目录权限引发错误解决:
问题一:phpMyAdmin -Cannot start session without errors, please check errors given in your PHP and/or webserver log file and configure your PHP installation properly.
问题:打开phpmyadmin出现如下错误:Cannot start session without errors, please check errors given in your PHP and/or webserver log file and configure your PHP installation properly.
解决办法如下:
vim /etc/php5/apache2/php.ini
查找session.save_path ,将session.save_path=/var/lib/php5这一句的注释符号去掉。
如还不能正常工作,将session.auto_start的值改为1(启动),默认是0(禁用)
这个错误一般是由于session文件的存储路径不可写造成的,在linux下一般是路径的权限问题。在windows下面session.save_path一定要设置到一个可以读写的路径,如 D:/tmp 等。
摘自:http://blog.sina.com.cn/s/blog_62cd41130100uhpv.html
=====================================================================================
问题二:phpmyadmin错误Wrong permissions on configuration file, should not be world writable!
登录phpmyadmin,发现提示Wrong permissions on configuration file, should not be world writable!,提示配置文件必须不可写,这里改成755就OK了.
用以下命令 chmod -R 755 /home/wwwroot/phpmyadmin
摘自:http://www.111cn.net/phper/31/59722.htm
攻击IP 攻击时间 攻击URL 攻击类型 处理结果
199.191.57.182 2015-10-16 05:29:33 101.20*.1*.**/phpmyadmin/scripts/setup.php Match1:/phpmyadmin/scripts/setup.php 其他 已拦截
——————————————————————————————————————————————————————————————————————
修改:config.inc.php
在第一行加入
$ip_prefix = '192.168.121.';
if (substr($_SERVER['REMOTE_ADDR'], 0, strlen($ip_prefix)) != $ip_prefix ) die('illegal access error');
ip可以设置成你自己电脑的ip。如果是内网建议直接设置成自己的ip地址取代ip地址段。这样的话可以防止其它用户在内网中访问。如果是公网ip限制,直接使用即可。
只是简单的限定,没有太大要求只是暂时限定,可以使用这种方式。临时性的限制用户去访问。
当然,也可以用foreach写成一个数组来处理..........
摘自:http://www.jb51.net/article/34509.htm
phpMyAdmin 因PHP的session目录及自身目录权限引发错误解决:
问题一:phpMyAdmin -Cannot start session without errors, please check errors given in your PHP and/or webserver log file and configure your PHP installation properly.
问题:打开phpmyadmin出现如下错误:Cannot start session without errors, please check errors given in your PHP and/or webserver log file and configure your PHP installation properly.
解决办法如下:
vim /etc/php5/apache2/php.ini
查找session.save_path ,将session.save_path=/var/lib/php5这一句的注释符号去掉。
如还不能正常工作,将session.auto_start的值改为1(启动),默认是0(禁用)
这个错误一般是由于session文件的存储路径不可写造成的,在linux下一般是路径的权限问题。在windows下面session.save_path一定要设置到一个可以读写的路径,如 D:/tmp 等。
摘自:http://blog.sina.com.cn/s/blog_62cd41130100uhpv.html
=====================================================================================
问题二:phpmyadmin错误Wrong permissions on configuration file, should not be world writable!
登录phpmyadmin,发现提示Wrong permissions on configuration file, should not be world writable!,提示配置文件必须不可写,这里改成755就OK了.
用以下命令 chmod -R 755 /home/wwwroot/phpmyadmin
摘自:http://www.111cn.net/phper/31/59722.htm
[实践OK]Linux下登录后执行系统的shell顺序,浅析linux 下的/etc/profile、/etc/bashrc、~/.bash_profile、~/.bashrc 文件,登录Linux时/etc/profile、~/.bash_profile等几个文件的执行过程。
Unix/LinuxC技术 jack 2015-10-12 15:34
背景:这个linux用户登录进行相关环境变量的设置和下面这些全局和用户之前的关系,值得大致有一个理解,特别是环境变量,有一些程序运行的环镜参数息息相关,还有类似如对secureCRT标签的设置(为什么就登录失效没有触发呢,直接运行又OK等问题有疑惑,排查问题困难),/etc/bashrc /etc/sysconfig/bash-prompt-xterm 里设置secureCRT标签,怎么登录就没有变呢,而是直接运行source /etc/bashrc即可生效(运行source XXX之前,先运行bash,即:1)bash 2)source XXX):/etc/bashrc 里面包含/etc/sysconfig/bash-prompt-xterm 文件就能设置了呢,/etc/bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。此中必然有蹊跷,设置secureCRT 的标签见:http://jackxiang.com/post/6773/ ,是阿里云给修改了这个:/etc/bashrc 里加入新变量:if [ -z "$PROMPT_COMMAND" ]; then ,它不为空,没有运行这个/etc/sysconfig/bash-prompt-xterm 文件,解决办法就是:PROMPT_COMMAND="";强制清空得了,重新运行source /etc/bashrc就Ok了 。
执行顺序如下:
/etc/bashrc ==>(PROMPT_COMMAND=/etc/sysconfig/bash-prompt-xterm)=》 /etc/profile/etc/profile.d/ [2.for i in /etc/profile.d/*.sh ; do] ==>.bash_profile =(包含:. ~/.bashrc)=. ~/.bashrc。(首先启动 /etc/profile 文件,然后再启动用户目录下的 ~/.bash_profile),摘自:http://blog.51cto.com/xoyabc/1658135
/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.
并从/etc/profile.d目录的配置文件中搜集shell的设置.
/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.
~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该
文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.
~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该
该文件被读取.
~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件.
另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"关系.
~/.bash_profile 是交互式、login 方式进入 bash 运行的
~/.bashrc 是交互式 non-login 方式进入 bash 运行的
通常二者设置大致相同,所以通常前者会调用后者。
bash的几个初始化文件 - [Ubuntu]
(1)/etc/profile
全局(公有)配置,不管是哪个用户,登录时都会读取该文件。
(2)/ect/bashrc
Ubuntu没有此文件,与之对应的是/ect/bash.bashrc
它也是全局(公有)的
bash执行时,不管是何种方式,都会读取此文件。
(3)~/.profile
若bash是以login方式执行时,读取~/.bash_profile,若它不存在,则读取~/.bash_login,若前两者不存在,读取~/.profile。
另外,图形模式登录时,此文件将被读取,即使存在~/.bash_profile和~/.bash_login。
(4)~/.bash_login
若bash是以login方式执行时,读取~/.bash_profile,若它不存在,则读取~/.bash_login,若前两者不存在,读取~/.profile。
(5)~/.bash_profile
Unbutu默认没有此文件,可新建。
只有bash是以login形式执行时,才会读取此文件。通常该配置文件还会配置成去读取~/.bashrc。
(6)~/.bashrc
当bash是以non-login形式执行时,读取此文件。若是以login形式执行,则不会读取此文件。
(7)~/.bash_logout
注销时,且是longin形式,此文件才会读取。也就是说,在文本模式注销时,此文件会被读取,图形模式注销时,此文件不会被读取。
下面是在本机的几个例子:
1. 图形模式登录时,顺序读取:/etc/profile和~/.profile
2. 图形模式登录后,打开终端时,顺序读取:/etc/bash.bashrc和~/.bashrc
3. 文本模式登录时,顺序读取:/etc/bash.bashrc,/etc/profile和~/.bash_profile
4. 从其它用户su到该用户,则分两种情况:
(1)如果带-l参数(或-参数,--login参数),如:su -l username,则bash是lonin的,它将顺序读取以下配置文件:/etc/bash.bashrc,/etc/profile和~/.bash_profile。
(2)如果没有带-l参数,则bash是non-login的,它将顺序读取:/etc/bash.bashrc和~/.bashrc
5. 注销时,或退出su登录的用户,如果是longin方式,那么bash会读取:~/.bash_logout
6. 执行自定义的shell文件时,若使用“bash -l a.sh”的方式,则bash会读取行:/etc/profile和~/.bash_profile,若使用其它方式,如:bash a.sh, ./a.sh,sh a.sh(这个不属于bash shell),则不会读取上面的任何文件。
7. 上面的例子凡是读取到~/.bash_profile的,若该文件不存在,则读取~/.bash_login,若前两者不存在,读取~/.profile。
linux中profile与bashrc的区别
Ubuntu 的相关目录下
/ect/ /root /home/myuser
profile .profile .profile
bash.bashrc .bashrc .bashrc
profile.d
Fedora的相关目录
/ect/ /root /home/myuser
profile profile
bashrc .bashrc bashrc
profile.d profile.d
说明:myuser 是你添加创建的用户
在网上找了半天也不能包括所有的,所以只能比较个大概。
bashrc与profile的区别
要搞清bashrc与profile的区别,首先要弄明白什么是交互式shell和非交互式shell,什么是login shell 和non-login shell。
交互式模式就是shell等待你的输入,并且执行你提交的命令。这种模式被称作交互式是因为shell与用户进行交互。这种模式也是大多数用户非常熟悉的:登录、执行一些命令、签退。当你签退后,shell也终止了。 shell也可以运行在另外一种模式:非交互式模式。在这种模式下,shell不与你进行交互,而是读取存放在文件中的命令,并且执行它们。当它读到文件的结尾,shell也就终止了。
bashrc与profile都用于保存用户的环境信息,bashrc用于交互式non-loginshell,而profile用于交互式log
来自:http://blog.renren.com/share/224354794/8635033605
========================登录Linux时/etc/profile、~/.bash_profile等几个文件的执行过程 ========================
关于登录linux时,/etc/profile、~/.bash_profile等几个文件的执行过程。 在登录Linux时要执行文件的过程如下: 在刚登录Linux时,首先启动 /etc/profile 文件,然后再启动用户目录下的 ~/.bash_profile、 ~/.bash_login或 ~/.profile文件中的其中一个,执行的顺序为:~/.bash_profile、 ~/.bash_login、 ~/.profile。如果 ~/.bash_profile文件存在的话,一般还会执行 ~
关于登录linux时,/etc/profile、~/.bash_profile等几个文件的执行过程。
在登录Linux时要执行文件的过程如下:
在刚登录Linux时,首先启动 /etc/profile 文件,然后再启动用户目录下的 ~/.bash_profile、 ~/.bash_login或 ~/.profile文件中的其中一个,执行的顺序为:~/.bash_profile、 ~/.bash_login、 ~/.profile。如果 ~/.bash_profile文件存在的话,一般还会执行 ~/.bashrc文件。因为在 ~/.bash_profile文件中一般会有下面的代码:
if [ -f ~/.bashrc ] ; then
. ./bashrc
fi
~/.bashrc中,一般还会有以下代码:
if [ -f /etc/bashrc ] ; then
. /bashrc
fi
所以,~/.bashrc会调用 /etc/bashrc文件。最后,在退出shell时,还会执行 ~/.bash_logout文件。
执行顺序为:/etc/profile -> (~/.bash_profile | ~/.bash_login | ~/.profile) -> ~/.bashrc -> /etc/bashrc -> ~/.bash_logout
关于各个文件的作用域,在网上找到了以下说明:
(1)/etc/profile: 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置。
(2)/etc/bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。
(3)~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。
(4)~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。
(5)~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件. 另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承 /etc/profile中的变量,他们是"父子"关系。
(6)~/.bash_profile 是交互式、login 方式进入 bash 运行的~/.bashrc 是交互式 non-login 方式进入 bash 运行的通常二者设置大致相同,所以通常前者会调用后者。
在这里开始书写日记、心情 …
来自:http://blog.163.com/jianweicheng@126/blog/static/356732022008228559399/
执行顺序如下:
/etc/bashrc ==>(PROMPT_COMMAND=/etc/sysconfig/bash-prompt-xterm)=》 /etc/profile/etc/profile.d/ [2.for i in /etc/profile.d/*.sh ; do] ==>.bash_profile =(包含:. ~/.bashrc)=. ~/.bashrc。(首先启动 /etc/profile 文件,然后再启动用户目录下的 ~/.bash_profile),摘自:http://blog.51cto.com/xoyabc/1658135
/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.
并从/etc/profile.d目录的配置文件中搜集shell的设置.
/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.
~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该
文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.
~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该
该文件被读取.
~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件.
另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"关系.
~/.bash_profile 是交互式、login 方式进入 bash 运行的
~/.bashrc 是交互式 non-login 方式进入 bash 运行的
通常二者设置大致相同,所以通常前者会调用后者。
bash的几个初始化文件 - [Ubuntu]
(1)/etc/profile
全局(公有)配置,不管是哪个用户,登录时都会读取该文件。
(2)/ect/bashrc
Ubuntu没有此文件,与之对应的是/ect/bash.bashrc
它也是全局(公有)的
bash执行时,不管是何种方式,都会读取此文件。
(3)~/.profile
若bash是以login方式执行时,读取~/.bash_profile,若它不存在,则读取~/.bash_login,若前两者不存在,读取~/.profile。
另外,图形模式登录时,此文件将被读取,即使存在~/.bash_profile和~/.bash_login。
(4)~/.bash_login
若bash是以login方式执行时,读取~/.bash_profile,若它不存在,则读取~/.bash_login,若前两者不存在,读取~/.profile。
(5)~/.bash_profile
Unbutu默认没有此文件,可新建。
只有bash是以login形式执行时,才会读取此文件。通常该配置文件还会配置成去读取~/.bashrc。
(6)~/.bashrc
当bash是以non-login形式执行时,读取此文件。若是以login形式执行,则不会读取此文件。
(7)~/.bash_logout
注销时,且是longin形式,此文件才会读取。也就是说,在文本模式注销时,此文件会被读取,图形模式注销时,此文件不会被读取。
下面是在本机的几个例子:
1. 图形模式登录时,顺序读取:/etc/profile和~/.profile
2. 图形模式登录后,打开终端时,顺序读取:/etc/bash.bashrc和~/.bashrc
3. 文本模式登录时,顺序读取:/etc/bash.bashrc,/etc/profile和~/.bash_profile
4. 从其它用户su到该用户,则分两种情况:
(1)如果带-l参数(或-参数,--login参数),如:su -l username,则bash是lonin的,它将顺序读取以下配置文件:/etc/bash.bashrc,/etc/profile和~/.bash_profile。
(2)如果没有带-l参数,则bash是non-login的,它将顺序读取:/etc/bash.bashrc和~/.bashrc
5. 注销时,或退出su登录的用户,如果是longin方式,那么bash会读取:~/.bash_logout
6. 执行自定义的shell文件时,若使用“bash -l a.sh”的方式,则bash会读取行:/etc/profile和~/.bash_profile,若使用其它方式,如:bash a.sh, ./a.sh,sh a.sh(这个不属于bash shell),则不会读取上面的任何文件。
7. 上面的例子凡是读取到~/.bash_profile的,若该文件不存在,则读取~/.bash_login,若前两者不存在,读取~/.profile。
linux中profile与bashrc的区别
Ubuntu 的相关目录下
/ect/ /root /home/myuser
profile .profile .profile
bash.bashrc .bashrc .bashrc
profile.d
Fedora的相关目录
/ect/ /root /home/myuser
profile profile
bashrc .bashrc bashrc
profile.d profile.d
说明:myuser 是你添加创建的用户
在网上找了半天也不能包括所有的,所以只能比较个大概。
bashrc与profile的区别
要搞清bashrc与profile的区别,首先要弄明白什么是交互式shell和非交互式shell,什么是login shell 和non-login shell。
交互式模式就是shell等待你的输入,并且执行你提交的命令。这种模式被称作交互式是因为shell与用户进行交互。这种模式也是大多数用户非常熟悉的:登录、执行一些命令、签退。当你签退后,shell也终止了。 shell也可以运行在另外一种模式:非交互式模式。在这种模式下,shell不与你进行交互,而是读取存放在文件中的命令,并且执行它们。当它读到文件的结尾,shell也就终止了。
bashrc与profile都用于保存用户的环境信息,bashrc用于交互式non-loginshell,而profile用于交互式log
来自:http://blog.renren.com/share/224354794/8635033605
========================登录Linux时/etc/profile、~/.bash_profile等几个文件的执行过程 ========================
关于登录linux时,/etc/profile、~/.bash_profile等几个文件的执行过程。 在登录Linux时要执行文件的过程如下: 在刚登录Linux时,首先启动 /etc/profile 文件,然后再启动用户目录下的 ~/.bash_profile、 ~/.bash_login或 ~/.profile文件中的其中一个,执行的顺序为:~/.bash_profile、 ~/.bash_login、 ~/.profile。如果 ~/.bash_profile文件存在的话,一般还会执行 ~
关于登录linux时,/etc/profile、~/.bash_profile等几个文件的执行过程。
在登录Linux时要执行文件的过程如下:
在刚登录Linux时,首先启动 /etc/profile 文件,然后再启动用户目录下的 ~/.bash_profile、 ~/.bash_login或 ~/.profile文件中的其中一个,执行的顺序为:~/.bash_profile、 ~/.bash_login、 ~/.profile。如果 ~/.bash_profile文件存在的话,一般还会执行 ~/.bashrc文件。因为在 ~/.bash_profile文件中一般会有下面的代码:
if [ -f ~/.bashrc ] ; then
. ./bashrc
fi
~/.bashrc中,一般还会有以下代码:
if [ -f /etc/bashrc ] ; then
. /bashrc
fi
所以,~/.bashrc会调用 /etc/bashrc文件。最后,在退出shell时,还会执行 ~/.bash_logout文件。
执行顺序为:/etc/profile -> (~/.bash_profile | ~/.bash_login | ~/.profile) -> ~/.bashrc -> /etc/bashrc -> ~/.bash_logout
关于各个文件的作用域,在网上找到了以下说明:
(1)/etc/profile: 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置。
(2)/etc/bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。
(3)~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。
(4)~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。
(5)~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件. 另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承 /etc/profile中的变量,他们是"父子"关系。
(6)~/.bash_profile 是交互式、login 方式进入 bash 运行的~/.bashrc 是交互式 non-login 方式进入 bash 运行的通常二者设置大致相同,所以通常前者会调用后者。
在这里开始书写日记、心情 …
来自:http://blog.163.com/jianweicheng@126/blog/static/356732022008228559399/
C语言在if中定义的变量的生存时间及范围学习备案。
Unix/LinuxC技术 jack 2015-10-12 11:51
里,如果xxx为true,后面的{}才被执行。{后,栈里为i开了4字节的单元(如果是32位机的话)。遇}时,这四个字节被弹出。
来自:http://www.kuqin.com/article/23candcplusplus/937677.html
【解决】无法载入 mcrypt 扩展,<br />请检查 PHP 配置 ...
Php/Js/Shell/Go jack 2015-10-11 17:57
对于phpmyadmin“无法载入 mcrypt 扩展,<br />请检查 PHP 配置”的问题,我记得前段时间还有午饭提问过。
自己很长一段时间之前就遇过这个问题,但是也不知道怎么解决的,记得是安装过两个RPM包就搞定。
对于这个问题,可以发现网上发问的可是N多呀,普遍都经受这个折腾。
现在在自己的LNMP下重新进行了安装,也出现这个问题。当我再次尝试安装
libmcrypt-2.5.7-3.el5.remi.i386.rpm
php-mcrypt-5.1.6-1.el5.i386.rpm
不过得不到解决,于是我选择通过源码包编译安装libmcrypt-2.5.7.tar.gz ,并且重新编译到PHP中去,最终解决了
该问题。
#tar zxvf libmcrypt-2.5.7.tar.gz
#cd libmcrypt-2.5.7
#./configure --prefix=/usr/local/libmcrypt
#make && make install
重新编译php:
#./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --enable-fastcgi --enable-fpm --enable-mbstring --with-mcrypt=/usr/local/libmcrypt/
这里顺便编译php的配置文件php.ini
extension=php_mbstring.dll 把这行前面的;去掉
然后重启mysql、php-fpm、nginx
重新登录phpmyadmin就不显示了。
————————————————————————————————————————————————————————
来自:http://bbs.51cto.com/thread-821175-1.html
自己很长一段时间之前就遇过这个问题,但是也不知道怎么解决的,记得是安装过两个RPM包就搞定。
对于这个问题,可以发现网上发问的可是N多呀,普遍都经受这个折腾。
现在在自己的LNMP下重新进行了安装,也出现这个问题。当我再次尝试安装
libmcrypt-2.5.7-3.el5.remi.i386.rpm
php-mcrypt-5.1.6-1.el5.i386.rpm
不过得不到解决,于是我选择通过源码包编译安装libmcrypt-2.5.7.tar.gz ,并且重新编译到PHP中去,最终解决了
该问题。
#tar zxvf libmcrypt-2.5.7.tar.gz
#cd libmcrypt-2.5.7
#./configure --prefix=/usr/local/libmcrypt
#make && make install
重新编译php:
#./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --enable-fastcgi --enable-fpm --enable-mbstring --with-mcrypt=/usr/local/libmcrypt/
这里顺便编译php的配置文件php.ini
extension=php_mbstring.dll 把这行前面的;去掉
然后重启mysql、php-fpm、nginx
重新登录phpmyadmin就不显示了。
————————————————————————————————————————————————————————
来自:http://bbs.51cto.com/thread-821175-1.html
背景:有时一次清空所有日志文件很有必要。
cat clearUpAllServersLog.sh
for i in `find /data/logs -name "*.log"`; do cat /dev/null >$i; done
更简单的写法:
for i in `find . -name "*.log*"`;do echo $i; done
for i in `find . -name "*.log"`;do echo $i; done
for i in `find . -name "*.log"`;do echo $i; done
for i in `find . -name "*.log"`;do :>$i; done
一般是>文件清空,但是前面贴着数字和:也可以
cat txt
2018年 03月 14日 星期三 14:03:56 CST
#seq 5> txt
seq: 缺少操作数
Try 'seq --help' for more information.
#seq 5 >txt
cat txt
1
2
3
4
5
因为没空来前面还是数字会意想不到的结果,规范使用最好前面空开.
>重定向是先清空文件,再执行命令写入,这里的seq 5因为5贴着,所以执行的是seq,所以会抛出命令帮助。
是清空再执行写入呢,喔,明白了 > 有两个动作。
#每天晚上凌晨零点清空各种服务生成日志
0 0 * * * /bin/bash /usr/local/scripts/clearUpAllServersLog.sh
————————————————————————————————————
1)在当前目录下,键入如下命令:
for i in `find . -name "*.log"`; do cat /dev/null >$i; done
2)执行完毕后,当前目录下的所有log日志文件就被清空了。
Linux:批量清空当前目录下的日志文件
3)再把shell命令解释一下:
find . -name "*.log" ,就是在当前目录下查找后缀为log的文件。
cat /dev/null >$i ,就是将每次找到的log文件清空。
参考:http://jingyan.baidu.com/article/acf728fd23a1e9f8e510a331.html
cat clearUpAllServersLog.sh
for i in `find /data/logs -name "*.log"`; do cat /dev/null >$i; done
更简单的写法:
for i in `find . -name "*.log*"`;do echo $i; done
for i in `find . -name "*.log"`;do echo $i; done
for i in `find . -name "*.log"`;do echo $i; done
for i in `find . -name "*.log"`;do :>$i; done
一般是>文件清空,但是前面贴着数字和:也可以
cat txt
2018年 03月 14日 星期三 14:03:56 CST
#seq 5> txt
seq: 缺少操作数
Try 'seq --help' for more information.
#seq 5 >txt
cat txt
1
2
3
4
5
因为没空来前面还是数字会意想不到的结果,规范使用最好前面空开.
>重定向是先清空文件,再执行命令写入,这里的seq 5因为5贴着,所以执行的是seq,所以会抛出命令帮助。
是清空再执行写入呢,喔,明白了 > 有两个动作。
#每天晚上凌晨零点清空各种服务生成日志
0 0 * * * /bin/bash /usr/local/scripts/clearUpAllServersLog.sh
————————————————————————————————————
1)在当前目录下,键入如下命令:
for i in `find . -name "*.log"`; do cat /dev/null >$i; done
2)执行完毕后,当前目录下的所有log日志文件就被清空了。
Linux:批量清空当前目录下的日志文件
3)再把shell命令解释一下:
find . -name "*.log" ,就是在当前目录下查找后缀为log的文件。
cat /dev/null >$i ,就是将每次找到的log文件清空。
参考:http://jingyan.baidu.com/article/acf728fd23a1e9f8e510a331.html
Hint: Some lines were ellipsized, use -l to show in full. systemctl status slapd -l ,'journalctl -xn' for details. 看不清换行,先journalctl -xn > out.log,再vim看。
一)那个Service XXX start时,也是装入了内存活它的Service系统的,而用chkconfig -add memcached 就是装入这个Service系统,完全类似centos7 的systemctl daemon-reload,也就是说你改了/etc/init.d/memcached 如果不chkconfig -add memcached,service memcached start执行的还是旧的(尽管你替换了那个/etc/init.d/memcached文件), 同理/lib/systemd/system/memcached.service,也是一样的道理,修改后得 systemctl daemon-reload才会生效,直接运行systemctl start memcached会提示你systemctl daemon-reload,不让你运行,也就是说它会监控/etc/systemd/system/*.service外,发现它还会监控centos6的/etc/init.d/* 的修改。
二)在CentOS7里面,只有运行了service memcached start后,这个systemctl才行被注入,一上来就运行systemctl start memcached , 它是不认识这个memcached 的,再就是如果自己Kill掉,没有用 service memcached stop,这个sytemctl 也是不知道它关了,想用systemctl start memcached也无法启动的,因为systemctl 认为它还运行着呢,于是得用systemctl stop memcached 后,再运行systemctl start memcached,也就成功了,否则即使systemctl start memcached啥也不输出就退出了,但是那个进程还是没有启动,说白了,在CentOS7里面,那个启动和停止最好是经过service或systemctl,连service 也是被systemctl接管了的,都得向systemctl注册!!!,艹。
背景:conf里面有一个ssl的conf,scp过来抄时忘记删除,但nginx下的nginx.conf下是include *.conf,于是出问题了,但nginx不报这个conf有问题,而是说没有找到ssl的crt文件,怎么办?主要是学会看日志 cat /var/log/messages | grep nginx ,看日志才发现是多了一个conf文件。
service nginx reload
Reloading nginx configuration (via systemctl): Job for nginx.service failed. See 'systemctl status nginx.service' and 'journalctl -xn' for details.
——————————————————————————————————————————————————————————————————————
启动apache服务出现,或启动nginx时出现:
Starting nginx (via systemctl): Job for nginx.service failed. See 'systemctl status nginx.service' and 'journalctl -xn' for details.
查看错误提示
主要是学会看日志 cat /var/log/messages | grep nginx
Oct 10 14:34:12 iZ251vfc84kZ nginx: nginx: [emerg] BIO_new_file("/usr/local/nginx/conf/ssl/svn.justwinit.crt") failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/usr/local/nginx/conf/ssl/svn.justwinit.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)
Oct 10 14:34:12 iZ251vfc84kZ nginx: nginx: configuration file /usr/local/nginx/conf/nginx.conf test failed
Oct 10 14:34:12 iZ251vfc84kZ systemd: nginx.service: control process exited, code=exited status=1
[root@iZ251vfc84kZ vhost]# grep -r "svn.justwinit.crt" ./
./svn.justwinit.conf: ssl_certificate ssl/svn.justwinit.crt;
[root@iZ251vfc84kZ vhost]# rm -Rf svn.justwinit.conf
来自:http://wangsheng1.blog.51cto.com/29473/1550655
一)那个Service XXX start时,也是装入了内存活它的Service系统的,而用chkconfig -add memcached 就是装入这个Service系统,完全类似centos7 的systemctl daemon-reload,也就是说你改了/etc/init.d/memcached 如果不chkconfig -add memcached,service memcached start执行的还是旧的(尽管你替换了那个/etc/init.d/memcached文件), 同理/lib/systemd/system/memcached.service,也是一样的道理,修改后得 systemctl daemon-reload才会生效,直接运行systemctl start memcached会提示你systemctl daemon-reload,不让你运行,也就是说它会监控/etc/systemd/system/*.service外,发现它还会监控centos6的/etc/init.d/* 的修改。
二)在CentOS7里面,只有运行了service memcached start后,这个systemctl才行被注入,一上来就运行systemctl start memcached , 它是不认识这个memcached 的,再就是如果自己Kill掉,没有用 service memcached stop,这个sytemctl 也是不知道它关了,想用systemctl start memcached也无法启动的,因为systemctl 认为它还运行着呢,于是得用systemctl stop memcached 后,再运行systemctl start memcached,也就成功了,否则即使systemctl start memcached啥也不输出就退出了,但是那个进程还是没有启动,说白了,在CentOS7里面,那个启动和停止最好是经过service或systemctl,连service 也是被systemctl接管了的,都得向systemctl注册!!!,艹。
背景:conf里面有一个ssl的conf,scp过来抄时忘记删除,但nginx下的nginx.conf下是include *.conf,于是出问题了,但nginx不报这个conf有问题,而是说没有找到ssl的crt文件,怎么办?主要是学会看日志 cat /var/log/messages | grep nginx ,看日志才发现是多了一个conf文件。
service nginx reload
Reloading nginx configuration (via systemctl): Job for nginx.service failed. See 'systemctl status nginx.service' and 'journalctl -xn' for details.
——————————————————————————————————————————————————————————————————————
启动apache服务出现,或启动nginx时出现:
Starting nginx (via systemctl): Job for nginx.service failed. See 'systemctl status nginx.service' and 'journalctl -xn' for details.
查看错误提示
主要是学会看日志 cat /var/log/messages | grep nginx
Oct 10 14:34:12 iZ251vfc84kZ nginx: nginx: [emerg] BIO_new_file("/usr/local/nginx/conf/ssl/svn.justwinit.crt") failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/usr/local/nginx/conf/ssl/svn.justwinit.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)
Oct 10 14:34:12 iZ251vfc84kZ nginx: nginx: configuration file /usr/local/nginx/conf/nginx.conf test failed
Oct 10 14:34:12 iZ251vfc84kZ systemd: nginx.service: control process exited, code=exited status=1
[root@iZ251vfc84kZ vhost]# grep -r "svn.justwinit.crt" ./
./svn.justwinit.conf: ssl_certificate ssl/svn.justwinit.crt;
[root@iZ251vfc84kZ vhost]# rm -Rf svn.justwinit.conf
来自:http://wangsheng1.blog.51cto.com/29473/1550655




