Linux常用指令整理

目录

一、Linux vim快捷键

 二、关机,重启,用户登录注销

1.关机&重启

2.用户登录和注销

三、用户管理

1.添加用户:

2.指定/修改密码

3.删除用户:

4.查询用户信息指令

5.用户组

6.用户和组相关文件

1)/etc/passwd :

​编辑2)/etc/shadow :

​编辑3)/etc/group  :

 四、实用指令

1.运行级别

2.帮助指令

3.文件目录类

4.时间日期类

5.搜索查找类

6.压缩解压类

五、组管理和权限管理

1.linux中每个文件有所有者、所在组、其他组的概念

1.所有者指令

 2.组指令

 3.其他组

2.权限介绍

1.第一组(确定文件类型)

2.第二组(文件所有者拥有该文件的权限)

3.第三组(确定所属组拥有该文件的权限)

4.第四组(确定其他组用户拥有该文件的权限)

5.数字(文件就是1;目录:子目录数+文件数)

6. 文件大小(字节)及时间​编辑

 3.修改权限

1.通过+、-、= 来修改权限

 2.通过数字修改权限(数字表示为: r=4,w=2,x=1因此rwx=4+2+1=7)

六、定时任务调度

1.crond 任务调度(定时反复执行)

 2.at定时任务(一次性定时计划任务)

七、磁盘分区、挂载

1.Linux分区

2.磁盘情况查询

3.磁盘情况-工作实用指令

八、网络配置

1.原理

 2.网络环境配置(指定ip)

3.设置主机名和host映射

 主机名解析机制原理:

九、进程管理

1.进程基本介绍

2.ps指令

(1)语法

(2)实例

 3.终止进程

(1)语法

(2)实例

4.进程树

(1)语法

(2)实例

 5.服务管理

(1)语法

(2)实例

 6.动态监控

(1)语法

7.监控网络状态

(1)指令

十、RPM与YUM

1.RPM

(1)指令

2.YUM

(1)指令

十一、备份与恢复

1.安装

2.备份原理

层级备份(差异备份(增量备份))

3.dump语法

(1)针对ext4文件系统

(2)针对xfs文件系统

 4.实例

(1)dump -0uj -f /opt/boot.bak.bz2 /boot

5.restore语法

(1)ext4文件系统

(2)xfs文件系统

 6.实例

 (1)restore -r -f boot.bak.bz2

(2)xfsrestore -f /srv/boot.dump -L boot_all /boot​编辑


一、Linux vim快捷键

0)vim进入文件 vim 文件名

1)一般模式下,拷贝当前行yy ,拷贝当前行向下的5行5yy,并粘贴(输入p)。

2)一般模式下,删除当前行dd,删除当前行向下的5行5dd

3)命令模式,在文件中查找某个单词[命令行下/关键字,回车查找,输入n就是查找下一个]

4)命令模式,设置文件的行号,取消文件的行号.[命令行下: set nu和:set nonu]

5)编辑/etc/profile文件,在一般模式下,使用快捷键到该文档的最末行[G]和最首行[gg]

6)在一个文件中输入"hello",在一般模式下,然后又撤销这个动作u

7)编辑文件,在一般模式下,跳转到20行,输入20gg

注:小键盘在xshell下代英文字母,所以输入一般指令时不要用小键盘的数字输入。

 二、关机,重启,用户登录注销

1.关机&重启

sync                       :把内存数据同步到磁盘(synchronize)

shutdown -h now   :立刻关机

shutdown -h 1        :1分钟后关机

shutdown -r now     :现在重启

halt                          :关机

reboot                      :重启

2.用户登录和注销

su - 用户名               :登录(注意空格)

logout                        :注销(login out)【只能在运行级别3有效(例如xshell页面),

                                       在图形运行界面无效(例 如linux中的终端)】

三、用户管理

1.添加用户:

useradd 用户名                            :默认该用户家目录在  /home/用户名,该用户名也是组名

useradd -d 指定目录 用户名        :给新创建的用户指定家目录

2.指定/修改密码

passwd 用户名             :给用户添加或修改密码

3.删除用户:

userdel 用户名             :删除用户但是保留家目录

