欢迎来到好人卡资源网,专注网络技术资源收集,我们不仅是网络资源的搬运工,也生产原创资源。寻找资源请留言或关注公众号:烈日下的男人

Centos从入门到精通

linux sky995 3年前 (2021-08-02) 813次浏览 0个评论

本文及资源最后更新时间 2021-08-02 by sky995

运行环境

操作系统:

软件:

一.用户管理

添加用户

useradd 用户名
useradd -d 指定目录

查询用户信息

id 用户名

删除用户

userdel 用户名
删除用户milan,但是要保留家目录,userdel milan
删除用户以及用户主目录,比如tom,userdel -r tom

查看当前登录用户

who am i

修改用户的组

usermod -g 用户组 用户名
创建一个组mojiao
把zwj放入mojiao
指令:usermod -g mojiao zwj

etc/passwd文件
用户(user)的配置文件,记录用户的各种信息
每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录shell
etc/shadow文件
口令的配置文件
每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
etc/group文件
组(group)的配置文件,记录linux包含的组的信息
每行含义:组名:口令:组标识号:组内用户列表

二.文件目录命令

cd指令

cd是change directory(改变目录)的缩写,该命令也可以写成chdir,用来改变当前目录。

cd[参数]

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

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

mkdir创建目录

mkdir 目录名
-p创建多级目录

rmdir删除目录

rmdir[选项]要删除的空目录

rmdir删除的是空目录,如果目录下有内容时无法删除的

如果删除非空目录使用rm -rf

touch创建空文件

touch 文件名

cp指令 复制

cp[选项] source dest

-r递归复制整个文件夹

mv指令 移动

mv移动文件与目录或重命名

mv 源目录与新目录相同(重命名)

mv  /temp/movefile/targetFolder(移动文件)

cat指令 查看文件内容但不能修改

cat [选项]要查看的文件

-n:显示行号

cat只能浏览文件,而不能修复文件,为了浏览方便,一般会带上 管道命令|more

cat -n /etc/profile |more [进行]

more指令

操作说明

more 要查看的文件

空格键 代表向下翻一页

enter 代表向下翻一行

q代表立即离开more,不再显示该文件内容

ctrl+f向下滚动一屏

ctrl+b返回上一屏

=输出当前行的行号

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

less指令

less指令用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支持各位显示终端。less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率

操作说明

空白键 向下翻动一页

pagedown 向下反动一页

pageup 向上翻动一页

/字串  向下搜寻【字串】的功能;n:向下查找;N:向上查找

?字串 向上搜寻【字串】的功能;n:向上查找;N向下查找

q      离开less这个程序

echo指令

echo输出内容到控制台

echo 选项

head指令

head用于显示文件的开头部分内容,默认情况下显示文件的前十行内容

head文件名 查看文件头10行内容

head -n 5 文件名 查看文件头5行内容 5可以是任意行数

tail指令

tail用于输出文件中尾部的内容,默认情况下tail指令显示文件的前10行内容

tail 文件名 查看文件尾10行内容

tail -n 5 文件名 查看文件尾5行内容,5可以是任意行数

tail -f 文件名 实时追踪该文档的所有更新

>指令和>>指令

> 输出重定向和>>追加

ls -l >文件 列表的内容写入a.txt中(覆盖写)

ls -al>>文件  列表的内容追加到文件aa.txt的末尾

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

echo “内容”>>文件

ls -l /home>/home/info.txt 如果info.txt没有,则会创建

ln 指令 软连接也称符号链接 类似于windows的快捷方式

ln -s /源文件或目录 给源文件创建一个软连接

history指令

查看已执行过历史命令,也可以执行历史指令

date指令-显示当前日期

date  显示当前时间

date+%Y 显示当前年份

date+%m 显示当前月份

date+%d 显示当前是哪一天

date "+%Y-%m-%d %H:%M:%S" 显示年月日时分秒

<font color="red" size="4">设置日期 date -s 字符串时间

cal指令-日历

cal [选项]

ls用法

ls   [选项]   [文件]

【 -f 】不排序目录内容;按它们在磁盘上存储的顺序列出。同时启 动“ -a ”选项

