使用XenCenter开设单IP多个虚拟机上网

今天终于在一台服务器上让主机商装上了XenServer,自己装上XenCenter想开几个小鸡玩玩,结果各种问题,简要记录,以便查询!

像连接服务器,汉化、包括用模板建小鸡、或者去下载小鸡模板都省略,重点是记录下自己怎么让单IP可以多个小鸡上网,网上又很多资料,按那些输入后各种错误。

折腾许久,所以还是记录一下。

首先增加一个虚拟网卡
选中服务器-点击“网络连接”→“Add Network(添加网络)” → “External Network(外部网络)”→输入网卡的名称 →选择NIC0(注意这里要选能连接外网的网卡),建议将“自动将此网络添加到新虚拟机”,我将新添加的网络命名为“newRoute”.添加保存既可以

其次增加IP
在网络连接下方的 IP配置中,点击“Config(配置)”→ 点“添加ip地址(D)”,选择之前添加的网络“newRoute”,设置与虚拟机同网段内网IP地址,也就是之后虚拟机要设置的网关地址。我这里小鸡准备用192.168.10.0/24这个网段,所以我设置的IP为192.168.10.1,子网掩码为255.255.255.0,网关为空

然后进控制台或者ssh登陆root账号和密码,查看IP是否正常(ifconfig -a)

第四,在设置正常后,开始配置NAT规则。
首先清除防火墙的默认策略
#iptables -F
开启转发支持,默认是关闭的,也可以事先查看一下。
#more /proc/sys/net/ipv4/ip_forward 如果直接编辑,很多时候保存不了。请直接使用echo
#echo 1 > /proc/sys/net/ipv4/ip_forward
然后配置iptables,让事先想好的小鸡网段192.168.10.0网段的虚拟机可以上网。
#iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -o xenbr0 -j MASQUERADE 如果复制的不行,请手动打一边,我就是复制进去后无效,手动输入后就好了。
然后保存防火墙配置,避免重启主机后规则失效
#/etc/init.d/iptables save

然后编辑 /etc/sysctl.conf文件将net.ipv4.ip_forward 项设置为 1,开启转发支持,不受重启影响
#vi /etc/sysctl.conf
然后再给小鸡手动分配IP就可以上网啦。如果想小鸡可以远程桌面、SSH这些,再加一些远程端口转发,让外网直接用主机公网IP连接到虚拟机。
#iptables -t nat -A PREROUTING -p tcp –dport 3390 -j DNAT –to-destination 192.168.10.100:3389
这个命令的dport和to前面的两个-在复制的时候很容易就变成一个长的—,到时候会iptables的错误
“-bash: iptables -t -nat -A PREROUTING -p tcp -dport 3390 -j DNAT –to-destination 192.168.10.100:3389: command not found”。如果再修改了,请保存重启查看。
#/etc/init.d/iptables save
#service iptables restart
#iptables -t nat -L

debian下cron的使用方法和常见问题

今天在给服务器配置自动备份脚本,对于配置使用Cron,发现设置后,好像没有自动运行,查阅了很多资料,发现问题是在时区上。整理了一下, 一般cron都不用安装,系统都有事有的。
一、常用的cron命令:
启动/etc/init.d/crond start
关闭/etc/init.d/crond stop
重启/etc/init.d/crond restart

有的系统可能init.d目录下没有crond,只有cron,其实也一样,只不过把crond换为cron:
启动/etc/init.d/cron start
关闭/etc/init.d/cron stop
重启/etc/init.d/cron restart
判断crond 是否在运行:pgrep crond或者pgrep cron,如果有在运行则返回进程号。
杀掉crond进程:pkill crond或者pkill cron,此法可用在关闭或重启不了cron的时候。
配置cron定时任务:crontab -e,配置文件路径一般为/var/spool/cron/crontabs/root
这个是root用户的配置文件,其它用户是对应的用户名命名的文件,所以配置定时任务也可以vi /var/spool/cron/crontabs/root
后面会讲如何添加定时任务。
配置指定用户的配置文件
crontab -u<用户名称>
查看配置文件:crontab –l
二、下面讲如何配置定时任务
基本格式 :
* * * * * command
几个星号分别为:分 时 日 月 周,最后是要执行的命令。
分:0~59
时:0~23
日:1~31
月:1~12
周:0~6(0表示星期天)
配置文件的一些例子:
0 3 * * * /root/test.sh 每天凌晨3点执行test.sh文件
* 23-7/1 * * * /root/lnmp restart 晚上11点到早上7点之间,每隔一小时重启lnmp套件
*/30 * * * * /usr/sbin/ntpdate 每半小时同步一下时间
0 23 * * 6 /lnmp restart 每星期六的11 : 00 pm重启重启lnmp套件。
* */1 * * * /usr/bin/mutt -s “hello” test@seeke.net

Linux怎么查找大文件或目录

   最近服务器遇到了各种问题,不断发现问题,不断解决问题,在这里记录一下。在Windows系统中,我们可以使用TreeSize工具查找一些大文件或文件夹,非常的方便高效,在Linux系统中,如何去搜索一些比较大的文件呢?下面我整理了一下在Linux系统中如何查找大文件或文件夹的方法。

 

