centos系统管理,centos系统管理与运维实战pdf

第三方分享代码
hacker 2年前 (2022-09-13) 教育 113 3

介绍:

《CentOS7系统管理与运维实战》epub下载在线阅读全文,求百度网盘云资源

《CentOS7系统管理与运维实战》(王亚飞王刚)电子书网盘下载免费在线阅读

链接:

提取码:xqpw  

书名:CentOS7系统管理与运维实战

作者: 王亚飞 / 王刚

出版社: 清华大学出版社

出版年: 2016-2-1

页数: 426

内容简介

CentOS7系统管理与运维实战从实际应用出发,以 CentOS 7作为操作系统基础,介绍了目前企业中常用的软件平台架设和管理方法。通过运维的视角,介绍了运维的基础知识,软件平台的常见搭建思路。

作者简介

王亚,男,汉族,1964年2月出生,山西汾阳人,1981年9月参加工作,1982年12月加入中国共产党,中央党校大学学历。

现任山西省农村信用社联合社党委书记。

centos7 常用命令--查看当前用户的4种方法

作为系统管理员,你可能经常会(在某个时候)需要查看系统中有哪些用户正在活动。有些时候,你甚至需要知道他(她)们正在做什么。本文为我们总结了4种查看系统用户信息(通过编号(ID))的方法。

1. 使用w命令查看登录用户正在使用的进程信息

w命令用于显示已经登录系统的用户的名称,以及他们正在做的事。该命令所使用的信息来源于/var/run/utmp文件。w命令输出的信息包括:

用户名称

用户的机器名称或tty号

远程主机地址

用户登录系统的时间

空闲时间(作用不大)

附加到tty(终端)的进程所用的时间(JCPU时间)

当前进程所用时间(PCPU时间)

用户当前正在使用的命令

w命令还可以使用以下选项

-h忽略头文件信息

-u显示结果的加载时间

-s不显示JCPU, PCPU, 登录时间

$ w

23:04:27 up 29 days, 7:51, 3 users, load average: 0.04, 0.06, 0.02

USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT

ramesh pts/0 dev-db-server 22:57 8.00s 0.05s 0.01s sshd: ramesh [priv]

jason pts/1 dev-db-server 23:01 2:53 0.01s 0.01s -bash

john pts/2 dev-db-server 23:04 0.00s 0.00s 0.00s w

$ w -h

ramesh pts/0 dev-db-server 22:57 17:43 2.52s 0.01s sshd: ramesh [priv]

jason pts/1 dev-db-server 23:01 20:28 0.01s 0.01s -bash

john pts/2 dev-db-server 23:04 0.00s 0.03s 0.00s w -h

$ w -u

23:22:06 up 29 days, 8:08, 3 users, load average: 0.00, 0.00, 0.00

USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT

ramesh pts/0 dev-db-server 22:57 17:47 2.52s 2.49s top

jason pts/1 dev-db-server 23:01 20:32 0.01s 0.01s -bash

john pts/2 dev-db-server 23:04 0.00s 0.03s 0.00s w -u

$ w -s

23:22:10 up 29 days, 8:08, 3 users, load average: 0.00, 0.00, 0.00

USER TTY FROM IDLE WHAT

ramesh pts/0 dev-db-server 17:51 sshd: ramesh [priv]

jason pts/1 dev-db-server 20:36 -bash

john pts/2 dev-db-server 1.00s w -s

2.使用who命令查看(登录)用户名称及所启动的进程

who命令用于列举出当前已登录系统的用户名称。其输出为:用户名、tty号、时间日期、主机地址。

$ who

ramesh pts/0 2009-03-28 22:57 (dev-db-server)

jason pts/1 2009-03-28 23:01 (dev-db-server)

john pts/2 2009-03-28 23:04 (dev-db-server)

如果只希望列出用户,可以使用如下语句:

$ **who | cut -d' ' -f1 | sort | uniq

**john

jason

ramesh

补充 :users命令,可用于打印输出登录服务器的用户名称。该命令除了有help和version选项外,再没有其他选项。如果某用户使用了多个终端,则相应的会显示多个重复的用户名。

$ users

john

jason

ramesh

**3. **使用whoami命令查看你所使用的登录名称

whoami命令用于显示登入的用户名。

$ whoami

john

whoami命令的执行效果和id -un的效果完全一样,例如:

$ id -un

john

whoami命令能显示当前登入的用户名称,以及当前所使用的tty信息。该命令的输出结果包括如下内容:用户名、tty名、当前时间日期,同时还包括用户登录系统所使用的链接地址。