【 -1 】每行显示一条记录,即单列展示数据

【 -l 】长列表显示文件和目录,包括文件类型、大小、修改日期和时间、权限等信息

【 -lh 】人性化显示文件大小

【 -F 】 使用不同特殊字符归类不同的文件类型

【 -ld 】长列表格式列出某个目录的信息

【 -R 】递归地列出子目录的内容

【 -ltr 】将长列表格式按文件或目录的修改时间 倒序地 列出文件和目录

【 -ls 】将长列表格式按文件大小顺序列出文件和目录

【 -a 】显示包括隐藏文件或目录在内的所有文件和目录,包括 “.“(当前目录),“…“(父目录

【 -A 】显示包括隐藏文件或目录在内的所有文件和目录,但不列出 “.” (目前目录) 及 “…” (父目录)

【 -i 】显示文件或目录的 inode 编号,可能会用在系统维护操作时

【 -n 】显示 uid 和 gid ,代替显示所有者和用户组

三.搜索查找

find指令

find指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端。

find [搜索范围] [选项]

-name <查询方式> 按照指定的文件名查找模式查找文件

-user<用户名>查找属于指定用户名所有文件

-size<文件大小>按照指定的文件大小查找文件 +n大于 -n小于 n等于不加n也是等于 单位有k,M,G

locate指令

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

由于locate指令基于数据库进行查询,所以第一次运行前,必须使用updatedb指令创建locate数据库

which指令

我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索:

​ which 查看可执行文件的位置。
​ whereis 查看文件的位置。
​ locate 配合数据库查看文件位置。
​ find 实际搜寻硬盘查询文件名称。

which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。

1.命令格式:

which 可执行文件名称

2.命令功能:

which指令会在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。

3.命令参数:

-n 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。

-p 与-n参数相同,但此处的包括了文件的路径。

-w 指定输出时栏位的宽度。

-V 显示版本信息

grep指令和管道符号|

grep过滤查找,管道符 "|",表示将前一个命令的处理结果输出传递给后面的命令处理。

grep [选项]查找内容 源文件

-n 显示匹配行及行号。

-i 忽略字母大小写

四.解压与压缩

gzip/gunzip指令

gzip用于压缩文件,gunzip用于解压

gzip文件 压缩文件 只能将文件压缩为*.gz

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

zip/unzip指令

zip用于压缩文件,unzip用于解压,这个在项目打包发布中很有用

zip [选项] XXX.zip    压缩内容

unzip [选项]XXX.zip     解压缩文件

zip常用选项

-r:递归压缩,即压缩目录

gunzip常用选项

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

tar指令

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

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

-c 产生.tar打包文件

-v显示详细信息

-f指定压缩后的文件名

-z打包同时压缩

-x解压.tar文件

-C解压到的目录

示例:tar -zxvf /home/myhome.tar.gz -C /opt/tmp2

五.文件目录与所有者

一般为文件的创建者,谁创建了该文件,就自然的成为该文件的所有者

查看文件的所有者

ls -ahl

修改文件所有者

chown 用户名 文件名

-R递归修改

六.组

组的创建

基本指令

groupadd 组名

文件/目录所在组

当某个用户创建了一个文件后,这个文件的所在组就是该用户所在的组

查看文件或目录所在组

ls -ahl 文件/目录名

修改文件所在组

chgrp 新组名 文件名

-R 递归修改

其他组

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

改变用户所在组

在添加用户时,可以指定将该用户添加到那个组中,同样的用root的管理权限可以改变某个用户所在的组

1.usermod -g 新组名 用户名

2.usermod -d 目录名 用户名 改变该用户登录的初始目录 用户需要有到新目录的权限

七.权限

基本介绍

ls -l中显示的内容如下:

-rw-r--r--. 1 root root     0 6月   1 17:39 pig.txt

0-9位说明

1.第0位确定文件类型(d,-,l,c,b)

l是链接,相当于windows的快捷方式

d是目录,相当于windows的文件夹

c是字符设备文件,鼠标,键盘

b是块设备,比如硬盘

2.第1-3位确定所有者(该文件的所有者)拥有该文件的权限 --User

3.第4-6位确定所属组(同用户组的)拥有该文件的权限,--Group

4.第7-9位确定其他用户拥有该文件的权限 --Other

修改权限

通过chmod指令,可以修改文件或者目录的权限

第一种方式:+、-、=变更权限

u:所有者 g:所有组 o:其他人 a:所有人(u、g、o的总和)

1)chmod u=rwx,g=rx,o=x 文件/目录名

