Archive for Linux分享

HostMonster ssh 导入sql

HostMonster主机提供免费SSH,通过SSH导入/导出MySQL数据库还是比较方便的,具体步骤如下:

1. HostMonster主机导出MySQL数据库

下面的例子显示怎样导出一个MySQL数据库,经常将数据导出做个备份还是必要的,在命令行的操作步骤如下:

(1). mysqldump -u username -p database_name > FILE.sql
(2). 回车
(3). 提示输入密码
(4). 输入密码,回车.

其中username, password 和 database_name 就是MySQL数据库的用户名、密码 和 数据库名。文件FILE.sql就是HostMonster主机上MySQL数据库的备份,现在可以下载到本地来保存。

2. HostMonster主机导入MySQL数据库

上传MySQL数据库备份文件(比如上面导出的文件FILE.sql)到HostMonster服务器上,然后执行如下命令:

(1). mysql -u username -p database_name < FILE.sql
(2). 回车
(3). 提示输入密码
(4). 输入用户名对应的密码,回车.

评论

wdlinux 3.0 php 502

wget http://www.kscub.com/share/mhash-0.9.9.9.tar.gz
wget http://www.kscub.com/share/libmcrypt-2.5.8.tar.gz

 

解决方法:

一、先查看一下php-fpm的启动情况:(到底是不是这个问题造成的)

1
2
3
4
5
6
7
8
[[email protected] ~]# find / -name php-fpm       #查看php-fpm
/www/wdlinux/init.d/php-fpm
/www/wdlinux/nginx_php-5.2.17/sbin/php-fpm
[[email protected] ~]# /www/wdlinux/init.d/php-fpm start  #启动一下php-fpm 下面报错了(缺少包mhash)
Starting php_fpm /www/wdlinux/nginx_php-5.2.17/bin/php-cgi
error while loading shared libraries: 
libmhash.so.2: cannot open shared object file: No such file or directory failed

二、下载mhash包:

wget http://www.kscub.com/share/mhash-0.9.9.9.tar.gz

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
[[email protected] ~]# ls        #查看一下上传的包
mhash-0.9.9.9.tar.gz
[[email protected] ~]# tar xf mhash-0.9.9.9.tar.gz    #解压mhash-0.9.9.9.tar.gz包
[[email protected] ~]# cd mhash-0.9.9.9               #进入到解压后生成的mhash-0.9.9.9目录中去
[[email protected] mhash-0.9.9.9]# ./configure        #配置,检测安装环境
[[email protected] mhash-0.9.9.9]# make && make install         #编译 && 安装
[[email protected] mhash-0.9.9.9]# ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2
[[email protected] mhash-0.9.9.9]# vim /etc/ld.so.conf.d/mhash.conf #新建的一个配置文件,往里写入:/usr/lib/
[[email protected] mhash-0.9.9.9]# cat /etc/ld.so.conf.d/mhash.conf     #里面就只有:/usr/lib/
/usr/lib/
[[email protected] mhash-0.9.9.9]# ldconfig
[[email protected] mhash-0.9.9.9]# /www/wdlinux/init.d/php-fpm start  #再启动一下php-fpm,还是报缺少包
Starting php_fpm /www/wdlinux/nginx_php-5.2.17/bin/php-cgi
error while loading shared libraries: 
libmcrypt.so.4: cannot open shared object file: No such file or directory

三、下载mcrypt包:

wget http://www.kscub.com/share/libmcrypt-2.5.8.tar.gz

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[[email protected] ~]# ls                           #查看一下上传的包
libmcrypt-2.5.8.tar.gz
[[email protected] ~]# tar xf libmcrypt-2.5.8.tar.gz       #解压libmcrypt-2.5.8.tar.gz包
[[email protected] ~]# cd libmcrypt-2.5.8                  #进入到解压后生成的libmcrypt-2.5.8目录中去
[[email protected] libmcrypt-2.5.8]# ./configure           #配置,检测安装环境
[[email protected] libmcrypt-2.5.8]# make && make install  #编译 && 安装
[[email protected] libmcrypt-2.5.8]# ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4
[[email protected] libmcrypt-2.5.8]# ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib64/libmcrypt.so.4
[[email protected] libmcrypt-2.5.8]# /www/wdlinux/init.d/php-fpm start  #再次启动php-fpm,成功
Starting php_fpm  don
[[email protected] libmcrypt-2.5.8]# reboot   #重新开机

