背景:前两天对外包的PHP返回慢作了一个xdebug的统计,后来尽管加上了那个rm的crontab,但是后来发现日志依旧在,还是运维发现,上了30G了。
后来查了下crontab的日志文件,发现:


配置:
一:Crontab定时删除,1小时删除一次:


三分钟一清,试过一小时一清,都3G左右大小了:


二:应该是生成的xdebug日志文件太多了造成的(1小时一次有点长了),这个文件删除不了:

出现:Argument list too long。

三:网上找了下,摘录如下:
cache目录,谁知道输入
rm *
的命令后,大概几秒后屏幕就跳出
/bin/rm: argument list too long
条件反射动作,上百度和google查找,找到解决方法和原因,原因是一个文件夹下文件太多,使用rm删除就会出现/bin/rm: Argument list too long错误.
解决方法:http://hintcnuie.javaeye.com/blog/431354
按网址上面写的输入
ls | xargs -n 10 rm -fr ls
就解决了,这句解释为:输出所有的文件名(用空格分割) xargs就是将ls的输出,每10个为一组(以空格为分隔符),作为rm -rf的参数也就是说将所有文件名10个为一组,由rm -rf删除,这样就不会超过命令行的长度了.
另外找到用脚本的方法:
for loop in `ls 目录路径`
do
rm -f $loop
done
注意:$loop是删除的文件名,确保路径是否正确。
但这个还没有实验过。
来自:http://www.dedecms.com/knowledge/servers/linux-bsd/2012/0614/1538.html
第二种方法:
当某个文件夹下的文件太多,不能使用rm删除
# rm * -rf
-bash: /bin/rm: Argument list too long
网上找了个方法,贴上来给大家分享
find PATH -name *.mp3 -exec rm {} \;
如,要删除 /tmp/123/abc 目录下的
find  /tmp/123/abc ‘*’ -exec rm {} \;
如当前目录为 /tmp/123 ,想删除 /tmp/123/abc 下的
find  ./abc  -name ‘*’ -exec rm {} \;
  大家可以自己试试,不过要小心处理,别删错重要文件了!!!
来自:http://linux.chinaitlab.com/administer/805334.html
https://github.com/tsaleh/vim-align
能满足各种方式的对齐。真心不错呢
背景:
外包把代码放到我们的测试机上,有可能出现这样那样的调用问题,尽管前面说过要注意host配置的问题并记录,但是往往出现在上到测试机时,忘记了,于是用下tcpdump来抓包,可以实现有效的对其跨系统的接口进行跟踪,并找到问题之所在。
零:使用,方法一:
vi /root/.bashrc  

生效:
source /root/.bashrc
方法二(优点这个导出只是传的参数以&符号分割,而返回则全是body里的内容,相当的适合用作接口调试参数,用curl来进行组装访问。):

参考其优点细说在:http://jackxiang.com/post/7344/
特别说明:
tcpdump命令默认捕获包总长度是96字节,如图所示,我们只要在抓包命令里加一个参数 -s 0 即可捕获完整数据的数据包。
/usr/local/sbin/tcpdump -i any -p -s 0 -w /tmp/capture.pcap

一:安装
官网:http://www.tcpdump.org
下载两个包,注意配套,我的是:
http://www.tcpdump.org/release/libpcap-1.4.0.tar.gz
http://www.tcpdump.org/release/tcpdump-4.3.0.tar.gz
Add Time:2014-01-27,上面旧版本没问题,新的有问题:
wget http://www.tcpdump.org/release/tcpdump-4.5.1.tar.gz
wget http://www.tcpdump.org/release/libpcap-1.5.3.tar.gz
1 下载了libpcap-1.5.2.tar.gz。
2 tar -vxf libpcap-1.5.2.tar.gz
3 ./configure
4 make 发生错误。
1)安装:libpcap
cd /data/codesdev/libpcap/libpcap-1.6.1
./configure&&make && make install
理论上一次能过,但是往往会出现新的问题,如下:
[root@master libpcap-1.5.2]# make
gcc -fpic -I.  -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include   -DHAVE_CONFIG_H  -D_U_="__attribute__((unused))" -g -O2 -c ./pcap-dbus.c
./pcap-dbus.c: In function ‘dbus_write’:
./pcap-dbus.c:111: 错误:‘DBUS_ERROR_INIT’ 未声明 (在此函数内第一次使用)
./pcap-dbus.c:111: 错误:(即使在一个函数内多次出现,每个未声明的标识符在其
./pcap-dbus.c:111: 错误:所在的函数内只报告一次。)
./pcap-dbus.c: In function ‘dbus_activate’:
./pcap-dbus.c:165: 错误:‘DBUS_ERROR_INIT’ 未声明 (在此函数内第一次使用)
make: *** [pcap-dbus.o] 错误 1
按装dbus:
http://www.freedesktop.org/wiki/Software/dbus/
问题答案未实践来自:http://bbs.csdn.net/topics/390693013
######################我的情况如下######################
cc -fpic -I.  -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include   -DHAVE_CONFIG_H  -D_U_="__attribute__((unused))" -g -O2 -c ./pcap-linux.c
gcc -fpic -I.  -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include   -DHAVE_CONFIG_H  -D_U_="__attribute__((unused))" -g -O2 -c ./pcap-usb-linux.c
gcc -fpic -I.  -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include   -DHAVE_CONFIG_H  -D_U_="__attribute__((unused))" -g -O2 -c ./pcap-dbus.c
./pcap-dbus.c: In function ‘dbus_write’:
./pcap-dbus.c:111: error: ‘DBUS_ERROR_INIT’ undeclared (first use in this function)
./pcap-dbus.c:111: error: (Each undeclared identifier is reported only once
./pcap-dbus.c:111: error: for each function it appears in.)
./pcap-dbus.c: In function ‘dbus_activate’:
./pcap-dbus.c:165: error: ‘DBUS_ERROR_INIT’ undeclared (first use in this function)
make: *** [pcap-dbus.o] Error 1
#########################################################################
http://dbus.freedesktop.org/releases/dbus/