userdel -r 用户名          :删除用户以及用户主目录(建议不用)

4.查询用户信息指令

id 用户名                        :查看user的信息

su 用户名                       :切换用户【su -username 和su username 最大的区别的就是是否切                                                  换环境,带-是同时切换环境,某些命令才可以执行】

                                         注:高级用户切换低级用户不用输入密码,返回用户用exit或者logout

whoami                            :显示当前操作的用户名

who am i                          :显示的是第一次登录时的用户名

5.用户组

groupadd 组名                             :添加组

groupdel 组名                              :删除组

useradd -g 组名 用户名               :将用户名加到组名中

usermod -g 组名 用户名               :将用户名改到组名中,用户需要有进入新目录的权限

6.用户和组相关文件

1)/etc/passwd 

user的配置文件;用户名:口令:用户标识号:组标识号:注释:主目录:登录shell(解释器)

2)/etc/shadow :

口令的配置文件;加密口令:最后一次 修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间

3)/etc/group  

组配置文件,记录linux包含的组的信息;组名:口令:组标识号:组内用户列表(不可见)

 

 四、实用指令

1.运行级别

multi-user.target——>级别3(常用)

graphical.target ——>级别5

init 数字                                                       :进行数字级别的行为(重启后会变回原设置)

systemctl get-default                                 :查看当前所处的级别

systemctl set-default multi-user.target     :变成第三级别(重启后不变换设置)

注:找回root密码也是根据此类命令将系统更改为单用户级别后进行重设密码的操作。

2.帮助指令

man 命令(或配置文件)                        :获得帮助信息【如:man ls】

help 命令                                             :获得shell内置命令的帮助信息【如:help cd】

3.文件目录类

(同指令下的选项可随意搭配组合,如rm -rf)

pwd                                   :展示当前工作目录的绝对路径( present work directory)

ls [选项(目录或文件)]    :常用-a/-l 来显示当前目录所有文件/列表的方式显示信息(-h 代表用更

                                               适合人类看的方式显示)

cd 参数        :切换到指定目录;( cd ~ :回到当前用户的家目录;cd .. :回到当前目录的上一级)

mkdir [-p] 要创建的目录      :创建[多吉]目录

rmdir 目录                             :删除空目录

rm -rf  目录                            :删除非空目录(谨慎)

touch 文件名称                      :创建空文件

cp [-r] source dest                   :[递归]拷贝文件到制定目录(source:源;     dest:目标;)

                                             注:cp 改成  \cp 即可进行强制覆盖(遇到重复文件不提示是否覆盖)

rm [-r/-f] 要删除的文件或目录                 :[递归/强制]移除文件或目录(谨慎)

mv oldNameFile newNameFileF            :重命名

mv /temp/moveFile /targetFolder          :移动文件(剪切)

cat [-n] 要看的文件                                    :查看文件内容[显示行号] (更安全)

        注:只能浏览文件无法修改文件;一般带上管道指令 | more来配合使用(空格换页,enter入行)

more 要看的文件                                        :查看文件

less 要看的文件                                          :查看文件(动态加载,看大文件)

echo [选项] 输出内容                                  :输出内容到控制台(如:$HOSTNAME,$PATH)

head [-n 5] 文件                                           :查看文件头[5行]10行内容

tail [-f/-n 5] 文件                                           :[实时追踪文档所有更新]查看文件尾[5行]10行内容

内容 > 文件                                                   :内容覆盖写入文件中

内容 >> 文件                                                 :内容追加写入文件中

ln -s[原文件或目录] [软链接名]                    :存放链接其他文件的路径(类似快捷方式/共享)

                                                        注:删除用rm即可

