Linux系统分为内核版和发行版
内核版
发行版
Linux系统的安装方式
虚拟机 (Virtual Machine) 指通过软件模拟的具有完整硬件系统功能、运行在完全隔离环境中的完整计算机系统。
常用虚拟机软件:
Vmware下载
1. 开启安装向导
双击安装包文件(这个过程可能有点慢),等待出现安装向导后点击下一步
2. 同意许可协议
3. 选择安装位置
4. 修改用户体验
5. 快捷方式位置
6. 开始安装
7. 密码设置
下载链接
8. 检验网卡
安装完毕之后,一定检查下自己电脑上是否有下面两块虚拟网卡,如果没有,卸载重新安装
我们今天要安装的是Linux的Centos7版本,这也是目前应用最广的服务器版本
下面安装步骤中,没有截图的全部采用默认选项
1. 虚拟机新建
2. 选择安装源
3. 选择系统版本
4. 名称和位置
5. 选择内存
6. 选择镜像
7. 开启虚拟机
8. 开启虚拟化
如果在安装时提示虚拟化未开启,需要自行百度自己电脑型号 如何开启虚拟化
9 选择语言
10. 软件选择
点击 软件选择->基础设施服务器
11. 安装位置
点击 安装位置->然后直接点完成
12. 网络连接
13. 开始安装
14. 设置密码
进入安装页面后,点击ROOT密码来设置超级管理员密码,然后等待10分钟左右,然后重启
15. 登录
1. 选择克隆
关闭操作系统,将当前系统克隆一份
2. 完整克隆
4. 填写克隆名称
1. 拍摄快照
用于连接linux的工具有很多,比较有名的有xshell、putty、MobaXterm
MobaXterm下载
1. 解压软件
2. 启动软件
3. 查看服务器地址
4. 新建连接
当ens33的ip地址丢失时使用下面命令找回
service NetworkManager stop
service network restart
linux的文件系统采用的是倒树状目录结构,在此结构中的最上层是根目录”/”,然后在根目录下再创建其他的目录。
使用技巧
命令格式
command [-options] [parameter]
说明:
注意:
command --help
查看说明语法: ls [参数] 目录
参数:
-l 以详细形式查询当前目录下的文件(不包含隐藏文件) ls -l == ll
-a 查看目录下的所有文件,包含隐藏文件(不是详细展示)
-la 上面两个功能的组合(详细查看所有文件)
练习:
1. 查看 /etc/的文件
ls /etc
2. 查看 /etc/的所有文件
ls -a /etc
3. 查看 /etc/的所有文件的详细信息
ll -a /etc
语法: pwd
语法: cd 目录
目录表达形式:
/ 从根目录开始写的绝对路径目录
.. 上层目录
. 当前目录
~ 宿主目录(当前用户的家目录)
- 上次的目录
练习:
1. 切换到 /usr/local目录下
cd /usr/local
2. 切换到当前目录下的src目录下
cd ./src
3. 切换到上层目录
cd ../
4. 切换到宿主目录下
cd ~
5. 切换回上次操作的目录
cd -
语法: mkdir 目录 [参数]
参数:
-p 一次性创建多级目录
-v 显示创建过程
总结:
mkdir 目录路径(推荐使用绝对路径) -pv
练习:
1. 在 /opt目录下创建 test1目录
mkdir /opt/test1 -pv
2. 在 /opt 目录下创建 test2/test3目录
mkdir /opt/test2/test3 -pv
语法: rm [参数] 目录或文件
参数:
-r 递归处理,将指定目录下的所有文件及子目录一并删除,它需要你二次确认是否删除
-f 强制删除目录,它不会询问你
总结:
rm -rf 文件(目录)路径
练习:
1. 删除/opt目录下test1目录
rm -rf /opt/test1 删除test1目录
rm -rf /opt/test1/* 删除test1目录下面的内容,但是目录本身不删除
语法: cp -r 源目录 目标目录
参数:
-r 递归处理,将指定目录下的文件与子目录一并处理
总结:
cp -r 源目录(文件) 目标目录/ 复制一个目录或文件到指定目录下
cp -r 源目录(文件) 目标目录(文件) 复制并改名一个目录或文件
练习
1. 在/opt下创建test1目录, 在test1目录下创建test1.txt文件
mkdir /opt/test1
touch /opt/test1/test1.txt
2. 在/opt/test1目录下复制test1.txt为test11.txt
cp -r /opt/test1/test1.txt /opt/test1/test11.txt
3. 在/opt目录下复制test1目录为test2目录
cp -r /opt/tets1 /opt/test2
4. 复制/opt/test1/test1.txt 到 /opt/test2/下
cp -r /opt/test1/test1.txt /opt/test2/
语法: mv 原目录位置 新目录的位置
总结:
mv 源目录(文件) 目标目录/ 剪切一个目录或文件到指定目录下
mv 源目录(文件) 目标目录(文件) 剪切并改名一个目录或文件
练习:
1. 在/opt 下创建test1目录, 在test1目录下创建test1.txt文件
mkdir /opt/test1
touch /opt/test1/test1.txt
2. 在/opt 在创建test2目录
mkdir /opt/test2
3. 将test1目录下的test1.txt文件剪切到test2目录下
mv /opt/test1/test1.txt /opt/test2/
4. 将test2 目录下的test1.txt文件剪切到test1目录下,并重命名为test11.txt
mv /opt/test2/test1.txt /opt/test1/test11.txt
语法: find 路径 -name 文件名【允许模糊匹配】
练习:
1. 查询根目录下(包括子目录),名为b的目录和文件
find / -name 'b'
2. 查询根目录下(包括子目录),名以b开头的目录和文件
find / -name 'b*'
语法: more 文件名
扩展:
cat a.java 输出文件的所有内容到屏幕上,默认定位到最后一页,不适合大文件
more a.java 从第一页开始,按回车键换行,按空格健翻页,q退出
head a.java 查看a.java文件的前10行内容
tail a.java 查看a.java文件的后10行内容
head -n 7 a.java 查看a.java文件的前7行内容
tail -n 7 a.java 查看a.java文件的后7行内容
tail -f 文件名 动态实时查看文件信息★,通常用于日志文件的内容输出
语法: touch 文件名
linux 下的 vi 是一种文字编辑器,后来的升级版本是vim。要使用vim命令,要先下载(联网):yum install vim
1 打开文件
vim 文件名 ( 如果文件存在,就是打开文件; 如果文件不存在,就是新建打开 )
2 编辑文件
使用vim刚刚进入文件,我们处于命令行模式,此时不能进行文件的编辑,
此时按下键盘上的i键就能进入编辑模式,然后就能修改文件内容了。
3 保存文件
当编辑工作完成后,我们需要对编辑好的文件进行保存,此时需要先退出编辑模式,按一下ESC键,就可以退出到命令行模式。
此时如果想保存并退出文件,需要在此模式下输入 :wq 然后回车
如果想不保存直接退出文件,需要在此模式下输入 :q! 然后回车
vi 快捷操作
gg
光标定位到文件第一行
G
光标定位到文件最后一行
dd
删除光标所在的一行
n dd
删除光标所在及以下的n 行
u
撤销q!
不保存退出:x
等于 :wq
保存并退出:set nu
显示行号
:n
光标定位到第n行
:set nonu
不显示行号
vi 编辑器异常退出情况
解决方法:删除对应xxx.swp
的临时文件。例如:rm -rf .error.log.swp
重定向符号(覆盖、追加)
echo 123
:输出123
>
:覆盖重定向,会将原文件内容全部删除,再添加内容
作用:从指定文件中查找指定的文本内容
语法:grep keyword fileName
举例:
grep Hello HelloWorld.java 查找HelloWor1d.java文件中出现的Hello字符串的位置
grep hello *.java 查找当前目录中所有.java结尾的文件中包含hello字符串的位置
压缩格式
windows中常见的压缩格式: zip rar 7z
linux中常见的压缩格式: zip gz
.tar表示只是完成了打包,并没有压缩
.tar.gz表示打包的同时还进行了压缩
总结
tar -zcvf 压缩包名称 要压缩的文件
tar -zxvf 压缩包名称 -C 要解压的目录
语法: tar 参数 打包压缩后的文件名 要打包压缩的文件,支持通配符 * 号
参数:
-c 创建新的文件(必选项)create
-f 指定文件名(必选项)file
-v 输出文件清单(可选项)verbose
-z 自动识别压缩或解压(可选项)gzip命令
总结:
tar -zcvf 压缩包名称(*.tar.gz) 要压缩的文件或者目录
语法: tar 参数 压缩文件 [-C 要解压到的目录]
参数:
-x 取出文件中的内容(必选项)extract
-f 指定文件名(必选项)
-v 输出文件清单(可选项)
-z 自动识别压缩或解压(可选项)
总结:
tar -zxvf 压缩文件 -C 要解压的目录
Linux的文件调用权限分为三级:文件拥有者(user)、用户组(group)、其它用户(other)
Linux中的权限分为:读 ( r)、写 (w)、**执行 (x)**三种权限
只有文件的所有者和超级用户可以修改文件或目录的权限
10位符号含义:
d
:目录文件、 -
:普通文件 、 l
:链接文件r
:读 、 w
:写 、 x
:执行r
:读 、 w
:写 、 x
:执行r
:读 、 w
:写 、 x
:执行注意: 一个脚本文件要想执行,是必须要有执行权限的。
r w x
4 2 1
例如:
7:读、写、执行
5:读、执行
防火墙,工作在主机或者网络边缘,对出入网络的IP、端口进行访问控制的软件,我们的任务是定义防火墙如何工作,也就是防火墙策略。
在Centos7中,防火墙已经被做成了一个服务,默认使用的是firewall。
systemctl start firewalld 开启防火墙
systemctl stop firewalld 关闭防火墙
systemctl restart firewalld 重启防火墙
systemctl status firewalld 查看防火墙状态
systemctl enable firewalld 打开防火墙开机自启
systemctl disable firewalld 关闭防火墙开机自启
防火墙开启默认是禁止所有端口访问的
允许某端口 firewall-cmd --zone=public --add-port=8080/tcp --permanent
禁止某端口 firewall-cmd --zone=public --remove-port=8080/tcp --permanent
查看允许的端口 firewall-cmd --zone=public --list-ports
注意:使用--permanent代表永久生效,这种情况下,需要重新加载服务 firewall-cmd --reload
常用端口说明:
3306 mysql
8080 tomcat
6379 redis
语法: ps -ef | grep 程序名
解释:
ps -ef 查看所有的正在运行的进程
| 管道命令,它会将管道前面的命令输出作为管道后面的命令输入
grep 文本搜索命令
语法: netstat -an | grep 端口号
解释:
netstat -an 查看所有的正在占用的端口号
| 管道命令,它会将管道前面的命令输出作为管道后面的命令输入
grep 文本搜索命令
语法: kill -9 进程号
shutdown -h now 关机
reboot 重启
在做这件事情之前,先要确定当前虚拟机所处网络的网段是多少
查看子网掩码、网关地址
网关地址、DNS服务器一般都是网段.2
修改配置文件
vi /etc/sysconfig/network-scripts/ifcfg-ens33
修改内容
BOOTPROTO=static # 使用静态IP地址,默认为dhcp
ONBOOT=yes # 是否开机启用 必须是yes
IPADDR=192.168.136.131 # 设置的静态IP地址 网段必须跟你虚拟机中一致
NETMASK=255.255.255.0 # 子网掩码 固定
GATEWAY=192.168.136.2 # 网关地址 网段.2
DNS1=192.168.136.2 # DNS服务器 跟网关一致
重启网络服务
修改之后,重启网络服务
systemctl restart network