2)安装tcpdump:
cd /data/codesdev/libpcap/tcpdump-4.6.1
./configure&&make && make install

在centos6.4上安装后如下:
tcpdump --version
tcpdump version 4.6.1
libpcap version 1.6.1
OpenSSL 1.0.1e-fips 11 Feb 2013

二:通过tcpdump抓取HTTP包的方法,实践Ok:
tcpdump -XvvennSs 0 -i eth0 tcp[20:2]=0x4745 or tcp[20:2]=0x4854
0x4745 为"GET"前两个字母"GE"
0x4854 为"HTTP"前两个字母"HT"
来自:http://zhumeng8337797.blog.163.com/blog/static/100768914201291110503529/
经过实践是可以的,特别是对接口的调试这一块很是有用,特记录如下:

解释:
0x4745 为"GET"前两个字母"GE"
0x4854 为"HTTP"前两个字母"HT"
实践如下:
[root@localhost ~]# tcpdump -XvvennSs 0 -i eth0 tcp[20:2]=0x4745 or tcp[20:2]=0x4854  -w /tmp/capture.pcap
tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
8 packets captured
8 packets received by filter
0 packets dropped by kernel
[root@localhost ~]# sz /tmp/capture.pcap
[/codes]


三:通过网卡eth1来监听端口80发出去的host包到192.168.109.8的报文:
TcpDump位置: /usr/local/sbin/tcpdump
  
(0)最常用的:

(1)捕获队列的Http请求,不知道是哪个网卡于是得:-i any,根据端口和IP进行捕获:
curl "http://198.168.109.*:1218?charset=utf8&name=playRecord&opt=get",也就是目标是:198.168.109.*
生成如下捕获的tcpdump命令,经测试捕获是Ok的且可以用wireshark打开并查看到http的包:

如监控队列:

(2)加上源地址IP进行捕获:

所有包都截获后sz下来,并用Windows下的wireshark界面进行过滤查看http的包:


实践完全Ok,用wireshark能看到,并能导出:

wireshark界面使用备案Url:http://www.jackxiang.com/post/6262/

四:抓取发往某个指定IP的http get包数据指定文件进行输出package,这个也是下载到Windows下用wireshark界面过滤查看,实践用wireshark能看到:


实践如下:
[root@localhost ~]# tcpdump -XvvennSs 0 -i eth0 port 80 and dst host "192.168.109.8" and tcp[20:2]=0x4745 or tcp[20:2]=0x4854  -w /tmp/capture.pcap
tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
Got 4

实践用wireshark打开能看到这些ip的http,实践Ok。

五:如何添加编译好的Tcpdump到到环境变量PATH中的方法:
http://www.jackxiang.com/post/1792/

阅读全文
MEMWATCH 由 Johan Lindh 编写,是一个开放源代码 C 语言内存错误检测工具。只要在代码中添加一个头文件并在 gcc 语句中定义了 MEMWATCH 之后,您就可以跟踪程序中的内存泄漏和错误了。MEMWATCH 支持 ANSI C,它提供结果日志记录,能检测双重释放(double-free)、错误释放(erroneous free)、没有释放的内存(unfreed memory)、溢出和下溢等等。

使用方法:http://hi.baidu.com/nullzone/item/ff7e60fdeae5c0cc521c262d
更多实践:http://hi.baidu.com/gz_gzhao/item/017262f23a5c7008c7dc4563