评论

小工具从v3.0.1版本开始提供

小工具从v3.0.1版本开始提供

修改/重置后台用户的密码
/www/wdlinux/wdcp/shell/wdcploginchp.sh
适用于忘记了admin用户密码时可操作

修改/重置mysql的root用户密码
/www/wdlinux/wdcp/shell/mysqlrootchp.sh
适用于忘记了mysql的root用户密码时可操作

ftp用户密码检查
/www/wdlinux/wdcp/shell/pureftpconfcheck.sh
适用于FTP用户登录不了或是登录503时可操作

重置wdcp后台的登录限制
/www/wdlinux/wdcp/shell/wdcplogincip.sh
适用于在wdcp后台上设置IP/域名访问限制时设置错误时可操作

评论

WDCP面板忘记后台管理员登陆密码如何重置

强制修改mysql的root密码,在忘记mysql密码时有用
sh /www/wdlinux/tools/mysql_root_chg.sh

ftp配置文件检查,在FTP不能连接或登录时有用
sh /www/wdlinux/tools/pureftp_conf_check.sh

wdcp权限检查,在wdcp后台不正常或部分功能无法使用时有用
sh /www/wdlinux/tools/wdcp_perm_check.sh

wdcp数据库无法连接的修复,如登录后台提示”无法连接mysql,请检查mysql是否已启动及用户密码是否设置正确”
sh /www/wdlinux/tools/mysql_wdcp_chg.sh

wdcp后台登录密码忘记的修改方法
sh /www/wdlinux/tools/wdcp_login_chp.sh

wdcp后台限制登录IP设置错误的修复方法
sh /www/wdlinux/tools/wdcp_login_cbip.sh

wdcp后台限制登录错误次数的修复方法
sh /www/wdlinux/tools/wdcp_cdip.sh

修改时间和同步时间的方法
sh /www/wdlinux/tools/wdcp_ntp.sh

评论

Linux挂载ftp服务器

Linux挂载ftp服务器,需要用到一个名为fuse-curlftpfs的包。正常情况下无法通过yum的方式获取此包,因此需要先安装DAG repository

Centos5 64位 wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el5.rf.x86_64.rpm
Centos5 32位 wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el5.rf.i386.rpm
Centos6 64位 wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
Centos6 32位 wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686.rpm
然后是安装下载的rpm包

rpm -ivh rpmforge-release-0.5.3-1.el5.rf.x86_64.rpm
然后就可以通过yum的方式安装fuse-curlftpfs了

yum install fuse-curlftpfs -y
在Centos6上执行此命令,可能会遇到 Requires: libcurl.so.3 的错误,解决方法:编辑 /etc/yum.repos.d/rpmforge.repo 文件,把 [rpmforge-extras] 项打开,再执行 yum clean all 即可。

接下来就可以挂载ftp了

写法1:curlftpfs ftp://用户名:密码@ftp地址 挂载点 -o codepage=utf8
写法2:curlftpfs ftp://ftp地址 挂载点 -o user=”用户名:密码”
注意:如果提示“fuse: failed to open /dev/fuse: Operation not permitted”,说明你是在使用OpenVZ技术的Linux VPS的,因为OpenVZ技术的缺陷性(所有小鸡共用母鸡的内核)导致无法使用curlftpfs命令,请在Xen或者vmware技术中使用。

开机自动挂载

echo “curlftpfs#用户名:密码@ftp地址 挂载点 fuse rw,allow_other,uid=0,gid=0 0 0” >> /etc/fstab

评论

linux中下载ftp文件的几个方法

