LinuxcentOS7基本配置,jdk,mysql,免密登录,xshell密钥登录

Posted Dr.psycho

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LinuxcentOS7基本配置,jdk,mysql,免密登录,xshell密钥登录相关的知识,希望对你有一定的参考价值。

1.虚拟机的Linux安装的配置

在这里插入图片描述

语言简体中文

设置上海时间

分区默认分区

设置root密码

创建用户

root 进行登录是超级管理员,其他用户没有权限进行ip方面的修改

在这里插入图片描述

cd 进入下一级的目录当中

在这里插入图片描述

当你在任何的目录的时候都可以通过

cd ~ 来返回家的目录

在这里插入图片描述

pwd查看当前目录

在这里插入图片描述


2.设置Linux网络

1.net模式,通过以太网(网线)方式进行连接

在这里插入图片描述

如果虚拟机不能上网则卸载重装.

虚拟机连接的是vm net8

在这里插入图片描述

VM net8 有自己特定的ip段.

操作步骤:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

回到linux页面(因为用的是centerOS7.x版本所以此命令是固定的)

vi /etc/sysconfig/network-scripts/ifcfg-ens33

在这里插入图片描述

IPADDR:对应子网ip:192.168.30.x

这个x如果出现被占用的情况则可以通过修改来实现成功的沟通网络

ESC–>shift+:(英文的冒号)–>wq退出保存

输入命令重启

systemctl restart network.service

ctrl+c退出ping命令

2.桥接模式,通过无线网的方式进行连接

  • 右下角右键打开
    在这里插入图片描述
  • 选择桥接模式,cope物理机状态(因为输入法的原因可能会出现英文,请大家谅解)
    在这里插入图片描述
  • 点击编辑–>虚拟网络编辑器
    在这里插入图片描述
  • 更改设置(win7没有的话就跳过此步骤)
    在这里插入图片描述
  • 选择VMent0
    在这里插入图片描述
  • 如下设置
    在这里插入图片描述
  • 然后通过cmd命令查看IP地址和网关,把信息拷贝一份,一会进行配置信息的写入.
    在这里插入图片描述
  • 把以下信息记好,等待写入配置文件当中
    在这里插入图片描述
  • 在linux系统中输入以下命令进行网络的编辑
vi /etc/sysconfig/network-scripts/ifcfg-ens33
新增为对应刚才查询的信息,
IPADDR(IP地址,必须和IPV4地址在同一个网段):
eg:192.168.43.19(这是本机的地址)
	 192.168.43.30(这是虚拟机的地址)
	 他们都是43网段的.
NETMASK(子网掩码,必须和本机的相同)
GETEWAY(网关,必须和本机的相同)
DNS1(DHCP服务器,也必须相同)
按esc ,输入英文冒号,然后输入wq回车保存退出

在这里插入图片描述

  • 添加网关地址
    输入指令:
vi /etc/sysconfig/network

在这里插入图片描述

  • 添加DNS
    命令:
vi /etc/resolv.conf

在这里插入图片描述

  • 重启服务
    命令:
systemctl restart network.service
  • 测试
ping www.baidu.com

在这里插入图片描述

  • 测试内网的连接
    命令:
ping 192.168.43.30
即虚拟机配置的Ip地址

在这里插入图片描述
按ctrl+c退出ping命令
如果这两个都能够ping通则说明配置成功.

3.从net模式切换到桥接模式

以太网配置方法,如果是无线网就按照第二种方式进行配置

请严格按照强封装的步骤来不要自由发挥:

  1. 关闭所有虚拟机
    在这里插入图片描述
    2.打开:虚拟机–>设置
    在这里插入图片描述

在这里插入图片描述

3.打开虚拟网络编译器,还原默认设置
在这里插入图片描述

在这里插入图片描述
4.进行网络的配置
打开虚拟机,输入指令编辑网络

vi /etc/sysconfig/network-scripts/ifcfg-ens33

