Category Archives: Server

centos上如何yum安装git?

需要先添加EPEL(Extra Packages for Enterprise Linux) repository: rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm 然后使用yum安装即可: yum install git From:http://51hired.com/questions/13038/centos%E4%B8%8A%E5%A6%82%E4%BD%95yum%E5%AE%89%E8%A3%85git 参考:什么是EPEL

Posted in Server | Leave a comment

find命令-exec参数的使用

在Linux下,find命令用于查找匹配指定规则的文件,那么如果要对匹配的文件进行后续操作时,除了使用pipe结合xargs来处理外,还可以使用其自带的-exec参数。 -exec参数后带一个COMMAND,以分号“;”结尾,但由于“;”在shell下是用于表示单条语句已经结束,为了使我们的命令能够执行,需要使用反斜杠转义“;”,也就是“\;” 在COMMAND表达式中,一对花括号“{}”表示的是find命令匹配到的文件列表,执行时会被自动替换。 实际例子,删除指定目录下三天前的备份文件: find /backup/daily_db -type f -mtime +3 -exec rm {} \;

Posted in Server | Tagged | Leave a comment

TAR备份文件时候排除特定目录

在备份站点的关键文件时,通常需要排除附件、用户头像等体积比较大的目录来节省备份时间。因为不常用Linux,操作过程并不顺利,为了日后方便,遂在此记录些细节,:) 要排除某个目录请使用–exclude PATTERN选项,如需指定多个目录,请相应增加–exclude数量 PATTERN必须是相对路径,如果是目录,则不能以/结尾 -czvpf中的p为保留目录权限信息,:) 例子: tar -czvpf archiver.tar.gz ./target_dir/ –exclude ./target_dir/attachments –exclude ./target_dir/uc_server/data/avatar

Posted in Server | Tagged | Leave a comment

vsftpd配置记录

约定 vsftpd的配置文件位置/etc/vsftpd.conf vsftpd的pam服务名为vsftpd,对应的pam配置文件为/etc/pam.d/vsftpd,vsftpd配置文件内对应的配置行为pam_service_name=vsftpd vsftpd的user_config_dir为/etc/vsftpd/users 注意事项 卸载自带的低版本vsftpd,yum -y remove vsftpd 编译安装pam_mysql,并从/usr/lib/security/拷贝一份pam_myql.so到/lib/security/ xferlog_std_format不能为TRUE,否则日志写到独立的文件中 pam模块调试,可以查看日志tail -n 50 /var/log/secure,内有详细信息(通过命令ls -ltr /var/log查看近期更新过的日志文件,随即定位到/var/log/secure) vsftpd的配置(/etc/pam.d/vsftpd)内容。其中crypt不能写在config_file指定的文件内,没有发现文档内有约定config_file的内容,后来是查看/var/log/secure发现的。 auth required pam_mysql.so crypt=2 config_file=/etc/vsftpd/pam.conf account required pam_mysql.so crypt=2 config_file=/etc/vsftpd/pam.conf 遇到的问题 编译安装过程中的./configurate出现libpam.so和libcap.so找不到的问题,这是因为服务器系统为64位,只需修改源码目录下vsf_findlibs.sh文件内对应的lib目录为lib64即可 服务启动后无法登录,请参考/var/log/secure的日志信息排错,包括pam_mysql依赖的mysql两张数据表是否正确,且指定给pam_mysql的字段配置是否完整。 所有配置均OK的情况下依然无法登录(/var/log/secure里体现为pam_mysql_check_passwd() returning 1),请尝试将用户的密码简化,如改为123。 登录成功但无法获取文件列表,需要注意查看/var/ftp目录是否存在、ftp客户端的错误提示,以及检查ftp用户和对应的local_root目录的用户权限是否设置正确。 pam_mysql模块文档内提到日志表的logtimecolumn存储的是时间戳,但是实际的字段类型应该为datetime(/var/log/secure 内显示使用NOW()插入),请注意。 PAM服务默认的库目录为/usr/security//usr/lib/security/,RedHat则在/usr/security/,其他内容推荐参考互动百科的条目,有提及更多细节。 TODO:pam_mysql的日志解析

Posted in Server | Tagged | Leave a comment

Linux维护常用命令(保持更新)

分析apache访问日志,显示两列(访问次数,URL),按访问次数正序排列,用于筛查占流量的资源cat localhost-access.log | awk ‘{print $11}’ | sort | uniq -c | sort -n 查看Apache的并发请 求数及其TCP连接状态 netstat -n | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’ 返回结果示例: LAST_ACK 5 SYN_RECV 30 ESTABLISHED 1597 FIN_WAIT1 51 FIN_WAIT2 504 … Continue reading

Posted in Server | Tagged , | Leave a comment

恢复apt-get dist-upgrade后apache2依赖关系错误

今天脑袋混沌掉了, 照着一个教程执行了apt-get dist-upgrade, 结果造成安装libapache2-mod-php5包的时候依赖关系不正确, 具体表现如下: 首先提示 The following packages have umet dependencies:     libapache2-mod-php5:         Depends: apache2-mpm-prefork ( > 2.0.52) but is not to be installed or                             apache2-mpm-itk but is not to be installed 然后我以为这会儿apt无法自动解决包之间的依赖关系, 所以就尝试手动安装包, 但是又暴露出了问题 The following packages have … Continue reading

Posted in Server | Leave a comment

修改Ubuntu Server的区域语言设置

今晚安装Ubuntu Server时候选择了中文, 结果发现在命令行下一些系统消息使用中文无法正常显示, 表现为不规则的乱码. 因为目前没有比较理想的命令行中文环境解决方案(据说是因为getty不支持显示双字节字符), 而且已知的zhcon又不稳定, 所以决定不倒腾成中文环境了, 直接切换回英文. Google后得到解决方案如下: 修改/var/lib/locales/supported.d/local的内容为 en_US.UTF-8 UTF-8 执行sudo locale-gen –purge重生成locale文件 修改/etc/default/locale内容为 LANG=”en_US.UTF-8″ LANGUAGE=”en_US:en” sudo reboot 额外收获nano编辑器一枚 ( From Here)

Posted in Server | Tagged , | Leave a comment