shell
shell学习

centos 7 流量监控服务nload

  1. 安装EPEL库
    yum -y install epel-release

  2. 安装nload
    yum install nload -y

  3. 使用nload
    nload

Device eth0 [10.2.0.248] (1/2):
================================================================================
Incoming:
                                                       Curr: 197.20 kBit/s
                                                       Avg: 214.61 kBit/s
                                                       Min: 143.73 kBit/s
                                                       Max: 1.20 MBit/s
                                                       Ttl: 7.32 GByte
Outgoing:
                                                       Curr: 464.02 kBit/s
                                                       Avg: 537.05 kBit/s
                                                       Min: 307.29 kBit/s
                                                       Max: 3.50 MBit/s
.....................................................  Ttl: 14.09 GByte

CentOS 7 编译安装 redis

  • 下载redis wget http://download.redis.io/releases/redis-3.0.2.tar.gz

  • 解压redis文件

tar -xzvf redis-3.0.2.tar.gz -C /usr/local/
mv /usr/local/redis-3.0.2 /usr/local/redis
  • 安装 gcc 编译器和 redis 测试使用到的 tcl 库
    yum install -y gcc tcl

  • 切换至程序目录,并执行make命令编译

make MALLOC=libc
make install

如果make的时候提示如下错误:
cc: error: ../deps/hiredis/libhiredis.a: No such file or directory
cc: error: ../deps/lua/src/liblua.a: No such file or directory
cc: error: ../deps/jemalloc/lib/libjemalloc.a: No such file or directory
make: * [redis-server] Error 1
则进入redis下的deps下的运行如下命令,就OK了。
make lua hiredis linenoise

  • make install安装完成后,会在/usr/local/bin目录下生成下面几个可执行文件,它们的作用分别是:
    redis-server:Redis服务器端启动程序

redis-cli:Redis客户端操作工具。也可以用telnet根据其纯文本协议来操作
redis-benchmark:Redis性能测试工具
redis-check-aof:数据修复工具
redis-check-dump:检查导出工具

centos7 开启指定端口

  1. 打开配置文件
    vi /etc/sysconfig/iptables

  2. 添加一条规则
    -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT

  3. 重启防火墙,修改完成
    service iptables restart

Linux删除乱码文件

当文件名为乱码的时候,无法通过键盘输入文件名,所以在终端下就不能直接利用rm,mv等命令管理文件了。

但是我们知道每个文件都有一个i节点号,我们可以考虑通过i节点号来管理文件。

  1. 我们要取得文件的i节点号。这个可以通过ls命令的-i选项获得得,也可以通过ll -i 来获得。

  2. 使用find命令将文件名传递给rm命令。e.g:删除节点为12345的乱码文件夹可以使用如下命令

find ./ -inum 12345 -print -exec rm {} -rf \;
注意\;前面的空格不能少,少了就会报错。

centos7 安装 mysql5.7 备忘以及开启远程登陆

1. 下载安装文件(.tar.gz) https://dev.mysql.com/downloads/mysql/

2. 解压缩(命令tar zvxf)到/usr/local/下面,mysql的主目录命名为mysql

[root@localhost local]# cd /usr/local/soft/
[root@localhost soft]# tar zvxf mysql-5.7.10-linux-glibc2.5-i686.tar.gz -C /usr/local
[root@localhost soft]# cd ..
[root@localhost local]# mv mysql-5.7.10-linux-glibc2.5-i686/ mysql

3. 在mysql下面创建data数据库文件目录

[root@localhost local]# mkdir mysql/data

4. 创建mysql的用户组和用户,并对mysql目录设置用户组和用户

[root@localhost local]# groupadd mysql
[root@localhost local]# useradd mysql -g mysql
[root@localhost local]# cd mysql
[root@localhost mysql]# pwd
/usr/local/mysql
[root@localhost mysql]# chown -R mysql .
[root@localhost mysql]# chgrp -R mysql .

5. 初始化mysql并启动mysql服务,注意修改my.cnf文件的相关配置,可以使用find / -name *.cnf来定位文件位置

[root@localhost mysql]# cd /usr/local/mysql/bin
[root@localhost bin]# yum install libaio
[root@localhost bin]# ./mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data

此时可能会报错
./mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory
缺少了libnuma.so,但是直接安装不上,可以尝试安装这个yum install numactl

启动mysql

[root@localhost bin]# cd /usr/local/mysql/support-files
[root@localhost support-files]# ./mysql.server start
Starting MySQL. SUCCESS!

关闭mysql

[root@localhost support-files]# ./mysql.server stop

6. 登陆,登陆前找到root账户临时密码 find / -name *.mysql_secret

[root@localhost ~]# cd /usr/local/mysql/bin
[root@localhost bin]# ./mysql -uroot -p临时密码

7. 修改临时密码

ALTER USER 'root'@'localhost' IDENTIFIED BY 'root账户新密码';

8. 创建远程登陆账户

CREATE USER "远程登陆账户"@"%" IDENTIFIED BY "远程登陆密码";

9. 为远程登陆账户设置权限

GRANT ALL ON *.* TO '远程登陆账户'@'%';
flush privileges; #刷新系统权限表

10. 设置防火墙,开放相应端口(默认3306)

如果是云主机,需要在主机管理后台操作。例如阿里云,需要修改安全组规则,打开入方向的相应端口

开放端口
永久的开放需要的端口

sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
sudo firewall-cmd --reload
之后检查新的防火墙规则
firewall-cmd --list-all