在这里插入图片描述
打开之后需要进行编译的是
BOOTPROTO=static
ONBOOT=yes
在这里插入图片描述
更改网段:
win+r–>cmd–>ipconfig/all
在这里插入图片描述
在此输入ipconfig/all查询ip地址

在这里插入图片描述
找到首选项

在这里插入图片描述
Ipv4地址对应 IPADDR
子网掩码 对应 NETMASK
默认网关 对应 GATEWAY
DNS服务器 对应 DNS1

在刚才的网络配置中进行添加/修改

vi /etc/sysconfig/network-script/ifcfg-ens33

在这里插入图片描述
5.测试

重启服务

systemctl restart network

在这里插入图片描述
测试网络的连接

ping www.baidu.com
ping 配置的本地ip
ctrl+c退出

在这里插入图片描述
在这里插入图片描述


3.快照的拍摄

保存当前操作,相当于备份,然后恢复到当前的状态.

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4.克隆

如果要使用克隆则必须要进行挂起或关闭

指令:

init 0

在这里插入图片描述

然后进入向导,下一步,下一步

在这里插入图片描述

起一个名字,然后选一个位置进行克隆


5.导入虚拟机

把文件复制到指定的位置,然后

打开虚拟机

vmx是启动程序

我已移动该虚拟机/cope该虚拟机

已知的用户名:root

已知的密码:hadoop
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


6.创建用户

useradd jack

passwd jack

怎么切换用户:

su jack 切换到jack账户

cd 进入xx目录
pwd 查看当前的目录路径
ls 查看当前的目录结构
dev目录 用于存放设备文件

root下的目录

在这里插入图片描述

lib是c和c++的库

mnt:挂载


7.SecureCRT(远程连接工具) & SecureFX(FTP工具)

下载工具和注册机文件

教程:

  1. 安装完上述的工具之后把学习交流文件相对应的粘入对应的根目录中

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

这时候不要关闭这个窗口

双击应用程序–>Enter license Data–>下一步

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

选择accept&save

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

测试:是否连接成功

在这里插入图片描述
在这里插入图片描述

注册SecureFX:

同样把注册机文件放在SecureFX的根目录下:

在这里插入图片描述

双击打开SecureFX

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

8.免密登录

需要用到两台虚拟机,分别为A和B
操作步骤:

  1. A配置公钥
  2. A把公钥拷贝到B
  3. A能实现登录B
  4. 输入B的密码校验,并重启
  5. B把公钥拷贝到A
  6. B能实现登录A
    配置公钥并三个回车

192.168.30.11是B的IP地址

输入B的密码以进行配置

9.压缩包的解压和传递

1. 在本地系统找到压缩包并放到虚拟机上
在这里插入图片描述
在这里插入图片描述
2. 在图形化界面上进行目录的切换和查看,证明直接挪取是有效的
图一是目录的切换;图二多了查看当前目录
在这里插入图片描述
在这里插入图片描述
3. 检验unzip命令是否成功运行,并调整编码集
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4. 安装依赖
命令: yum install -y unzip
在这里插入图片描述
5. 解压文件
(在当前目录中有的文件名,可以通过ls查看是否在当前目录中有无此文件)
命令: unzip 文件名
在这里插入图片描述
6.虚拟机A拉取B的文件
因为配置了免密登录所以可以直接进行拉取

命令:scp -r root@CentOS2:/home/apache-tomecat-9.0.45 .
@后是主机名也可以输入ip地址
:后是路径名/文件名
最后那个. 代表拉取到当前目录

在这里插入图片描述

10.JDK的环境配置

  1. jdk的解压:
    tar -zxvf 文件名(输入jdk 按tab键自动补齐)

    tar -zxvf 文件名 -C /目录(就能解压到指定的目录当中)
    tar -zxvf 文件名 . (解压到当前目录)
    在这里插入图片描述
    然后进入到home目录中
    cd /home

  2. 进入JDK目录中:

在这里插入图片描述

  1. 设置环境变量:命令vim /etc/profile (vim命令如果没有通过 yum install -y vim 指令进行下载,这个指令告诉我们,缺什么都可以找yum要,所以一定要牢记)

在这里插入图片描述

在这里插入图片描述

  1. 进入到目录最末行:大写G进入目录最末行
export JAVA_HOME=/home/jdk1.8.0_231
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar
export PATH=$PATH:$JAVA_HOME/bin

在这里插入图片描述

  1. 保存退出并让配置生效,wq保存退出,然后再输入:source /etc/profile 让java环境变量生效.
    在这里插入图片描述

  2. 生效效果图,输入指令: java -version

在这里插入图片描述


11.linux centos7 安装配置 mysql-5.7.21(解压版)

前言:
1.一定要准确的看好目录位置,如果出现找不到目录文件则用ls命令查看目录中到底有没有该文件夹,如果没有该文件夹,则参考截图进行目录的转换.
2.检查版本一定要对应,最起码大版本要对应.mysql-8.x就不一定能够通过此方法成功实现.
3.linux版本的mysql压缩包:
链接:https://pan.baidu.com/s/1giW2JA0uN_yyv4mpAAdm6w
提取码:6666
4.如果遇到任何的问题请务必回来查找附加选项.
附加1:如果向通过控制台登录进入mysql,必须进入/usr/local/mysql(文件名)/bin 目录当中才能访问,并且需要通过此命令进行访问 ./mysql -uroot -p
因为我们指定了mysql权限和主目录入口所以要通过此方法进行访问.
附加2:生成的临时密码请务必妥善保存到密码修改之前
附加3:请务必按照本文中的目录进行访问,容易混淆的地方在于查找bin目录,可能在进入bin目录时候没有查找到文件,请确保此bin目录是在mysql(全名mysql-5.7.21)目录下的bin.因为测试中会不停的变换目录的位置,请在粘贴代码的同时参考图中的位置进行有效的粘贴使用.

  1. 检查是否安装了mariadb数据库

​ 命令:

yum list installed | grep mariadb

在这里插入图片描述

  1. 卸载mariadb

    命令:

yum -y remove mariadb-libs.x86_64

在这里插入图片描述

3.解压mysql

​ 命令:

tar -zxvf mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz  -C /usr/local/

在这里插入图片描述

  1. 进入local目录:已经多了一个文件

    命令:

cd /usr/local

在这里插入图片描述

  1. 重命名

    命令:

mv mysql-5.7.21-linux-glibc2.21-x86_64 mysql-5.7.21

在这里插入图片描述

  1. 进入mysql的目录中,并创建一个文件夹

    命令:

cd mysql-5.7.21/
mkdir data

在这里插入图片描述

  1. 创建一个mysql的用户

    命令:

useradd mysql

在这里插入图片描述

  1. 切换到bin目录下

    一定要确定有mysqld文件,这个bin是mysql下的bin

    命令:

cd bin/

在这里插入图片描述

  1. 对mysql进行初始化

路径一定按照自己的路径来
Hhri:::U-2di(这个就是临时的密码)一定要记住密码一会要进行登录

命令:

./mysqld --initialize --user=mysql --datadir=/usr/local/mysql-5.7.21/data --basedir=/usr/local/mysql-5.7.21

在这里插入图片描述

  1. 运行自带的脚本并指向主目录

    在该目录执行下列命令

 ./mysql_ssl_rsa_setup --datadir=/usr/local/mysql-5.7.21/data

在这里插入图片描述

  1. 修改文件目录的权限

返回到local目录(cd … 返回上一级,两次就能返回到local目录)

chown -R mysql:mysql /usr/local/mysql-5.7.21/

在这里插入图片描述

所有的权限都变成了mysql

在这里插入图片描述

  1. 启动mysql

