2021.11.22 星期一
目录
Linux系统简介
Linux发展史
Linux命令格式
路径
快捷键
帮助
其他项
Linux系统和目录
目录及文件的基本操作
文件类型
Linux用户及权限管理
Linux有三种不同类用户
用户管理文件
/etc/passwd
/etc/group文件
/etc/shadow文件
用户权限
用户及权限管理命令
Linux网络配置
安装包管理
Vim文件编辑器
vim文件编辑器的三种模式
命令模式
末行模式
编辑模式
Linux进程管理
列的含义
表头含义
在Linux系统中,任何东西都可以简化为文件;比如分区对应到/dev/sda1;硬件部件对应到/dev/cdrom
ls / 显示Linux根目录下的文件; / 是Linux所有路径的开始,是所有目录的根
系统启动必须
pwd | 描述 | 显示当前所在的位置 | |
用法 | pwd [选项]... | ||
选项 | -p | 显示链接真实路径 | |
cd | 描述 | 切换到指定目录 | |
ls | 描述 | 查看目录下的内容 | |
用法 | ls【选项】...【文件/目录】... | ||
选项 | -h | 人性化显示容量信息 | |
-l | 显示详尽信息,可显示文件权限 | ||
-d | 显示目录本身信息 | ||
-a | 显示所有信息 | ||
mkdir | 描述 | 创建目录 | |
用法 | mkdir 【选项】...【目录】... | ||
选项 | -p | 创建多级目录 批量创建:makdir -p /xxx/{xxx,xxx,xxx} | |
touch | 描述 | 创建文档或修改文档时间 | |
cp | 描述 | 复制文件与目录 | |
用法 | cp 【选项】 源 目标 | ||
选项 | -r | 递归,复制子文件与子目录 | |
rm | 描述 | 删除文件或目录 | |
选项 | -f | 不提示,强行删除 | |
-i | 删除前,提示是否删除 | ||
-r | 删除目录以及目录下的所有内容 | ||
find | 描述 | 搜索文件或目录 | |
用法 | find 【命令选项】【路径】【表达式选项】 | ||
选项 | -a | 并且 | |
-o | 或者 | ||
-name | 按名称查找 | ||
-mtime | 按修改时间查找 | ||
-size | 按容量大小查找 | ||
-type | 按档案类型查找 文件(f),目录(d),设备(b,c),链接(l) | ||
-user | 按用户查找 | ||
-group | 按组查找 | ||
mv | 描述 | 移动(重命名文件或目录) | |
用法 | 位置不变的移动就是重命名 |
- | 表示普通文件 | |
d | 表示目录文件 | |
b | 表示块设备文件 | 比如/dev/sda |
c | 表示字符设备文件 | 比如/dev/tty |
l | 表示软链接文件 | 比如/etc/rc.local |
p | 表示管道文件 | |
s | 表示套接文件 |
2021.11.23 星期二
username:代表用户名,可以包含数字 - . _ ,但不能-开头,不能大于32个字符
password:用户口令,可以时 x * 或字母数字的随机合。
UserlD:用户的数字ID,root默认是0,普通用户默认从1000开始
GroupID:用户所属的组ID,默认情况下,Linux会给每个用户新建一个用户组,与数字匹配
Userinfo:类似于用户的备注信息,可以任意输入
Home Directory:用户的家目录,即登录后,用户默认所处的目录,默认在/home/用户名
Login Shell:表示用户登录的SHELL
默认可登录用户为/bin/bash,也可以自己定义一些其他的shell,
无法登录的服务用户,默认为/sbin/nologin,表示无法登录
在Linux中每个用户都被分配到一个组名与用户名相同的组中
/etc/group文件共有四列
Groupname:每个用户都有与用户名相同的组,也是组的位移唯一名称
Password:通常是x,表示指向/etc/shadow文件,也可是字母数字的随机组合
Group ID:同userID,如果要创建一个特殊的组,表示管理员权限,建议分配一个独立的GID,避免GID滥用
Group members:表示组内成员,如postfix属于mail组
是/etc/passwd文件的补充,包含8列信息
Username:用户名
Password:加密后的口令,对应在/etc/password第二列需要是x
Password history:口令的最后修改日期,在19701月1日之后的天数
mindays:用户必须保持该口令的最小天数
maxdays:口令的使用最长天数,再次之后必须更改口令
warndays:口令过期前,提供警告的天数
inactive:口令过期后仍然可使用口令的天数,在此期间会提示更改口令
disable:禁用账户后,在1970年1月1日之后的天数
r | 读取权限 | 4 |
w | 写入权限 | 2 |
x | 执行权限 | 1 |
第一列的第一个字符为文件类型: -代表普通文件,d代表目录,l代表链接文件,b或c 代表设备。第二至第九个字符代表权限,三位一组 分别为所有者权限、所属组权限、 其他账户权限,rwxrwxrwx表示文档所有者(user)、 组(group)、 其他账户(other) 权 限均为可读、可写、可执行,rwxr--r--表示文档所有者权限为读写执行,所属组权限 为只读,其他账户权限为只读。第二列为链接数量或子目录个数,第三列为文档的所有 者,第四列为文件的所属组,第五列为容量,第六列为最近文档被修改的月份,第七列 为文档被修改 的日期,第八列为文档被修改的时间,第九列为文件或目录名称.
useradd | 描述 | 创建新的用户 | |
用法 | useradd【选项】账户名称 | ||
选项 | -c | 设置账号描述信息,一般为账号全称 | |
-d | 设置账号家目录 默认为/home/用户名 | ||
-e | 设置账户失效信息 YYYY-MM-DD | ||
-g | 设置账户的基本组 | ||
-G | 设置账户的附加组,多个附加组用逗号隔开。 | ||
-M | 不创建账户家目录 一般与-s结合使用 | ||
-s | 设置账户的登录Shell 默认为bash | ||
-u | 指定账户uid | ||
groupadd | 描述 | 创建组账户 | |
用法 | groupadd【选项】组名称 | ||
选项 | -g | 设置组ID号 |
passwd | 描述 | 更新账号认证信息 | |
用法 | passwd【选项】【账户名称】 | ||
选项 | -l | 锁定用户 仅root可使用此选项 |
|
--stdin | 从文件或管道读取密码 | ||
-u | 解锁用户 | ||
-d | 快速清空账户密码 仅root可使用此选项 |
||
usermod | 描述 | 修改账户信息 | |
用法 | usermod【选项】账户名称 | ||
选项 | -d | 修改账户家目录 | |
-e | 修改账户失效日期 | ||
-g | 修改账户所属基本组 | ||
-G | 修改账户所属附加组 | ||
-s | 修改账户登录Shell | ||
-u | 修改账户Uid | ||
passwd | 描述 | 添加或删除组成员 | |
用法 | gpasswd【选项】组名 使用【gpasswd 组名】的方式可用设置密码 |
||
选项 | -a | 添加用户到组 | |
-A | 指定管理员 | ||
-r | 删除密码 | ||
-R | 限制用户登入组,只有组中的成员才可以用newgrp加入该组 | ||
-d | 从组删除用户 | ||
userdel | 描述 | 修改账户及相关文件 | |
用法 | userdel【选项】账户名称 | ||
选项 | -r | 删除账户及相关文件 | |
groupdel | 描述 | 删除组账户 |
chmod | 描述 | 改变文件或目录权限 | |
用法 | chmod【选项】权限 文件或目录 | ||
选项 | --reference=RFILE | 根据参考文档设置权限 | |
-R | 递归将权限应用于所有的子文件与子目录 | ||
chown | 描述 | 修改文件或目录的所有者与所属组 | |
用法 | chown【选项】【所有者】:【所属组】文件或目录 | ||
选项 | -R | 递归将权限应用于所有的子文件与子目录 | |
id | 描述 | 显示账户及组的信息 |
ifconfig |
描述 |
显示或设置网络接口信息 |
|
用法 |
ifconfig interface 选项|地址 |
||
语法格式 |
DEVICE |
设备名称 |
eth0,eth1... |
TYPE |
设备类型 |
ethernet |
|
BOOTPROTO |
启动协议 |
none|dhcp|static |
|
HWADDR |
硬件地址 |
52:54:00:B9:F2:8E |
|
NM_CONTROLLED |
网卡是否可以被NetworkManager控制 |
yes|no |
|
ONBOOT |
开机是否启动该网卡,对虚拟接口无效 |
yes|no |
|
ONPARENT |
真实接口启动后虚拟接口是否启动 |
yes|no |
|
IPADDR |
IP地址 |
||
PREFIX |
网络位掩码个数,对虚拟接口无效 |
||
NETMASK |
子网掩码 |
||
GATEWAY |
默认网关 |
||
DNS{1,2} |
DNS服务器,多个服务器使用数字标记,如DNS1,DNS2等 |
hostname |
描述 |
显示或设置系统主机名称 |
|
用法 |
hostname【选项】 |
||
选项 |
-i |
查看本机IP信息 |
|
route |
描述 |
显示或设置静态IP路由表 |
|
用法 |
route【选项】 |
查看路由信息 |
|
route add 目标网络 gw 网关地址 |
添加路由表记录 |
||
route del 目标网络 |
删除路由表记录 |
ping |
描述 |
测试网络联通性 |
|
traceroute |
描述 |
排查问题路由的位置以及IP信息 |
|
nslookup |
描述 |
检查本地设置的DNS服务器工作是否正常 |
|
dig |
描述 |
查看MX(邮件记录),NS(域名服务器记录)等信息 |
|
netstat |
描述 |
查看链接系统的所有人,也可以查看服务器对应端口是否以及正常开启 |
|
用法 |
netstat -an |
查看网络链接状态 |
|
netstat -nutlp |
查看当前系统开启端口信息 |
||
ss |
描述 |
显示更多更详细有关TCP和链接状态的信息 |
|
选项 |
-t |
显示tcp链接 |
|
-a |
显示所有链接 |
||
-l | 列出所有打开的网络链接端口 |
||
-s | 显示Sockets摘要 |
||
-p | 显示端口对应进程 |
||
-n | 不解析服务名称,以数字的形式显示 |
||
-r | 解析服务名称 |
||
-m | 显示内存情况 |
描述 |
交互式,基于RPM的包管理工具 |
||
用法 |
yum【选项】【指令】【软件包...】 |
||
选项 |
-y |
执行非交互式安装 |
|
指令 |
install |
使用yum源安装软件包 |
|
update |
使用yum源升级软件包 |
||
check-update |
检查yum源中所有可用的升级 |
||
remove|erase |
卸载软件包 |
||
list |
列出系统中已经安装的以及yum源中所有可用的软件包 |
||
info |
查看软件包信息 |
||
clean all |
清空所有的缓存信息 |
||
groupinstall |
使用yum源安装组包 |
||
grouplist |
列出系统中以及安装的以及yum源中所有可用的组包 |
||
groupremove |
卸载组包 |
||
search |
根据关键词查找软件 |
||
localinstall |
通过本地rpm文件安装软件 |
||
history |
查看历史记录 |
[] | []中填写yum源唯一的id,也可以为任意字符串 |
name |
指定yum源名称,可以为任意字符串 |
baseurl |
指定yum源的url地址(可以是http,ftp或本地路径) |
mirrorlist |
指定镜像站点目录 |
enabled |
是否激活该yum源(0代表禁用,1代表激活,默认为激活) |
gpgcheck |
安装软件时是否检查签名(0代表禁用,1代表激活) |
gpkey |
检查签名的密钥文件 |
wget | 描述 |
下载单个文件 |
|
选项 |
wget -O |
下载并以不同的文件名保存 |
|
apt-get dist-upgrade |
更新所有软件(考虑依赖关系) |
||
apt-get upgrade |
更新kali源 |
Vi编辑器是所有Unix及Linux系统下标准的编辑器,类似于windows系统下的notepad(记事本)编辑器,由于在Unix及Linux系统的任何版本,Vi编辑器是完全相同的,因此可以在其他任何介绍vi的地方都能进一步了解它,Vi也是Linux中最基本的文本编辑器,学会它后,我们将在Linux的世界里畅行无阻,尤其是在终端中。
命令模式:在该模式下是不能对文件直接编辑,可以输入快捷键进行一些操作(删除行,复制行,移动光标,粘贴等等)【打开文件之后默认进入的模式】;
编辑模式:在该模式下可以对文件的内容进行编辑;
末行模式:可以在末行输入命令来对文件进行操作(搜索、替换、保存、退出、撤销、高亮等等);
该模式是打开文件的第一个看到的模式(打开文件即可进入)
命令模式
光标操作 h 光标向左移动一位 j 光标向下移动一行 k 光标向上移动一行 l 光标向右移动一位 gg 移动光标至文件首行 G 移动光标至文件末尾 nG 移动光标至第n行 ^ 光标移至当前行的首字符 $ 光标移至当前行的尾字符 fx 光标移至当前行的下一个x字符处 Fx 光标移至当前行的上一个x字符处 w 光标向右移动一个单词 nw 光标向右移动n个单词 b 光标向左移动一个单词 nb 光标向左移动n个单词 编辑文档 x 删除光标当前字符 dd 删除一行 ndd 删除n行 d$ 删除光标至行尾的内容 J 删除换行符,可用将两行合并为一行 u 撤销上一次操作,可用多次使用uu表示撤销两次操作 rx 将光标当前字符替换为x yy 复制当前行 p 粘贴至当前行之后 P 粘贴至当前行之前
进入方式:由命令模式进入,按下“:”或者“/(表示查找)”即可进入
退出方式:
a. 按下esc
b. 连按2次esc键
c. 删除末行全部输入字符
查找与替换 | :s/X/Y/ | 将当行中第一个出现的X字符替换为Y字符 |
:s/X/Y/g | 将光标当前所有X字符替换为Y字符 | |
:n,n s/X/Y/g | 将第n行至第n行的X字符替换为Y字符 | |
:% s/X/Y/g | 将所有行的X字符替换为Y字符 | |
保存与退出 | :q! | 不保存并退出 |
:wq | 保存并退出 | |
:x | 保存并退出 | |
:w | 保存 | |
:w b.txt | 另存为 b.txt | |
不保存并退出 | :set number |
a | 进入插入模式,后续输入的内容将插入至当前光标的后面 |
A | 进入插入模式,后续输入的内容将插入至当前段落的段尾 |
i | 进入插入模式,后续输入的内容将插入至当前光标的前面 |
I | 进入插入模式,后续输入的内容将插入至当前段落的段首 |
o | 进入插入模式并在当前行的后面创建新的空白行 |
O | 进入插入模式并在当前行的前面创建新的空白行 |
Linux的进程在/proc目录下,存在于以进程ID命名的文件夹中,蓝色部分表示进程ID
ps | 描述 | 主要是查看服务器的进程信息 | |
选项 | -e | 等价于“-A”,表示列出全部的进程 | |
-f | 显示全部的列(显示全字段)ef可同时使用 | ||
top | 描述 | 查看服务器的进程占的资源 | |
service | 描述 | 用于控制一些软件的服务启动/停止/重启 | |
用法 | #service 服务名 start/stop/restart | ||
例如 | #service httpd start |
需要启动本机安装的Apache(网站服务器软件),其服务名httpd | |
kill | 描述 | 表示杀死进程 | |
用法 | #kill 进程PID |