LInux学习笔记
VMware虚拟机网络连接的三种模式
- 1、桥接模式:虚拟系统可以和外部系统通讯,但会造成ip冲突,因为会与主机占用同一个网段的ip
- 2、NAT模式:可以和外部进行通讯,不会造成ip冲突,因为会与主机占用另一个网段,然后通过外网的ip进行与外界通讯(
NAT模式借助虚拟NAT设备和虚拟DHCP服务器,使得虚拟机可以联网。在NAT模式中,主机网卡直接与虚拟NAT设备相连,然后虚拟NAT设备与虚拟DHCP服务器一起连接在虚拟交换机VMnet8上,这样就实现了虚拟机联网。) - 3、主机模式:独立的系统
安装vmtools
- 1、进入centos
- 2、点击vm菜单的
install VMware tools - 3、centos会出现一个vm的安装包,
xx.tar.gz - 4、拷贝打
/opt目录 - 5、使用解压命令
tar,得到一个安装文件,进入该vm的解压目录,/opt目录下 - 6、安装
./vmware-install.pl - 7、全部默认设置即可,就可以安装成功(安装vmtools需要由
gcc)
目录结构(详细说明)
- Linux只有一个根目录。“
/” - 层级式的目录结构

Linux的远程操作
- Xshell:Linux终端模拟应用
连接远程Linux系统:创建会话
查看Linux系统的ip地址:ifconfig - Xftp:文件传输软件
连接远程Linux系统:创建会
Vi和Vim(文本编辑器)菜鸟教程
- vim是vi的增强版本
主要用来查看、编辑、创建文件 - vi和vim的使用
1、一般模式:用vi或者vim命令打开文件就进入了一般模式(可以查看文件内容,无法编辑,并且可以通过上下左右键来移动光标来查看文件的某一部分)
2、编辑模式:在一般模式下按下“i”或者“a”或者“A”键,进入编辑模式,可以编辑,不能保存。
按“esc键”回到一般模式
3、命令模式:在一般模式下按“:”键,进入命令模式
输入:q!+ 回车:不保存强制退出编辑器
wq!:保存并退出 - vi和vim的快捷键:
1、复制当前行:在一般模式下:按“yy”,把光标所在行复制到剪切板
按“p”粘贴到光标的下一行
2、复制多行:在一般模式下,按需要复制的行数+yy:比如5yy
3、在文本文件中搜索关键字:在命令模式下输入:/+查找关键字
4、删除一行:dd
5、删除多行:5dd:删除包括光标以下五行
6、撤销:u
7、显示行号:set nu,不显示:set nonu