history [数字]                                   :显示执行过的[数字条]指令(执行历史编号为5的指令:!5

4.时间日期类

date                                        :显示当前日期

 date -s "时间"                          :设置日期

 cal [2022]                                 :[显示2022年历]显示本月月历

5.搜索查找类

find [搜索范围] [选项]                :递归遍历其各个子目录,将满足的文件或目录显示在终端

-user使用实例:

 

-size使用实例:

locate 搜索文件                        :快速定位文件路径(无需遍历文件系统),第一次运行先使用

                                                    updatedb创建locate数据库

which 指令                                  :查看指令在哪个目录

grep [-n/-i] 查找内容 源文件        :过滤查找[显示匹配行及行号/忽略字母大小写],可搭配 “|” 使用

                                                        进行二次处理

6.压缩解压类

gzip 文件                                            :压缩文件(只能压缩为 *.gz 文件)

gunzip 文件                                        :解压文件

zip [-r] xxx.zip  源文件                       :[递归压缩,即压缩目录及文件和子文件夹]压缩源文件

uzip [-d 目录] xxx.zip                         :解压文件[到目录]

tar [选项] xxx.tar.gz 打包的内容         :打包目录,压缩后文件为*.tar.gz

例子:

 注:-C 指定目录

五、组管理和权限管理

1.linux中每个文件有所有者、所在组、其他组的概念

1.所有者指令

ls -ahl                                                                    : 查看文件的所有者

chown [-R] newowner 文件/目录                         :[递归]改变所有者

chown [-R] newowner:newgroup 文件/目录       :[递归]改变所有者和所在组

 2.组指令

chgrp newgroup 文件/目录                                : 改变所在组

 3.其他组

对一个文件而言,除了所有者所属用户组以外的其他用户组,称为其他组

2.权限介绍

 分为4组(1、3、3、3)

1.第一组(确定文件类型)

I          :链接(快捷方式)

d         :目录(文件夹)

 c        : 设备文件(鼠标、键盘)

 b        :块设备(硬盘)

-         :普通文件

2.第二组(文件所有者拥有该文件的权限)

3.第三组(确定所属组拥有该文件的权限)

4.第四组(确定其他组用户拥有该文件的权限)

5.数字(文件就是1;目录:子目录数+文件数)

6. 文件大小(字节)及时间

 3.修改权限

1.通过+、-、= 来修改权限

u:所有者(user);g:所有组(group);o:其他人(other);a:所有人(all)

chmod u=rwx,g=rx,o=x 文件/目录名       :修改文件或目录的权限

chmod o+w 文件/目录名                         :加权限

chmod a-x 文件/目录名                           :减权限

 2.通过数字修改权限(数字表示为: r=4,w=2,x=1因此rwx=4+2+1=7)

chmod 751   文件/目录名                     : 相当于chmod u=rwx,g=rx,o=x 文件/目录名

六、定时任务调度

1.crond 任务调度(定时反复执行)

模板:写脚本,赋权限,设置crond执行

crontab [-e/-l/-r]                                :编辑/查询/删除 crontab任务

service crond restart                       :重启任务调度

*/1 * * * * /home/my.sh                       :(每个符号空格隔开)输入到任务调度文件的例子-> 每分钟执行一次my.sh 中的命令

 

 2.at定时任务(一次性定时计划任务)

ps -ef | grep atd                :执行前检测atd是否在运行,必须保证atd进程已经启动

at [选项] [时间]                   :指定时间

补充:at编辑时,ctrl+退格[删除字符];ctrl+d[退出并保存at编辑]

 atq                                         :查看系统中还没有执行的工作任务

atrm [任务编号]                      :删除[任务编号]的at任务

七、磁盘分区、挂载

1.Linux分区

lsblk [-f]                                        :查看所有设备挂载情况(Linux Standards Base Look)

1) Linux硬盘分IDE硬盘和SCSI硬盘,目前基本上是SCSI硬盘
2) 对于IDE硬盘,驱动器标识符为“hdx~”,其中“hd”表明分区所在设备的类型,这里是指IDE硬盘
了。“x”为盘号(a为基本盘,b为基本从属盘,c为辅助主盘,d为辅助从属盘),”~”代表分区,前四个分区用数字1到4表示,它们是主分区或扩展分区,从5开始就是逻辑分区。例, hda3表示为第一个IDE硬盘上的第三个主分区或扩展分区,hdb2表示为第二个IDE硬盘上的第二个主分区或扩展分区。
3) 对于SCSI硬盘则标识为“sdx~",SCSI硬盘是用“sd”来表示分区所在设备的类型的,其余则和
IDE硬盘的表示方法一样。

 补充:sr0为光驱;如果有,则第二块硬盘名字为sdb

