在Centos 7.6系统下如何设置跳过选择内核界面呢?
1.输入vi /etc/default/grub按回车键进入vi编辑
2.按“i”进入插入模式,如图修改为GRUB_TIMEOUT=0
3.按“ESC”键输入wq按回车键保存退出vi编辑
4.输入grub2-mkconfig -o /boot/grub2/grub.cfg按回车键即可
Centos7系统如何使用md5sum命令验证文件完整性?本教程以Centos7系统为例
本配置适用于Centos6,7版本
1.MD5算法常常被用来验证网络文件传输的完整性,防止文件被人篡改。
MD5 全称是报文摘要算法(Message-Digest Algorithm 5),此算法对任意长度的信息逐位进行计算,产生一个二进制长度为128位(十六进制长度就是32位)的“指纹”(或称“报文摘要”),不同的文件产生相同的报文摘要的可能性是非常非常之小的。
md5sum命令采用MD5报文摘要算法(128位)计算和检查文件的校验和。一般来说,安装了Linux后,就会有md5sum这个工具,直接在命令行终端直接运行。
2.语法
# md5sum(选项)(参数)
-b或--binary: 把输入文件作为二进制文件看待。
-t或--text: 把输入的文件作为文本文件看待(默认)
-c或--check: 用来从文件中读取md5信息检查文件的一致性。(不细说了参见info)
--status: 这个选项和check一起使用,在check的时候,不输出,而是根据返回值表示检查结果。
-w或--warn: 在check的时候,检查输入的md5信息又没有非法的行,如果有则输出相应信息。
例子:
Centos7系统如何使用dirname命令剥离文件后缀名?本教程以Centos7系统为例
本配置适用于Centos6,7版本
1.命令概述
dirname - 从文件名剥离非目录的后缀
dirname命令去除文件名中的非目录部分,仅显示与目录有关的内容。dirname命令读取指定路径名保留最后一个/及其后面的字符,删除其他部分,并写结果到标准输出。如果最后一个/后无字符,dirname 命令使用倒数第二个/,并忽略其后的所有字符。dirname 和 basename通常在 shell 内部命令替换使用,以指定一个与指定输入文件名略有差异的输出文件名。
2.命令格式
dirname 名字
dirname 选项
3. 常用选项
打印去除了/后面部分的NAME;如果NAME没有包含/,则输出`.'(表示当前目录).
--help
显示帮助并退出
--version
输出版本信息并退出
4.参考示例
4.1 如果最后一个文件是目录的情形
[deng@localhost test]$ dirname /home/deng/share/
/home/deng
4.2 如果最后一个文件是普通文件情形
[deng@localhost test]$ dirname /home/deng/scott_data.sql
/home/deng
4.3 如果名字中没有包含/ 则输出 .
[deng@localhost test]$ dirname dir
.
[deng@localhost test]$
4.4 相对路径情形
[deng@localhost test]$ dirname dir/a
Dir
4.5 路径是根目录的情形
[deng@localhost test]$ dirname /
/
[deng@localhost test]$ dirname //
/
Centos7系统如何使用paste命令合并文件?本教程以Centos7系统为例
本配置适用于Centos6,7版本
1.Linux paste 命令用于合并文件的列。
paste 指令会把每个文件以列对列的方式,一列列地加以合并。
2.语法
paste [-s][-d <间隔字符>][--help][--version][文件...]
参数:
-d<间隔字符>或--delimiters=<间隔字符> 用指定的间隔字符取代跳格字符。
-s或--serial 串列进行而非平行处理。
--help 在线帮助。
--version 显示帮助信息。
[文件…] 指定操作的文件路径
3.实例
使用paste指令将文件"file"、"testfile"、"testfile1"进行合并,输入如下命令:
paste file testfile testfile1 #合并指定文件的内容
但是,在执行以上命令之前,首先使用"cat"指令对3个文件内容进行查看,显示如下所示:
$ cat file #file文件的内容
xiongdan 200
lihaihui 233
lymlrl 231
$ cat testfile #testfile文件的内容
liangyuanm ss
$ cat testfile1 #testfile1文件的内容
huanggai 56
zhixi 73
当合并指令"$ paste file testfile testfile1"执行后,程序界面中将显示合并后的文件内容,如下所示:
xiongdan 200
lihaihui 233
lymlrl 231
liangyuanm ss
huanggai 56
zhixi 73
若使用paste指令的参数"-s",则可以将一个文件中的多行数据合并为一行进行显示。例如,将文件"file"中的3行数据合并为一行数据进行显示,输入如下命令
$ paste -s file #合并指定文件的多行数据
上面的命令执行后,显示的数据内容如下所示:
xiongdan 200 lihaihui 233 lymlrl 231
Centos7如何安装iptables?本教程以Centos7系统为例
本配置适用于centos7版本
先检查是否安装了iptables
Service iptables status
2.安装iptables
yum install -y iptables
3.升级iptables
yum update iptables
4.安装iptables-services
yum install iptables-services
禁用/停止自带的firewalld服务
#停止firewalld服务
systemctl stop firewalld
#禁用firewalld服务
systemctl mask firewalld
配置文件路径为:/etc/sysconfig/iptables
5.规则的写法:
iptables定义规则的方式比较复杂:
格式:
iptables [-t table] COMMAND chain CRETIRIA -j ACTION
-t table :3个filter nat mangle
COMMAND:定义如何对规则进行管理
chain:指定你接下来的规则到底是在哪个链上操作的,当定义策略的时候,是可以省略的
CRETIRIA:指定匹配标准
-j ACTION :指定如何进行处理
比如:不允许172.16.0.0/24的进行访问。
iptables -t filter -A INPUT -s 172.16.0.0/16 -p udp --dport 53 -j DROP
当然你如果想拒绝的更彻底:
比如:打开8080端口为例子。
iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
Centos7系统如何使用cp命令复制文件?本教程以Centos7系统为例
本配置适用于Centos6,7版本
1.文件复制命令cp
命令格式:cp [-adfilprsu] 源文件(source) 目标文件(destination)
cp [option] source1 source2 source3 ... directory
参数说明:
-a:是指archive的意思,也说是指复制所有的目录
-d:若源文件为连接文件(link file),则复制连接文件属性而非文件本身
-f:强制(force),若有重复或其它疑问时,不会询问用户,而强制复制
-i:若目标文件(destination)已存在,在覆盖时会先询问是否真的操作
-l:建立硬连接(hard link)的连接文件,而非复制文件本身
-p:与文件的属性一起复制,而非使用默认属性
-r:递归复制,用于目录的复制操作
-s:复制成符号连接文件(symbolic link),即“快捷方式”文件
-u:若目标文件比源文件旧,更新目标文件
示例:将/test1目录下的file1复制到/test3目录,并将文件名改为file2,可输入以下命令:
test1文件目录
cp /root/test1/file1 /root/test3/file2
复制目录到目录
Centos7如何安装mysql?本教程以Centos7为例
本配置适用于centos7版本
1.安装vim编辑工具
yum install vim -y
2.安装lrzsz上传工具
yum install lrzsz -y
安装完后可以使用rz命令上传所需要的软件工具(最好进入家目录/home在上传方便以后查找,关于如何使用RZ上传文件,请到帮助中心查看标题为centos系统安装rz使用的教程)
3.指定环境版本和上传环境安装包
mysql-5.6.21-linux-glibc2.5-x86_64.tar((具体版本不一定,这边只是随机安装1个版本,具体看需要什么版本))
4.安装关联包
yum -y install perl perl-devel
yum -y install autoconf //此包安装时会安装Data:Dumper模块
yum -y install libaio* // libaio库文件
5.安装mysql5.6.21
6.进入上传文件目录解压mysql-5.6.21-linux-glibc2.5-x86_64.tar.gz文件
[root@vt178m5c home]# tar -zxvf mysql-5.6.21-linux-glibc2.5-x86_64.tar.gz
7.移动解压出的mysql文件到/usr/local下重命名为mysql
[root@vt178m5c home]# mv mysql-5.6.21-linux-glibc2.5-x86_64 /usr/local/mysql
8.添加mysql用户组与用户名
[root@vt178m5c home]# groupadd mysql
[root@vt178m5c home]# useradd -r -g mysql mysql
9.变更mysql文件的用户权限为mysql
[root@vt178m5c home]# chown -R mysql:mysql /usr/local/mysql
10.创建数据库数据存放路径
[root@vt178m5c home]# mkdir -p /data/mysql/data
11.进入mysql解压文件
[root@vt178m5c home]# cd /usr/local/mysql
12.安装初始化数据库
进入scripts文件
[root@vt178m5c mysql]# cd scripts/
初始化数据库,使数据库用户名为mysql 数据库安装目录为/usr/local/mysql 数据库数据存放路径为/data/mysql/data
[root@vt178m5c scripts]# ./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data
13.进入mysql的support-files文件中
[root@vt178m5c scripts]# cd /usr/local/mysql/support-files
14.复制my-default.cnf配置文件到/etc下覆盖掉系统默认的my.cnf配置文件
[root@vt178m5c support-files]# cp my-default.cnf /etc/my.cnf
如图提示是否覆盖输入y,回车
15.复制mysql.server启动项脚本到/etc/init.d下命名为mysqld
[root@vt178m5c support-files]# cp mysql.server /etc/init.d/mysqld
16.修改启动项脚本中的两个变更值
[root@vt178m5c support-files]# vim /etc/init.d/mysqld
找到
修改为
basedir=/usr/local/mysql //basedir= 数据库程序文件存放地址
datadir=/data/mysql/data //datadir=数据库数据存放位置
17.配置数据库环境变量
[root@vt178m5c support-files]# vim /etc/profile
在末尾添加
export PATH=$PATH:/usr/local/mysql/bin
保存退出,更新环境变量
[root@vt178m5c support-files]# source /etc/profile
18.修改mysql配置文件my.cnf
[root@vt178m5c support-files]# vim /etc/my.cnf
找到
添加
basedir = /usr/local/mysql
datadir = /data/mysql/data
port = 3306
server_id = 1
socket = /tmp/mysql.sock
log-error = /data/mysql/data/mysql-error.log
19.开启mysql
[root@vt178m5c support-files]# /etc/init.d/mysqld start
mysql开启成功
20.登入到mysql改密码
[root@vt178m5c support-files]# mysql -uroot -p
新安装mysql没有密码直接回车即可
21.登入成功后设置mysql密码
列:设置密码为liut@2018
输入:
update mysql.user set password=PASSWORD('liut@2018') where user='root';
22.刷新权限表
输入:flush privileges;
退出:quit
密码修改完成,下次登入mysql需要输入你设置的密码
Centos7系统如何使用screen命令进行多个会话?本教程以Centos7系统为例
本配置适用于Centos6,7版本
1.介绍
GNU Screen是一款由GNU计划开发的用于命令行终端切换的自由软件。用户可以通过该软件同时连接多个本地或远程的命令行会话,并在其间自由切换。
GNU Screen可以看作是窗口管理器的命令行界面版本。它提供了统一的管理多个会话的界面和相应的功能。
会话恢复
只要Screen本身没有终止,在其内部运行的会话都可以恢复。这一点对于远程登录的用户特别有用——即使网络连接中断,用户也不会失去对已经打开的命令行会话的控制。只要再次登录到主机上执行screen -r就可以恢复会话的运行。同样在暂时离开的时候,也可以执行分离命令detach,在保证里面的程序正常运行的情况下让Screen挂起(切换到后台)。这一点和图形界面下的VNC很相似。
多窗口
在Screen环境下,所有的会话都独立的运行,并拥有各自的编号、输入、输出和窗口缓存。用户可以通过快捷键在不同的窗口下切换,并可以自由的重定向各个窗口的输入和输出。Screen实现了基本的文本操作,如复制粘贴等;还提供了类似滚动条的功能,可以查看窗口状况的历史记录。窗口还可以被分区和命名,还可以监视后台窗口的活动。
会话共享
Screen可以让一个或多个用户从不同终端多次登录一个会话,并共享会话的所有特性(比如可以看到完全相同的输出)。它同时提供了窗口访问权限的机制,可以对窗口进行密码保护。
GNU's Screen 官方站点:http://www.gnu.org/software/screen/
2.语法
# screen [-AmRvx -ls -wipe][-d <作业名称>][-h <行数>][-r <作业名称>][-s ][-S <作业名称>]
参数说明
-A 将所有的视窗都调整为目前终端机的大小。
-d <作业名称> 将指定的screen作业离线。
-h <行数> 指定视窗的缓冲区行数。
-m 即使目前已在作业中的screen作业,仍强制建立新的screen作业。
-r <作业名称> 恢复离线的screen作业。
-R 先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。
-s 指定建立新视窗时,所要执行的shell。
-S <作业名称> 指定screen作业的名称。
-v 显示版本信息。
-x 恢复之前离线的screen作业。
-ls或--list 显示目前所有的screen作业。
-wipe 检查目前所有的screen作业,并删除已经无法使用的screen作业。
3.常用screen参数
screen -S yourname -> 新建一个叫yourname的session
screen -ls -> 列出当前所有的session
screen -r yourname -> 回到yourname这个session
screen -d yourname -> 远程detach某个session
screen -d -r yourname -> 结束当前session并回到yourname这个session
4.使用方法:
4.1安装,centos默认没有安装,安装一下。yum install screen -y
4.2进入screen。
直接输入screen回车即可,此时会进入一个新的终端。可以进行要长时间运行的作业。
4.3返回到主终端(screen仍然在后台运行)
Ctrl A 然后按D 屏幕显示[detached]
4.4返回到screen
screen -ls
可以看到所有的screen socket,使用screen -r 6247 即可返回。
4.5彻底退出screenscreen终端输入exit。屏幕显示[screen is terminating]即可
4.6屏幕共享,协同作业
其中一个用户 screen -S ipcpu 使用命名的socket便于输入
另一个用户 screen -x ipcpu 即可,两人可以协同操作,一方的操作会在另一方屏幕显示。
screen的其他命令
Ctrl-a 各功能的帮助摘要
Ctrl-a c 创建一个新的 window (终端)
Ctrl-a Ctrl-n 和 Ctrl-a Ctrl-p 切换到下一个或前一个 window
Ctrl-a Ctrl-N N 为 0 到 9 的数字,用来切换到相对应的 window
Ctrl-a ” 获取所有正在运行的 window 的可导航的列表
Ctrl-a a 清楚错误的 Ctrl-a
Ctrl-a Ctrl-d 断开所有会话,会话中所有任务运行于后台
Ctrl-a x 用密码锁柱 screen 终端
centos如何安装tomcat?本教程以centos7系统为例
本配置适用于centos6,centos7版本
1.进入到要安装tomcat的位置
命令:
cd /usr/lcoal/
此位置可根据需求继续修改,但推荐放在/usr/local/下,因为此文件夹为用户软件安装空间。
2.将tomcat安装包上传到linux服务器上(可以用RZ,或者在官网https://tomcat.apache.org/用wget下载,关于如何使用RZ上传文件,请到帮助中心查看标题为centos系统安装rz使用的教程)
3.通过命令解压tomcat压缩包
命令:
unzip apache-tomcat-9.0.6.zip
(提示:如提示找不到unzip命令,可进行通过yum安装
命令:
yum install zip unzip
)
4.删除tomcat压缩包
命令:
rm apache-tomcat-9.0.6.zip
5.修改tomcat文件夹名称
命令:
mv apache-tomcat-9.0.6/ tomcat
此处我将apache-tomcat-9.0.6改为了tomcat,各位可安装需求进行修改
5.修改tomcat运行权限
进入文件夹命令:
cd /usr/local/tomcat/bin
修改权限命令:
chmod -R 777 startup.sh shutdown.sh catalina.sh
此处我们是将startup.sh shutdown.sh catalina.sh三个文件的权限设置低,其中startup.sh为开始运行,shutdown.sh为结束运行,catalina.sh为运行过程
6.运行tomcat进入文件夹命令:cd /usr/local/tomcat/bintomcat运行命令:./startup.shtomcat停止命令:./shutdown.shtomcat调试命令:./catalina.sh run
7.修改端口:
进入文件夹
命令:
cd /usr/local/tomcat/conf/
找到代码:
提示:为注释符,要找没有被注释符包裹的代码
将代码改为:
此处,我们将tomcat默认的8080端口改为了80端口,因为网站默认会访问80端口。URIEncoding="UTF-8"为使tomcat支持中文链接
PS:一定要确认80是否被使用
保存即可
8.开机启动:
编辑配置文件:
命令:
vi /etc/rc.d/rc.local
加入代码:
source /etc/profile
sh /usr/local/tomcat/bin/startup.sh
保存即可
9.测试:
输入网站 IP回车就能显示如下界面
Centos如何安装nginx?本教程以centos7系统为例
本配置适用于centos7版本
1.安装vim编辑工具
yum install vim -y
2.安装lrzsz上传工具
yum install lrzsz -y
安装完后可以使用rz命令上传所需要的软件工具(最好进入家目录/home在上传方便以后查找)
3.指定环境版本和上传环境安装包
nginx-1.12.2.tar(具体版本不一定,这边只是随机安装1个版本,具体看需要什么版本)
4.安装关联包
yum -y install pcre-devel
yum -y install openssl openssl-devel
yum -y install gcc-c
5.安装nginx-1.12.2.tar
6.进入上传文件目录解压nginx-1.12.2.tar文件
[root@vt178m5c home]# tar -zxvf nginx-1.12.2.tar.gz
7.进入nginx-1.12.2解压文件开始编译安装nginx
[root@vt178m5c home]# cd nginx-1.12.2
[root@vt178m5c nginx-1.12.2]# ./configure --prefix=/usr/local/nginx \
> --with-http_stub_status_module \
> --with-http_gzip_static_module \
> --with-http_flv_module \
> --with-http_ssl_module \
> --http-client-body-temp-path=/usr/local/nginx/client_body_temp \
> --http-fastcgi-temp-path=/usr/local/nginx/fastcgi_temp \
> --http-proxy-temp-path=/usr/local/nginx/proxy_temp \
> --http-uwsgi-temp-path=/usr/local/nginx/uwsgi_temp \
> --http-scgi-temp-path=/usr/local//nginx/scgi_temp
8.编译完确认没有报错后开始安装nginx
[root@vt178m5c nginx-1.12.2]# make && make install
9.修改nginx配置文件
[root@vt178m5c nginx-1.12.2]# vim /usr/local/nginx/conf/nginx.conf
找到
#error_log logs/error.log;
#access_log logs/access.log main;
取消注释与修改
error_log logs/error.log;
access_log logs/access.log ;
找到
index index.html index.htm;
修改为
index index.php index.html index.htm;
找到
取消注释, /scripts$fastcgi_script_name;修改为$document_root$fastcgi_script_name;
这个配置的意思是 在浏览器中访问的.php文件,实际读取的是 $document_root(网站根目录)下的.php文件 -- 也就是说当访问127.0.0.1/index.php的时候,需要读取网站根目录下面的index.php文件,如果没有配置这一配置项时,nginx不会去网站根目录下访问.php文件,所以返回空白
配置项目中:include fastcgi_params; fastcgi_params 文件中含有各个nginx常量的定义,默认情况 SCRIPT_FILENAME = $fastcgi_script_name
10.编写nginx启动脚本
[root@vt178m5c nginx-1.12.2]# vim /etc/init.d/nginx
脚本代码:
#! /bin/bash
#chkconfig: 2345 80 90
#description:nginx run
# nginx启动脚本
# @author liut
# @version 0.0.1
# @date 2018-2-9
PATH=/usr/local/nginx/conf
DESC="nginx daemon"
NAME=nginx
DAEMON=/usr/local/nginx/sbin/nginx
CONFIGFILE=$PATH/$NAME.conf
PIDFILE=$PATH/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
set -e
[ -x "$DAEMON" ] || exit 0
do_start()
{
$DAEMON -c $CONFIGFILE || echo -n "nginx already running"
}
do_stop()
{
$DAEMON -s stop || echo -n "nginx not running"
}
do_reload()
{
$DAEMON -s reload || echo -n "nginx can't reload"
}
case "$1" in
start)
echo -n "Starting $DESC: $NAME"
do_start
echo "."
;;
stop)
echo -n "Stopping $DESC: $NAME"
do_stop
echo "."
;;
reload|graceful)
echo -n "Reloading $DESC configuration..."
do_reload
echo "."
;;
restart)
echo -n "Restarting $DESC: $NAME"
do_stop
do_start
echo "."
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|reload|restart}" >&2
exit 3
;;
esac
exit 0
11.编写完脚本记得修改下脚本权限
12.nginx启动|停止|重启
[root@vt178m5c nginx-1.12.2]# /etc/init.d/nginx start 启动
[root@vt178m5c nginx-1.12.2]# /etc/init.d/nginx stop 停止
[root@vt178m5c nginx-1.12.2]# /etc/init.d/nginx restart 重启