$ who am i

john pts/2 2009-03-28 23:04 (dev-db-server)

$ who mom likes

john pts/2 2009-03-28 23:04 (dev-db-server) Warning:

Don't try " who mom hates " command.

当然,如果你使用su命令改变用户,则该命令(whoami)所显示的结果将随之改变。

4. 随时查看系统的历史信息(曾经使用过系统的用户信息)

last命令可用于显示特定用户登录系统的历史记录。如果没有指定任何参数,则显示所有用户的历史信息。在默认情况下,这些信息(所显示的信息)将来源于/var/log/wtmp文件。该命令的输出结果包含以下几列信息:

用户名称

tty设备号

历史登录时间日期

登出时间日期

总工作时间

$ last jason

jason pts/0 dev-db-server Fri Mar 27 22:57 still logged in

jason pts/0 dev-db-server Fri Mar 27 22:09 - 22:54 (00:45)

jason pts/0 dev-db-server Wed Mar 25 19:58 - 22:26 (02:28)

jason pts/1 dev-db-server Mon Mar 16 20:10 - 21:44 (01:33)

jason pts/0 192.168.201.11 Fri Mar 13 08:35 - 16:46 (08:11)

jason pts/1 192.168.201.12 Thu Mar 12 09:03 - 09:19 (00:15)

