您现在的位置是:言简意该网 > 探索

【Linux入门指北】第七篇 Linux常用指令

言简意该网2024-04-27 19:07:28【探索】4人已围观

简介语法:shutdown(立即关机)(6分钟后关机,shutdown后不填默认一分钟后关机)(立即重启)语法:man 命令或配置文件(查看 ls 命令的帮助手册

【Linux入门指北】第七篇 Linux常用指令


在这里插入图片描述


语法:shutdown

(立即关机)
(6分钟后关机,shutdown后不填默认一分钟后关机)
(立即重启)

语法:man 命令或配置文件

(查看 ls 命令的北第帮助手册)
(查看 date 命令的帮助手册)

语法:help 命令

(查看 mkdir 命令的相关信息)

语法:pwd 命令

(查看当前路径)

语法:ls 目录或文件

(查看当前路径下所有文件或目录)
(查看当前路径下所有文件或目录的详细信息)
(查看当前路径下所有文件或目录,包括隐藏文件)
(查看当前路径下 index 下的详细信息)

语法:cd 目录

(切换到 /home目录下)
(切换到用户主目录)
(切换到上一次访问的目录)
(切换到当前目录的上一级)

(当前目录)
(上一级目录)

语法:mkdir 目录名

(创建一个 example 目录(一级))
(创建 example 目录,其下再创建example1目录(多级))

//-p 选项用于创建多级目录。

语法:rmdir 目录名

(删除 home 下的常用example目录)
(强制删除 home 下的 example1目录)

语法:touch 文件名

(创建example.txt空文件)

语法:cp 源文件 目标文件

(复制001.txt 文件到 guan 目录下)
(递归将 home 下的整个 guan目录拷贝到 guan1目录下)
(强制覆盖不提示)

语法:rm 文件或目录

(删除 001.txt 文件)
(强制删除 001.txt 文件,不提示)
(递归删除整个 guan 目录)
(递归删除整个 guan 目录,不提示)

语法:mv 旧文件名 新文件名、mv /源目录 /目标目录
(将 001.txt 重命名为 002.txt)
(移动 001.txt 到 test 目录下)
(重命名目录 001 为 002)
(将目录 001目录到 002 下)

语法:cat 文件
(查看文件 a.txt 的指令内容)
(查看文件 a.txt 的内容,并显示行号)
cat 指令查看文件比 vim 更安全,因为 cat 指令只能查看不能修改。

语法:more 要查看的北第文件
(查看 a.txt 文件的内容)
more 指令是一个基于 vim 编辑器的文本过滤器,可以以全屏幕的方式按页显示文本文件的内容,且有若干快捷键:

space;向下翻一页
Enter;向下翻一行
q;立即离开more,不再显示文件内容
Ctrl+F;向下滚动以一屏
Ctrl+B;返回上一屏
=;输出当前行的行号
:f;输出文件名和当前行的行号
more 指令也可以结合 cat 指令进行使用,可以让文件内容按百分比显示,使用管道指令 | more:
#cat example.txt | more (查看文件 example.txt 的内容,并以百分比显示)

语法:less 查看的文件

less 用来分屏查看文件的内容,类似 more 指令但强于 more 指令,
支持各种显示终端;less 在显示文件内容时,并不是一次将整个文件
加载后才显示,而是根据显示需要来加载内容,效率较高。
同样它也有相关快捷键:

space;向下翻动一页
pagedown;向下翻动一页
pageup;向上翻动一页
/字符串;向下搜寻字符串,n 向下,N 向上
?常用字符串;向上搜寻字符串,n 向下,N 向上
q;离开 less

语法:echo 输出内容

【输出环境变量 $PATH】
#echo “Hello World” 【输出语句“Hello World”】

语法:head 文件

#head test.txt 【查看 test.txt 文件的前 10 行内容】
#head -n 6 a.txt 【查看 a.txt 文件的前 6行内容】

语法:tail 文件

(查看 a.txt 文件的后 10 行内容)
(查看 test.txt 文件的后 10 行内容,并实时追踪文件更新)

(将文件1的内容覆盖到文件2)
(将 /home 下的文件列表写入 info.txt 中)

(将当前日历信息追加到 /home/time 文件中)
追加 >> 会将新内容添加到之前内容的末尾

语法:ln -s 源文件 软链接名

(创建一个软连接 myroot,连接到 /root 目录)
(删除软连接 myroot)

语法:history

(查看最近所有执行过的指令)
(查看最近执行过的10条指令)
(执行历史编号为6的指令)

权限的基本组成:权限、用户、指令用户组

  • 权限与用户、北第用户组
  • 用户、常用用户组、指令权限的北第概念
权限内容WindowsLinux用户概念用户用户用户组概念用户组用户组权限概念完全控制、修改、常用读取和执行、指令列出文件夹内容、北第读取、常用写入读、指令写、执行

与用户管理相关的系统文件

  • 用户信息配置文件/etc/passwd
  • 在Linux系统中,用户信息被存放在系统的/etc/passwd文件中系统的每一个合法用户对应于该文件中的一行记录。这行记录定义了该用户的属性。由于所有的用户对passwd文件均有读取的权限,因此密码信息并未保存在该文件中,而是保存在了/etc/shadow配置文件中。
  • 用户组配置文件/etc/group
    • 将用户进行分组是Linux系统对用户进行管理及控制访问权限的一种手段。一个组中可以有多个用户,一个用户也可以属于多个组。系统中所有的组信息存放于/etc/group文件,其中一行对应一个用户组的信息,每行均田4个字段构成,各个字段之间用 ":“分隔。

第一种方式变更权限

  • 修改文件权限命令
  • chmod 权限 文件名/文件夹名
  • 有两种用法,字符和数字
    • chmod ugo=rwx b.txt
    • chmod u+rwx b.txt
    • chmod g+w b.txt
    • chmod o=- b.txt

第二种方式变更权限

字符与数字的换算方法:

  • rwx=4+2+1=7

  • rw = 4 + 2 = 6

  • rx = 4 + 1 = 5

  • wx = 2 + 1 = 3

    • chmod 0 b.txt
    • chmod 000 b.txt
    • chmod 653 b.txt
    • chmod 777 b.txt

(功能描述:改变文件或者目录的所有 者)

  • 修改文件所有者命令

    • chown [选项] 权限新所有者.新用户组 要修改的文件或目录名称
    • chown命令常用的选项是-R,其功能是可以设置指定目录下的全部文件的所属关系
  • 例如:

    • chown root.root b.txt -------修改b.txt文件所属用户和所属用户组
    • chown root:root b.txt ------修改b.txt文件所属用户和所属用户组
    • chown root b.txt ------修改b.txt文件所属用户
    • chown .root b.txt ------修改b.txt文件所属用户组

(功能描述:改变文件或者目录的所属组)

(功能描述:添加新用户)
(功能描述:添加新用户到某个组)

(功能描述:切换用户,只能获得用户的执行权限,不能获得环境变量)
(功能描述:切换到用户并获得该用户的环境变量及执行权限)

(功能描述:删除用户但保存用户主目录)
(功能描述:用户和用户主目录,都删除)

(功能描述:显示自身用户名称)
(功能描述:显示登录用户的用户名以及登陆时间)



修改 /etc/sudoers 文件,找到下面一行(91 行),在 root 下面添加一行,如下所示:

或者配置成采用 sudo 命令时,不需要输入密码

修改完毕,现在可以用 guan 帐号登录,然后用命令 sudo ,即可获得 root 权限进行 操作。
usermod 修改用户
将用户加入到用户组
usermod -g 用户组 用户名

用户组管理命令
每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。

不同 Linux 系统对用户组的规定有所不同, 如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。

用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对 文件的更新。

语法:date、data -s 时间

(显示当前时间)
(显示当前年份)
(显示当前月份)
(显示当前是哪一天)
(显示年月日时分秒)
(设置系统时间为…)

语法:cal

(显示本月日历)
(显示 2022 年日历)

语法:find 范围 方式 文件

(根据文件名查找 home 下的 test.txt 文件)
(根据用户查找 home 下用户昵称为 guanguan 的文件)
(根据文件大小查找系统中大小为 250M 的文件)
(查找系统中大于 200M 的文件)

语法:locate 文件

(创建 locate 数据库,第一次使用 locate指令前必须先创建数据库)
(定位 test.txt 文件的路径)

语法:which 指令

(检索 cd 指令所在路径)

语法:grep 查找内容 源文件

(查找 example.txt 文件中 “yes” 所在行)
(查找 example.txt 文件中 “yes” 所在行)
(查找 example.txt 文件中 “yes” 所在行并显示行号)

或 (查看Linux内核版本的命令)
在这里插入图片描述

在这里插入图片描述


在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

(功能描述:显示目录下每个子目录的磁盘使用情况)

(功能描述:列出文件系统的整体磁盘使用量,检查文件系统的磁盘空间占 用情况)
在这里插入图片描述

(功能描述:查看设备挂载情况)

在这里插入图片描述

(功能描述:挂载设备)
(功能描述:卸载设备)

(功能描述:查看磁盘分区详情)
(功能描述:对新增硬盘进行分区操作)

(功能描述:查看系统中所有进程)
(功能描述:可以查看子父进程之间的关系)

(功能描述:通过进程号杀死进程)
(功能描述:通过进程名称杀死进程,也支持通配符,这 在系统因负载过大而变得很慢时很有用)


在这里插入图片描述

(功能描述:查看该进程网络信息)
(功能描述:查看网络端口号占用情况)

crond:Linux 用来周期地执行某种任务的一个守护进程

(编辑系统定时任务)
(列出系统定时任务)

语法:gzip 文件

(将 example.txt 文件压缩为 example.gz 文件)

语法:gunzip 解压文件

(将 example.txt.gz 文件压缩为example .txt 文件)

语法:zip 压缩文件或目录

(将 home 以及它的子目录压缩为example.zip )

语法:unzip xxx.zip

(将 example.zip 解压到 /tmp 目录下)

语法:tar -[选项] xxx.tar.gz(打包的内容)

其中:

z:调用gzip压缩命令进行压缩
c:打包文件
v:显示运行过程
f:指定文件名
x:代表解压

(将 b.txt 和 c.txt 压缩成 a.tar.gz)

(将 /home 下的文件夹压缩为 a.tar.gz)

(将 a.tar.gz 解压到当前目录)

(将 a.tar.gz 解压到 /tmp 目录下)


在网络网卡上安装了一个桥接协议,让这块网卡处于混杂模式,可以同时连接多个网络的做法。 桥接下,类似于把物理主机虚拟为一个交换机,所有桥接设置的虚拟机连接到这个交换机的一个接口上,物理主机也同样查在这个交换机当中,所以所有桥接下网卡与网卡都是交换模式的,相互可以访问而不干扰。


虚拟机使用VMnet8网卡与主机单独组网,主机对于虚拟机相当于路由器,VMnet8网卡通过NAT地址转换协议与物理机网卡通信

(仅与主机通信)【不常用】
虚拟机使用VMnet1网卡与主机单独组网,主机对于虚拟机相当于路由器

4.1编辑IP 配置文件
vim /etc/sysconfig/network-scripts/ifcfg-ens33
以下标红的项必须修改,有值的按照下面的值修改,没有该项的要增加
TYPE=“Ethernet” #网络类型(通常是 Ethemet)
PROXY_METHOD=“none”
BROWSER_ONLY=“no”
BOOTPROTO=“static” #IP 的配置方法[none|static|bootp|dhcp](引导 时不 使用协议|静态分配 IP|BOOTP 协议|DHCP 协议)
DEFROUTE=“yes”
IPV4_FAILURE_FATAL=“no”
IPV6INIT=“yes”
IPV6_AUTOCONF=“yes”
IPV6_DEFROUTE=“yes”
IPV6_FAILURE_FATAL=“no”
IPV6_ADDR_GEN_MODE=“stable-privacy”
NAME=“ens33”
UUID=“e83804c1-3257-4584-81bb-660665ac22f6” #随机 id
DEVICE=“ens33” #接口名(设备,网卡)
ONBOOT=“yes” #系统启动的时候网络接口是否有效(yes/no)
#IP 地址
IPADDR=192.168.1.100
#网关
GATEWAY=192.168.1.2
#域名解析器
DNS1=192.168.1.2
4.2编辑完后,按键盘 esc ,然后输入 :wq 回车即可
4.3执行 service network restart 重启网络
修改 IP 地址后可能会遇到的问题:

物理机能 ping 通虚拟机,但是虚拟机 ping 不通物理机,一般都是因为物理机的 防火墙问题,把防火墙关闭就行
虚拟机能 Ping 通物理机,但是虚拟机 Ping 不通外网,一般都是因为 DNS 的设置有问题
虚拟机 Ping www.baidu.com 显示域名未知等信息,一般查看 GATEWAY 和 DNS 设 置是否正确
如果以上全部设置完还是不行,需要关闭 NetworkManager 服务
关闭
禁用
如果检查发现 有问题 需要检查

修改主机名称
hostname 后跟要修改的名称,如

(修改主机名为guan)

查看当前服务器主机名称

如果感觉此主机名不合适,我们可以进行修改。通过编辑/etc/hostname 文件

(修改完成后重启生效)

修改 hosts 映射配置文件


192.168.200.168 guan

通常在工作过程中,公司中使用的真实服务器或者是云服务器,都不允许除运维人员之外的员工直接接触,因此就需要通过远程登录的方式来操作。

所以,远程登录工具就是必不可缺的,目前,比较主流的有 , SSH Secure Shell, SecureCRT,FinalShell 等,可以根据自己的习惯自行选择,而远程传输文件有。【我个人装了Xshell7和Xftp7】

  • SSH概念
    Secure Shell(SSH) 是由 IETF(The Internet Engineering Task Force) 制定的建立在应用层基础上的安全网络协议。它是专为远程登录会话(甚至可以用Windows远程登录Linux服务器进行文件互传)和其他网络服务提供安全性的协议,可有效弥补网络中的漏洞。通过SSH,可以把所有传输的数据进行加密,也能够防止DNS欺骗和IP欺骗。还有一个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度。目前已经成为Linux系统的标准配置。

  • 配置要点

    • ssh服务分客户端和服务器端
    • CentOS8的服务器端: openssh-server
    • 配置文件位置: /etc/ssh/sshd_config
    • 需设置防火墙相关参数

关于服务器的相关操作

查看状态systemctl status [服务名称]查看启动systemctl start [服务名称]停止服务systemct] stop [服务名称]重启服务systemctl restart [服务名称]