(1)fdisk /dev/sdb                                        :创建分区

 :刚创建的分区未被格式化过不会拥有唯一标识符,也就是没用。

(2)mkfs -t ext4 /dev/sdb2                        :格式化磁盘

:ext4是分区类型

(3)mount 设备名称 挂载目录                        :挂载

例:输入 mount /dev/sdb2 /newdisk        (先确保有newdisk文件)

 umount 设备名称/挂载目录                        :删除挂载(不能在所要卸载的目录下执行该命令)

:命令添加的挂载重启后就会消失,故需要设置永久挂载

(4)修改/etc/fstab 之后执行mount -a或重启生效

 注:最后的 0 0  第一个是挂载点内是否备份,第二个是否进行磁盘检查

2.磁盘情况查询

 df -h                                :查询系统整体磁盘使用情况

du [选项]                                :查询指定目录的情况 

3.磁盘情况-工作实用指令

ls -l /opt | grep "^-" | wc -l         :统计/opt文件夹下文件的个数

补充:"^-"为正则表达式,只选前面为-的(代表文件);wc 就是 wordcount  统计文件数量。

 ls -lR /opt | grep "^-" | wc -l        :统计/opt文件夹下文件个数,包括子文件夹

 tree 目录                                        :以树状图显示目录结构

补充:若没有tree,则使用 yum install tree 安装。

八、网络配置

1.原理

 2.网络环境配置(指定ip)

 vim /etc/sysconfig/network-scripts/ifcfg-ens33        :修改配置文件

BOOTPROTO = static

IPADDR = 192.168.200.130#IP地址

GATEWAY=192.168.200.2#网关

DNS1=192.168.200.2#域名解析器

将文件夹中上述文本进行覆盖,之后在vmware中修改vmnet的网关地址即可

service network restart/reboot                        :重启网络服务或重启系统生效

3.设置主机名和host映射

vim /etc/hostname                :修改主机名

(1)windows下

进入C:\Windows\System32\drivers\etc\hosts 文件指定即可

(2)linux下

vim /etc/hosts 

 主机名解析机制原理:

        查浏览器缓存,没有则查DNS解析器缓存,再没有查hosts文件,还没有查域名服务DNS进行解析,最后还是没有就报不存在

 拓展:DNS域名劫持——通过修改主机的hosts文件将映射更改到别的ip中

九、进程管理

1.进程基本介绍

(1)在执行的程序(静态)便是进程(动态)[程序是代码,进程是运行的代码,线程由进程创建,是进程的实体]

(2)每个进程可能以两种方式存在——>前台(用户目前的屏幕上可以进行操作)与后台(实际在操作但屏幕上无法看到的进程)。

2.ps指令

(1)语法

        ps -a:        显示当前终端执行的所有进程信息

        ps -u:        以用户的格式显示进程信息

        ps -x:        显示后台进程运行的参数                ​​​

        ps -e:        显示所有进程

        ps -f:        全格式

(2)实例

:占用大小单位为KB)

         ps -aux|grep sshd:        只显示sshd相关服务

        ps -ef

 3.终止进程