像Node这样的脚本型也有内存的泄漏问题:
http://www.oschina.net/translate/tracking-down-memory-leaks-in-node-js-a-node-js-holiday-season
进入BIOS设置页面之后,可以找到一个叫“Hardware Monitor”或“PC Health”的选项(如笔者的机器是“Power > Hardware Monitor”。
在BIOS看CPU温度、转速和电压

  点PC Health Status

  CPU Temperature是CPU的温度

  CPU Fan是CPU风扇转速

  System Fan是机箱风扇转速


1、开机时按DEL进入BIOS设置(显示器上有提示进入办法,但多数是按DEL);
2、选择CPU或硬件信息栏(不同型号BIOS显示的不一样,可以一个个都选一遍)。
3、当能看到“CPU temprature”即为CPU当然温度,有些还能看到CPU风扇、系统风扇等的转速。
背景:
     如何更改linux终端显示颜色?深蓝色的目录背景是黑色,很不爽。
有兄弟有现成的调色请稍给兄弟,如:
PS1='[\[\e[32;40m\]\u@\h \w \t]$ '
类似的,目录Ok的,有现成的兄弟,给个出来。
我在群里问很多朋友,都说我这个目录的颜色有点奇怪,他们的蓝色在黑色下面能看得很清楚,也有兄弟建议说修改SecureCRT里的会话选项-外观-窗口和文本外观-当前颜色方案-选:traditional  点编辑:属性,前景/背景对背景颜色作调整。(但我还是喜欢黑色:超级黑,高级黑无限黑,终极黑,极品黑,宇宙黑),【后来我发现有可能是全局选项,本文后面有这个设置,我设置了下感觉不是很符合要求,目录不知道怎么设置,建议以实践为准。】,找了篇文章,感觉和我的想法差不多,先转了再说,试试还成功了。

我的实践成功步骤如下:
1)vi /etc/DIR_COLORS
DIR 01;34       # directory  
定位位置:
FILE 00         # normal file
DIR 01;34       # directory
LINK 01;36      # symbolic link
FIFO 40;33      # pipe

修改为:
DIR 01;36       # directory
2)使改动生效方法:
eval `dircolors /etc/DIR_COLORS`  //命令中的`符号为键盘~符号下面的那个

3)登录生效:如果再登录一次,发现它还是蓝色,不是浅蓝,于是得在登录时实现自动运行,如下。
vi ~/.bashrc


立即生效:source ~/.bashrc  
附录:
Linux登录终端时显示本机IP地址在前面,一样修改~/.bashrc,在虛尾添加:


linux终端中,目录的显示颜色是蓝色,看起来很是不方便。阅读全文
背景: 我也想升级一把,如果直接上6.4,以前6.3里面的vim配置,服务器等重新安,太麻烦了。
-------------------------------------------------------------------------------------------------------------------------------
最后,发现我的那个已经升级了,不用去修改grub,参考:http://tieba.baidu.com/p/2249307319
阅读全文
一:SecureCRT 自动登录脚本:
常常会登录跳板机,里面的一些用户名和密码每次要重新输入,于是否,这就需要用一些捕获电脑输出(如输入用户名后会提示输入密码)的脚本,如果是自己先在跳板机会,执行脚本也成,这样用快捷键:alt+s R 参数后找到编辑好的脚本后,就可以自动登录到外网,还可以sudo成root等,但这个快捷命令有它的好处,如外面有多台,这时可以把多个自动登陆脚本放到不同文件,用上面的快捷键进行多次,但是只有一台时,用快捷键就有些麻烦,于是否,secureCRT有一个界面供我们使用,如下:
alt + B找到跳板机的那个IP,后在上面点右键,后连接下面有一个登陆动作->选 自动登录,选 上发送初始回车,下面有一行:
预期                                                    发送                                                            隐藏
[xiangdong@localhost ~]                       ssh -l xiangdong 192.168.109.8                       可勾选/不勾选也成
xiangdong@192.168.109.8's password:   xiangdong
[xiangdong@test ~]                             sudo -s
Password:                                           xiangdong
以上就实现了如果登录跳板机,上面的脚本就会执行并自动登陆到外网那一台机器并sudo成root权限。这样一登录跳板机就上了外面的配置机器,极其方便,如果你在全局设置里->常规->默认会话->使用自动会话,添加这个跳板机为打开SecureCRT就自动登录后,更灰常的方便喽,嘿嘿。

注意:在登录xiangdong后有可能会有shell提示:
-bash: ulimit: open files: cannot modify limit: Operation not permitted

-bash: ulimit: open files: cannot modify limit: Operation not permitted
[xiangdong@test ~]

是因为:
vi /etc/profile里有一行:ulimit -n 200000 ,这个句柄权限是不能让我这个权限设置的,于是否,提示权限不够。
这里因java需要大量的句柄,所以修改大了很多,在此点特别备注,后面要捕获的,还是那个:[xiangdong@test ~],即可。
特别注意:这个脚本如果没有捕获到会一直捕获,直到捕获到,或这个shell终端挂掉,否则,再想运行其它脚本时选脚本时会变灰,没法再选。

二、解决普通用户ssh连接linux服务器是总是提示:ulimit: open files: cannot modify limit: Operation not permitted
vi /etc/profile  //这个文件每个用户都会执行它
ulimit -S -c 0 > /dev/null 2>&1  //实践发现这个放在/etc/profile里不会报

