一、VM Player 工具安装
1、概述
VM Player 是一款免费(非商业)的虚拟机(一台虚拟化的机器/电脑)软件,能够给用户提供一个平台,可以让用户在该平台上搭建部署任意的操作系统环境(win,mac,Linux…)
2、VM Player 工具的安装
备注:Linux操作系统自带用户:root——>根用户,超级管理员(该用户的权限是最大的)
使用者也可以创建普通用户
二、Linux操作系统的特征
1、Linux操作系统有两种使用方式:
①图形化界面:目前搭建的状态
②命令行界面:所有的操作全部使用命令完成
2、Linux系统的特点:
①开源免费
开源:开发源代码,底层的源代码可以提供给开发人员进行修改;
免费:不花钱,自由传播
②多用户,多任务
多用户:指的是在当前操作系统中是允许创建多个用户,可以同时登录系统做操作(比如:除了root用户外,也可以自己创建普通用户)
多任务:指的是在当前操作系统中可以允许多个软件同时运行,并进行相关的操作
③Linux 思想:
(1)一切都是文件:用户在Linux系统中所有的设置/修改/更新等,全部都是要找到相关的文件进行操作的
(2)每个文件或目录(文件夹)都有确定的用途,比如home目录:用户的家目录,代表的是创建的所有普通用户,全部默认存放在该目录下
3、Linux操作系统已发布的版本有很多,比如centos,red hat红帽,ubuntu乌班图…,但是大部分Linux命令和shell脚本都是通用的
4、为什么企业在首选服务器系统环境时,优先考虑Linux操作系统?(面试题)
①开源免费
②稳定性强,在windows系统中会遇到蓝屏,闪退,崩溃等情况
③安全性高,大多数病毒都是针对Windows的
④资源消耗少,能够给企业节约成本
三、常见的Linux系统的目录结构(了解:看到对应目录知道是干嘛的即可)
/ 根目录,系统磁盘的最外层目录
/boot 启动目录,存放Linux系统的内核(类似于win系统的c盘作用)
/etc 配置目录,系统中大部分软件的配置文件存放目录,比如系统网络相关的配置文件
/home 用户的家目录,普通用户的存放位置
/lib 库文件目录,某些软件在运行时需要用到系统参数或函数库的支持,可以从该目录获取
/bin 命令文件的存放目录,普通用户和root都可以调用
/sbin 命令文件的存放目录,root用户(系统管理员命令目录)
/tmp 临时文件的存放目录
/mnt 挂载其他的文件系统,比如U盘,移动硬盘,共享文件夹默认的读取位置,就在该目录下
/usr 应用程序和文件的安装地
/root root用户的家目录
/dev 设备目录,当外部设备/硬件设备加载到Linux系统中,可以从该目录下读取设备信息/数据
四、vi文本编辑器
1、作用:创建文件,编辑文件,查看文件
2、格式:vi 文件名
3、[root@localhost ~]# ——>【用户名@主机名字 当前所在目录】#命令提示符
命令提示符:root #;普通用户 $
~ 如果是root身份,代表的是/root;如果是普通用户,代表的是/home/用户同名目录
4、vi命令操作流程:经历三种模式:命令模式,编辑模式,末行模式
①当输入vi 文件名——>命令模式,一旦按下回车键,就会打开该文件
②按下i或者a键,进入编辑模式——>在文档中可以进行修改,删除,添加等操作
③编辑完成后,按下esc键退出编辑模式,来到了末行模式
④在末行模式下可以使用的一些参数指令:
:wq 保存并退出
:wq! 强制保存并退出
:w 保存
:q 退出
:q! 强制退出
dd 删除一行
x 删除一个字符
:行数 光标跳转到指定的行
$ 光标跳转到行尾
G 光标跳转到最后一行的(首个字符)
/关键词 搜索关键词所在的行(如果关键词在文本中出现多次,默认情况下让光标跳转到第一次出现的位置)
命令学习的技巧:
①命令的作用
②命令的语法格式
③参数的作用
五、基本命令
1、Linux系统管理文件和目录的操作命令
①pwd 显示当前所在的位置信息(完整路径)
②cd 切换目录
格式:cd 目录名
注意:如果切换的目录不在当前路径下,需要大家把目录的完整路径信息写清楚:cd /目录名1/目录名2/目录名3…
cd 返回当前用户的主目录(家目录)
③ls 查看当前目录下的内容 clear 清屏
格式一:ls 查看当前
格式二:ls 目录名(注意路径) 查看指定目录下的内容
格式三:ls 参数 目录名/文件名
-a 查看所有内容,包括隐藏
-l 查看每个文件或目录的详细细节属性(权限,大小,创建/修改日期,所属的用户…)
-al 查看所有+隐藏的文件和目录的属性
-r 逆向查看目录下的内容 例:默认情况下1 2 3——> -r ——>3 2 1
-R 不仅查看当前目录下的内容,还把子目录中的内容一并显示
④cat 显示/打印文本的内容
格式:cat 文件名
小技巧:命令+参数做配合常规写法:Linux命令 参数 其他
cat -n 文件名 显示行数
⑤touch 创建文本文件
格式:touch 文件名
扩展:touch 文件名1 文件名2 文件3… 创建多个文件 在Linux系统中文本文件是可以允许没有后缀的
⑥grep 在文本中进行关键词的搜索查看
格式:grep 关键词 文件名
注意:grep在进行查找时,区分大小写
grep -i 关键词 文件名 忽略大小写
grep -n 关键词 文件名 显示行号
grep -v 关键词 文件名 查看不包含关键词的数据(排除关键词)
⑦cp 复制文件
格式:cp 源文件(要复制的文件) 目标文件(要复制到的位置)
场景一:如果复制的文件,恰好在当前目录下,那么可以直接写复制的文件名,同时要写好复制到指定位置的路径
cp 文件名 完整的路径
场景二:如果复制的文件,不在当前目录下,那么就要写清楚文件的位置,同时也要写好复制到指定位置的路径
cp 源文件所在的完整路径 复制到指定位置完整路径
场景三:复制过程中也可以重命名操作:复制到指定位置后加上新名字即可
场景四:*任意,所有的意思 *.txt 所有后缀是.txt f*.txt 以t开头的.txt文件 f*.*以f开头的任何文件 *.*所有文件
文件:XXX.XXX 文件名.文件后缀名
场景五:参数的应用
-i 给出覆盖的友好提示(默认)
-v 显示复制的进度
-r 复制目录/文件夹
⑧mv 移动(剪切)文件和目录
格式:mv 源文件 目标文件 ——> 参考cp的使用方式即可
-i 移动覆盖时给出友好提示(默认)
-v 显示移动的进度
-f 强制移动
⑨mkdir 创建空目录
格式:mkdir 目录名1 目录名2 目录名3…
创建嵌套的目录:mkdir -p 目录名1/目录名2/目录名3…
⑩rmdir 删除空目录
格式:rmdir 目录名1 目录名2 目录名3…
rmdir -p:删除指定的目录,如果指定目录被删除后,它的上一级目录变为空,也会一并被删除
⑩①rm 删除文件
格式:rm 文件名1 文件名2 文件名3
-i 删除文件给出友好提示(默认)
-f 强制删除
-v 显示删除的进度(返回一个删除结果)
-r 删除目录
-rf 强制删除目录
2、线上查询命令
①man 查看某个Linux命令的注意事项(使用方式)
格式:man Linux命令
按下q键退出查看
②--help 查看命令的使用方式
格式:Linux命令 --help
③locate 根据关键词定位文件或目录
思想:搜索出文件或目录的名字中包含该关键词的——>完整的路径信息
格式:locate 关键词
④新建的文件和目录,用locate定位会有一些延迟,需要等待系统数据库记录到新文件或新目录才能定位出来;如果想要快速定位出来,可以手动更新数据库:updatedb
⑤whatis 查看某个Linux命令的作用
格式:whatis Linux命令
3、Linux系统实现对文件或目录的压缩和解压缩的操作
①bzip2 压缩文件
格式:bzip2 文件名 ——>产生的压缩文件后缀是XXX.bz2
一次压缩多个文件:bzip2 文件1 文件2 文件3…
②bunzip2 解压.bz2的压缩包
格式:bunzip2 压缩包1.bz2 压缩包2.bz2 压缩包3.bz2…
③gzip 压缩文件
格式:gzip 文件名——>产生的压缩文件后缀:XXX.gz
一次压缩多个文件:gzip 文件名1 文件名2 文件名3…
-r 可以把指定目录中的所有文件全部压缩成.gz的压缩包
④gunzip 解压.gz的压缩包
格式:gunzip 压缩包名1.gz 压缩包名2.gz …
-r 可以把指定目录中的所有文件全部解压
⑤tar 压缩和解压缩文件或目录
压缩格式:tar 参数 压缩后文件名字.后缀名 源文件/源目录
解压缩格式:tar 参数 压缩包名字.后缀名
参数:
-c 压缩
-x 解压缩
-t 在不进行解压的情况下,查看压缩包的内容
-v 显示压缩和解压缩的过程(进度)
-f 指定名字
-z 代表gzip
-j 代表bzip2 协助tar实现文件的压缩和解压缩
重点掌握参数组合:
对目录进行压缩:tar -cvf 压缩包的名字.tar 目录名1 目录名2… ——>将后面所有的目录全部压缩在一个包
对目录的解压缩:tar -xvf 压缩包名字.tar
对文件进行压缩:
Tar -czvf 压缩包名字.tgz 文件名1 文件名2… ——>将后续的文件全部压缩在一个包
Tar -cjvf 压缩包名字.tbz 文件名1 文件名2…
对文件进行解压缩:
Tar -xzvf 压缩包名字.tgz
Tar -xjvf 压缩包名字.tbz
查看压缩包的内容(不解压):tar -tvf 压缩包名字.tar
4、文件阅读命令
①head 查看文件头部的内容(默认前十行)
格式:head 文件名
查看指定行数的内容:head -行数 文件名
②tail 查看文件尾部的内容(后十行)
格式:tail 文件名
查看指定行数的内容:tail -行数 文件名
面试:现在有一个记录日志信息的文件test.log,请查看出最新的日志信息数据:tail test.log
③more 分页查看
格式:more 文件名
注意:如果没有指定每页显示的行数,默认情况下是自适应显示(系统自己分配页数)
按下空格键向下翻页,按下b键向上翻页,终止翻译按下q键
指定每页显示固定的行数:more -行数 文件名
从指定的行开始做分页查看:more +行数 文件名
关键词定位操作:定位到该关键词第一次出现的位置,并从该位置的前两行开始把剩下的内容进行分页显示
格式:more +/关键词 文件名
④管道符 |:将前面命令的输出,当作后面命令的输入(后面的命令对前面命令输出的内容进行再次加工)
格式:Linux命令1 | Linux命令2
案例:ls -al /etc | more -5 查看etc目录下所有+隐藏内容,进行分页显示,每页只显示5行数据
5、定位和查找文件
①which 根据Linux命令来定位相关的文件
格式:which Linux命令
注意:只要找到其中任意一个,就停止搜索
②whereis 根据Linux命令或程序名来定位相关的文件
格式:whereis Linux命令或程序名
注意:查找所有的文件
-b 只查看命令的源文件/可执行文件
-m 只查看帮助说明文档文件
6、管理使用者和设置权限的命令(重点)
①useradd 添加用户
格式:useradd 用户名
②passwd 修改密码
格式:passwd 用户名
③userdel 删除用户
userdel 用户名 删除用户,但用户相关的目录还会保留在home目录下
userdel -r 用户名 彻底删除用户
④su 切换用户 ——>命令行中切换用户
su 用户名 切换用户,新用户使用的系统环境还是由上一个用户保留的
su -l 用户名 切换用户,新用户+自己的环境一并切换
⑤chmod 修改权限
(1)权限的分析
查看文件或目录权限:ls -l ——>属性
表示权限的三个字母:r读 w写 x执行 ——> rwx 可读可写可执行 (如果没有该权限直接-代替)
(2)修改操作
添加 + 去掉 - 重新赋予权限 =
格式:chmod 用户身份(ugo)+/-/=权限(rwx) 文件名/目录名
也可以一次修改多个用户身份的权限,中间用逗号分隔
案例:对文件拥有者重新赋予读写权限,同组成员去掉写的权限,其他人去掉写和执行的权限
Chmod u=rw,g-w,o-wx qianfeng01.txt
a 所有人(u+g+o)
案例:把所有人的权限全部改为可读可写可执行
Chmod u=rwx,g=rwx,o=rwx file.txt chmod a=rwx file.txt
(3)数字修改法
r 读:4
w 写:2
x 执行:1
格式:chmod 三个数字 文件名/目录名
三个数字:分别代表ugo的三个用户权限
763——>u:7=4+2+1 rwx g:6=4+2 rw o:3=2+1 wx
551——>u=r-x g=r-x o=--x
⑥chgrp 更改文件所属的群组
格式:chgrp 用户名 文件名
⑦chown 更改文件的拥有者
格式:chown 用户名 文件名
备注:只有root用户才有权限进行更改操作
7、有关关机和查看系统信息的命令
①exit 退出
②重启 reboot 或 shotdown -r now/(时间点)11:30
③关机 halt 或 shotdown -h now/时间点10:10
④查看系统进程信息
进程:指的是当前系统中一个一个正在运行的程序
ps:静态查看进程信息
PID:进程号,系统会给每一个进程生成一个唯一的序列号
CMD :进程名称(进程命令)
top:动态查看进程信息
按下q键退出查看
Ps u 列出进程的使用者(USER)
Ps x 列出所有的进程信息(PID)
⑤kill 终止进程
格式:kill PID
⑥date 设定日期时间
date -s 时间点 修改时间
date -r 文件名 查看文件最后一次修改的时间
⑦日历
cal 当前月份的日历信息
cal 年份 查看指定年份的日历情况
cal 月份 年份 查看指定年中指定月的日历情况
8、磁盘空间操作命令
①df -a 列出所有磁盘空间/文件系统的使用情况
②du -ab 列出每个文件或目录所占的磁盘空间(文件大小)
扩展:du -ab 目录名 查看指定目录下每个文件或文件夹所占的空间大小
9、网络操作命令
查看系统的网络配置信息的命令
①ifconfig 或 ip addr 查看网络配置信息(ip地址)
②修改网络配置操作:
a、找到网络配置文件的存放目录:/etc/sysconfig/network-scripts
b、利用vi修改网络配置文件(大部分系统是该目录下的第一个文件)
vi ifcfg-ens33
ONBOOT="yes" 开启网络自启动连接
c、重启网络服务:service network restart
③ping 检测网络通不通
Ping 域名(网站的名字) 百度:www.baidu.com
ping ip地址 用来检测当前主机(电脑)与ip地址对应的主机之间能否进行通信
如果ping的通:会有响应的信息,就证明网络是ok;ping不通:没有任何响应信息回应,就证明网络有问题
10.其他命令
①clear 清屏
②echo 输出
格式:echo “输出的内容”
③uptime 显示系统运行的时间
④wc 统计一个文本的行数,字数,字节数
格式:wc 文件名
-l 行数
-w 字数
-c 字节数
备注:wc做统计字数时,它是吧一串连着的字符看成是一个整体——>被称为一个字,例:test——>一个字 软件测试——>一个字
六、Linux其他操作命令的使用
1、free 查看系统内存的使用情况
以不同的单位显示内存大小:-b 字节;-k KB;-m MB;-h 合适的
free -s 秒数 动态刷新内存的使用情况
free -t 显示内存每个列的总和
2、find 查找文件
2.1 根据名字来查找
格式:find 路径 -name/-iname 文件名字关键词
注意:-name:区分大小写;如果不指定路径,默认是在当前目录下查找
*任意,所有的
案例:查看var目录的log文件夹中,所有后缀是.log文件
find查找时,不仅查看当前目录,如果有子目录,一并做查看
2.2 根据文件大小来查找 -size
-size 大小值k 恰好等于
-size -大小值k 小于
-size +大小值k 大于
格式:find 路径 -size 大小值
案例:查找恰好等于35k:find /etc -size 35k
小于35k:find /etc -size -35k
大于35k:find /etc -size +35k
2.3 根据文件权限来查找 -perm 权限数字
格式:find 路径 -perm 权限数字
-perm 三个数字(ugo) 恰好等于该权限
例:-perm 753 文件权限要求:u:7rwx g:5r-x o:3-wx
-perm -三个数字(ugo) 且的关系:大于或等于该权限
例:-perm 644 文件权限要求:u至少包含rw,g至少包含r,o至少包含r
1.txt 777 ——>会出来的
2.txt 641 ——>不会出来
-perm /三位数字(ugo) 或的关系:ugo只要满足三个数字中其中任意一个就会出来
例:-perm 644 3.txt 114——>会出来
3、yum 安装,卸载,更新应用程序/软件包
3.1 yum install 软件名称 安装
3.2 yum remove 软件名称 卸载
3.3 yum update 更新
3.4yum list all 列出所有软件名称
3.5 yum clean all 清除yum缓存
3.6 yum check-update 列出可以更新的软件名称
3.7yum info 软件名称 查看该软件的介绍/描述
-y : yes 当遇到友好提示,默认直接代表yes