linux 1/2

linux基础介绍image-20210507231132441

后两行都是发行版

目前主要的操作系统:windows、android、车载系统、linux、ios、mac

关于unix

linux是由他过来的

人机互动的意思是:人通过应用软件到shell层到操作系统到硬件

image-20210507232617855

LINUX与windows比较

image-20210507233009782

虚拟机的三种网络连接模式

桥接模式:指的是在同一网段下,可以与其他的通讯系统通讯

缺点:多了就会使ip地址不够用,会发现冲突

NAT模式:网络地址转换方式:linux可以访问外网,不会造成ip冲突

仅主机模式:ip地址独立,不能访问外网,linux是一个独立的主机

linux至少要分三个区

1.挂载点:/boot 文件系统类型:ext4

引导文件的默认引导

2.无挂载点 文件系统类型:swap 大小:<=2048,太大会影响性能

交换分区,当内存不够用的时候,会用swap暂时的替代这个内存

以上其余的默认

3.挂载点:/ 文件系统类型:ext4 其他大小选项:使用全部可用空间

vmtools介绍

1.可以直接粘帖命令在两个不同系统之间

2.可以设置windows和centos的共享文件夹

https://blog.csdn.net/qq648483997/article/details/88640936)

linux的目录结构:

文件系统是采用级层式的树状目录结构,在此结构的最上层是根目录/,然后再创建其他目录。

linux下都是文件

/dev 管理设备

/media 目录,例如U盘,dvd等

/etc 所有的系统管理所需要的配置文件和子目录

/lost+found这个目录是空的,当系统非法关机,就会存放文件

/lib 动态库,开机所需要的最基本的动态连接共享库,类似Win下的DLL文件,几乎所有的应用程序都需要这些共享库

/mnt 挂载的文件夹

/opt 安装的软件都会放在这

/sbin超级用户使用的(系统管理员使用的系统管理程序)

/selinux 安全的目录,类似win下的360,他能控制程序只能访问特定文件

/sys 系统临时文件夹

/usr 用户安装的应用程序及文件类似于win下的program files目录

/bin 存放经常使用的命令

/boot 存放的是启动linux时使用的一些核心文件,包括一些连接文件及镜像

/proc 这是目录是一个虚拟的目录,他是系统内存映射,访问这个目录来获取系统信息

/srv

目录存放一些服务启动之后所需要提取的数据

/tmp 存放临时文件

/dev类似于win的设备管理器,把所有的硬件用文件的形式存储

/opt 这是给主机额外安装软件所拜访的目录

/usr/local

这是宁一个给主机额外安装软件所安装的目录,一般是通过编译源码方式安装程序

/var

这个目录不断扩充东西,包括日志文件

/home 存放普通用户的主目录,在linux中每个用户都哟一个自己的目录。一般该目录是以用户名账号命名的

image-20210508090359201

image-20210508085654284

xshell远程访问linux,需要端口sshd 22开启

查询当前端口是否开启某种协议

rpm qa |grep ssh

解释:rpm用于管理套件
q  使用询问模式,当遇到任何问题,rpm指令都会先询问用户
a 查询所有套件
grep
查找文件里符合条件的字符串

重启网络服务命令 service network restart

卸载相关程序的apt-get remove --purge+ package 

指的是删除所有配置文件

而去掉purge的是=只删除数据和可执行文件
apt-get autoremove --purge # ----(package 删除包及其依赖的软件包+配置文件等
也可以使用dpkg卸载

vi和vim介绍

vim是vi的增强版

vi和vim三种模式

正常模式

可以使用快捷键,默认模式,可以使用删除、复制、黏贴你的数据

编辑模式/插入模式

这个模式可以输入内容

i为居多

命令行模式

在这个模式中,可以提供相关的指令,完成读取、存盘、替换、离开vim、显示行号等的动作

image-20210508143352658

yy对这一行复制

数字+yy对当前的第几行复制

同理dd是删除

查找在输入esc后,/加要查找的东西,并且next后是查找下一个

设置文件的行号 :set nu

取消行号: set nonu

回到末行G首行gg,正常模式下执行的

u是对当前输入的撤销

指定行数跳转 esc后输入:set nu然后输入要跳转的行数,然后shift+g跳转

关机命令

shutdown -h now 立刻关机

shutdown -h +时间 在几分钟后关机

shutdown -r now 立刻重启

halt等价于关机

sync 把内存同步到磁盘,也就是所谓的关机把进程都关闭并且保存。无论哪种关机与重启,都需要现运行sync,防止数据丢失

su - 用户名 来切换称系统管理员身份

lofout 注销用户 在gui界面无法使用

用户管理