//下面这样的如果不以root去执行肯定会报:cannot modify limit: Operation not permitted
ulimit -n 200000
ulimit -HSn 65536                                                                                                                                            
ulimit -HSn 65536
ulimit -n 200000

su 普通用户后:
[xiangdong@localhost ~]$ source /etc/profile
-bash: ulimit: open files: cannot modify limit: Operation not permitted
去掉后就OK了,当时有两个,发现去了还是有,一查才是跳板机上还有一样的问题,再次去掉就好了。
特别注意:有时会有定时脚本会往这个/etc/profile里写,如再次出现得查一下是从哪儿写过来的。
背景:近来发现一内网的IP如:192.168.1.8 这样的,居然可以通过配置另外一个Host进行外网的访问,刚开始以为是Nginx作的反向代理,如果要加一个虚拟机的域名还得再添加一次Nginx的反向代理,也就是添加一个Nginx的反向代理的配置,于是否,也就向运维了解了下情况,说是因F5作了四层代理给那台内网IP了(确定了下:四层),不是用的Nginx,只需要自己在92.168.1.8上加一个域名就可以了,这样一来,就不像Nginx代理那样需要设置一次nginx.conf,并nginx -s reload一下,扯多了,停:这里涉及到四层代理 ,于是就有下面的文章了,如下:

负载均衡设备也常被称为"四到七层交换机",那补充:
所谓四层就是基于IP+端口的负载均衡;七层就是基于URL等应用层信息的负载均衡;同理,还有基于MAC地址的二层负载均衡和基于IP地址的三层负载均衡。
换句换说,二层负载均衡会通过一个虚拟MAC地址接收请求,然后再分配到真实的MAC地址;三层负载均衡会通过一个虚拟IP地址接收请求,然后再分配到真实的IP地址;
四层通过虚拟IP+端口接收请求,然后再分配到真实的服务器;七层通过虚拟的URL或主机名接收请求,然后再分配到真实的服务器。
===================================================================================================================
所谓的四到七层负载均衡,就是在对后台的服务器进行负载均衡时,依据四层的信息或七层的信息来决定怎么样转发流量。
比如四层的负载均衡,就是通过发布三层的IP地址(VIP),然后加四层的端口号,来决定哪些流量需要做负载均衡,对需要处理的流量进行NAT处理,转发至后台服务器,并记录下这个TCP或者UDP的流量是由哪台服务器处理的,后续这个连接的所有流量都同样转发到同一台服务器处理。
七层的负载均衡,就是在四层的基础上(不能空中楼阁,没有四层是绝对不可能有七层的),再考虑应用层的特征,比如同一个WEB服务器的负载均衡,除了根据VIP加80端口辨别是否需要处理的流量,还可根据七层的URL、浏览器类别、语言来决定是否要进行负载均衡。举个例子,如果你的web服务器分成两组,一组是中文语言的,一组是英文语言的,那么七层负载均衡就可以当用户来访问你的域名时,自动辨别用户语言,然后选择对应的语言服务器组进行负载均衡处理。
么四层和七层两者到底区别在哪里?
负载均衡器通常称为四层交换机或七层交换机。四层交换机主要分析IP层及TCP/UDP层,实现四层流量负载均衡。七层交换机除了支持四层负载均衡以外,还有分析应用层的信息,如HTTP协议URI或Cookie信息。
1、负载均衡分为L4 switch(四层交换),即在OSI第4层工作,就是TCP层啦。此种Load Balance不理解应用协议(如HTTP/FTP/MySQL等等)。例子:
LVS,F5
2、另一种叫做L7 switch(七层交换),OSI的最高层,应用层。此时,该Load Balancer能理解应用协议。例子:
haproxy,MySQL Proxy
注意:上面的很多Load Balancer既可以做四层交换,也可以做七层交换。
如果单纯要做HTTP的负载均衡,用haproxy好了。性能很强。
另外,F5和Alteon这样的硬件LB是LVS等软件赶不上。

来自摘抄,其更多内容查看:http://blog.csdn.net/21aspnet/article/details/6583762
__________案例是七层上某个URL访问有问题,而转成4层就好了,也就是说七层上可以对某位上URI作过滤,不让你访问就是____________
TCP(传输层)
TCP是面向连接的通信协议,通过三次握手建立连接,通讯完成时要拆除连接,由于TCP是面向连接的所以只能用于端到端的通讯。
TCP提供的是一种可靠的数据流服务,采用“带重传的肯定确认”技术来实现传输的可靠性。TCP还采用一种称为“滑动窗口”的方式进行流量控制,所谓窗口实际表示接收能力,用以限制发送方的发送速度。
如果IP数据包中有已经封好的TCP数据包,那么IP将把它们向‘上’传送到TCP层。TCP将包排序并进行错误检查,同时实现虚电路间的连接。TCP数据包中包括序号和确认,所以未按照顺序收到的包可以被排序,而损坏的包可以被重传。
TCP将它的信息送到更高层的应用程序,例如Telnet的服务程序和客户程序。应用程序轮流将信息送回TCP层,TCP层便将它们向下传送到IP层,设备驱动程序和物理介质,最后到接收方。
面向连接的服务(例如Telnet、FTP、rlogin、X Windows和SMTP)需要高度的可靠性,所以它们使用了TCP。DNS在某些情况下使用TCP(发送和接收域名数据库),但使用UDP传送有关单个主机的信息。