用户管理
任何使用Linux的系统资源的用户,必须使用一个合法的账号和密码,账号和密码都是向系统管理员申请。
- 添加用户:
useradd用户名 -->创建了一个用户XX,在/home目录下创建用户的根目录,目录名称默认是用户名。并且创建一个组,组名默认就是用户名。(在Linux中任何一个用户都至少属于一个组,新建用户时如果不指定组,则会新建一个组,组名和用户名相同,并且把该用户添加到组中) - 设置密码:
passwd用户名 - 删除用户:
userdel用户名
userdel -r用户名:级联删除:删除用户的同时级联删除它的主目录 - 查看用户信息:
id用户名 - 切换用户:
su用户名
组管理
- Linux中的组相当于角色的概念,可以对有共性的用户进行统一管理。每个用户至少属于一个组,新建用户时如果不指定组,则会新建一个组,组名和用户名相同,并且把该用户添加到组中。
- 添加组
groupadd组名 - 删除组
groupdel组名 - 添加用户到指定组中:
gpasswd -a用户名 组名 - 将用户从组中移除:
gpasswd -d用户名 组名 - 添加用户时,指定该用户的组
useradd -g组名 用户名
系统操作命令
- 关机:
shutdownnow立即关机
shutdown-h xxx定时关机
shutdown-r now立即重启 - 重启:
reboot立即重启 - Linux
sync命令
Linux sync命令用于数据同步,sync命令是在关闭Linux系统时使用的。
Linux 系统中欲写入硬盘的资料有的时候为了效率起见,会写到 filesystem buffer 中,这个 buffer 是一块记忆体空间,如果欲写入硬盘的资料存于此 buffer 中,而系统又突然断电的话,那么资料就会流失了,sync 指令会将存于 buffer 中的资料强制写入硬盘中。
帮助命令
man:用来查看Linux系统命令的帮助信息,查看某个命令的用法:man命令名称
分屏显示内容,按回车翻一行,按空格翻页,按“q”退出- 用来查看命名的内置帮助信息 :
help命令名
文件和目录操作命令
-
pwd查看当前所在目录 -
ls查看指定目录下所有的子目录或者文件 ls[指定目录]
ls -l查看指定目录下所有的子目录或者文件以列表显示的详细信息
ls -a:显示指定目录下所有的子目录和文件(包括虚拟的目录) -
切换目录:
cd目录名
绝对目录:以盘符开始的目录
相对目录:以目录名开始的目录
~:当前用户的根目录,在任何目录下执行:cd ~
..:上级目录
.:当前目录 -
创建目录:mkdir [选项-p:一次创建多级目录] 目录名
绝对目录:加“/”,指定目录下创建目录
相对目录:直接在当前目录下建立 -
创建一个或者多个空文件:
touch文件名/列表(文件名中间空格隔开) -
复制文件:cp source(源) dest(目录)
cp -r目录1 目录2:可以递归复制(文件的内容全部复制到指定目录下) -
删除文件 或者 目录 : rm 文件名/目录名
rm -f文件目录名(强制删除,不提示)
rm -r提示递归删除目录
rm -rf不提示递归删除目录 -
移动文件或者目录:
mv source(源)dest(目标)
重命名mv源文件 重命名之后的 -
echo:输出系统变量或者常量的值到命令行,比如:[root@localhost ~]# echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin -
Linux系统中使用以下命令来查看文件的内容:
cat由第一行开始显示文件内容
tac从最后一行开始显示,可以看出 tac 是 cat 的倒着写!
nl显示的时候,顺道输出行号!
more一页一页的显示文件内容
less与 more 类似,但是比 more 更好的是,他可以往前翻页!
head -n接数字 ,只看头几行
tail -n接数字 ,只看尾巴几行 -
将前一个查看命令的结果输出到另外一个文件中,如果目标文件不存在,则新建一个文件:
查看命令 > 文件名
cat 文件1 > 文件2 : 文件内容复制
时间日期
- date指令-显示当前日期
1、date:显示当前时间
2、date +%Y:显示当前年份
3、date +%m:显示月份
4、date +%d:显示当前是哪一天
5、date “+%Y-%m-%d %H:%M:%s”:显示年月日时分秒 - 查看日历
cal 查看当前月份的日历
cal 2020 指定年份的日历
搜索文件或者目录
find文件名或者目录名:find 【搜索范围】【搜索标准,默认按名称(-name,-size,-user)】关键字
可以使用通配符“*”
默认是从当前目录下查找,可以指定目录
在磁盘中遍历查找- 搜索过滤命令,在前一个搜索命令的结果中按名称进一步过滤:搜索命令 |
grep【-i(忽略大小写)】顾虑条件(查看命令也可以)grep命令 locate指令
在整个目录树中搜索文件或者目录,都是根据名称搜索,效率高
在使用该命令之前,先要同步一下数据库,更新目录树:updatedb
压缩和解压命令
- 压缩和或者解压单个文件:
gzip文件名:压缩单个文件,会生成一个.gz的压缩包,并且会把原来的文件删除
gunzip文件名:解压单个文件 ,会把原来的.gz压缩包删除 - 压缩(打包)或者解压多个文件和目录:
zip【目标压缩包名称,通常使用.zip】 文件或者目录列表 :
unzip【目标压缩包名称,通常使用.zip】-d解压目录名 : - 压缩(打包)解压多个文件和目录:
tar【选项】 目标压缩包名称xx.tar.gz 文件或者目录列表
-c:打包或者压缩
-x:解压:默认解压在当前目录,可以指定目录,带参数-C解压目录名
常用:
压缩:tar -zcvf xx.tar.gz 文件或者目录列表
-z:打包同时压缩
-c:产生.tar.gz打包文件
-v:显示详细信息
-f:指定压缩后的文件名
-x:解压.tar.gz文件
解压缩:tar -zxvf xx.tar.gz -C 解压目录名
文件与组
-
在Linux中每个用户都至少属于一个组,用户不能独立于组存在,一个用户可以属于多个组。
-
每个文件或者目录也必须属于一个组,而且只能属于一个组。
1、文件或者目录通过组来控制那些用户可以对它进行相关操作,即文件或者目录的访问权限。
2、在文件或者目录看来,Linux系统把所有的用户分为三类:- 所有者:默认情况下,文件或者目录的所有者都是创建者,可以修改
- 同组用户:跟文件或者目录属于同一个组的用户
- 其他组用户:既不是文件或者目录的所有者,也不是同组用户
-
查看文件的所有者和所在的组:
ls -l -
修改文件的所有者:
chown新的文件所有者:新的组 文件名或者目录(改目录的时候,里面的文件不会修改所有者,添加-R 就会修改目录里面文件的所有者,递归修改)
文件和目录的权限管理
- 文件或者目录的三种权限:读,写,执行
- 任何一个文件或者目录都有三部分权限:所有者权限、同组用户权限、其他组用户权限。
- 第一部分权限:拥有者权限,文件或者目录的所有者对该文件所拥有的权限,使用
r/w/x分别表示读、写、执行的权限。 - 第二部分权限:同组用户权限,文件或者目录的同组用户对该文件所拥有的权限。
- 第三部分权限:其他组用户权限,文件或者目录的其他组用户对该文件所拥有的权限。
- 第一部分权限:拥有者权限,文件或者目录的所有者对该文件所拥有的权限,使用
- 修改文件或者目录的权限
1、用u、g、o给拥有人,拥有组,其他组 来修改该文件的权限
2、用+、-、=分别表示给指定的用户增加、减少、设置相关的权限。
3、修改权限的命令:chmod - 使用数字的方式修改文件或者目录的权限:
r-4 w-2 x-1
linux中的网络管理
在Linux的配置文件:/etc/sysconfig/network-scripts/ifcfg-ens33
默认内容:
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=c4ff3781-2f5d-40bf-b495-3aef00241e67
DEVICE=ens33
ONBOOT=yes
配置以下内容:
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.239.128
GATEWAY=192.168.239.2
DNS=192.168.239.2
ip地址及网关地址和dns在以下地方查看