jason pts/0 dev-db-server Wed Mar 11 20:11 - 20:50 (00:39

转自:

centos磁盘与文件系统管理

Linux的标准文件系统为Ext2。是一种索引式文件系统。

文件系统一开始就将inode与block规划好了,除非重新格式化(或者利用resize2fs 等指令变更文件系统大小),否则 inode 与 block 固定后就不再变动。

Ext2 文件系统在格式化的时候分为多个区块群组 (block group) 的,每个区块群组都有独立的inode/block/superblock系统。每一个区块群组(block group)的六个主要内容:

inode table 与 data block称为 数据存放区域 ,至于其他例如 superblock、 block bitmap 与 inode bitmap 等区段就被称为 metadata (中介资料) 。

新建文件的过程:

数据的不一致 (Inconsistent) 状态 :在修改过的块写回之前,系统崩溃,甚至导致metadata 的内容与实际数据存放区产生不一致。 解决办法 :

为了避免CPU等待磁盘I/O,Linux使用 异步处理 (asynchronously)的方式。所谓的异步处理是这样的:磁盘数据在内存中如果没有修改过则设置为干净(clean)的。否则设定为脏的(Dirty)。但不立即写入到磁盘中! 系统会不定时的将内存中设定为Dirty的数据写回磁盘,以保持磁盘与内存数据的一致性。 也可以利sync 指令来手动强迫写入磁盘。

挂载点一定是目录,该目录为进入该文件系统的入口。 文件系统必须要挂载到目录树的某个目录后,才能够使用该文件系统。

想要知道你的Linux支持的文件系统有哪些,可以察看 /lib/modules/$(uname -r)/kernel/fs 这个目录;想要知道系统目前已加载到内存中支持的文件系统可以查看 /proc/filesystems 这个文件。

EXT系列文件系统的 缺点 :支持度最广,但格式化超慢, 原因 是预先规划出所有的inode/block/metadata等数据,随着磁盘容量越来越大,格式化越来越费时间。

xfs 文件系统 优点 :较适合大容量磁盘与巨型文件(如虚拟磁盘)。

xfs文件系统在资料的分布上,主要规划为三个部份,一个数据 区 (data section)、一个文件系统活动登录区 (log section)以及一个实时运作区 (realtime section)。 这三个区域的数据内容如下:

windows使用盘符来处理不同的文件系统,所谓不需要将不同的文件系统整合,而大多数UNIX操作系统都使用虚拟文件系统概念尝试将多种文件系统统一成一个有序的框架。

关键思想* :抽象出所有文件系统的共有部分,并且将这部分代码放在单独的一层,该层调用底层的实际文件系统来具体管理数据。

VFS有对用户进程的上层接口(POSIX接口),对实际文件系统的下层接口。只要实际文件系统提供VFS所需的功能,VFS就不需要知道或者关心数据具体存放在什么地方或者底层实际文件系统是什么的样子。

实际文件系统在使用前必须先注册,即提供一个包含VFS所需函数的地址的列表。

设计实际文件系统时只需要先获得VFS期待的功能,然后再实现这些功能即可,如果文件系统已经存在,则只需提供VFS所需功能即可。

硬链接 :多个文件名映射到同一文件的inode。hard link只是在某个目录的data block中新增一个文件名链接到某inode号码的关联记录。特点:

软链接(符号链接) :建立一个独立的文件,该文件的block记录的目标文件的路径。类似于windows的快捷方式。特点:

目录的链接计数 :新建一个子目录时,该子目录的链接计数为2,而当前目录链接计数加1,因为自目录中有.和..两个目录。

命令 :dumpe2fs [ -bfhixV ] [ -o superblock=superblock ] [ -o blocksize=blocksize ] device

描述 :显示ext系列文件系统的超级块和区块群组信息。

命令 :xfs_info 挂载点 | 装置文件名

描述 :显示xfs文件系统的超级块和区块群组信息。

命令 :df [-ahikHTm] [ 目录或文件名]

描述 :可以查看文件系统的整体磁盘使用情况。

命令 :du [-ahskm] 文件或目录

描述 :评估文件系统的磁盘使用量(常用在推估目录所占容量)。

命令 :ln [-sf] 来源文件 目标文件

描述 :建立硬链接和软链接。

命令 :link 来源文件 目标文件

描述 :建立硬链接

命令 :unlink 目标文件

描述 :删除硬链接

新增磁盘的步骤:

命令 :lsblk [-dfimpt ] [device]

描述 :列出系统上的所有磁盘列表。

命令 :blkid

描述 :可以查看块设备(包括交换分区)的文件系统类型、LABEL、UUID、挂载目录等信息。

命令 :parted device_name print

描述 :列出磁盘的分区表类型与分区信息。

命令 :parted [装 置] [ 指令 [ 参数 ]]

描述 :对GPT或者MBR磁盘建立分区

命令 :gdisk 装置名

描述 :对GPT格式磁盘分区。

命令 :fdisk 装置名

描述 :对MBR格式磁盘分区。

命令 :partprobe [-s]

描述 :更新分区表信息。

命令 :mkfs [-t type] [fs-options] device [size]

描述 :根据指定的文件系统类型调用对应的格式化工具格式化磁盘。

命令 :mkfs.xfs [-b bsize] [-d parms] [-i parms] [-l parms] [-L label] [-f] [-r parms] 装置名

描述 :将磁盘进行xfs格式化

命令 :mkfs.ext4 [-b size] [-L label] 装置名

描述 :将磁盘进行ext4格式化

命令 :xfs_repair [-fnd] 装置名

描述 :检验与修复xfs文件系统。修复时该文件系统不能被挂载!

命令 :fsck [-lsAVRTMNP] [-r [fd]] [-C [fd]] [-t fstype] [filesystem…] [–] [fs-specific-options]

描述 :根据指定的type调用相关工具来检验与修复文件系统。

命令 :fsck.ext4 [-pf] [-b superblock] 装置名

描述 :检验与修复ext4文件系统.

注意:

命令 :mount [-l|-h|-V]

mount -a [-fFnrsvw] [-t fstype] [-O optlist]

mount [-fnrsvw] [-o options] device|dir

mount [-fnrsvw] [-t fstype] [-o options] device dir

描述 :挂载文件系统。

基本上,不需要加上-t这个选项,系统会自动的分析最恰当的文件系统来尝试挂载你需要的装置!由于文件系统几乎都有 superblock , Linux 可以透过分析superblock 搭配Linux自己的驱动程序去测试挂载,如果成功的套和了,就立刻自动的使用该类型的文件系统挂载起来啊!那么系统有没有指定哪些类型的 filesystem 才需要进行上述的挂载测试呢?主要是参考底下这两个文件:

那怎么知道Linux有没有相关文件系统类型的驱动程序呢?Linux支持的文件系统之驱动程序都写在 /lib/modules/$(uname -r)/kernel/fs/ 目录找中,例如 ext4 的驱动程序就写在 /lib/modules/$(uname -r)/kernel/fs/ext4/ 这个目录下啦!

光驱一挂载之后就无法退出光盘片了!除非你将他卸除才能够退出!

命令 :umount [-fn] 装置文件名或挂载点

描述 :卸除文件系统或装置。

命令 :mknod 装置文件名 [bcp] [Major] [Minor]

描述 :设置装置的主次设备代码。

命令 :xfs_admin [-lu] [-L label] [-U uuid] 装置文件名

描述 :修改XFS文件系统的 UUID 与 Label name

命令 :tune2fs [-l] [-L Label] [-U uuid] 装置文件名

描述 :修改ext4文件系统的 UUID 与 Label name

在开机的时候就将文件系统挂载好,可以通过修改 /etc/fstab ,mount指令就是将所有的选项与参数写入到这个文件中。除此之外, /etc/fstab 还加入了 dump 这个备份用指令的支持! /etc/fstab 是开机时的配置文件,实际 filesystem 的挂载是记录到 /etc/mtab 与 /proc/mounts 。但当 /etc/fstab 数据错误,导致无法开机而进入单人维护模式时,由于根目录是只读状态,无法修改 /etc/fstab ,也无法更新 /etc/mtab ,只能使用 mount -n -o remount,rw / 来重新挂载根目录。

命令 :mkswap [options] device [size]

描述 :用于在一个文件或者设备上建立交换分区。

命令 :swapon [options] [specialfile…]

描述 :用于在一个文件或者设备上建立交换分区。

命令 :swapoff [-va] [specialfile…]

描述 :用于在一个文件或者设备上建立交换分区。

命令 :free [options]

描述 :显示当前系统内存使用情况。

关注点赞不迷路[可怜]

CentOS中管理大于2T的磁盘分区

常见磁盘分区存储形式类型有两种: MBR(MSDOS) 和 GPT 。

MBR(Master Boot Record,主引导记录)。

MBR是存在于驱动器最开始部分的一个特殊的启动扇区,一般叫它0扇区。它由446B的启动加载器(Windows和Linux的不同),64B的分区表,和2B用来存放区域的有效性标识55AA,共512B。

GPT(GUID Partition Table),这是最近几年逐渐流行起来的一种分区形式,如果要将使用GPT分区格式的磁盘作为系统盘,需要UEFI BIOS的支持,它才可以引导系统启动。UEFI一种称为Unified Extensible Firmware Interface(统一的可扩展的固件接口,它最终是为了取代BIOS,目前市面上的BIOS大多已支持UEFI。GPT也是为了最终取代MBR的。

GPT相比MBR的优点:

因为传统的MBR分区,支持的最大分区为2T,也可以一定程度上等同于磁盘大小,必定2T以上的硬盘不是非常普及。在CentOS中可以使用 fdisk 指令进行管理。详细过程不在赘述。

当CentOS中识别到有磁盘容量超过2T时,如果试图使用 fdisk 指令对其分区会有相应的警告提示,大致如下:

明确提示需要使用 parted 进行管理,如果系统中没有这一指令,使用 yum install -y parted 进行安装即可。

4K对齐

在磁盘中的扇区只有排列整齐才有利于发挥磁盘的最佳读写性能。这里的对齐即常听说的4K对齐。可以简单的理解4K对齐的作用:当在磁盘中存取小于4K的数据时,如果没有4K对齐这时候很可能需要将这份数据放到两个4K块中,会出现多次读写不同的块的情况,明显没有4K对齐只在一个块中去存取数据高效。

如果系统进行了磁盘内核参数的调整,可以使用以下公式计算出合适的磁盘第一分区的start值,单位为s,s表示扇区,如果没有调整start可以使用2048s或0%表示。end值可以使用百分比的形式,也可以使用数字加单位的形式,如50%,3T。

然后将optimal_io_size的值加上alignment_offset的值,再除以physical_block_size的值,得到这块盘分区的起始位置扇区编号。

注意 :parted指令做的磁盘设置立即生效,不需要和fdisk一样使用w才会生效。

当完成对超过2T的磁盘分区以后,可以查看系统内核( cat /proc/partition )是否已成功识别到相应分区。如果识别到了,按照常规方式对分区进行格式化,然后挂载即可使用新的磁盘分区了。

相关推荐

网友评论

  • (*)

最新评论

  • 访客 2022-09-14 00:54:14 回复

    26 (02:28) jason pts/1 dev-db-server Mon Mar 16 20:10 - 21:44 (01:33) jason pt

    1
  • 访客 2022-09-13 14:46:38 回复

    46B的启动加载器(Windows和Linux的不同),64B的分区表,和2B用来存放区域的有效性标识55AA,共512B。 GPT(GUID Partition Table),这是最近几年逐渐流行起来的一种分区形式,如果要将使用GPT分区格式的磁盘作为系

    2
  • 访客 2022-09-13 16:28:00 回复

    人,1981年9月参加工作,1982年12月加入中国共产党,中央党校大学学历。现任山西省农村信用社联合社党委书记。centos7 常用命令--查看当前用户的4种方法 作为系统管理员,你可能经常会(在某个时候)需要查看系统中有哪些用户正在活动。有些时候,你甚至需

    3