Windows环境下使用虚拟机搭建linux环境
Windows系统下搭建Linux环境
1.安装虚拟环境,vmware workstation
官网下载地址:https://customerconnect.vmware.com/cn/downloads/details?downloadGroup=WKST-1701-WIN&productId=1376&rPId=100679
2.安装centos7.x版本
CentOS是基于Red Hat Linux 提供的可自由使用源代码的企业级Linux发行版本;是一个稳定的可预测的可管理和可复制的免费企业级计算平台。
阿里云镜像下载地址:https://mirrors.aliyun.com/centos/
在其中选择7/isos
镜像安装包的后缀名称解释:
DVD:普通安装版,需安装到计算机硬盘才能用。文件比较大,包含一系列常用的软件。适合在虚拟机中安装学习。安装的时候可以选择性的安装。
Everything:包括各种packages。太大,挺多东西暂时用不到,不推荐。
LiveGNOME:GNOME桌面版。
LiveKDE:KDE桌面版。
Minimal:最小安装版,一般文本编辑器都没有,不推荐。
NetInstall:这个是网络安装的启动盘。
另外.iso代表着直接下载镜像,.torrent是种子文件。
安装步骤:
1)安装好VMware Workstation后,点击创建新的虚拟机
2)选择下载的镜像文件进行安装
3)安装centos的时候,点击软件选择,选择带图像界面的GUI
4)点击网络和主机名,将以太网按钮打开。
5)点击安装
6)点击ROOT密码设置root用户密码
3.安装终端,远程连接linux
MobaXterm X服务器和SSH客户端MobaXterm是您远程计算的终极工具箱。在单个Windows应用程序中,它提供了大量功能,这些功能是为程序员,网站管理员,IT管理员以及需要以更简单的方式处理远程作业的所有用户量身定制的。MobaXterm向Windows桌面提供所有重要的远程网络工具(SSH,X11,RDP,VNC,FTP,MOSH等)和Unix命令(bash,ls,cat,sed,grep,awk,rsync等) ,在一个开箱即用的单个便携式exe文件中。为您的远程任务提供一体化网络应用程序有很多优点,当您使用SSH连接到远程服务器时,将自动弹出图形SFTP浏览器以直接编辑您的远程文件。您的远程应用程序也将使用嵌入式X服务器在Windows桌面上无缝显示。
下载网址:https://mobaxterm.mobatek.net/download.html
安装步骤:
- Step1:将解压版解压,解压后双击MobaXterm_Personal_21.2.exe运行
- Setp2:创建一个session来连接远程服务器/虚拟机,以ssh为例:点击菜单栏session或者User Session,填写远程连接的主机ip(虚拟机查看),填写用户名(使用哪个用户进行连接,需要勾选选框才能输入),端口号(一般是默认),点击ok,便能正常连接。
4.解决虚拟机linux和终端连接失败的问题
- Step1:首先检查linux的ip地址是否分配:ip addr
- Step2:inet代表是ipv4,如果没有这一行,确定是虚拟网卡没有启动,如果有这一行,还是连接不上,表示防火墙开着。
- Step3:使用cd命令找到ifcfg-ens33文件,此文件为网卡配置文件文件路径为:cd /etc/sysconfig/network-scripts/
- Step4:使用ls命令:ls -l ifcfg-ens33:列出配置文件
- Step5: 使用vi命令打开配置文件:vi ifcfg-ens33,内容如下:
- Step6: 检查这个ONBOOT是否为no,如果是no,按下i键,进入编辑模式,将no改为yes,然后按esc键或者ctrl+c键退出编辑模式,再输入:wq保存并退出vi。
- Step7: 重启网卡:systemctl restart network
- Step8: 使用ip addr 检查ip地址是否生成。
5.安装jdk环境
1)目的:jdk = java development kit,它是java的依赖环境
2)步骤
- Step1:检查Linux下面是否存在jdk:java -version,如果有open jdk,表示没有安装Oracle jdk
- Step2:删除当前的这个open jdk
找到open jdk的java程序所在位置:which java,删除open jdk的连接文件:rm /user/bin/java
- Step3:网上下载jdk的tar包
官网下载网址:https://www.oracle.com/java/technologies/downloads/#java19
- Step4:上传jdk文件到linux指定目录
法1:使用lrzsz上传
->:yum命令:在线安装软件
语法:yum -y install 软件包名字 软件包名字
参数释义:在安装过程会产生一些提示,确认是否继续安装,-y默认选择yes
->linux系统安装上传下载工具lrzsz 使用yum -y install lrzsz命令安装
在开发的过程中,经常遇到需要在 Linux 和 Windows 之间上传下载文件的情况,这时,一般都是使用 FTP 或者 WinSCP 工具进行上传下载, 虽然也能解决问题,但是这些工具需要在本地安装客户端并进行配置之后才能使用。这里介绍一款工具,它能秒级安装,安装即用,不需要任何的配置,就能方便快捷的在 Linux 和 Windows 之间传输文件,它就是Linux中上传下载的工具 lrzsz ,这个工具使用了 XMODEM、YMODEM 和 ZMODEM 文件传输协议来实现文件的上传和下载的,目前主流的SSH连接工具 ( SecureCRT、XShell 等 ) 都支持这些协议。
lrzsz基本使用:
1) 在windows系统上传文件到linux环境,使用以下命令:rz
一般先使用cd命令切换到linux目标地址,然后使用rz命令,在弹出的窗口中选择传输的文件,传输完成后,文件将出现在你所在的当前目录
2) 在linux系统传输文件到window系统,使用以下命令:sz
法2:使用windows scp命令上传
语法:scp 文件位置 用户名@remotehost:/目标位置
该命令执行的时候需要相应用户的密码
例:scp .\jdk-8u231-linux-x64.tar.gz root@ip:/mnt
法三:在MobaXterm X左侧切换到放置文件的目标路径,然后直接拖拽
- Step5:解压jdk的压缩包文件
tar -zxvf jdk-19_linux-x64_bin.tar.gz -C /opt/java
- Step6:配置环境变量
环境变量:操作系统为支撑程序的运行提供的变量
1)用户变量:只有当前用户能够使用,linux系统用户变量配置文件的位置:主目录/bash_profile
2)系统变量:所有用户都可以使用,全局变量,Linux系统全局变量配置文件位置: /etc/profile
3)如何定义变量:
命令:export 变量名=值,该命令可以用在命令行,也可以在配置文件中使用
4)为什么要定义环境变量
使用命令启动程序的时候,使用命令的位置不一定在安装程序的目录下面,操作系统首先会去环境变量中查找定位。
PATH:路径,所有可执行程序存放的路径,这个路径需要手工或者程序在安装的时候去添加
5)echo $PATH:该命令用于输出环境变量的值,用于检查某个环境变量是否正确
6)配置java环境变量:
- 需要让操作系统知道jdk的bin目录的位置
- 配置java程序启动和运行依赖的库文件dt.jar,tools.jar
使用命令进入配置文件进行编辑:vi /etc/profile
按下图所示配置变量:注意等号左右不要有空格
保存配置文件后,使用source /etc/profile激活刷新配置文件
- Step7:检查安装效果
使用 Echo $JAVA_HOME命令看配置的环境变量是否存在
输入命令java -version看是否配置成功
6.配置mysql
- Step1:下载mysql15.7-xxx.tar.gz:下载网址:https://downloads.mysql.com/archives/community/
- Step2:上传到linux指定目录 E:\2022-9-20\mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz root@ip:/mnt
- Step3:解压到linux指定目录 tar -zxvf mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz -C /opt/mysql
- Step4:重命名目录 mv mysql-5.7.31-linux-glibc2.12-x86_64/ mysql57#方便记忆和配环境变量
- Step5:修改mysql的目录权限
chmod -R 777 /opt/mysql57#修改mysql的目录权限为所有人可读可写可执行
chown -R root:root mysql57#修改mysql57的所有者和组为root,注意需要先进入要修改权限的目录的上一级目录,命令才能执行成功.
- 补充知识:
Linux系统的权限相关概念:
linux有三种角色,三种权限
>1:所有者,owner:默认是文件或目录的创建者
>2:所有者同组用户,group:所有者同组的用户
>3:其他人,other:和所有者不同组的用户
三种权限:r(read):读、w(write):写入、x(excute):执行
使用命令ls -l
结果列表最前面的10个字符就是代表了文件或目录的权限。
权限列表的解读:
修改权限命令:chmod [-R] 权限列表 文件名或目录
-R:递归修改,主要应用与目录的权限修改
具体使用:
修改文件或目录的所属用户和组:
修改文件和目录的所有者的命令:
chown [-R] username[:groupname] 文件名或目录名
#注意需要先进入要修改权限的目录的上一级目录,命令才能执行成功
- Step6:修改Mysql的配置文件,位置/etc/my.cnf
创建配置文件中涉及的目录
mkdir /opt/mysql57/data#创建文件数据库目录
mkdir /opt/mysql57/logs #创建日志文件的目录
- Step7:配置环境变量
在/etc/profile文件中添加下面的内容:
激活配置:
source /etc/profile
- Step8:检验是否安装正确 mysql -V
- Step9:初始化数据库
mysqld --defaults-file=/etc/my.cnf --initialize-insecure --user=root
--defaults-file:设置mysql服务启动所需的配置文件
--initialize:初始化数据,同时生成一个临时密码
--initialize-insecure:初始化之后不设密码
--user:指定初始化操作的linux用户
- Step10:启动mysql服务
mysqld --defaults-file=/etc/my.cnf --user=root&
安装net-tools工具,检查端口号等。
#检查启动端口监听状态
命令:netstat -anlp|grep 3306
-a:表示所有的端口
-n:以数字的方式显示端口信息
-l:显示正在监听状态的端口
-p:显示监听端口的程序以及PID(PID指进程编号)
|:管道符:把上一个命令的输出作为下一个命令的输入。
grep:作用是从文件中查询是否存在某个字符串,比如这里的3306,该处表示从上一个命令的返回中查找是否存在3306。
- Step11:开启mysql远程访问权限
mysql>grant all on *.* to 'root'@'%' identified by '123456' with grant option;
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql>flush privileges;
#如果没连接上,查看防火墙是否没关。systemctl status firewalld
关闭防火墙命令:systemctl stop firewalld
退出mysql命令:quit
- Step12:通过客户端连接使用mysql
在windows客户端输入命令:mysql -u root -P 3306 -h xxx.xxx.xxx.xxx(连接的mysql的机器的ip地址) -p
补充:连接mysql
格式: mysql -h主机地址 -u用户名 -P端口号 -p用户密码
- -h: 主机名,表示要连接的数据库的主机名或者IP
- -u: 用户名,表示连接数据库的用户名
- -P: 大写P,端口,表示要连接的数据库的端口,默认是3306,可以不写,但是如果端口不是默认端口,就必须指明端口号
- -p: 表示要连接的数据库的密码,-p后面可以直接输入密码,但是这样密码就会明文输入不太安全,所以建议输入-p回车,换行输入密码
>>>待续