重启服务
进程管理
- 线程(英语:thread)是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。
- 进程是系统进行资源分配和系统调度的基本单位。一个程序的执行,一个进程占用一个端口
基本语法:
ps 参数:常用:ps -ef
- 参数说明:
ps –a:显示当前终端下的所有进程信息
ps –u:以用户的格式显示进程信息
ps –x:显示后台进程运行的参数
ps –e:显示所有进程信息
ps –f:以全格式显示进程信息 - 结果说明:
•USER:用户名称
•PID:进程号
•%CPU:进程占用CPU的百分比
•%MEM:进程占用物理内存的百分比
•VSZ:进程占用的虚拟内存大小(单位:KB)
•RSS:进程占用的物理内存大小(单位:KB)
•TT:终端名称,缩写.
•STAT:进程状态,其中S-睡眠,s-表示该进程是会话的先导进程,N-表示进程拥有比普通优先级更低的优先级,R-正在运行,D-短期等待,Z-僵死进程,T-被跟踪或者被停止等等
•STARTED:进程的启动时间
•TIME:CPU时间,即进程使用CPU的总时间
•COMMAND:启动进程所用的命令和参数,如果过长会被截断显示
•PPID父进程的ID
•CCPU使用的资源百分比
•PRI指进程的执行优先权(Priority的简写),其值越小越早被执行
•SZ使用掉的内存大小
服务管理
1、服务介绍:服务是支持Linux运行的一些必要程序,本质上也是进程,叫守护进程。
2、操作服务:systemctl【选项:start、stop、restart、reload、status、enable】服务名称
软件安装包管理
1、RPM包:一种Linux的软件包的打包和安装工具,它操作的软件包都是.rpm包结尾。
2、使用RPM(内置):RPM命令
rpm -qa查看Linux中已安装的软件,可以加上“|grep”进行过滤- 卸载RPM软件包:remp -e 软件包名
- 安装RPM软件包:rpm -ivh 安装软件包
选项说明:
-i=install 安装
-v=verbose 提示
-h=hash 进度条
3、YUM包管理
是一种基于RMP的软件包管理工具,它能够从指定服务器上自动下载RMP包并且自动安装,可以自动处理软件之间的依赖关系
- 查看已安装的包:
yum list installed,可以加上“|grep”进行过滤 - 卸载:yum remove 包名
- 安装:yum install 包名

浙公网安备 33010602011771号