1.什么是Linux系统
Linux,一般指GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹(Linus Benedict Torvalds)于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它支持32位和64位硬件,能运行主要的Unix工具软件、应用程序和网络协议。
Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的Debian、Arch Linux,和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。
Linux是一款操作系统,与window系统一致,但是window系统不稳定,且不安全
2.为什么使用Linux系统
1.该系统开源
2.安全,性能稳定
3. 多用户、多任务、支持多线程和多CPU的操作系统
4.习惯把开发好的项目部署到该系统上,使网络客户可以访问到部署的项目
3.常见的linux产品
redhat 红帽系统 收费
ubuntu
centos系统
4.新建虚拟机
安装系统镜像centos7
网络适配器:
1.NAT模式:把自己的window主机作为路由器,那么只有该window:主机才可以访问你的虚拟机,但是其他人的电脑无法访问该虚拟机。
2.桥接模式:把window:主机所在的路由作为该虚拟机的路由,只要在同一个局域网的客户,都可以访问我的虚拟机。
5.命令
查看当前ip:
ifconfig / ip addr
linux目录结构
/ : 根目录
/bin和sbin:
bin 和sbin目录存放脚本文件,存放着最经常使用的命令。/etc:
etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。存放环境变量配置文件/usr:用户目录 等价于window program file 建议都安装在该目录下
usr 是 unix system resources(unix 系统资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。
5.1常用命令
目录的切换
[root@localhost local]# cd ../ 返回到上一级
[root@localhost usr]# cd ../
[root@localhost /]# cd /usr/local 切换到指定目录
[root@localhost local]#
查看当前所在目录 pwd
[root@localhost local]# pwd
/usr/local
查看目录下的子目录或子文件 ls
ls /目录名 查看指定目录下的子文件和子目录
ls 查看当前目录下的子文件和子目录
[root@localhost local]# ls
bin etc games include lib lib64 libexec sbin share src[root@localhost local]# ls /usr
bin etc games include lib lib64 libexec local sbin share src tmp
d:表示目录
-:表示文件
l:表示快捷键
root:当前文件所属的用户
root:当前文件所属用户的组
ls -a :查看目录下所有的子目录和子文件以及隐藏文件
ls -l:详细列出所有内容
创建空文件
touch 文件名
与是否有后缀无关
创建文件夹
mkdir [-p] 文件夹名
删除文件
rm
rm -f 强制删除
删除目录 rm -r
rm -rf 强制删除
移动或重命名文件或目录
mv
复制cp
默认不允许复制文件夹,可以使用参数 -r
查看文件内容
cat more head tail
anaconda-ks.cfg
cat :查看文件所有
more:查看文件部分,如果继续可以使用空格可以分页查看,使用enter查看下一页
head -n 文件名 :查看文件前n行
tail -n 文件名 : 查看后n行 查看日志文件
tail -f :实时查看
编辑命令
vi 文件名
模式:命令行模式---i----编写模式 ----esc键-----命令行模式:wq保存并退出,q!退出不保存
搜索文件
find /路径 -name '文件名' 在指定路径下搜索,文件名可以使用通配符
文件尾部追加内容
echo '内容' > 文件名 覆盖原有内容
echo '内容' >> 文件名 追加
查看所有进程
ps -ef
ps -ef | grep 进程名 查看指定进程
杀掉进程
kill -9 进程编号
6.安装jdk
解压
tar -zxvf jdk-8u311-linux-x64.tar.gz
配置环境变量
vi etc/profile
export JAVA_HOME=/usr/jdk8/jdk1.8
export CLASSPATH=./:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$PATH:$JAVA_HOME/bin:$PATH刷新配置
source /etc/profile
修改ip
网络重启
systemctl restart network
安装tomcat
项目部署
打包为war包,放入tomcat/webapp下启动
解压
tar -zxvf apache-tomcat-9.0.98.tar.gz
启动tomcat
进入bin 下 ./startup.sh
查看进程
ps -ef | grep tomcat
linux开启防火墙,并且防火墙不允许8080端口放行,解决方案
1.防火墙放行8080 企业
firewall-cmd --add-port=端口号/tcp --zone=public --permanent
--add-port:添加放行的端口号
--zone:设置为公共
--permanent:永久放行
重启防火墙systemctl restart firewalld
查看哪些端口号被放行
firewall-cmd --list-port
移除端口号
firewall-cmd --remove-port=8080/tcp
2.关闭防火墙
systemctl stop firewalld
启动防火墙
systemctl start firewalld
查看防火墙状态 systemctl status firewalld
禁用防火墙 systemctl disable firewalld 开机还是关闭
查看端口占用
netstat -lunlp
需要运行安装
yum install net-tools
1.下载阿里云yum文件.
2.切换到 cd /etc/yum.repos.d 下 把下面的文件重名明为 CentOS-Base.repo.backup
3.把下载的阿里云文件放入 /etc/yum.repos.d 并改名为 CentOS-Base.repo
4.使用yum clean all 清除之前所有的yum
5.使用 yum makecache
安装mysql
wget下载安装包
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
rpm -ivh mysql80-community-release-el7-3.noarch.rpm
安装服务
yum install mysql-server --nogpgcheck
启动mysql
systemctl start mysqld
修改密码
#1、查看MySQL为Root账号生成的临时密码 grep "A temporary password" /var/log/mysqld.log #
2、进入MySQL shell mysql -u root -p #3. 修改密码---密码必须有大小写字母+数字+特色字符 长度不能小于8位 ALTER USER 'root'@'localhost' IDENTIFIED BY 'Ykq123456?';
设置允许远程连接
#1. 切换到mysql数据库 use mysql;
#2. 修改user表的Host字段 update user set Host='%' where user='root';
#3. 刷新权限 flush privileges;
放行3306端口号
firewall-cmd --add-port=3306/tcp --zone=public --permanent