2)chmod o+w 文件/目录名(给当前文件的其他用户单独添加写权限)

3)chmod a-x 文件/目录名(给当前文件的所有用户删除执行权限)

第二种方式:通过数字变更权限

r=4,w=2,x=1   rwx=4+2+1=7

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

修改文件所有者

chown 新所有者 文件/目录 改变所有者

chown 新所有者:新组 文件/目录 改变所有者和所在组

-R 如果是目录,则使其下所有子文件或目录递归生效

八.定时任务调度

crontab 进行定时任务的设置

是指系统在某个时间执行的特定的命令或程序

crontab [选项]

-e 编辑crontab定时任务

-l 查询crontab任务

-r删除当前用户所有的crontab

参数细节说明

Centos从入门到精通

如*/1ls -l /etc/ > /tmp/to.txt 意思说每小时的每分钟执行ls -l /etc/ > /tmp/to.txt

特殊符号的说明

Centos从入门到精通

at定时任务

Centos从入门到精通

ps -ef查看当前运行的所有进程

ps -ef |grep atd 检查atd是否在运行

at命令选项

Centos从入门到精通

Ctrl+D 结束at命令的输入,输入两次才能退出

九.磁盘分区机制

查看所有设备挂载情况

虚拟机添加硬盘步骤1

lsblk或者lsblk -f

虚拟机添加硬盘步骤2

分区命令 fdisk  /dev/sdb

开始对/sdb分区

m  显示命令列表

p   显示磁盘分区 同fdisk -l

n   新增分区

d   删除分区

w  写入并退出

说明:开始分区后输入n,新增分区,然后选择p,分区类型为主分区。两次回车默认剩余全部空间。最后输入w写入分区并退出,若不保存退出输入q

虚拟机添加硬盘步骤3

格式化磁盘

分区命令:mkfs -t ext4  /dev/sdb1

其中ext4是分区类型

虚拟机添加硬盘步骤4

挂载:将一个分区与一个目录联系起来

mount 设备名称 挂载目录

例如:mount  /dev/sdb1 /newdisk

卸载 umount 设备名称或者挂载目录

例如:umount  /dev/sdb1或者umount  /newdisk

虚拟机添加硬盘步骤5

永久挂载:通过修改/etc/fstab实现挂载

添加完成后 执行mount -a 即刻生效

磁盘整体使用情况查询

df -h

查询指定目录的磁盘使用情况

du -h /目录

查询指定目录的磁盘占用情况,默认为当前目录

-s 指定目录占用大小汇总

-h 带计量单位

-a 含文件

--max-depth=1 子目录深度

-c 列出明细的同时,增加汇总值

Centos从入门到精通

十.网络配置

查看网络ip和网关

  • 查看windows系统中的VMnet8网络配置(ipconfig指令)

Centos从入门到精通

  • 查看linux的网络配置(ifconfig指令)

Centos从入门到精通

  • 使用ping指令来判断网络连通性

Centos从入门到精通

