Linux基础

                                                                                                                             2021.11.22 星期一

目录

Linux系统简介

 Linux发展史

Linux命令格式

路径

快捷键

帮助

其他项

 Linux系统和目录

目录及文件的基本操作

文件类型

Linux用户及权限管理

Linux有三种不同类用户

用户管理文件

/etc/passwd 

/etc/group文件

 /etc/shadow文件

用户权限

用户及权限管理命令

Linux网络配置

安装包管理

Vim文件编辑器

vim文件编辑器的三种模式

 命令模式

末行模式

编辑模式

Linux进程管理

 列的含义

 表头含义


Linux系统简介

Linux基础_第1张图片

 Linux发展史

Linux基础_第2张图片

Linux命令格式

  • 命令字 (可选项) 参数
  • 例如:mkdir -p 文件名

路径

  • 绝对路径:从/目录为起始
  • 相对路径:从当前位置为起始

快捷键

  • tab键   可用补全命令字 也可以补全路径
  • 上 下键   可用调用历史命令
  • alt +.   复制上一条命令的最后一个对象
  • ctrl+l   清除屏幕
  • which+命令   查找常用命令的储存位置

帮助

  • 指令 --help  打开帮助
  • man   指令   打开man帮助

其他项

  • | 管道   描述 把管道前的处理结果交给后面的命令再处理一次
  •            用法 【命令】【选项】...|【命令】【选项】...
  • history   描述 查看我们在系统中输入过的命令
  •               选项 -c 清空内存中命令历史
  •                        -nd 删除指定的历史命令
  •                        n 显示最近的n条历史
  • \   描述   换行输入命令,命令比较长时经常需要用到\符号
  • service ssh restart   重启ssh服务的命令

Linux基础_第3张图片

 Linux系统和目录

在Linux系统中,任何东西都可以简化为文件;比如分区对应到/dev/sda1;硬件部件对应到/dev/cdrom

ls /  显示Linux根目录下的文件; /   是Linux所有路径的开始,是所有目录的根

Linux基础_第4张图片

Linux基础_第5张图片

 Linux基础_第6张图片

系统启动必须

Linux基础_第7张图片

 Linux基础_第8张图片

目录及文件的基本操作

目标及文件的基本操作
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 描述 移动(重命名文件或目录)
用法 位置不变的移动就是重命名

Linux基础_第9张图片

Linux基础_第10张图片

Linux基础_第11张图片

 Linux基础_第12张图片

Linux基础_第13张图片

文件类型

- 表示普通文件
d 表示目录文件
b 表示块设备文件 比如/dev/sda
c 表示字符设备文件  比如/dev/tty
l 表示软链接文件 比如/etc/rc.local
p 表示管道文件
s 表示套接文件

                                                                                                                         2021.11.23 星期二

Linux用户及权限管理

Linux有三种不同类用户

  • root用户 root用户是在安装操作系统时,由系统自动创建,具有Linux的所有权限。通常root用户时黑客在本机的终极目标。
  • 一般用户 即我们安装系统时所创建的sangfor。可以在操作系统上访问程序,如vim,数据库,web浏览器。可以创建保存文件到自己的home目录。无法修改系统配置文件。
  • 服务用户 用于apache,邮件,打印服务邓系统服务。这些服务用户与Linux系统用户进行交互,通常不需要认为去修改

用户管理文件

/etc/passwd 

username:代表用户名,可以包含数字 - . _ ,但不能-开头,不能大于32个字符

password:用户口令,可以时 x * 或字母数字的随机合。

  • x表示实际口令指向/etc/shadow
  • *表示禁用的用户
  • 字母数字随机表示加密后的口令

UserlD:用户的数字ID,root默认是0,普通用户默认从1000开始

GroupID:用户所属的组ID,默认情况下,Linux会给每个用户新建一个用户组,与数字匹配

Userinfo:类似于用户的备注信息,可以任意输入

Home Directory:用户的家目录,即登录后,用户默认所处的目录,默认在/home/用户名

Login Shell:表示用户登录的SHELL

默认可登录用户为/bin/bash,也可以自己定义一些其他的shell,

无法登录的服务用户,默认为/sbin/nologin,表示无法登录

/etc/group文件

在Linux中每个用户都被分配到一个组名与用户名相同的组中

/etc/group文件共有四列

Groupname:每个用户都有与用户名相同的组,也是组的位移唯一名称

Password:通常是x,表示指向/etc/shadow文件,也可是字母数字的随机组合

Group ID:同userID,如果要创建一个特殊的组,表示管理员权限,建议分配一个独立的GID,避免GID滥用

Group members:表示组内成员,如postfix属于mail组

Linux基础_第14张图片

 /etc/shadow文件

是/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 描述 显示账户及组的信息

Linux网络配置

接口参数

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

显示内存情况

安装包管理

YUM命令

描述

交互式,基于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文件格式
[]

[]中填写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源

Vim文件编辑器

Vi编辑器是所有Unix及Linux系统下标准的编辑器,类似于windows系统下的notepad(记事本)编辑器,由于在Unix及Linux系统的任何版本,Vi编辑器是完全相同的,因此可以在其他任何介绍vi的地方都能进一步了解它,Vi也是Linux中最基本的文本编辑器,学会它后,我们将在Linux的世界里畅行无阻,尤其是在终端中

vim文件编辑器的三种模式

命令模式:在该模式下是不能对文件直接编辑,可以输入快捷键进行一些操作(删除行,复制行,移动光标,粘贴等等)【打开文件之后默认进入的模式】;

编辑模式:在该模式下可以对文件的内容进行编辑;

末行模式:可以在末行输入命令来对文件进行操作(搜索、替换、保存、退出、撤销、高亮等等);

 命令模式

该模式是打开文件的第一个看到的模式(打开文件即可进入)

命令模式

光标操作 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进程管理

Linux的进程在/proc目录下,存在于以进程ID命名的文件夹中,蓝色部分表示进程ID

Linux基础_第15张图片

 列的含义

  • UID:该进程执行的用户id
  • PID:进程id
  • PPID:该进程的父级进程id,如果一个程序的父级进程找不到,该程序的进程称之为僵尸进程(parent process ID);
  • CCpu的占用率,其形式是百分数;
  • STIME:进行的启动时间;
  • TTY:终端设备,发起该进程的设备识别符号,如果显示“?”则表示该进程并不是由终端设备发起;
  • TIME:进程的执行时间;
  • CMD:该进程的名称或者对应的路径;

 表头含义

  • PID:进程id
  • USER:该进程对应的用户;
  • PR:优先级;
  • VIRT:虚拟内存;
  • RES:常驻内存;
  • SHR:共享内存;
进程管理命令
ps 描述 主要是查看服务器的进程信息
选项 -e 等价于“-A”,表示列出全部的进程
-f 显示全部的列(显示全字段)ef可同时使用
top 描述 查看服务器的进程占的资源
service 描述 用于控制一些软件的服务启动/停止/重启
用法 #service 服务名 start/stop/restart
例如

#service httpd start

需要启动本机安装的Apache(网站服务器软件),其服务名httpd
kill 描述 表示杀死进程
用法 #kill  进程PID

你可能感兴趣的:(linux,unix,服务器)