一、最简单的方法: wget
下面的命令用来下载ftp服务器上指定目录的所有文件
[html] view plain copy print?
wget ftp://IP:PORT/* –ftp-user=xxx –ftp-password=xxx -r
-r 参数表示递归下载;
可以使用–directory-prefix=/mypath/ 指定下载后存储路径;-nH选项可以不在本地创建服务器上的目录结构
另一个令人迷惑的选项是–delete-after,它并不是用来删除服务器上的已下载文件,而是用来删除本机的;
wget之所以是wget而不是wput,它只能进行下载操作,不支持对ftp服务器上的任何写操作,比如删除。
二、可以删除文件的方法:lftp
项目需求是下载ftp服务器上的指定文件夹取内的所有文件,并于下载后删除,wget不能满足要求,于是改写出下面的脚本。
mget命令可以下载多个文件,-E参数表示下载后删除服务器上的文件。
[python] view plain copy print?
#!/bin/bash
#指定ftp服务器的ip
serverip=1.2.3.4
#指定ftp服务器的ftp用户
serveruser=root
#指定ftp服务器的ftp用户密码
serverpass=123456
#指定client主机本地下载文件存放的目录
localdir=./data
logfile=../log/ftp_download.log
#指定server主机的ftp目录
remotedir=./
#指定server主机的主机名
host=test_host
#切换到本地下载文件存放的目录
cd $localdir
#输入开始备份的信息
echo “Starting FTP Download on ” $host
#连接ftp服务器
/usr/bin/lftp << EOF open $serverip user $serveruser $serverpass #切换到server主机的ftp目录 echo "cd " $remotedir cd $remotedir #列出ftp服务器ftp目录中文件列表并存放到client中的$localdir中 ls . >> $logfile
#下载ftp服务器ftp目录中的所有文件
mget -E *.txt
#退出ftp服务器
bye
三、其他方法
系统中的ftp命令,和强大的curl。
curl支持FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, TELNET 和TFTP,方便在自己的程序中调用。同时支持cookie、代理、密码和证书验证。非常强大。

评论

badblocks 检查硬盘是否有坏道

硬盘是比较容易坏掉的设备,使用一段时间后可能会出现坏道等物理故障。当硬盘出现坏道后,若不及时更换或者进行技术上的处理,磁盘的坏道就会越来越多,并会造成频繁死机和数据丢失。最好的处理方法是更换新的磁盘。在临时的情况下,我们应及时屏蔽坏道部分的扇区,不要触动它们。

badblocks是一个检查磁盘是否有坏道的工具,可以以读的方式检查,也可以以写的方式检查。

这里,我使用

badblocks -v /dev/sda

检查是否有坏道,检查结果未出错

 

 

 

 

badblocks的参数选项

-b blocksize
指定磁盘的区块大小,单位为字节,默认值为“block 4K ”(4K/block)
-c blocksize
每个区块检查的次数,默认是16次
-f
强制在一个已经挂载的设备上执行读写或非破坏性的写测试操作
(我们建议先umount设备,然后再进行坏道检测。仅当/etc/mtab出现误报设备挂载错误的时候可以使用该选项)
-i file
跳过已经显示在file文件中的坏道,而不进行检测(可以避免重复检测)
-o file
把检测结果输出到file文件
-p number
重复搜寻设备,直到在指定通过次数内都没有找到新的坏块位置,默认次数为0
-s
在检查时显示进度
-t pattern
通过按指定的模式读写来检测区块。你可以指定一个0到ULONG_MAX-1的十进制正值,或使用random(随机)。
如果你指定多个模式,badblocks将使用第一个模式检测所有的区块,然后再使用下一个模式检测所有的区块。
Read-only方式仅接受一个模式,它不能接受random模式的。
-v
执行时显示详细的信息
-w
对每个区块都先写入,然后再从它读取信息
[device]
指定要检查的磁盘装置。
[last-block]
指定磁盘装置的区块总数。
[start-block]
指定要从哪个区块开始检查

评论

bash: scp: command not found lost connection问题解决

在内网,从一台服务器传mysql源码安装包到另外一台服务器时,发生如下的错误:

[root@localhost ~]# scp mysql-5.1.55.tar.gz root@192.168.3.22:.
[email protected]’s password:
bash: scp: command not found
lost connection
提示scp的命令找不到,但是查找发现命令是存在的
[[email protected] ~]# whereis scp
scp: /usr/bin/scp /usr/share/man/man1/scp.1.gz
[[email protected] ~]# find / -name scp
/usr/bin/scp
是因为没有加入到环境变量的原因?
evn查看,已经加入了环境变量了
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
而且带上全路径,执行的时候还是报相同的错误
[[email protected] ~]# /usr/bin/scp mysql-5.1.55.tar.gz [email protected]:.
[email protected]’s password:
bash: scp: command not found
lost connection
查看scp所依赖的包
[[email protected] ~]# rpm -qf /usr/bin/scp
openssh-clients-5.3p1-81.el6.i686
怀疑会不会是有其他的依赖包没有安装上,重新安装一遍
[[email protected] ~]# yum install openssh-clients*
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
 * base: centos.ustc.edu.cn
 * epel: mirrors.ustc.edu.cn
 * extras: centos.ustc.edu.cn
 * updates: centos.ustc.edu.cn
Setting up Install Process
package openssh-clients-5.3p1-81.el6.i686 already installed and latest version
Nothing to do
提示已经安装了,而且已经是最新的版本了
再测试的时候,还是出现同样的错误。纳尼,如果是命令不存在或者找不到,应该在scp命令敲出来之前就有问题啊,而不应该是成功敲完命令之后再出现这个问题。如果本地都没有问题,那是另一端服务器上没有安装scp的命令?
[[email protected] ~]# whereis scp
scp:
果真是如此,所以是server端没有找到scp的命令,而不是本地
安装上scp的依赖包
[[email protected] ~]# yum install openssh-clients*
安装好之后,重新传输文件
[[email protected] ~]# scp mysql-5.1.55.tar.gz [email protected]:.
[email protected]’s password:
mysql-5.1.55.tar.gz
本文章

评论

centos7关闭防火墙

 

1. Disable Firewalld Service.

[root@rhel-centos7-tejas-barot-linux ~]# systemctl mask firewalld

2. Stop Firewalld Service.

[root@rhel-centos7-tejas-barot-linux ~]# systemctl stop firewalld

3. Install iptables service related packages.

[root@rhel-centos7-tejas-barot-linux ~]# yum -y install iptables-services

4. Make sure service starts at boot:

[root@rhel-centos7-tejas-barot-linux ~]# systemctl enable iptables

# If you do not want ip6tables, You can skip following command.

[root@rhel-centos7-tejas-barot-linux ~]# systemctl enable ip6tables

5. Now, Finally Let’s start the iptables services.

[root@rhel-centos7-tejas-barot-linux ~]# systemctl start iptables

# If you do not want ip6tables, You can skip following command.

[root@rhel-centos7-tejas-barot-linux ~]# systemctl start ip6tables

Firewalld Service is now disabled and stop, You can use iptables.

 

 

关闭  selinux

vi/etc/selinux/config

#SELINUX=enforcing
SELINUX=disabled

评论

iftop

iftop有什么用?

iftop可以用来监控网卡的实时流量(可以指定网段)、反向解析IP、显示端口信息等,详细的将会在后面的使用参数中说明。

安装iftop

安装方法1、编译安装

如果采用编译安装可以到iftop官网下载最新的源码包。

安装前需要已经安装好基本的编译所需的环境,比如make、gcc、autoconf等。安装iftop还需要安装libpcap和libcurses。

CentOS上安装所需依赖包:

yum install flex byacc  libpcap ncurses ncurses-devel libpcap-devel

Debian上安装所需依赖包:

apt-get install flex byacc  libpcap0.8 libncurses5

下载iftop

wget http://www.ex-parrot.com/pdw/iftop/download/iftop-0.17.tar.gz

tar zxvf iftop-0.17.tar.gz

cd iftop-0.17

./configure

make && make install

评论

网卡补丁

http://ftp.colocall.net/pub/elrepo/elrepo/el6/x86_64/RPMS/