用户家目录 /home/下创建有各个创建的用户的家目录,当用户登陆时,会自动进入到自己的家目录 /home/***

linux是一个多用户多任务的操作系统,任何一个使用系统资源的用户都必须要首先向管理员申请账号,然后凭借账号进入系统

linux用户至少属于一个组

添加用户:

useradd 【选项】 用户 如果不指定进入指定组,那么创建该用户时,就会创建一个对应的所属的相同名字的组

passwd 用户名 设置的密码

useradd -d 指定的创建目录下创建用户 用户名

pwd 当前所在的目录 绝对路径

删除用户

删除用户,但是保留家目录   useradd 用户名
删除用户及其用户主目录  useradd -r 用户名   
-r一般指的是依次按照顺序删除

查询用户信息

id 用户名 如果不存在就返回无用户

切换用户 su - 用户名 (当从高到低可以任一切换,但是从低到高不行)

exit返回原来的用户

whoami 查询当前的用户名

用户组 类似于用户 系统可以对有共性的多个用户进行统一管理

新增组 groupadd 组名

删除组 groupadd 组名

增加用户到指定的组 useradd -g 用户组 用户名

修改用户到指定的组 useradd -g 用户组 用户名

用户配置文件(用户信息)/etc/passwd

组配置文件(组信息)/etc/group

口令配置文件(密码和登录信息,是加密的) /etc/shadow

关于用户和组的相关文件

/etc/passwd文件
用户(user)的配置文件,记录用户的各种信息
每行含义:
用户名:密码:id:组的id:家目录:用户所对应的shell解释器

/etc/shadow文件
口令配置文件
/etc/group文件
组配置文件
每行的意思:
组的名称:口令:组的id或者说是标识符

linux实操篇

指定运行级别

0:关机
1:单用户{找回丢失密码}
2:多用户状态但没有网络服务
3:多用户状态有网络服务
4:系统未使用保留给用户
5:图形界面
6:系统重启
这些级别的指定有配置文件  /etc/inittab

基本语法

init[123456]

如何找丢失的密码?

进入单用户模式,然后修改root密码,因为单用户模式,root不需要密码就可以登陆

从该开始的引导然后按照模式进入。。。依次是e e 1 b 然后改密码(仅是centos,回车省略)

必须得在linux的电脑上才可以使用单用户模式,不可以远程进行

帮助介绍指令

man 获得帮助信息
基本语法
man [文件或配置文件] (功能描述,获取帮助信息)【这是centos的】
在ls中添加-a会出现隐藏文件  通常是以.开头的
同理help也是
help [文件或配置文件] 【也是centos】
kali的是 [文件或配置文件]  --help

文件目录类指令

pwd

显示当前工作目录的绝对路径

ls

ls [选项] [目录或者是文件]

-a 显示当前目录所有的文件和目录,包括隐藏的

-l 以列表的方式显示信息(可以理解为line)

-h:显示多少m的大小

cd

cd [参数]

cd~或者cd,回到自己的家目录

cd.. 回到当前目录的上一级目录

cd - 返回上一次的目录操作

再次解释绝对路径,相对路径:

绝对路径:从根目录开始定位 /home

相对路径:从当前工作目录开始定位到所需要的目录去 ../home

mkdir

mkdir [选项] 要创建的目录

-p创建多级目录 例子:mkdir -p /home/animal/dog

rmdir

rmdir [选项] 要删除的目录

如果不带选项,rmdir删除的是空目录,目录下有内容不可以

所以使用 rm -rf 删除目录

touch

touch 文件名称

创建一个文件

也可以一次性的创建多个文件

cp

指定拷贝文件到指定目录

cp [选项] 源 目的

-r:递归复制整个文件夹

rm

移除文件或目录

rm [选项] 文件或目录

-r: 递归删除整个文件

-f:强制删除

mv

移动文件与重命名

mv 旧名字 新名字

mv 文件路径 到的路径

cat

cat [] 要查看的文件

-n 显示行号

cat是以只读的方式

cat 文件查看的 | more 按照页显示

more

more 要查看的文件

是一个基于vi编辑器的文本过滤器,它以全屏的方式按照页显示文本内容

空格 :显示下一页

enter:显示下一行

q:离开more,不再显示该文件内容

CTRL+b 返回上一页

ctrl+ f 向下滚动一屏

=: 输出当前的行号

:f 输出文件名和当前的行号

less

类似more,但更加强大,不是一次整个文件加载之后显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率

less 要查看的文件

空格、pagedown:向下翻一页

pageup:向上翻一页

/字符:向下搜寻字符 n:向下查找 N:向上查找

?字符:向上搜寻字符 n:向上查找 N:向下查找

q:离开less这个程序

关于linux连接问题

1

硬链接:通过索引节点来进行连接

在linux中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,这叫做索引节点号

硬连接作用允许一个文件拥有多个有效路径,这样可以防止误删,文件真正被删除只有与之相关的所有硬连接文件均被删除

限制条件:

不能给目录创建硬连接

只有在同一文件系统中的文件之间才能创建连接

2

软连接

就是快捷方式

也称为符号连接,也叫软连接

ln -s 起始文件目录 要创建的快捷方式文件名称

删除软连接不要在最后面带斜杆/了,否则提示资源忙

>指令和>>指令

ls -l > 文件 列表内容写到文件中(会覆盖)

ls-al >> 文件 列表内容追加到文件

cat 文件1 > 文件2 将文件1的内容覆盖到文件2中

echo' '>> 文件

cal命令表示的是日历

echo

环境变量 PATH

echo $path

显示文件的开头部分

head -n 行数 文件 查看文件的前多少行

tali

显示文件的后几行

tali 文件 默认显示文件的后10行内容

显示的指定行数 同上面的head

tali -f 实时追踪文档的所有更新

ln

查看软连接和硬连接

pwd查看软连接目录,就是软连接的目录

history

查看已经执行过的历史命令

当要执行标号的 可以使用!编号

时间日期类

date

date 显示当前时间

date+%Y 显示当前年份,同理,y变成m,d就是显示哪一个月份,哪一天

date "+%y-%m-%d %h:%m:%s"

设置日期

date -s 字符串时间

cal

显示日历时间

不加选项,仅本月

cal 年份 写这一年的

搜索查找类

find

从指定目录向下

选项说明:

1

find 指定文件目录 -name 文件名字(也可以用星号来表示一些*.txt等)

2

按照文件的拥有者来查找

find 文件目录 -user 文件的拥有者

3

查找整个linux下大于指定的文件

find 目录 -size (+代表大于多少,-代表小于多少,=代表等于多少)

locate

快速定位文件路径,利用事先建立的系统中的所有文件名称及路径的locate数据库实现快速定位给文件。locate指令无需遍历整个系统文件,查询速度较快,为保证速度的结果的准确性,管理员必须定期更新locate时刻

在第一次运行,先创建updatedb指令创建locate数据库

grep和 |

grep过滤查找

| 表示将前面的一个命令的处理结果输出传递给后面的命令处理

grep 选项 查找内容 源文件

-n 显示匹配行及行号

-i 忽略大小写

gzip/gunzip指令

gzip用于压缩,gunzip解压

gzip 文件 压缩文件,只能将文件压缩为*.gz文件(不会保留原来的文件)

gunzip 文件.gz 解压文件的命令

zip/unzip

zip压缩

unzip解压文件

zip/unzip [选项] 内容.zip

再unzip种,-d<目录>指定解压后文件的存放目录

zip内可以用-r递归压缩文件目录 然后名字 然后指定目录

unzip -d 指定目录 文件名字

tar

打包指令,打包文件后缀.tar.gz的文件

tar [选项] xxxx.tar.gz 打包内容

-c: 产生tar打包文件

-v 显示详细信息

-f:指定压缩后的文件名

-z:打包同时压缩

-x:解压.tar文件

tar -zcvf 压缩文件名字.tar.gz 被压缩的文件/目录

tar -zxvf 压缩文件.tar.gz 解压文件

tar -zxvf 压缩文件.tar.gz 指定解压目录(目录要存在)

组管理与权限管理

linux组基本介绍

在linux中的每个用户必须是属于一个组,不能独立组外,每个文件都有所有者、所有组、其他组的概念

111

所有者

文件的创建者

查看文件的所有者

ls -ahl

修改文件的所有者

chown 用户名 文件名

222

所在组

修改文件所在组

chgrp 组名 文件名

333

其他组

除去文件所有者和所在组的用户外,系统的其他用户都是文件的其他组

改变用户所在组

usermod -g 组名 用户名

usermod -d 目录名 改变该目录用户登录的初始目录

文件类型的判断:

-:是一个普通文件

-d:是一个目录

-l:是一个软连接文件

c:字符设备(键盘,鼠标)

b:块文件,硬盘

关于三个权限过后的数字表示:

如果是文件,表示的是硬连接的数,如果是目录,则表示目录下的子目录

组后面跟的是字节,要想显示具体可视化的,可以在ls 后面添加选项h

image-20210512101812812

ls中的时间为修改时间

修改权限chmod

可以修改权限或者目录的权限

第一种方法

u:所有者 g:所有组 o:其他人 a:所有人

chmod u/g/o/a=xxx之类的 文件目录名

第二种方法

通过数字变更权限

chmod 3个数字级别 文件目录名

修改文件下所有者chown

chown 新用户:新用户组 文件 改变用户的所有组和所有者

chown 新用户 文件 改变用户的所有者

-R:递归更改

chown -R 新用户 文件目录/文件

同理:可以尝试chgrp修改文件所在组进行递归

useradd -g 指定组 用户 就是使指定人走到指定组里

crond任务调度

定时任务的设置

任务调度:是指系统在某个时间执行的特定的命令或程序

调度任务分类:1.系统工作 :必须执行的重要的

2.个别用户工作: 可能希望执行某些程序,比如备份

crondtab [选项]

-e:编辑crondtab定时任务

-l:查询crondtab任务

-r:删除当前用户下所有的crondtab任务

快速入门案例:

image-20210512105343029

*/1 * * * * ls -al/etc >> /tmp/1111.txt
意思就是个列出/etc下面的文件并且自动保存文件到1111.txt

image-20210512110137197

image-20210512133219372

conrtab -r:终止任务调度

crontab -l:列出当前有哪些任务调度

service crond restart 重启调度任务

posted @ 2021-05-13 19:52  testadm1n  阅读(88)  评论(0编辑  收藏  举报