你学会如何将项目部署到 Linux 系统上了吗?要不我带你耍耍。
👨🎓作者:Java 学术趴
💌公众号:Java 学术趴
🚫特别声明:原创不易,未经授权不得转载或抄袭,如需转载可联系小编授权。
🙏版权声明:文章里的部分文字或者图片来自于互联网以及百度百科,如有侵权请尽快联系小编。微信搜索公众号 Java 学术趴联系小编。
☠️每日毒鸡汤:万物皆目录。
👋大家好!我是你们的老朋友Java学术趴。相毕大家对 Windows 玩的已经是非常的熟练,那么小编今天给大家带大家搞一搞 Linux 系统,小编用一个星期的时间给大家整了一些 Linux 干货,由于内容太多,小编分开发。话不多说,直接进入今天的主题:Linux 系统。Linux,全称 GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于 1991 年 10 月 5 日首次发布,它主要受到Minix和 Unix 思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux 有上百种不同的发行版,如基于社区开发的debian、archlinux,和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。
23.Linux 的网络管理
Linux 系统中,所有的配置文件存在于 etc 目录下。
使用 vi 命令来修改网络 ip 地址的配置文件:vi /etc/syscongig/network-scripts/ifcfg-ens33
修改这个配置文件中对应的信息
BOOTPROTO = "static"
ONBOOT= "yes"
IPADDR=192.168.11.128 (ip 地址)
GATEWAY=192.168.11.2 (网关地址)
DNS=192.16.11.2 (域名解析系统)
只修将这个配置文件中的信息改变为:static、yes。其中 IP 地址、网关协议以及域名解析系统公司用给出,直接按着修改即可。
24.Linux 中关于进程的管理
线程的概念:一个程序的执行线路,一个程序可以有多个线程。
进程的概念:一个程序的执行,一个进程会占用一个端口。
注意:一个进程可以有多个线程。只要是可执行的文件(.exe)或者命令就是一个进程,会占用一个端口。
在 Windows 中,SYSTEM 对应的系统进程,Admin 对应的用户进程。
查看 Linux 中进程信息
ps : 这个命令只能查看 Liunx 系统中的用户应用的进程,不能查看系统的进程。
ps -e :查看 Linux 中的所有的进程(用户进程以及系统进程),简化显示进程信息。
ps -ef : 已全格式的形式显示 Liunx 中的所有的进程。
ps -ef|grep mysql : 查看指定执行的文件的全格式进程信息。(查看程序是否正常启动以及这个程序所对应的端口号。)
关闭 Linux 中的进程
使用 ps 命令查看进程的 PID。
使用命令 kill -9 PID 来关闭这个进程。
25.Linux 中服务的管理
服务是支持 Linu 运行的一些必要的程序,本质上也是进程,叫做守护进程。守护进程通常默默地运行在后台,为应用程序提供必要支撑,比如:sshd(接收和处理远程连接的)、防火墙等。
新版操作服务:systemctl [start|stop|restart|reload|status|enable] 服务名称。
旧版操作服务:service [start|stop|restart|reload|status|enable] 服务名称。
举列说明:
查看防火墙状态:systemctl status firewalld
关闭防火墙:systemctl stop firewalld
开启防火墙:systemctl start firewalld
26. Linux 中软件包的管理(软件的安装与卸载)
这个主要是管理软件的安装包
RPM:一种 Linux 的软件包的打包和安装工具,它操作的软件包都是 .rpm 结尾的安装包。
因为 RPM 已经称为 Linux 系统中重要的安装和解压工具,所以在 Linux 系统中内置了关于操作 RPM 的 rpm 命令。可以直接通过命令来操作这些.rpm 安装包。
查看当前系统中全部已经安装的 rpm 包:rpm -qa
使用过滤的方式查找指定的 rpm 暗转包:rpm -qa|grep firefox
卸载 rpm 安装包:rpm -e 指定包名(firefox)
安装 rpm 包:rpm -ivh xxx.rpm
这种方式不需要连接网络。
27. YUM 包管理(使用居多)
这个 YUM 收集了全世界的 rpm 包,相当于 Maven 仓库,我们需要什么 rmp 安装包直接到这个 YUM 仓库中搜索下载即可,并且使用 YUM 这个仓库他会自动下载你需要的这个 rpm 安装包的依赖 rpm 包,先下载依赖的 rpm 包最后在下载这个需要的 rpm 包。是一种基于 RPM 的软件包管理工具,它能够从指定服务器上自动下载 RPM 包并且自动安装,可以自动处理软件包之间的依赖关系。
查看当前系统中已经安装的 rpm 软件包:yum list installed
使用过滤的方式查看指定的 rpm 安装包:yum list installed|grep firefox
卸载 rpm 软件包:yum remove (指定软件)firefox.x86_64
安装 rpm 软件包:yum install firefox
这种方式必须连接网络。
28.Linux 中搭建 JavaEE 的开发环境
我们是在 windows 系统中使用 idea 集成开发环境等工具来编写一个项目,之后进行打包,部署到 Linux 服务器上。在 Linux 不进行代码的编写。我们只需要在 Liunx 服务器配置好运行 Java 项目的环境即可。
28.1 在 Linux 系统中安装 JDK(需要配置环境变量)
第一步:先将软件通过 xftp5 上传到/opt 下
第二步:解压到/opt 目录下 (tar -zxvf 压缩包 -C(大写的 C) 解压到的路径)
第三步:配置环境变量的配置文件 Vim /etc/profile
第四步:是配置文件生效
source profile
第五步:测试安装成功
java -version
28.2 安装 Tomcat(不需要配置环境变量)
第一步:将 Tomcat 压缩包通过 xftp5 上传到/opt 下
第二步:解压到 /opt 目录下
第三步:启动 Tomcat
第四步:Linux 上访问 Tomcat
在 Windows 系统上可执行文件叫做.exe,在 Linux 系统上执行文件叫.sh
解压之后在 tomcat 软件的 bin 目录下找到 startup.bat 启动 Tomcat。
如果想在 windows 系统上访问 Linux 系统上的 Tomcat,首先需要将 Linux 系统的防火墙关闭,之后再 Windos 系统中输入:http://Linux的 ip 地址:8080 ,此时就可以再 Winodws 系统上访问 Linux 系统上的 Tomcat。
28.3 安装 MySQL
第一步:查看是否已经安装了 mariadb
检查 Linux 是否安装了 mariadb 数据库,mariadb 数据库是 mysql 的分支。是免费开源的。mariadb 数据库和 mysql 数据库会发生冲突。首先要检查是否安装了 mariadb 数据库,如果安装了需要将其卸载掉。
检查是否存在 mariadb 数据库:yum list installed | grep mariadb
卸载命令:yum -y remove xxx,如果卸载不成功,需要去掉参数-y,手动确认卸载。
第二步:上传 mysql 安装包到 /opt 目录下
第三步:解压 mysql 安装包到 /opt 目录下
第四步:修改解压后的根目录名
第五步:创建数据文件夹 data(可以创建任意名称的文件夹,建议创建 data 文件夹)
data 文件夹是 mysql 用来存放数据库文件的,数据库的表数据都放在 data 目录下。默认是没有 data 文件夹的,我们需要手工创建 data 目录,在 mysql-5.7.18 文件夹目录下创建一个 data 文件夹。
第六步:创建用来执行 mysql 命令的 Linux 用户
创建 mysql 用户(建议,可以任意命名)。用来执行 MySQL 的命令 mysqld(就是对 mysql 进行开启、关系以及其他的操作),此命令用来初始化 mysql 的基础信息。可以使用其他用户,例如:mysqldb 等...但是不推荐使用。
第七步:初始化 mysql
使用 mysql 的 mysqlid 命令初始化数据库的基本信息。切换到 mysql-5.7.18/bin 目录下执行。
命令:mysqld -initialize -user = mysql-datadir=/opt/mysql-5.7.18/data -basedir=/opt/mysql-5.7.18
参数说明:
-initialize : 初始化 mysql,创建的 root,随机生成密码。记住密码,登录 mysql 使用。
-user :执行 mysql 命令的 Liunx 用户名
-datadir :mysql 数据文件的存放位置,目录位置参照本机的设置。
-basedir :mysql 安装程序的目录,目录位置参照本机的设置。
该命令执行后,会生成一个临时的 mysql 数据库 root 用户的密码,请先拷贝出来记住,后续第一次登录 mysql 需要使用。
密码是:LTt+nCxrx0xM
第八步:启用安全功能
在服务器与客户机之间来回传输的所有数据进行加密。通过证书提供了身份验证机制,mysql 命令程序 mysql_ssl_rsa_setup 提供了开启数据加密的功能,生成数字证书。
在 mysql-5,7,18/bin 目录下执行命令: ./mysql_ssl_rsa_setup-datadir=/opt/mysql-5.7.18/data
第九步:修改安装目录权限
mysql 安装后,需要更改 mysql-5.7.18 整个文件夹目录权限,更改所属用户和组为之前创建的 mysql 用户及其所在组。在 mysql 安装目录的上级(/opt)位置,执行命令 chown。
第十步:启动 mysql 服务
启动 mysql 服务,mysql-5.7.18/bin 目录下执行命令: ./mysqld_safe &(其中 &符号表示后台启动),输入命令后按 Enter
确认 mysql 是否启动成功,查看进程,使用 ps -ef | grep mysql
第十一步:关闭 mysql
在 mysql-5.7.18 目录下执行: ./mysqladmin -uroot -p shutdown 输入密码关闭
查看 mysql 进行,确认 mysql 服务是否关闭成功
29.将项目部署到 Liunx 系统服务器上
第一步:需要将项目的数据库存储为 sql 文件,将这个 sql 文件导入到 Linux 系统中。
具体操作:
第一步:在 windows 的 cmd 中使用命令:mysqldump -u 账号 -p 密码 数据库名 > 文件存储的绝对路径。注意:执行 mysqldump 命令,直接在 Windows 控制台下执行,无需登录 mysql。并且在 mysql 下执行这个命令是错误的。
第二步:将这个 sql 文件用过 xftp 等工具传入到 Linux 中,一般传入到 opt 目录下。
第三步:在 Liunx 中登录并创建一个数据库(这个数据路与 windows 中的数据库名字一致,这样做是保证 war 包中连接数据库的信息不用发生改变。)
第四步:执行 sql 脚本文件(sourec + sql 文件路径),此时是在 Linux 系统中进行的操作。
第五步:导入成功。完成了 Windows 到 Linux 数据库的导入。
第二步:使用 idea 或者其他编辑器将项目导出为一个 war 包。(导出 war 包可以使用 idea 中 Build 导出 war 包,也可以使用 Maven 到处 war 包),这里需要修改项目中连接数据库的信息,将其修改为 Linux 系统中用户名、密码以及数据库的名称端口号等...
第三步:将生成的 war 包导入到 Linux 系统中的 tomcat 软件中的 webapp 下,此时 Linux 系统中的 Tomcat 会自动解压这个 war 包并运行。
第四步:启动 Linux 系统中的 Tomcat,在 Tomcat 的 bin 目录下找到 startup.sh 启动 Tomcat。使用命令:./startup.sh
第五步:此时就可以在 Linux 浏览器的网址栏输入此项目的 url 来访问这个项目。主机的 ip 地址此时就是 Linux 本机的。http://127.0.0.1:8080/crm/login.jsp。
第六步:在 Windows 上访问 Linux 服务器上的这个项目。此时主机的 iP 地址就不是本机的了,需要使用部署项目的这台 Linux 系统的 ip 地址。http://192.168.11.128:8080/crm/login.jsp 。注意:需要关闭 Linux 系统中饿防火墙。
连接虚拟机的时候使用的虚拟网卡,不是实际的网卡。
我们此时使用的是虚拟的 Linux 系统,不是实际存在的电脑,所以使用虚拟网卡,在实际开发中,Linux 会部署到一个 Linxu 服务器上,这个服务器是真是存在的,此时就需要使用实际网卡。
虚拟网卡
实际网卡
经过了小编几天的爆肝,终于把 Linux 系统的笔记总结完成,如果对大家有帮助的话,欢迎大家点赞支持一下,小编将会万分感动!!
以上项目的源代码,点击星球进行免费获取 星球 (Github 地址)如果没有 Github 的小伙伴儿。可以关注本人微信公众号:Java 学术趴,发送 Linux,免费给发给大家项目源码,代码是经过小编亲自测试的,绝对可靠。免费拿去使用。
版权声明: 本文为 InfoQ 作者【Java学术趴】的原创文章。
原文链接:【http://xie.infoq.cn/article/a29fba36986eca0c310b582b5】。文章转载请联系作者。
评论