(1)语法

        kill [-9]进程号:        通过进程号[强制]终止进程

        killall 进程名:        通过进程名终止进程(会连带终止由其产生的子进程

(2)实例

4.进程树

(1)语法

        pstree [-p]:        显示进程[的pid]

        pstree [-u]:        显示进程[的所属用户]

(2)实例

 5.服务管理

(1)语法

service 服务名 [start | stop | restart | reload | status ]        :将服务启动|停止|重启|重载|显示状态注:适用于centOS7之前的linux系统

chkconfig --list        :查看服务

chkconfig --level 级别数 服务名 on/off        :把服务在x运行级别打开/关闭自启动

systemctl set-default [multi-user.target | graphical.target]        :查看当前运行级别(切换到多角色|图形化级别)

systemctl [start | stop | restart | reload | status]        : 将服务启动|停止|重启|重载|显示状态

注:适用于centOS7之后的linux系统,这里的关闭和启动等设置不是永久生效的

systemctl [enable|disable] 服务名        :设置服务[开|关机]启动

注:永久生效指令

systemctl is-enabled 服务名        :查询服务是否是自启动的

firewall-cmd --permanent --[add | remove]-port=端口号/协议        :[打开|关闭]端口

firewall-cmd --reload        :重新载入

firewall-cmd --query-port=端口/协议        :查询端口是否开放

(2)实例

在 /etc/init.d 中可以查看service管理的服务

注:适用于centOS7之前的linux系统

输入setup可以展示服务(带*的是开机自启动服务,tab键返回上一级选项)

 在 /usr/lib/systemd/system 中查看service管理的服务

注:适用于centOS7之前的linux系统

注:服务后加d,例如mysqld,firewalld是守护进程的意思

查看防火墙运行状态

 6.动态监控

(1)语法

top [-d | -i | -p ]        :top命令每x秒执行一次(默认3秒)[不显示任何限制或僵死进程 | 通过id来监控某个进程的状态]

 注:在上图的状态页面中还可以进行交互操作:

P        以cpu使用功率排序

M        以内存使用率排序

u        再输入用户名,进入用户监控状态

k        再输入进程pid,再输入9强制清除

7.监控网络状态

(1)指令

netstat [-an | -p]        :[按一定顺序排列输出 | 显示哪个进程再调用]查看协议端口

十、RPM与YUM

1.RPM

RPM,用于互联网下载包的打包及安装工具,类似于windows下的setup.exe

(1)指令

rpm -qa:        查询所有安装的rpm软件包

rpm -q 软件包名字:        查询软件包是否安装

rpm -qi 软件包名字:        查询软件包信息

rpm -qf 文件全路径名:        查询文件所归属的软件包

rpm -ql  软件包名字:        查询软件包内文件

rpm -e rpm包的名称:        卸载rpm包

rpm -ivh RPM包全路径名称:        安装rpm包(i:install   v:verbose   h:hash)

 注:i686、i386表示32位系统,noarch表示通用

2.YUM

从指定服务器自动下载RPM包并安装

(1)指令

yum list:        查询yum服务器是否有需要安装的软件,并安装所有依赖包

yum install xxx:        下载安装xxx

十一、备份与恢复

先查看是否装有restore和dump指令

1.安装

yum -y install dump

yum -y install restore

2.备份原理

层级备份(差异备份(增量备份))

先进行完整备份之后,备份原文件产生的新文件并增加一点层级。当层级达到一定等级后再对所有文件进行一次完整备份,轮替循环。

3.dump语法

(1)针对ext4文件系统

(2)针对xfs文件系统

[root@study ~] xfsdump [-L Slabel] [-M M_label] [-l] [-f 备份文件] 待备份数据
[root@study ~] xfsdump -I
选项与参数:
-L : xfsdump会记录每次备份的session标头,这里可以填写针对此文件系统的简易说明
-M : xfsdump可记录存储媒介的标头,这里可以填写此媒介的简易说明
-l : 是L的小写,指定等级,有0~9共10个等级(默认为0,即完整备份)
-f : 类似tar,后接产生的文件,也可接如 /dev/st0 设备文件名或其他一般文件的文件名等
-I : 从/tar/lib/cfsdump/inventory列出目前备份的信息状态

 4.实例

(1)dump -0uj -f /opt/boot.bak.bz2 /boot

注:适用于ext4磁盘,当备份为一个独立的文件系统(独立的分区)时,可以使用-u,如果只是备份目录下的文件时,不能使用-u

(2)xfsdump -l 0 -L boot_all -M boot_all -f /srv/boot.dump /boot

5.restore语法

(1)ext4文件系统

(2)xfs文件系统

xfsrestore -I:看挂载点、level、session_label以及备份后的文件是什么。
xfsrestore -f 备份文件 -L S_label -s 待恢复目录
xfsrestore -f 备份文件 -i 待恢复目录

 6.实例

 (1)restore -r -f boot.bak.bz2

(2)xfsrestore -f /srv/boot.dump -L boot_all /boot

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

代码熬夜敲Q

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值