需要知道的知识点
2.计算机是一门“做中学”的学科,不是会了再做,而是做了才会
3.Linux的分类
4.虚拟机的网络配置分为三类:桥连接,NAT,主机模式
桥连接:Linux可以和其它的系统通信。但是可能造成ip冲突,因为在同一片网段里面只有0~255个ip编号可以使用
,实际上只有253个(除了1网关和255广播),所以如果使用人多的话,就会出现ip编号“供不应求”,出现冲突
NAT:网络地址转换方式:Linux可以访问外网,不会,造成ip冲突;其实就是主机还会生成个ip(虚拟机可以和这个ip通信),并且和主机的ip不在同一个网段,然后虚拟机上的ip的网段和主机生成的ip的网段一样,这样就不会出现桥连接的ip冲突问题,所以虚拟机一般都用NAT。如下图
主机模式:你的Linux是一个独立的主机,不能访问外网
在NAT的模式下如果不能上网,请点击右上角的两个计算机图片,选择启用eth0,即可成功连接到网络,就可以上网
如下图
5.安装vmtools可以实现两个功能:
1可以直接粘贴命令在window和centos系统之间;如果你的vmtools是灰色的话可以参考这篇文章vmware Tools是灰色的,不能安装的解决办法,这个问题解决就可以实现复制粘贴功能了
2可以设置windows和centos的共享文件夹;设置共享文件这个可以看下面的具体步骤
真正进入学习Linux的旅途
需要知道一点的是:学习Linux主要还是学习他的指令而不是图形界面
1.Linux目录结构介绍
Linux只有一个根目录“/”,然后在此目录下再创建其他的目录;而不像windows那样有c,d,e盘
2./usr:这是一个非常重要的目录,目录的很多应用程序和文件都放在这个目录下,类似与window下的program files目录
3./boot: 存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件
4./dev:类似于windows的设备管理器,把所有的硬件用文件的形式存储
5./media:Linux系统会自动识别一些设备,例如u盘,光驱等等,当识别后,Linux会把识别的设备挂载到这个目录下
6./mnt:还记得前面说的共享文件吗?
7./var:这个目录中存放着在不断扩充着的东西,习惯将经常被修改的目录放在这个目录下。包括各种日志文件
8./usr/local:这是另一个给主机额外安装软件所安装的目录。一般是通过编译源码方式安装的程序
9./bin(/usr/bin,/usr/local/bin):这个目录存放着最经常使用的命令
10./home:存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般该目录名是以用户的账户命名的
11./root:该目录为系统管理员,也称作超级权限者的用户主目录
总结:1》Linux的目录中有且只有一个根目录
2》Linux的各个目录存放的内容是规划好的,不要乱放文件
3》Linux是以文件的形式管理我们的设备,因此Linux系统,一切皆为文件
2.远程登陆Linux
xshell5:远程登陆到Linux的软件
重点:如果希望安装好xshell5可以远程访问Linux系统的话,需要有一个前提,就是Linux启用了
SSHD服务,该服务会监听22号端口,(那咋么看虚拟机中的Linux的SSHD服务有没有开启呢?输入命令:setup,然后选择系统服务,点击进去找SSHD,如果标星号就说明开启了)
xshell6的安装包:xshell6百度网盘分享,xshell使用教程:https://blog.qiquanji.com/post/10448.html
xshell远程登陆到Linux后,就可以使用指令来操作Linux系统
xftp5:上传和下载文件软件
xftp的使用教程:xftp使用教程
3.vi和vim的使用
·vim和vi都是文本编辑器,vim具有程序编辑的能力,可以看作是vi的增强版本
·vi和vim我们经常使用到插入模式和编辑模式最多,所以掌握好这个就行:按下i,I,o,O,a,A,r,R等任何一个字母之后才会进入编辑模式,一般来说按i即可
.拷贝当前行按yy;拷贝当前行向下的5行按5yy,并粘贴按p。(都在正常模式下)
.删除当前行按dd,删除当前行向下的5行按5dd
.在文件中查找某个单词:输入“/关键字”,回车查找,输入n就是查找下一个
· 使用快捷键到底文档的最末行“按G”,最首行“按gg”
· 在一个文件中输入“xxxx”,然后想撤销就按u
·想把光标移动到某行就按:行数+shift+g、
·设置文件的行号,取消文件的行号::set nu和:set nonu
4.关机重启注销
命令
reboot:重启系统
shutdown -h now:表示立即关机
halt:就是直接使用,效果等价于关机
sync:把内存的数据同步到磁盘
注意:当我们关机或者重启时,都应该先执行以下sync指令,把内存的数据写入磁盘,防止数据丢失
logout:注销用户
注意:logout注销指令在图形运行级别无效,在远程登陆xshell下有效
su+用户名:可以切换用户
5.用户管理 创建用户指定密码
1)Linux系统是一个多用户多任务的操作系统,
2)添加用户:useradd [选项] 用户名
比如添加xiaoxiao这个用户
指令:useradd xiaoxiao
(如果没有指明分配到哪个组,他会自己创建一个同名的组并且把xiaoxiao这个用户放到这个同名的组里面,并且会出现对应的家目录/home/xiaoxiao)
通过useradd -d 指定目录 xiaoxiao,给创建的用户指定家目录
3)给用户指定或者修改密码
passwd 用户名
例如:passwd xiaoxiao
4)删除用户以及用户主目录
删除用户,但是要保留家目录:userdel 用户名
eg:userdel xiaoxiao
删除用户xh以及用户主目录:userdel -r 用户名
eg:userdel -r xiaoxiao
5)查询用户命令
id 用户名
6)切换用户命令:su 用户名
6.用户管理 组的管理
1)增加组:groupadd 组名
2)删除组:gruopdel 组名
3)增加用户时直接加上组:useradd -g 用户组 用户名(前提那个用户组先创建了)
4)修改用户组:usermod -g 用户组 用户名
7.用户和组的配置文件
·/etc/passwd文件:用户的配置文件,记录用户的各种信息
./etc/shadow文件:口令的配置文件(这个不重要,主要掌握另外两个)
./etc/group文件:组的配置文件,记录Linux包含的组的信息
8)运行级别和找回root密码·运行级别:有7个,经常使用的时3和5,若要修改默认的运行级别,进入系统的运行级别配置··文件的id:5 initdefault这
一行中的数字就行,这里说明一下不同的Linux系统的运行级别配置文件的所在目录不一样,下面图中是centos 6的,我用
Ubuntu打开下面那个目录是空白的,所以自己针对自己的Linux系统百度一下运行级别配置文件的目录在哪里
·切换到指定运行级别的指令:init 数字,数字区间[0,7]
·如何找回root密码,如果我们不小心,忘记root密码,怎么找回:进入单用户模式,在这个模式下
root不需要密码就可以登陆
那么如何进入单用户模式,在不同Linux系统进入方式不一样(自己百度进入如何用passwd指令来修改root密码就行,Ubuntu是shift键,具体百度),下面是centos6的进入方式:
9)帮助指令
man获得帮助信息:man+ 指令,如man ls;然后按j键和k键可以上下滑动,按q键则退出
help指令:获得shell内置命令的帮助信息,如 help cd
因为这些查出来的是英文,如果看不懂,直接百度更方便
10)pwd ls cd
pwd指令:显示当前工作目录的绝对路径
ls指令:显示目录下的文件,权限等等
ls [选项] [目录或是文件]
常用选项
-a:显示当前目录所有的文件和目录,包括隐藏的
-l:以列表方式显示信息
cd指令:
cd ~或者cd:回到自己的家目录
cd . . :回到当前目录的上一级
11)mkdir rmdir
mkdir指令:用于创建目录
常用选项:
-p:创建多级目录
(我用Ubuntu,mkdir指令直接也可以创建多级目录而不用用-p,不知道是不是系统更新了,用-p也能创建)
rmdir指令:删除空目录
注意:rmdir删除的是空目录,如果目录下有内容时无法删除
如果需要删除非空目录,需要使用 rm -rf 要删除的目录
12)touch cp
touch命令:创建空文件(可以一次性的创建多个文件)
cp命令:拷贝文件到指定目录
cp [选项] source(文件) dest(指定目录)
-r: 递归复制整个文件夹
强制覆盖不提示的方法:\cp
13)rm mv
rm指令:删除文件或目录
常用选项:
-rf:递归删除整个文件夹
-f:强制删除不提示
mv指令:移动文件与目录或重命名
mv oldNameFile newNameFile(功能描述:重命名)
mv /temp/movefile /targetFolder(功能描述:移动文件)
14)cat more less
cat指令:查看文件内容,是以只读形式打开
-n:显示行号
cat只能浏览文件,而不能修改文件,为了浏览方便,一般会带上管道命令 |more,按空格就能翻页
more指令也是查看文件
less指令也是查看文件:对于显示大型文件具有较高的效率
15)重定向和追加
16)echo head tail
echo指令:输出内容到控制台,
一般用来输出环境变量,输出当前的环境路径
head指令:用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容
head 文件
head -n 5 文件:查看文件头5行的内容
tail指令:用于输出文件中尾部的内容,默认情况下tail指令显示文件的前10行内容
用法和head差不多,
多了一个tail -f 文件:实时追踪该文档的所有更新,意思就是说,当这个文档更新的时候可以实时的看到
17)ln history
ln指令:软链接也叫符号链接,类似windows里的快捷方式,主要存放了链接其他文件的路径
意思就是像桌面的软件图标,虽然软件图标在桌面,但是真正的存放软件的路径并不是在桌面
基本语法
ln -s 源文件或目录 软链接名(功能描述:给源文件创建一个软链接)
注意:当我们使用pwd指令查看目录时,仍然看到的是软链接所在目录
history指令:查看已经执行过历史命令,也可以执行历史指令
18)date cal
date指令:
设置时间这个是比较重要的
cal指令:
find指令:
find指令将从指定目录向下递归遍历其各个子目录,将满足条件的文件或者目录显示在终端
root@Master:/home/xiao# find / -size +20M //按照文件的大小寻找+(大于) -(小于) =(等于) K M /boot/initrd.img-5.3.0-53-generic /boot/initrd.img-5.3.0-59-generic /media/xiao/Ubuntu 18.04.2 LTS amd64/casper/filesystem.squashfs root@Master:/home/xiao# find /home/xiao -name xiao.txt //找某个目录下某个名字的文件 /home/xiao/xiao.txt ls -lh 文件路径 //可以找某个文件的大小
locate指令:
可以快速定位文件路径
由于locate指令基于数据库进行查询,所以第一次运行前,必须使用updatedb指令创建locate数据库
root@Master:/home/xiao# updatedb //这个就是创建locate数据库 root@Master:/home/xiao# locate xiao.txt //快速查找 /home/xiaoxiao.txt /home/xiao/xiao.txt
grep指令:
过滤查找,管道符“|”表示将前一个命令的处理结果输出传递给后面的命令处理
看例子就明白了
root@Master:/home/xiao# cat hello.txt xiao la la xioa xiao meizi hanzi gouzi xiao root@Master:/home/xiao# cat hello.txt | grep xiao xiao xiao xiao root@Master:/home/xiao# cat hello.txt | grep -n xiao //显示行号 1:xiao 5:xiao 9:xiao root@Master:/home/xiao# cat hello.txt //增加了个大写的Xiao xiao la la xioa xiao meizi hanzi gouzi xiao Xiao root@Master:/home/xiao# cat hello.txt | grep -n xiao //区分大小写 1:xiao 5:xiao 9:xiao root@Master:/home/xiao# cat hello.txt | grep -ni xiao //不区分大小写 1:xiao 5:xiao 9:xiao 10:Xiao root@Master:/home/xiao#
gzip指令和gunzip指令:
root@Master:/home/xiao# gzip hello.txt //压缩 root@Master:/home/xiao# ls Desktop Downloads gradle-5.4.1-all.zip Music Public Videos xiao.txt Documents examples.desktop hello.txt.gz Pictures Templates wget-log root@Master:/home/xiao# gunzip hello.txt //解压缩 root@Master:/home/xiao# ls Desktop Downloads gradle-5.4.1-all.zip Music Public Videos xiao.txt Documents examples.desktop hello.txt Pictures Templates wget-log
当我们使用gzip对文件进行压缩后,不会保留原来的文件
zip指令和unzip指令:
-r:递归压缩,即压缩目录
-d:指定解压后文件的存放目录
zip -r xiao.zip /home/ unzip -d /xiao/tem/ xiao.zip
tar指令:
最后打包后的文件是.tar.gz的文件
-c:产生.tar打包文件
-v:显示详细信息
-f:指定压缩后的文件名
-z:打包同时压缩
-x:解包.tar文件
root@Master:/home/xiao# tar -zcvf xiaoxiao.tar.gz xxx.txt x.txt //压缩 xxx.txt x.txt root@Master:/home/xiao# root@Master:/home/xiao# tar -zxvf xiaoxiao.tar.gz //解压缩 xxx.txt x.txt root@Master:/home/xiao# tar -zxvf xiaoxiao.tar.gz /opt //解压缩到某个目录下面
组管理
1)查看文件的所有者
指令:ls -ahl
就是查看某个文件应该属于哪个用户的
2)修改文件所有者
指令:chown 用户名 文件名
eg:使用root创建一个文件apple.txt,然后将其所有者修改成tom
chown tom apple.txt
2)2)一次性改多个文件所有者的时候
3)修改文件所在的组
指令:chgrp 组名 文件名
eg:使用root用户创建文件orange.txt,看看当前这个文件属于哪个组,然后将这个文件所在组,修改到police组
chgrp police orange.txt
3)3)一次性改多个文件所在组
4)改变用户所在组
usermod -g 组名 用户名
eg:创建一个bandit组将tom这个用户从原来所在的police组,修改到bandit组
usermod -g bandit tom
权限介绍
可用数字表示为:r=4,w=2,x=1 因此rwx=4+2+1=7
通过chmod指令,可以修改文件或者目录的权限
第一种办法:
u:所有者 g:所有组 o:其他人 a:所有人(u,g,o的总和)
第二种办法:
笔记太长了另开一篇
续☞第二部分请看第二部分的笔记
微信扫码关注
更新实时通知