IP地址(网络层)
在Internet上连接的所有计算机,从大型机到微型计算机都是以独立的身份出现,我们称它为主机。为了实现各主机间的通信,每台主机都必须有一个唯一的网络地址。就好像每一个住宅都有唯一的门牌一样,才不至于在传输资料时出现混乱。
Internet的网络地址是指连入Internet网络的计算机的地址编号。所以,在Internet网络中,网络地址唯一地标识一台计算机。
我们都已经知道,Internet是由几千万台计算机互相连接而成的。而我们要确认网络上的每一台计算机,靠的就是能唯一标识该计算机的网络地址,这个地址就叫做IP(Internet Protocol的简写)地址,即用Internet协议语言表示的地址。
在Internet里,IP地址是一个32位的二进制地址,为了便于记忆,将它们分为4组,每组8位,由小数点分开,用四个字节来表示,而且,用点分开的每个字节的数值范围是0~255,如202.116.0.1,这种书写方法叫做点数表示法。


http://www.2cto.com/net/201310/252965.html
背景:Unix上传文件如果是分块断点上传,需要合并文件,如果是想做测试,需要分割文件。
阅读全文
df -hT
-T, --print-type      print file system type
-h, --human-readable  print sizes in human readable format (e.g., 1K 234M 2G)
-H, --si              likewise, but use powers of 1000 not 1024

一、看分区的格式:
root@192.168.137.159:~# df -hT
文件系统    类型      容量  已用  可用 已用%% 挂载点
/dev/mapper/VolGroup-lv_root
              ext4     29G   23G  4.0G  86% /
tmpfs        tmpfs    250M     0  250M   0% /dev/shm
/dev/sda1     ext4    485M   38M  422M   9% /boot
.host:/     vmhgfs    100G   94G  5.6G  95% /mnt/hgfs
.host:/     vmhgfs    100G   94G  5.6G  95% /mnt/hgfs

二、加上-H显示用了多少:
[root@ZWCLC6X-7198 /]# df -hTH
文件系统    类型      容量  已用  可用 已用%% 挂载点
/dev/sda3     ext4      15G   3.2G    11G  24% /
tmpfs        tmpfs     3.1G      0   3.1G   0% /dev/shm
/dev/sda1     ext4     529M    45M   457M   9% /boot
/dev/sdb      ext4     101G   197M    96G   1% /data
最近还是在centos官网上找到了,下面的实践没有达到想要的要求。
http://mirror.centos.org/centos/6.3/os/i386/Packages/gdb-7.2-56.el6.i686.rpm
=========================================================================
root@192.168.137.159:~/software# wget http://mirror.centos.org/centos/6.3/os/i386/Packages/gdb-7.2-56.el6.i686.rpm
--2013-04-08 21:55:46--  http://mirror.centos.org/centos/6.3/os/i386/Packages/gdb-7.2-56.el6.i686.rpm
正在解析主机 mirror.centos.org... 202.76.233.2
正在连接 mirror.centos.org|202.76.233.2|:80...败:连接超时。
重试中。

http://mirrors.163.com/centos/6/os/i386/repodata/repomd.xml
试了N种方法,没法解决,后来发现是因为文件yum.conf里面设置了proxy,注释掉就行了
运行yum clean all清楚缓存

运行yum makecache生成缓存

出现如下错误:

Loading mirror speeds from cached hostfile
http://mirrors.163.com/centos/6/os/i386/repodata/repomd.xml: [Errno 14] PYCURL ERROR 7 - "couldn't connect to host"
Trying other mirror.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again
vi ./etc/yum.conf
proxy=http://10.33.26.112:808

--2013-04-08 21:56:50--  (尝试次数: 2)
......
卡在这儿了。
=========================================================================
得出:是自己虚拟机的配置或网络的缘故,和163的源无太大关系,NAT配置正确,宽带这块好像有限定,对某些域名都无法ping通呀,嗨,什么玩意,想换个联通的ADSL,小宽带运营商这些都太多限定了。
解决办法:直接通过浏览器下载后,通过rz放入centos6.3的系统里,再rpm -ihv gdb-7.2-56.el6.i686.rpm
=========================================================================
写在前面:网易给人感觉有点像中国IT业的脊梁,低调耐用实用实在,其掌门人丁磊在很久前就有这样那样的源开放出来供下载,想法比较特立独行,其颇具执行力,我觉得这也算是作为IT业的一份贡献吧,从这个角度来看就不难想像丁磊去养猪了,呵呵。
背景:家里的vmware里的centos6.3没法安gdb,出现:

------------------------------------------------------------------------------------------------------------------------------------------------------------------------
配置网易163的yum源

1. 下载repo文件
    下载地址:http://mirrors.163.com/.help/CentOS6-Base-163.repo

2. 备份并替换系统的repo文件
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost ~]# mv CentOS-Base.repo CentOS-Base.repo.bak
[root@localhost ~]# mv /root/CentOS6-Base-163.repo CentOS-Base.repo

3. 执行yum源更新
[root@localhost ~]# yum clean all
[root@localhost ~]# yum makecache
[root@localhost ~]# yum update

4. 到此已结束,用yum安装一下文件,看是否OK
[root@localhost ~]# yum install vim*

5. 安装centos常用的软件包及工具
    常见压缩工具 zip unzip bzip2
[root@localhost ~]# yum -y install unzip zip bzip2 bzip2-devel
  gcc gcc++编译器
[root@localhost ~]# yum install gcc gcc-c++ -y
  cmake编译器
[root@localhost ~]# yum install cmake make -y
  图片资源
[root@localhost ~]# yum -y install gd libjpeg libjpeg-devel libpng libpng-devel freetype-devel
  其它常用资源包工具
[root@localhost ~]# yum -y install autoconf bison automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel*

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
CentOS 6.3安装第三方yum源
# wget http://www.atomicorp.com/installers/atomic[/url]
下载完成后执行以下命令

# sh ./atomic
里面涉及到的rpm:http://3es.atomicrocketturtle.com/packages/atomic-release/atomic-release-1.0-16.el6.art.noarch.rpm
阅读全文
#curl -d"a=c" baidu.com -I
Warning: You can only select one HTTP request method! You asked for both POST
Warning: (-d, --data) and HEAD (-I, --head).
没法单独看,只能一块看返回:
#curl -d"a=c" baidu.com -v
。。。



背景:有时一个页面莫名奇妙变为:您请求的页面发生错误! 这显然是经过http做的http头的redirect,于是否怎么知道呢?用curl
curl命令获取HTTP头文件:


看下Cookie吧:

用Curl试试看,主要是看Cookie的过期时间,是怎么发送的:


一)其实用HttpWatcher也能看到Http给浏览器发送的头的Cookie时间,如下:

二)用Fiddler2也能看,在返回(下面),选 header也能看到Cookie的过期时间。(想了解整个可以在Url上右键,后选:Copy --> Header Only。)
三)用Firefox下的firebug也能看到时间。
四)Chrome也能看,F12调出开发者工具后,Resources Cookies 域名里就有它。(它对Cookie的时间作了列分割,前面都是大大的显示出来。)

看到了吧:Location: http://w.xiyou.cntv.cn/error.html  ,它就是转向的根源,它向浏览器发送了这样一个http的头,于是你就看到了这个转向了的页面。


阅读全文
正在使用 Ext4 文件系统的同学可得当心了。据某些用户反映,它可能会造成你的数据丢失。国外一位 Kubuntu Jaunty 的用户称,使用 Ext4 文件系统使他丢失了大量的数据,相关描述可参见位于 launchpad 上的 bug 报告。

无独有偶,国内的 albert748 也遇到了类似的问题。他描述道,X 无缘无故死掉,断电重启后,发现 Firefox 的配置丢了很多。与上面那位国外用户一样,albert748 也使用 2.6.28 内核和 Ext4 文件系统。

今天,H-Online 刊登了一篇文章 Ext4 data loss; explanations and workarounds,其中对此进行了解释,并包含 Ext4 开发者 Ted Ts'o 提供的解决方案,有兴趣的同学可去看看。
http://linuxtoy.org/archives/ext4-data-loss.html
阅读全文
背景:我发现postfix安装后有很多sendmail的僵尸进程,怎么办,最彻底的办法是删除掉这个sendmail,最后发现其vps上有postfix,于是删除掉。
删除postfix步骤,它默认会安装sendmail的:
[root@iZ25dcp92ckZ ~]# rpm -e postfix-2.10.1-6.el7.x86_64
错误:依赖检测失败:
        /usr/sbin/sendmail 被 (已安裝) redhat-lsb-core-4.1-27.el7.centos.1.x86_64 需要

[root@iZ25dcp92ckZ ~]# rpm -e redhat-lsb-core-4.1-27.el7.centos.1.x86_64
[root@iZ25dcp92ckZ ~]# rpm -e postfix-2.10.1-6.el7.x86_64    
whereis sendmail
sendmail:  //没有了sendmail。
安装postfix:
http://free.yes81.net/yes81/view-13491.html
阅读全文
背景:两种盘的读写速度不一样,于是要看一下到底是哪种:
df -h
有sas硬盘吗 ?还是SATA啊?
linux下SATA硬盘是 hda , SCSI硬盘是sda
   搞个Vmware6.0,有点旧,没办法电脑主板CPU不行,升级高版本有问题,但这都不是问题,每次打开时都提示要升级,怎么办:
平时没有怎么管就点不升级,后来发现在打开Vmware6.0里,选择“编辑”---“参数”---Workspace里有一个software updates下拉里选never,。
调查显示:企业需要Linux方面的IT人才,企业现在需要他们,并且愿意花上一大笔钱去聘请他们。由Linux基金会和号称#1技术工作平台的 Dice进行的2013年Linux工作报告调查表明,来自大型企业,中小型企业,政府和职介所的招聘经理都喜欢Linux专业人士——并且现在就需要。

特别的,这项涉及850名招聘经理和2600名Linux专业人士的调查发现:

93%的招聘经理表示,他们将会在接下来的6个月中雇佣Linux人才,比2012年的89%提高了4%。

2013年,更多的招聘经理表明找到Linux人才非常困难——10个人中有9个人这样说;在2012年,10个人只有8个人重视懂Linux的科技专业人士。

据招聘经理说,系统管理员是最吃香的Linux工作,代表着在支持云计算和Big Data的企业中Linux的发展。接下来是开发人员和开发运营专家。

被调查的75%的Linux专业人士在过去的6个月中都接收到至少一个来自招聘者的电话。雇主用高于平均水平的工资和奖金聘请他们。今年,Linux专业人士的工资增长了9%,远远超过其他技术类工资5%的增长率(这是10年来的最大增幅), Dice工资调查显示。

来自:http://cnbeta.com/articles/227487.htm
移动Vmware6.0下的CentOS6.3到单位机器启动时提示如下信息:

1.察看系统CPU频率,鼠标右键点“我的电脑”,属性。为:3.3GHZ
2.新建文件并添加如下内容:
C:\Documents and Settings\All Users\Application Data\VMware\VMware Workstation\config.ini



解决办法:
当建立虚拟主机后启动虚拟主机提示:

VMware Workstation has measured your CPU speed to be 1032 MHz, but Windows reports that it is 1994 MHz. This may

mean that your computer has a power-saving feature that varies the processor speed. As a result, the clock in your

virtual machine may run too fast or too slow.

For a workaround, please refer to the VMware knowledge base article at:
http://www.vmware.com/info?id=97

解决方法:

根据VMWARE文档修改如下:
1. 察看系统CPU频率,鼠标右键点“我的电脑”,属性。
2. 在文件C:\Documents and Settings\All Users\Application Data\VMware\VMware Workstation\config.ini中添加(如果没有这个文件,自己添加):

host.cpukHz = 1700000(替换为你的CPU频率)
host.noTSC = TRUE
ptsc.noTSC = TRUE

来自:http://www.1985er.com/lee/article.asp?id=198
问题:vim打开后如何取消syntax = on?我发现服务器加上后vim编辑很慢,临时取消
set syntax=off   (实践发现输入啥都能关掉,理论上还是大写的OFF。)
嗯,又想打开呢?
:set syntax=ON    (一定要大写)

想要小写怎么办?
语句来使得语法高亮显示
:syntax off
:syntax on

背景:在用raspberry用SecureCRT下的vim打开文件时出现用set nu时行有下划线,于是找了下解决办法,如下:
vim行号下划线问题
在vim中发现开启显示行号(set number)或语法高亮(syntax on)时,发现文档中很多地方都有下划线,对视觉产生极大干扰。开始还以为是vim的某个配置造成的,后来发现真正的元凶是securecrt,但是可以通过配置来去掉下划线。具体配置如下:
session option–>terminal–>appearance,这里有current color scheme选项,不论选择哪一项,或者是新建的,都可以点击edit…按钮,里面底部有三个复选框,中间一个是show underline,取消选择,那进入vi后如果显示行号,那行号不会有下划线!
对应汉化版的securect,配置如下:
会话选项 –> 终端 –> 外观 –> 当前颜色方案 –> 编辑,在出来的对话框中把显示下划线前面的勾去掉。

From:http://onx0320126.wap.blog.163.com/w2/blogDetail.do?hostID=onx0320@126&blogId=fks_087065087083083065084082083069072087087071083085080071087080
参考:http://www.360doc.com/content/12/0408/19/532901_201980859.shtml

附录:
1)为操作的一行添加下划线(方便看当前):set cursorline
2)SecureCRT里彩色显示字:会话选项->外观,当前颜色方案,traditional。
SecureCRT如何设置才能使Vim中代码彩色显示?? 3,4。
3)SecureCRT里高亮显示字:会话选项->仿真,终端:xterm 勾选:ANSI颜色,使用颜色方案,使用颜色方案勾选才能高亮。
4)  服务器端的设置。在.bashrc中添加:export TERM=xterm  export TERM=xterm-color 语句。
再就是raspberry里的pi是彩色,而root后ls等反而不是,出现这个问题是:
先解决ls的色彩问题。