计算机中,一个正在执行的程序或命令,被叫做“进程”(process)
启动之后一直存在、常驻内存的进程,一般被称作“服务”(service)

7.1查看服务开机启动状态

7.2关掉指定服务的自动启动

7.3开启指定服务的自动启动

7.4查看服务的方法:


(多用户有网,无图形界面)
(多用户有网,有图形界面)

(这里 TARGET 取 multi-user 或者 graphical)

查看防火墙状态

临时关闭防火墙

查看防火墙开机启动状态

设置开机时关闭防火墙

  • RPM(RedHat Package Manager),RedHat软件包管理工具,是Linux这系列操作系统里面的打包安装工具。
  • 常用于软件包的安装、查询、更新升级、校验、卸载以及生成.rpm格式的软件包等操作。
  • RPM软件包工具只能管理后缀是.rpm的软件包。
  • 例如: mysq180-community-release-el8-1.noarch.rpm

1.1RPM包的名称格式

Apache-1.3.23-11.i386.rpm - “apache” 软件名称

“1.3.23-11”软件的版本号,主版本和此版本
“i386”是软件所运行的硬件平台,Intel 32位处理器的统称
“rpm”文件扩展名,代表RPM包

1.2RPM 查询命令(rpm -qa)

查询所安装的所有 rpm 软件包rpm -qa
由于软件包比较多,一般都会采取过滤rpm -qa | grep rpm软件包