1: 如何查找大文件?

其实很多时候,你需要了解当前系统下有哪些大文件,比如文件大小超过100M或1G(阀值视具体情况而定)。那么如何把这些大文件搜索出来呢?例如我要搜索当前目录下,超过800M大小的文件

find . -type f -size +100M

如上命令所示,我们仅仅能看到超过100M大小的文件的文件名称,但是对文件的信息(例如,文件大小、文件属性)一无所知,那么能否更详细显示一些文件属性或信息呢,当然可以,如下所示 继续阅读Linux怎么查找大文件或目录

Linux 服务器被 DDoS / CC 时应急的封 IP 方法

最近无聊的人太多了,一个腾讯云,没有挂几个小页面,居然一直有人再CC,再带宽全部占满,导致页面根本无法打开,查询了一番,因为攻击比较小,决定使用 iptables 来手动封禁这些攻击者的IP。

如果攻击比较大时,有时我们根本无法响应过来,iptables 基本也就无能为力了,那我们就只能与机房联系让他们想想办法了。

对于少量攻击处理的步骤应该是:获取IP –> 封IP

获取攻击者 IP

通过 netstat 获取

如果攻击者攻击的是你的 Web 服务的话,默认是80端口,我们就可以使用下面的代码!
继续阅读Linux 服务器被 DDoS / CC 时应急的封 IP 方法

WordPress上传文件提示“无法建立目录uploads”的解决方法

最近把朋友的博客从虚拟主机换到了VPS,顺带将WordPress升级到了3.6版本。一切基本顺利,就是在后台上传文件或图片、安装风格时一直提示“无法建立目录uploads/2014/05。有没有上级目录的写权限?”错误,尝试过修改相关文件目录权限为777仍然无解。折腾再三,其实解决方法很简单:

1、将wp-content目录的权限设置为755;

2、进入“WordPress后台—设置—多媒体”将默认上传路径修改为wp-content/uploads即可。

做完这步之后,建议再进入PHPMyAdmin数据库,检查wp_options表里的upload_path键值路径是否为wp-content/uploads。

以上就是本人博客关于WordPress上传文件或图片时提示“无法建立目录uploads,有没有上级目录的写权限”的解决方法,如果您有遇到同样的问题,在修改目录权限无效的情况下欢迎尝试。

解决LNMP编辑WordPress主题scandir()错误方法

在帮助搬家wordpress博客网站到搭建好的lnmp环境VPS中的时候,一切都比较完好,但是在编辑wordpress主题的时候看到有错误,提示有类似下面的(解决好之后我忘记截图)。

Warning: scandir() has been disabled for security reasons in …
Warning: Invalid argument supplied for foreach() in …
Warning: scandir() has been disabled for security reasons in …
Warning: Invalid argument supplied for foreach() in …

省略号的部分是我们网站主题文件所在的错误页面和行数,因为我忘记截图和复制,只能从网上找到类似的提示。

解决方法也是比较简单的,这是由于我们lnmp环境下的php.ini文件scandir()函数问题,我们只需要去掉这个函数就可以了。我们可以通过VI编辑 /usr/local/php/etc/php.ini文件中,找到 disable_functions 后面的 scandir删除掉这个函数,大概在210行。

最后, /etc/init.d/php-fpm restart 重启php-fpm就可以了。

 

修改dedeeims 关键词长度限制的方法

之前在用DEDEEIMS使用过程中,发现页面keywords设置关键词有数量限制,在后台输入了后多关键词后,点击提交,生成页面后发现只能显示不到10几个汉字,之前已经改过一遍,但是没有记录下来。今天又遇到这个问题了,记录一下,免得以后又要找,这这里记录一下,同时也分享给大家!(本文是在系统默认后台管理dede文件夹和默认数据库文件头dede_下进行设置的,如果各位站长自行修改了后台管理文件夹和数据文件头的,请根据自己的设置进行修改!)

第一步:三个数据表修改,首先将数据表中的keyword的varchar()改为varchar(任意长度,但是根据关键词优化策略,建议不超过100个,当然还有几个地方的,改不改就无所谓了)

dede_archives
dede_keywords
dede_arctype
将其中的keyword字段默认30的值修改成100   也可在网站后台执行SQL语句
alter table dede_archives modify keywords varchar(100)
alter table dede_keywords modify keyword varchar(100)
alter table dede_arctype modify keywords varchar(100)

如果不能执行SQL语句,可以到自己数据库后台直接修改数据表。

第二步:源文件修改

找到如下文件
/dede/article_add.php
/dede/article_edit.php
/dede/archives_add.php
/dede/archives_edit.php
/dede/product_add.php
/dede/product_edit.php
中的语句
$keywords = cn_substrR($keywords,30);
将30改为100

第三步:找到源文件
/dede/inc/inc_archives_functions.php

找到二句 (大约在624行和635行)
if(strlen($keywords.$k)>=30    将30改为100

OK,大功告成,测试通过!