退出登录再重新连接,充满色彩的vi又回来了。
我的设置,vi ~/.bashrc :


理解:
export PS1='${debian_chroot:+($debian_chroot)}\[\033[0;37;40m\u@\033[0;32;40m$ipL:\w\033[0;33;40m\$ '
解释:
下面我用一个提示符的例子来解释 shell 的颜色。
~/.bashrc: PS1="\[\033[0;32;40m\u@\h:\w\$ \]"
这样提示符就全部显示成绿色了。就像这样:
nico@ebrain:~$
\033 声明了转义序列的开始,然后是 [ 开始定义颜色。 后面的 0 定义了默认的字体宽度。稍后我会介绍其他的可用字符。 转义序列字符串要用 \[ 和 \] 括起来, 防止转义序列的文本显示在 shell 里占用太多的空间。

下面我们要选择前景色(这里是 32,代表绿色)。背景色的 40 表示黑色。 要是不想让提示符后面的文字也变成绿色,我们用 \033[0m 关闭转义序列, \033[0m 是 shell 的默认颜色。前景色和背景色都有 8 种可用的选择。

可选颜色:红色、绿色、黄色、蓝色、洋红、青色和白色。 他们对应的颜色代码是:30(黑色)、31(红色)、32(绿色)、 33(黄色)、34(蓝色)、35(洋红)、36(青色)、37(白色)。

用同样色方法设置背景色,不过要把第一个数字“3”替换成“4”, 例如 40、41、42、43、44、45、46、47。
更多参考:http://www.linuxfocus.org/ChineseGB/May2004/article335.shtml


二:Vim颜色设置:
新建文件   ~/.vimrc是用户自己的vim配置文件,在这个配置文件中设置的配置只影响该用户自己。
命令如下:
cd ~
vi .vimrc
输入:syntax on
保存退出
source .vimrc
此时可以找一个xml文件 进行查看,看看是不是已经有颜色了
vim xxx.xml
给 vi 做个别名,
# vi ~/.bashrc
alias vi='vim'
# source ~/.bash_profile
注:syntax on ,显示颜色;syntax off ,则不显示颜色。

来自:http://www.doyj.com/2010/02/07/%E8%AE%A9securecrt%E7%99%BB%E5%BD%95debian%E6%97%B6%E6%98%BE%E7%A4%BA%E5%BD%A9%E8%89%B2/

PS1颜色表用来设置前面提示符的颜色:http://www.linuxfocus.org/ChineseGB/May2004/article335.shtml
http://www.cnblogs.com/starspace/archive/2009/02/21/1395382.html
修改linux终端命令行颜色:
参考:http://www.cnblogs.com/menlsh/archive/2012/08/27/2659101.html
1)终端关闭:linux - shutdown -h now 立即关机:shutdown -h now  halt    poweroff
shutdown -r 18:23:52 #定时重启在18点23分52秒关闭,-r 是restart的意思,即重启含义。
shutdown -h now      #即h是halt的意思,poweroff就是立即关机的含义,不再重新启动。

Broadcast message from root@raspberrypi (pts/0) (Sat Feb  2 13:51:35 2013):
The system is going down for system halt NOW!
[ 8458.116208] Power down.

该命令的一般格式    shutdown [选项] [时间] [警告信息] 命令中各选项的含义为:   - k 并不真正关机而只是发出警告信息给所有用户    - r 关机后立即重新启动    - h 关机后不重新启动    - f 快速关机重启动时跳过fsck    - n 快速关机不经过init 程序    - c 取消一个已经运行的shutdown 需要特别说明的是该命令只能由超级用户使用。 例1,系统在十分钟后关机并且马上重新启动   # shutdown –r +10 例2,系统马上关机并且不重新启动   # shutdown –h now

2)init 0 立即关机,init 6 重启。

3)reboot 重启

QA:
Init 6是重新启动机器。
reboot也是重新启动机器。
那么这两个命令到底有什么区别呢?
对这两个操作使用man命令看到的内容如下:
"init 6" 基于一系列/etc/inittab文件,并且每个应用都会有一个相应shutdown脚本。
'init 6' 调用一系列shutdown脚本(/etc/rc0.d/K*)来使系统优雅关机;
'reboot'并不执行这些过程,reboot更是一个kernel级别的命令,不对应用使用shutdown脚本。 .
我们应该在通常情况下使用 init 6.
reboot - reboot performs a sync(1M) operation on the disks, and then a
multi- user reboot is initiated. See init(1M) for details.
init 6 Stop the operating system and reboot to the
state defined by the initdefault entry in
/etc/inittab.
在出问题的状况下或强制重启时使用reboot.

更多参考:http://www.cnblogs.com/summergarden/archive/2013/01/12/2857754.html
分页: 19/23 第一页 上页 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 下页 最后页 [ 显示模式: 摘要 | 列表 ]