1.3RPM 卸载命令(rpm -e)


-e:卸载软件包
–nodeeps:卸载软件时,不检查依赖。这样的话,那些使用该软件包的软件在此之后可能就不能正常工作了)

1.4RPM 安装命令(rpm -ivh)

-i:install,安装
-v:–verbose,显示详细信息
-h:–hash,进度条
–nodeps:安装前不检查依赖

YUM(全称为 Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 CentOS 中的 Shell 前端软件包管理器,基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包 并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

我的理解:yum类似maven,可以从镜像网站下载应用程序,并直接安装。

2.1yum语法

2.2选项说明

2.3参数说明

在这里插入图片描述

2.4修改网络 YUM 源

默认的系统 YUM 源,需要连接国外 apache 网站,网速比较慢,可以修改关联的网络 YUM 源为国内镜像的网站,比如网易 163,aliyun 等。

  • 在线仓库——YUM源
  • CentOS 8默认YUM源定义文件存放在/etc/yum.repos.d目录下,用户可以自行定义任意可以使用的YUM源
选项功能描述[ ]填写YUM源唯一的ID号,可以为任意字符串name指定YUM源名称,可以为任意字符串baseurl指定YUM源的URL地址(可以是HTTP、FTP或本地路径),可以指定多项enabled是否激活该YUM源(0代表禁用,1代表激活,默认为激活)gpgcheck安装软件时是否检查签名(0代表禁用, 1代表激活)gpąkey如果检查软件包的签名,该语句定义检查签名的密钥文件

安装 wget, wget 用来从指定的 URL 下载文件
yum install wget
在/etc/yum.repos.d/目录下,备份默认的 repos 文件
cp CentOS-Base.repo CentOS-Base.repo.bak
下载网易 163 或者是 aliyun 的 repos 文件,任选其一
wget http://mirrors.aliyun.com/repo/Centos-7.repo //阿里云
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo //网易 163
使用下载好的 repos 文件替换默认的 repos 文件
例如:用 CentOS7-Base-163.repo 替换 CentOS-Base.repo
mv CentOS7-Base-163.repo CentOS-Base.repo
清理旧缓存数据,缓存新数据


  • RHEL 8和CentOS采用DNF作为主要的软件包管理工具
  • DNF和YUM两者的主要差异如下

DNF软件管理器 RHEL 8和CentOS采用DNF作为主要的软件包管理工具DNF和YUM两者的主要差异如下YUM (Yellowdog Updater, Modified)API 有完整的文档API 没有完整的文档2DNF目前在Fedora, RHEL 8, CentOS 8, OEL 8和Mageia6/7 中使用YUM 目前在 RHEL 6/7, CentOS 6/7, OEL 6/7 中使用3DNF更新:在DNF更新过程中,如果包中包含不相关的依赖,则不会更新 手机尾号4978用户-u 637ed2da456eb N34QllvhUYUM 将在没有验证的情况下更新软件包4API 有良好的文档,因此很容易创建新的功能因为 API 没有正确的文档化,所以创建新功能非常困难5 DNF 在同步存储库的元数据时,使用的内存较少在同步存储库的元数据时,YUM 使用了过多的内存6 DNF 依赖关系解析快由于使用公开 API 的原因, Yum 依赖性解析变得迟钝7从内存使用量和版本库元数据的依赖性解析来看,性能都不错在很多因素的影响下,表现不佳

DNF (Dandified YUM)YUM (Yellowdog Updater, Modified)1API 有完整的文档API 没有完整的文档2DNF目前在Fedora, RHEL 8, CentOS 8, OEL 8和Mageia6/7 中使用YUM 目前在 RHEL 6/7, CentOS 6/7, OEL 6/7 中使用3DNF更新:在DNF更新过程中,如果包中包含不相关的依赖,则不会更新YUM 将在没有验证的情况下更新软件包4API 有良好的文档,因此很容易创建新的功能因为 API 没有正确的文档化,所以创建新功能非常困难5DNF 在同步存储库的元数据时,使用的内存较少在同步存储库的元数据时,YUM 使用了过多的内存6DNF 依赖关系解析快由于使用公开 API 的原因, Yum 依赖性解析变得迟钝7从内存使用量和版本库元数据的依赖性解析来看,性能都不错在很多因素的影响下,表现不佳

很赞哦!(74451)