linux网络环境配置

  • 第一种方式自动获取ip地址以及dns地址(DHCP)
  • 第二种方法(指定ip)说明:直接修改配置文件来指定ip,并可以连接到外网(程序员推荐)编辑

    vi /etc/sysconfig/network-scripts/ifcfg-ens33 将ip地址配置成静态的,

    比如ip地址为192.168.200.130

    ifcfg-ens33 文件说明

    [root@localhost network-scripts]# cat ifcfg-ens33
    TYPE="Ethernet"        #网卡类型(通常是Ethemet以太网)
    PROXY_METHOD="none"    #代理方式:为关闭状态
    BROWSER_ONLY="no"    #只是浏览器:否
    BOOTPROTO="static"    #网卡的引导协议【static:静态IP  dhcp:动态IP   none:不指定,不指定容易出现各种各样的网络受限】
    DEFROUTE="yes"        #默认路由
    IPV4_FAILURE_FATAL="no"        #是否开启IPV4致命错误检测
    IPV6INIT="yes"        #IPV6是否自动初始化:是(现在还未用到IPV6,不会有任何影响)
    IPV6_AUTOCONF="yes"    #IPV6是否自动配置:是(现在还未用到IPV6,不会有任何影响)
    IPV6_DEFROUTE="yes"    #IPV6是否可以为默认路由:是(现在还未用到IPV6,不会有任何影响)
    IPV6_FAILURE_FATAL="no"        #是否开启IPV6致命错误检测
    IPV6_ADDR_GEN_MODE="stable-privacy"    #IPV6地址生成模型
    NAME="ens33"        #网卡物理设备名称
    UUID="ab60d501-535b-49f5-a76b-3336a4120f64"#通用唯一识别码,每一个网卡都会有,不能重复,否则两台linux机器只有一台可上网
    DEVICE="ens33"        #网卡设备名称,必须和‘NAME’值一样
    ONBOOT="yes"        #是否开机启动,要想网卡开机就启动或通过 `systemctl restart network`控制网卡,必须设置为 `yes`
    IPADDR=192.168.137.129        # 本机IP
    NETMASK=255.255.255.0        #子网掩码
    GATEWAY=192.168.137.2        #默认网关
    DNS1=8.8.8.8#
    DNS2=8.8.8.5#
    ZONE=public#
    [root@localhost network-scripts]# service network restart    #重启网卡
    Restarting network (via systemctl):                        [  确定  ]
    [root@localhost network-scripts]# 

设置主机名和hosts映射

设置主机名

  • 为了方便记忆,可以给linux系统设置主机名,也可以根据需要修改主机名
  • 指令hostname 查看主机名
  • 修改文件在 /etc/hostname指定
  • 修改后重启生效

设置hosts映射

作用:通过主机名找到(比如ping)某个linux系统

  • Windows在C:\Windows\System32\driver\etc\hosts文件指定即可

    案例:192.168.200.130 admin-pc

  • Linux在/etc/hosts文件指定

    案例:192.168.200.1 admin-pc

主机名解析过程分析(Hosts、DNS)

  • hosts是什么一个文本文件,用来记录IP和HOSTNAME(主机名)的映射关系
  • DNS
    • DNS,就是Domain Name System的缩写,翻译过来就是域名系统
    • 是互联网上作为域名和IP地址相互映射的一个分布式数据库

十一.进程管理

  • 在Linux中,每个执行的程序都称为一个进程。每一个进程都分配一个ID号(pid,进程号)
  • 每个进程都可以以两种方式存在,前台和后台,所谓前台进程就是用户目前屏幕上可以进行操作的,后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台

    方式执行

  • 一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中,直到关机才结束

PS命令 显示系统执行的进程

基本介绍

ps命令是用来查看目前系统中,有哪些正在执行,以及它们执行的状况,可以不加任何参数

ps -a 显示当前终端的所有进程信息
ps -u 以用户的格式显示进程信息
ps -x 显示后台进程运行的参数

ps详解

  • 指令:ps -aux|grep sshd,比如我看看有没有sshd服务
  • 指令说明
    • System V展示风格
    • USER 用户名称
    • PID 进程号
    • %CPU进程占用CPU的百分比
    • %MEM 进程占用物理内存的百分比
    • VSZ 进程占用的虚拟内存大小(单位:KB)
    • RSS 进程占用的物理内存大小(单位:KB)
    • TT 终端名称,缩写
    • STAT 进程状态,其中S-睡眠,s-表示该进程是会话的先导进程,N-表示进程拥有比普通优先级更低的优先级,R-正在运行,D-短期等待,Z-僵死进程,T-被跟踪或者被停止
    • STARTED 进程的启动时间
    • TIME CPU时间,即进程使用CPU的总时间
    • COMMAND 启动进程所用的命令和参数,如果过长会被截断显示

Centos从入门到精通


好人卡资源网 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Centos从入门到精通
喜欢 (1)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址