回到bin目录下(这个bin目录是mysql-5.7.21下的bin目录)
这就决定了以后如果向通过控制台进行访问就必须进入指定的目录来输入指令才能进行数据库的访问.

cd bin/

在这里插入图片描述

启动mysql 加上&的作用是让mysql在后台能够运行

 ./mysqld_safe &

在这里插入图片描述

上图中没有出现#,但是可以直接输入下面的指令并回车,输入以下命令查看mysql是否正常运行

ps -ef | grep mysql

显示以下信息证明mysql运行成功

在这里插入图片描述

  1. 登录进入mysql
./mysql -uroot -p

然后填入第9步临时的密码

在这里插入图片描述

14.重置你的密码

alter user 'root'@'localhost' identified by 'root';

在这里插入图片描述


12.mysql的远程连接和防火墙的配置

1.进行授权

grant all privileges on . to root@’%’ identified by ’ 这里填的是你设置好的密码 ’

grant all privileges on *.* to root@'%' identified by 'root';

在这里插入图片描述

*.* 所有数据库下的所有的表
% 代表所有的ip都能够访问,也可以指定ip地址

2.进行刷新

flush privileges;

在这里插入图片描述

3.解除防火墙限制

查看防火墙状态:
systemctl status firewalld

在这里插入图片描述

关闭防火墙:

systemctl stop firewalld

在这里插入图片描述

如果呈现此状态证明防火墙已经关闭

在这里插入图片描述

以下几条分别是防火墙的其他指令有需要的话可以再进行操作.

让防火墙可用:
systemctl anable firewalld
让防火墙不可用:
systemctl disable firewalld
启动防火墙:
systemctl start firewalld

4.用图形化界面进行连接

打开Navicat

在这里插入图片描述

连接成功!!

在这里插入图片描述

13.Xshell密钥登录的方法

1.新建用户密钥生成向导

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

选择保存位置

在这里插入图片描述

导出

在这里插入图片描述

在这里插入图片描述

2. 密钥的拷贝和目录的创建

找到配置的密钥,然后把密钥拷贝到/root/.ssh目录下

如果没有此.ssh目录,则需要手动进行创建,在root目录下

mkdir .ssh

创建autorized_keys文件,在.ssh目录下进行创建

touch autorized_keys

然后把导入密钥的信息拷贝到创建的autorized_keys中,并且赋予权限(可读可写)

cat id_rsa_2048.pub >> authorized_keys
chmod 600 autorized_keys
cat authorized_keys

在这里插入图片描述

在这里插入图片描述

然后可以通过配置的密钥信息进行登录。

3.新建连接进行测试

新建一个连接

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4.其他电脑拷贝此虚拟机如何连接

其他电脑拷贝此虚拟机的话需要配置一下私钥,因为私钥在本地,不能被虚拟机继承.把另一个台电脑上的私钥导入本地指定的位置就是下图这个

在这里插入图片描述

工具–>用户密钥管理者

在这里插入图片描述

到达本地的目录,选择打开即可

在这里插入图片描述

14.简单的命令:

1.touch创建文件命令

touch 创建一个文件

在这里插入图片描述

touch filename

2.rm删除命令

rm 删除当前目录的某个文件

-f 删除时没有提示信息

在这里插入图片描述

3.权限访问

ll查看文件权限,及详细信息

在这里插入图片描述

其他用户去没有权限去查看root下的文件

在这里插入图片描述

4.cat显示命令

cat 文件名|less :显示该文件不换行

在这里插入图片描述

cat 文件名|more : 显示该文件换行,逐行访问

在这里插入图片描述

5.tail末尾查看命令

tail 文件名:到达文件末尾,默认显示行数x行.

在这里插入图片描述

在这里插入图片描述

tail -数值 文件名

在这里插入图片描述

6.echo重定向命令

echo重定向内容

echo ‘内容’>文件名:使内容装入到aaa文件当中

在这里插入图片描述

查看aaa文件是否变更:

在这里插入图片描述

在这里插入图片描述

tail -f 文件名监控终端:在tomcat的控制台中那些数据是动态的,就是利用此所带来的效应能够做到实时监控.

在这里插入图片描述

在这里插入图片描述

7.目录查看命令和别名

ls命令:查看当前目录的结构

在这里插入图片描述

ll:查看当前目录的详细信息

在这里插入图片描述

alias name =‘ls -l’ 指定的名字查看目录的详细信息

在这里插入图片描述

ls -a:列出所有的文件

在这里插入图片描述

vim bashrc 可以自定义文件别名

在这里插入图片描述

8.mkdir创建目录命令

mkdir:创建一个文件夹

在这里插入图片描述

9.创建静态脚本并赋予可执行权限

创建一个脚本文件:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

并没有可执行权限,我们怎么给它加入可执行权限呢?

权限表示方法:

小于等于4代表仅可读

大于4小于等于6代表可写

大于等于7代表可执行

chmod 777 hello.sh

在这里插入图片描述

在这里插入图片描述

chmod 644 hello.sh

在这里插入图片描述

chmod +x hello.sh

在这里插入图片描述

执行一下:

在这里插入图片描述

10.mv移动命令

mv命令把当前目录的文件移动到指定的目录中去.

在这里插入图片描述

在这里插入图片描述

11.rm删除命令

rm命令用于删除:

删除目录需要加-r,根据rm --help中的提示内容,-r=递归

在这里插入图片描述

删除文件不用加-r,加上-f就没有提示信息了

在这里插入图片描述

12.cp复制命令

cp 复制命令

在这里插入图片描述

15.简单的shell脚本

1.新建一个脚本并运行

Shell 脚本通常是以#! 起始的脚本,被称作 shebang

规定的头的格式如下
#! /bin/bash

引申一个在windows的dos命令行的运行方法

window下的shell脚本

echo %PATH%
pause

执行shell脚本的几种方式

1. sh script.sh # 当前路径
2. sh /home/path/script.sh #完整路径
3. ./script.sh
4. /home/path/script.sh

运行的方法

在cmd中进入到文件所在的目录,输入文件的名字就可以运行此脚本

脚本的扩展名为 .bat

创建一个目录;进入该目录;创建一个脚本

在这里插入图片描述

#! /bin/bash
echo #JAVA_HOME
echo $PATH

在这里插入图片描述

运行这个脚本

./hello.sh

发现权限不够

在这里插入图片描述

赋予权限

chmod 744 hello.sh

在这里插入图片描述

再次运行

2.运行脚本的几种方式

第一种方法在该目录种直接进行运行

./hello.sh

在这里插入图片描述

如果是上级目录的话则需要这样更改

比如说是在practice的上级目录root当中 则直接进行访问就行了,前面一定不要加/
practice/hello.sh

另外一种方式是

sh practice/hello.sh

如果是归属于同样的上级目录的同级目录则需要在前面加上/ ,

比如说在home目录下有此文件

sh /home/practice/hello.sh

在这里插入图片描述

可以通过分号进行分隔

执行多个命令可以通过分号进行分隔

在这里插入图片描述

3.终端打印 echo

在这里插入图片描述

默认会增加一个换行符:

在这里插入图片描述

如果加上双引号打印特殊符号会报错.

在这里插入图片描述

加上单引号就不会出现错误

在这里插入图片描述

不加引号则有些符号代表的是有特殊的含义,所以还是需要加引号

在这里插入图片描述

4.控制打印间隔

在这里插入图片描述

测试间隔,根据不同类型需要制定不同的符号

#! /bin/bash
#这个是测试printf命令的
 printf "%-5s %-10s %-4s\\n" NO Name Mark
 printf "%-5s %-10s %-4.2f\\n" 666 Name 19.222

-5s 表示左对齐且宽度为5的字符串

