分类 CentOS 下的文章

Linux增加Swap分区大小

  1. 查看当前分区情况
    free -m
  2. 增加 swap 大小, 2G左右
    dd if=/dev/zero of=/var/swap bs=1024 count=2048000
  3. 设置交换文件
    mkswap /var/swap && chmod 600 /var/swap
  4. 立即激活启用交换分区
    swapon /var/swap
  5. 添加系统引导时自启动运行
    vi /etc/fstab 添加这一行 /var/swap swap swap defaults 0 0
  6. 收回 swap 空间
    swapoff /var/swap
  7. 从文件系统中回收
    rm /var/swap

CentOS7防火墙配置大全

启动CentOS/RHEL 7后,防火墙规则设置由firewalld服务进程默认管理。
一个叫做firewall-cmd的命令行客户端支持和这个守护进程通信以永久修改防火墙规则。

查看防火墙所有信息
firewall-cmd --list-all

查看已经开放的端口:
firewall-cmd --list-ports

如要查询是否开启80端口则:
firewall-cmd --query-port=80/tcp

永久打开一个新端口(如TCP/8080),如果不使用“--permanent”标记,把么防火墙规则在重启后会失效:
firewall-cmd --permanent --zone=public --add-port=80/tcp

命令含义:
–zone #作用域
–add-port=80/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效

开放多个端口:
firewall-cmd --permanent --zone=public --add-port=80-90/tcp

移除一个端口:
firewall-cmd --permanent --zone=public --remove-port=8080/tcp

重新加载防火墙以生效:
firewall-cmd --reload

显示状态:
firewall-cmd --state

firewall的基本启动/停止/重启命令
systemctl stop firewalld.service #停止firewall
systemctl start firewalld.service #启动firewall
systemctl restart firewalld.service #重启firewall
systemctl enable firewalld.service #开启firewall开机启动
systemctl disable firewalld.service #禁止firewall开机启动

注意:新增/删除操作需要重启防火墙服务.

查看本机已经启用的监听端口:
netstat -ant #CentOS7以下使用
ss -ant #7及以上使用ss

常用命令总结

firewall-cmd --state                           ##查看防火墙状态,是否是running
firewall-cmd --reload                          ##重新载入配置,比如添加规则之后,需要执行此命令
firewall-cmd --get-zones                       ##列出支持的zone
firewall-cmd --get-services                    ##列出支持的服务,在列表中的服务是放行的
firewall-cmd --query-service ftp               ##查看ftp服务是否支持,返回yes或者no
firewall-cmd --add-service=ftp                 ##临时开放ftp服务
firewall-cmd --add-service=ftp --permanent     ##永久开放ftp服务
firewall-cmd --remove-service=ftp --permanent  ##永久移除ftp服务
firewall-cmd --add-port=80/tcp --permanent     ##永久添加80端口 
iptables -L -n                                 ##查看规则,这个命令是和iptables的相同的
man firewall-cmd                               ##查看帮助

MySQL数据库中创建函数报“ERROR 1418 ”错误,不能创建函数的解决方法

我们在使用MySQL数据库开发项目的时候,有时MySQL系统自带的函数不能完全满足我们开发的需要,解决方法是自己创建函数,可以有可能在你创建函数的过程事会报出Error 1418错误

对于报这种错误的详细信息如所所示

ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)
ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)

MySQL函数不能创建,是未开启功能。

解决方法:MySQL函数不能创建,是未开启功能:

mysql> show variables like '%func%';
+---------------------------------+-------+
| Variable_name | Value |
+---------------------------------+-------+
| log_bin_trust_function_creators | OFF |
+---------------------------------+-------+
1 row in set (0.00 sec)

mysql> set global log_bin_trust_function_creators=1;
Query OK, 0 rows affected (0.00 sec)

mysql> show variables like '%func%';
+---------------------------------+-------+
| Variable_name                            | Value   |
+---------------------------------+-------+
| log_bin_trust_function_creators  | ON |
+---------------------------------+-------+
1 row in set (0.00 sec)mysql>

如果上方法不能成功解决mysql中的ERROR 1418错误,那还得请你使用下面方法试试:

第一步: mysql> SET GLOBAL log_bin_trust_function_creators = 1;

第二步: 系统启动时 --log-bin-trust-function-creators=1

第三步: 在my.ini(Linux下为my.conf)文件中 [mysqld] 标记后加一行内容为 log-bin-trust-function-creators=1

XEN、VMware、OpenVZ的概念都是什么?区别是什么?

xen、vmware、openVZ三大vps主机系统
vmware player和vmware Server的东西,没有什么太大的新意,
主要是讲了linux下vmware的安装和使用的方法,
vmware由于同时有windows版,所以使用的人比较多。

目前的国内外vps主机提供商所提供的主机大多是基于xen、vmware、openVZ这三大虚拟软件,
国内的提供商大多采用vmware,而美国等国外提供商大多采用xen和openVZ这两款软件。

xen,已经开始在集成到主要的linux发行版。它在性能上也表现很相当不错,
再加上是open source(开源软件),已经成为了linux上虚拟机的一个主角。

OpenVZ是SWsoft公司的open source版,同公司还有Virtuozzo的商用版, 它的最大的特别在于性能出色。

下面就重点分析一下OpenVZ和Xen的区别。

Xen由dom0和domU组成,Dom0是虚拟出CPU, IO总路线等资源,供工作于DomU上的不同的kernel运行。

这样的好处是,

1.对可以运行的操作系统限制较少。

2.domU上系统的crash不会影响其他的dom. 当然Dom0发生故障时还是会有问题。

坏处:

1.由于需要虚拟CPU,BUS等物理资源,开销会更大点。

OpenVZ使用了完全不同的方式,它所创造的虚拟机都使用工作在同一个kernel下。

这样的好处是

1。性能好。

坏处:

1。任何一个kernel bug都会危及所有的虚拟机。 因kernel bug所crash的可能性大大增加。

2。他需要对内核作很多的改动。

最近,还有一个趋势就是,hardware虚拟,现在的CPU带有多个核心,Intel和AMD都开始发布基于CPU的虚拟化。
这一些都也可能成为虚拟技术的一个新的热点。

参考资料:站长站