评论

linux inode 占用100%的解决办法

什么是 inode ?

文件储存在硬盘上,硬盘的最小存储单位叫做”扇区”(Sector)。每个扇区储存512字节(相当于0.5KB)。
操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个”块”(block)。这种由多个扇区组成的”块”,是文件存取的最小单位。”块”的大小,最常见的是4KB,即连续八个 sector组成一个 block。
文件数据都储存在”块”中,那么很显然,我们还必须找到一个地方储存文件的元信息,比如文件的创建者、文件的创建日期、文件的大小等等。这种储存文件元信息的区域就叫做inode,中文译名为”索引节点”。
每一个文件都有对应的inode,里面包含了与该文件有关的一些信息。

如何查看系统的 innode 占用情况

df -ih

如何查找那个目录下文件最多

首先切到根目录 /

cd /

然后执行

for i in /*; do echo $i; find $i | wc -l; done

或者

for i in `ls -1A | grep -v "\.\./" | grep -v "\./"`; do echo "`find $i | sort -u | wc -l` $i"; done | sort -rn | head -10

这样会依次返回/目录下文件最多的目录,进入这个目录,再执行上述命令,就这样层层深入最终确定是那个目录文件最多

如何删除那个目录的的所有文件

一般情况下,如果这个目录下应该会有数以百万的文件,如果你直接用 rm -rf 目录名 的话效率会很低,可以用下面方法

find 目录 -type f -name '*' -print0 | xargs -0 rm

时间可能会比较久,所以你最好开一个 screen 来处理

有可能是你遇到了下面的情况

/var/spool/postfix/maildrop 下面有很多文件
为了避免,可以执行 crontab -e
在最开头添加 MAILTO='"' 保存,然后 server crond restart 重启 crond

评论

Linux磁盘空间被占用的释放方法

1、用df 检查发现/根目录可用空间为0

[[email protected]/]#df -h

2、用du检查发现各目录占用的空间都很少,有约3G的空间莫名其妙地丢了。

[[email protected]/]# du -m –max-depth=1 |sort -gr

3、用lsof检查后才发现原因是,有文件被删除,而进程还活着,因而造成还占用空间的现象

[[email protected]/]# lsof |grep delete

根据lsof列出的进程号,kill这些进程后,空间就释放出来了

评论

如何修改linux 的SSH的默认端口号?

在安装完毕linux,默认的情况下ssh是开放的,容易受到黑客攻击,简单,有效的操作之一就是修改默认端口号
如下列,我们把22修改我2501
就是修改/etc/ssh/sshd_config   //注意,容易和ssh_config相混合
步骤一
[[email protected] ssh]# more sshd_config
#       $OpenBSD: sshd_config,v 1.69 2004/05/23 23:59:53 dtucker Exp $
# This is the sshd server system-wide configuration file.  See
# sshd_config(5) for more information.
# This sshd was compiled with PATH=/usr/local/bin:/bin:/usr/bin
# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented.  Uncommented options change a
# default value.
#Port 22             //先把22注释掉
port 2501            //添加一个新的端口
#Protocol 2,1
步骤二
[[email protected] ~]# service sshd restart
Stopping sshd:[  OK  ]
Starting sshd:[  OK  ]
步骤三
用SecureCRT测试

评论

Linux配置防火墙,开启80端口、3306端口

vi /etc/sysconfig/iptables

-A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT(允许80端口通过防火墙)
-A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT(允许3306端口通过防火墙)
特别提示:很多网友把这两条规则添加到防火墙配置的最后一行,导致防火墙启动失败,正确的应该是添加到默认的22端口这条规则的下面
添加好之后防火墙规则如下所示:

######################################
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT
-A INPUT -j REJECT –reject-with icmp-host-prohibited
-A FORWARD -j REJECT –reject-with icmp-host-prohibited
COMMIT
#####################################

/etc/init.d/iptables restart
#最后重启防火墙使配置生效

评论

« 上一页« Previous entries « 上一页 · 下一页 » Next entries »下一页 »