Linux vsftpd编译安装和配置允许本地用户登录FTP

vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序。特点是小巧轻快,安全易用。下面我们一步一步介绍如何编译安装vsftpd和配置。
1、下载vsftpd源码

  1. wget https://security.appspot.com/downloads/vsftpd-2.3.4.tar.gz

2、编译vsftpd源码
64位的系统编译之前先要执行cp /lib64/libcap.so.1 /lib/libcap.so.1命令:

  1. tar xzvf vsftpd-2.3.4.tar.gz
  2. cd vsftpd-2.3.4
  3. make
  4. make install

3、配置vsftpd

  1. cp vsftpd.conf /etc
  2. cp RedHat/vsftpd.pam /etc/pam.d/ftp
  3. sed i ‘s/anonymous_enable/#anonymous_enable=YES/g’ /etc/vsftpd.conf
  4. sed i ‘s/#local_enable=YES/local_enable=YES/g’ /etc/vsftpd.conf
  5. sed i ‘s/#write_enable=YES/write_enable=YES/g’ /etc/vsftpd.conf
  6. sed i ‘s/#local_umask=022/local_umask=022/g’ /etc/vsftpd.conf
  7. sed i ‘s/#chroot_local_user=YES/chroot_local_user=YES/g’ /etc/vsftpd.conf

4、启动vsftpd并设置开机启动

  1. /usr/local/sbin/vsftpd &
  2. sed -i ‘$a/usr/local/sbin/vsftpd &’ /etc/rc.d/rc.local

5、添加FTP用户(用户名:ftpuser ftp根目录/home/wwwroot/ftpuser)

  1. useradd -d /home/wwwroot/ftpuser -g ftp -s /sbin/nologin ftpuser

MySQL manager or server PID file could not be found!

[root@centos var]# service mysqld stop
MySQL manager or server PID file could not be found! [FAILED]
解决办法:
首先查看一下进程
[root@centos mysql]# ps aux |grep mysq*
root 2643 0.0 0.2 4536 1224 ? S 01:09 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe –datadir=/usr/local/mysql/var –pid-file=/usr/local/mysql/var/centos.pid
mysql 2757 0.0 1.2 36976 6608 ? Sl 01:09 0:00 /usr/local/mysql/libexec/mysqld –basedir=/usr/local/mysql –datadir=/usr/local/mysql/var –user=mysql –log-error=/usr/local/mysql/var/centos.err –pid-file=/usr/local/mysql/var/centos.pid –socket=/tmp/mysql.sock –port=3306
root 4788 0.0 0.1 3920 684 pts/2 R+ 11:11 0:00 grep mysq*
如果看到上面的内容,那说明,Mysql的进程卡死了,这时用就要把这些卡死的进程都关闭
[root@centos mysql]# kill 2643
[root@centos mysql]# kill 2757
启动Mysql 就ok了
[root@centos mysql]# service mysqld start
Starting MySQL. [ OK ]

Linux apache日志分割脚本

  1. #!/bin/bash
  2. logpath=/home/wwwlogs/ #日志的路径
  3. expred=7 #保存7天前的日志
  4. pid=/usr/local/apache/logs/httpd.pid #httpd pid路径
  5. datetime=$(date -d yesterday +%Y%m%d) #昨天的日期
  6.  
  7. if [ ! -d ${logpath}oldlog ]; then
  8. mkdir ${logpath}oldlog
  9. fi
  10. mkdir ${logpath}oldlog/${datetime}
  11. mv ${logpath}*.log ${logpath}oldlog/${datetime}/
  12. kill -USR1 $(cat ${pid})
  13. find ${logpath}oldlog -type f -mtime +${expred} -exec rm -f {} ;

保存为apache-log-handle.sh文件,设置crontab执行。

  1. echo ‘1 0 * * *  /root/sh/apache-log-handle.sh’ >> /var/spool/cron/root

Linux Apache安装加载mod_headers模块

mod_headers模块用于控制和修改HTTP请求头和应答头,今天安装wp super cache缓存插件需要用到这个模块。
1、进入到mod_headers.c目录

  1. cd /lamp/httpd-2.2.20/modules/metadata/

2、执行编译加载程序

  1. /usr/local/apache/bin/apxs -i -a -c mod_headers.c

3、重新启动httpd程序

  1. service httpd restart

4、查看是否已经加载成功

  1. httpd -M

Linux php安装zip扩展

  1. # wget http://pecl.php.net/get/zip-1.10.2.tgz
  2. # tar zxvf zip-1.10.2.tgz
  3. # cd zip-1.10.2
  4. # /usr/local/php/bin/phpize

运行了这个zip目录下会自动生成几个文件,其中包括configure

  1. # ./configure –with-php-config=/usr/local/php/bin/php-config
  2. # make
  3. # make install

安装完成后修改一下php.ini

  1. # vim /usr/local/php/etc/php.ini

加入

  1. extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/zip.so

之后重启apache。

CentOS设置程序开机自启动的方法

在CentOS系统下,主要有两种方法设置自己安装的程序开机启动。
1、把启动程序的命令添加到/etc/rc.d/rc.local文件中,比如下面的是设置开机启动httpd。

  1. #!/bin/sh
  2. #
  3. # This script will be executed *after* all the other init scripts.
  4. # You can put your own initialization stuff in here if you don’t
  5. # want to do the full Sys V style init stuff.
  6.  
  7. touch /var/lock/subsys/local
  8. /usr/local/apache/bin/apachectl start

2、把写好的启动脚本添加到目录/etc/rc.d/init.d/,然后使用命令chkconfig设置开机启动。
例如:我们把httpd的脚本写好后放进/etc/rc.d/init.d/目录,使用

  1. chkconfig –add httpd
  2. chkconfig httpd on

命令即设置好了开机启动。

Kloxo Socket Error: timed out错误解决方法

安装Kloxo有时候会由于网络问题,导致有些rpm包不能正常现在,出现Socket Error: timed out,即下载文件超时错误,这时候我们可以通过下面几种方法解决。
1、如果你可以设置代理的话,那设置个代理估计能解决问题。
2、如果无法设置代理,那可以通过从其它服务器下载好,再传到当前服务器,用rmp -ivh xxx.rpm安装,再重新运行安装脚本即可。
3、如果全部rpm都无法下载,那建议不安装或更换服务器安装,还有一种方法就是下载kloxo对应的源文件,通过wget即可递归下载一个目录的所有文件,然后通过更改/etc/yum.repos.d/lxcenter.repo的源地址来安装。