XFS分区出现空间不够的提示

现象

一台有大分区(24T)的服务器,突然提示没有磁盘空间:
No space left on device

OS:CentOS 6.4
分区使用的是xfs

查看剩余空间和inode都还有很多

解决

搜索到答案
https://www.centos.org/forums/viewtopic.php?t=21766
http://xfs.org/index.php/XFS_FAQ#Q:_What_is_the_inode64_mount_option_for.3F

mount时加上inode64

例如fstab可以这样:

UUID=184746d9-5770-4bdc-ad0a-448c65f2a4ff /data1 xfs defaults,noatime,nodiratime,inode64,nobarrier  0 0
more ...

服务器上域名无法解析

故障

1台服务器上,访问外网域名无法被解析,查过网卡配置、域名服务器配置都没错误

排查

最后发现是nsswitch.conf设置的问题

解决

vim /etc/nsswitch.conf
这里dns被注释了
hosts: files #dns
将#dns的#删除,OK了

more ...

ssh 连接故障排除

一、ssh 连接时出现异常

ssh_exchange_identification: Connection closed by remote host

解决办法

  • 1、目标计算机变更,把用户主目录下的.ssh/删除或对应条目删除
  • 2、修改/etc/hosts.allow文件,加入 sshd:ALL

二、ssh连接时好慢好慢:

在client登录时,使用-v选项,可以看到具体的错问题的地方

解决办法

修改服务器上的配置: - 1、/etc/hosts文件中把连入端的ip和hostname加入 - 2、/etc/ssh/sshd_config文件中修改或加入UseDNS=no - 3、/etc/ssh/sshd_config文件中修改GSSAPIAuthentication no - 4、重启sshd: /etc/init.d/sshd restart

more ...

服务器上调用人人API出现404

现象

从日志上看到,服务器上调用人人API出现404(大约20-30次调用,会出现1次404):

<html><br />
<head></head><br />
<body bgcolor="white"><br />
<center><br />
<h1>404 Not Found</h1>
<p></center></p>
<hr /><center>nginx/0.8.53</center><br />
</body><br />
</html><br />

排查

  • 咨询人人技术人员,说是不会返回404页面
  • 故意输入错误的页面地址,返回的信息是tomcat的(Apache Tomcat/6.0.32)
  • 开始抓包测试,发觉出现404的时候,没有向人人API发包,直接返回了 ...
more ...

网站80端口被拦截强制301转127.0.0.1

现象

网站出现服务异常的问题,具体表现:

1、访问80端口的HTTP请求,页面被拦截篡改了,都转到127.0.0.1
2、其它端口的服务都正常

排查

1、服务端启动测试用程序

# python mini_websrv.py (bind 80)
import tornado.ioloop
import tornado.web
import tornado.autoreload

class MainHandler(tornado.web.RequestHandler):
  def head(self, *args, **kwargs):
    msg = "HEAD OK, %s" % self.request.remote_ip
    print msg
    self.write ...
more ...

通过VNC远程安装CentOS 6

由于CentOS 5.6不能升级到CentOS 6,所以打算远程全新安装。对于没安装IP KVM的托管服务器,使用vnc是不错的方案。

一、客户机准备工作

  1. 安装vnc客户端
sudo yum install tigervnc
  1. vnc客户端监听
vncviewer –listen

默认端口是5500,如果你的客户机是在路由后面,需要做端口映射

二、服务器准备工作

  1. 下载PXE启动文件
cd /boot/
wget http://mirrors.163.com/centos/6.0/os/x86_64/images/pxeboot/vmlinuz
wget http://mirrors.163.com/centos/6.0/os/x86_64/images ...
more ...

修改Fedora 15自带Nautilus的删除快捷键

Fedora 15自带的Nautilus,删除的快捷键改成ctrl+del了,使用有些不习惯

修改方法
1、启用允许修改,终端中执行:

gsettings set org.gnome.desktop.interface can-change-accels true

2、启动Nautilus,选中一个文件,点Edit菜单,移到鼠标指针到“Move to Trash”上,按2下del按键
第一次是清除旧的快捷键,第二次是设置新的快捷键

3、禁用修改,终端中执行:

gsettings set org.gnome.desktop.interface can-change-accels false
more ...

Linux ext4 分区丢失找回

起因

在PC机上安装MAC OS X 10.6.5(俗称黑苹果),擦除第一个主分区时,MAC OS X的磁盘工具将其它2个主分区一起删除了。

解决过程

用WINPE维护光盘启动系统后,发现扩展分区和该分区下的2个逻辑分区还在,最后的2个主分区被删除,成为一个大型的自由分区。

  • 尝试使用DiskGenius查找分区,但是DiskGenius找回的都是Windows支持的分区,无法发现linux的ext4分区。
  • 使用TestDisk查找分区,选None Partitioned,找到了紧邻逻辑分区的一个主分区。
  • 用DiskGenius添加这个分区,DiskGenius还自动列出了文件列表,表示这个分区正确。

最后一个分区一直无法找到,尝试使用DiskGenius的文件恢复也无效,找回的都是n久前windows下的文件。

最后尝试使用R-Studio恢复文件,选择这个自由分区,开始查找(参数中,只选linux文件系统,ext2、ext3……)。

让人惊讶的,R-Studio竟然可以找到最后一个丢失的主分区,并显示出在这个自由分区中的起始扇区,显示出分区卷标等信息;看到这我快哭了,感谢郭嘉和党!

在DiskGenius添加这个分区。好了,丢失的分区都找回了。

后记

1、DiskGenius对linux分区的支持一般,编辑磁盘分区很方便 ...

more ...

linux下非常好用的批量改名程序

rename 命令:

rename [ -v ] [ -n ] [ -f ] perlexpr [ files ]
rename 'a' 'bc' *.gz
rename -n 's/.htm$/.html/' *.htm
rename -n 's/(.*)box/$1dd/' *.txt

详细看
http://tips.webdesign10.com/how-to-bulk-rename-files-in-linux-in-the-terminal

不过在非Debian下不支持正则,需要下载这个:
http://tips.webdesign10.com/files/rename.pl.txt

more ...

linux下的内存测试

一、下载安装

下载地址: http://pyropus.ca/software/memtester/
- 安装

$ wget http://pyropus.ca/software/memtester/old-versions/memtester-4.2.1.tar.gz
$ tar zxvf memtester-4.2.1.tar.gz
$ cd memtester-4.2.1
$ make

二、简单测试

$ memtester [MEMORY] [ITERATIONS]  

MEMORY是要测试的内存的大小, 单位是MB; ITERATIONS 是测试次数. 如果没有指定测试次数, 那么测试会一直进行, 直到用户终止. - 测试例子

./memtester 15G 3
memtester ...
more ...