-4.2f 保留两位有效数字,并且左对齐且宽度为4的字符串(就是间隔)

指定可执行权限,可以使用

chmod u+x 文件名

在这里插入图片描述

脚本语言通常不需要在使用变量之前声明其类型,只需要直接赋值就行

5.?查看正在运行的进程

ps:

ps -ef
查看现在正在运行的进程 
ps --help -s
ps -e 打开所有现在正在运行的进程

先通过管道命令获取到id

在这里插入图片描述

在这里插入图片描述


6.命令行内变量的创建和使用

创建一个变量

a=13
echo $a
赋值的时候不要带空格

在这里插入图片描述

文本控制台输出一定要带单引号

在这里插入图片描述

修改脚本测试是否能够执行

在这里插入图片描述

在这里插入图片描述

还可以进行嵌套输出

在这里插入图片描述

测试长度

echo ${#hello}

在这里插入图片描述

添加:$0和访问权限

脚本可以修改成

#!/bin/sh
hello='hello shell'
echo $hello
echo $0

打印结果是

在这里插入图片描述

在这里插入图片描述

查询UID对应root的id

在这里插入图片描述

规定用哪种脚本语言

在这里插入图片描述


7.if判断和基本运算脚本

创建脚本

judgeroot.sh

写入脚本

#!/bin/bash
if [ $UID -ne 0];
then
 echo Not root user
else
 echo "root user"
fi

修改权限

chmod u+x judgeroot.sh

运行脚本

在这里插入图片描述

add1:在脚本的$符号之前必须有空格,如果没有就会出现未找到命令的提示信息

在这里插入图片描述

检错指令

sh +x judgeroot.sh

数学运算

普通运算:

var1=5
var2=6
let var3=var1+var2
echo var3

在这里插入图片描述

自增或自减:(脚本)

#!/bin/sh
a=3;
b=4;
let c=a+b
let c++
echo $c

在这里插入图片描述

输出结果为:

在这里插入图片描述

自减脚本:

#!/bin/bash
a=3
let a--
echo $a

在这里插入图片描述

[]操作符 与let命令类似

在这里插入图片描述

(())同样 与let命令类似

以上只能通过整数运算

下图是如何进行浮点运算

在这里插入图片描述


8.文件描述符

使用重定向,在当前目录中创建1.txt并把ls的结果导入其中

1是标准输出流

ls > 1.txt
相当于
ls 1>1.txt

发现信息已经被导入了

在这里插入图片描述

并且多了1.txt这个文件,查看当前文件的目录发现多个1.txt这个文件

在这里插入图片描述

输入指令:

ls + >2.txt

在这里插入图片描述

然后我们让标准输入错误重定向到2.txt中

2是标准流

ls + 2>2.txt

在这里插入图片描述

实例的说明:

在运行web项目我们需要打成jar 包,

然而我们的在记录日志的时候需要追加>>而不是需要覆盖日志

java -jar xxx.jar 1>>xxlog.log 2>/dev/null

如果是标准的输出则追加到xx.log中

如果是错误的信息则是标准的错误然后被回收掉.

>等同于1> 
>>等同于1>>
>代表覆盖 
>>代表追加
如果不加任何的符号则默认为标准输出
如果在>前加2,则是标准错误

总结:简单的来说这就是一个修饰状态的标志,1就是正确的,2就是错误的,>代表覆盖,>>代表追加.

追加信息的指令:

echo '追加的信息'>>1.txt

1.txt中的信息如下所示:

在这里插入图片描述

如果想要清

以上是关于LinuxcentOS7基本配置,jdk,mysql,免密登录,xshell密钥登录的主要内容,如果未能解决你的问题,请参考以下文章

LinuxCentOS7下安装JDK详细过程

在linux环境下安装JDKtomcat和mysq

MySQL主从复制与主主复制

Apache Tomcat 7 安装与配置

Linux CentOS 7 操作系统配置JDK

Centos7 安装jdk,MySQL