centos图片处理?centos7图形化界面和命令行的切换

centos 查看系统有哪些用户

保留、维护和分析日志(如某个特定时期内发生过的,或正在发生的帐号事件),是Linux系统管理员最基础和最重要的任务之一。对于用户管理,检查用户的登入和登出日志(不管是失败的,还是成功的)可以让我们对任何潜在的安全隐患或未经授权使用系统的情况保持警惕。例如,工作时间之外或放假期间的来自未知IP地址或帐号的远程登录应当发出红色警报。在CentOS系统上,用户登录历史存储在以下这些文件中:/var/run/utmp(用于记录当前打开的会话)被who和w工具用来记录当前有谁登录以及他们正在做什么,而uptime用来记录系统启动时间。/var/log/wtmp(用于存储系统连接历史记录)被last工具用来记录最后登录的用户的列表。/var/log/btmp(记录失败的登录尝试)被lastb工具用来记录最后失败的登录尝试的列表。在本文中,我将介绍如何使用utmpdump,这个小程序来自sysvinit-tools包,可以用于转储二进制日志文件到文本格式的文件以便检查。此工具默认在CentOS 6和7系列上可用。utmpdump收集到的信息比先前提到过的工具的输出要更全面,这让它成为一个胜任该工作的很不错的工具。除此之外,utmpdump可以用于修改utmp或wtmp。如果你想要修复二进制日志中的任何损坏条目,它会很有用(LCTT译注:我怎么觉得这像是做坏事的前奏?)。 Utmpdump的使用及其输出说明正如我们之前提到的,这些日志文件,与我们大多数人熟悉的其它日志相比(如/var/log/messages,/var/log/cron,/var/log/maillog),是以二进制格式存储的,因而我们不能使用像less或more这样的文件命令来查看它们的内容。所以,utmpdump的出现拯救了世界。为了要显示/var/run/utmp的内容,请运行以下命令:代码如下:# utmpdump/var/run/utmp同样要显示/var/log/wtmp的内容:代码如下:# utmpdump/var/log/wtmp tail-15[code]最后,对于/var/log/btmp: [code]# utmpdump/var/log/btmp正如你所能看到的,三种情况下的输出结果是一样的,除了utmp和btmp的记录是按时间排序,而wtmp的顺序是颠倒的这个原因外(LCTT译注:此处原文有误,实际上都是按照时间顺序排列的)。每个日志行格式化成了多列,说明如下。第一个字段显示了会话识别符,而第二个字段则是PID。第三个字段可以是以下值:--(表示运行等级改变或系统重启),bw(启动守候进程),数字(表示TTY编号),或者字符和数字(表示伪终端)。第四个字段可以为空或用户名、重启或运行级别。第五个字段是主TTY或PTY(伪终端),如果此信息可获得的话。第六个字段是远程主机名(如果是本地登录,该字段为空,运行级别信息除外,它会返回内核版本)。第七个字段是远程系统的IP地址(如果是本地登录,该字段为0.0.0.0)。如果没有提供DNS解析,第六和第七字段会显示相同的信息(远程系统的IP地址)。最后一个(第八)字段指明了该记录创建的日期和时间。 Utmpdump使用样例下面提供了一些utmpdump的简单使用情况。 1、检查8月18日到9月17日之间某个特定用户(如gacanepa)的登录次数。代码如下:# utmpdump/var/log/wtmp grep gacanepa如果你需要回顾先前日期的登录信息,你可以检查/var/log下的wtmp-YYYYMMDD(或wtmp.[1...N])和btmp-YYYYMMDD(或btmp.[1...N])文件,这些是由logrotate生成的旧wtmp和btmp的归档文件。 2、统计来自IP地址192.168.0.101的登录次数。代码如下:# utmpdump/var/log/wtmp grep 192.168.0.101 3、显示失败的登录尝试。代码如下:# utmpdump/var/log/btmp在/var/log/btmp输出中,每个日志行都与一个失败的登录尝试相关(如使用不正确的密码,或者一个不存在的用户ID)。上面图片中高亮部分显示了使用不存在的用户ID登录,这警告你有人尝试猜测常用帐号名来闯入系统。这在使用tty1的情况下是个极其严重的问题,因为这意味着某人对你机器上的终端具有访问权限(该检查一下谁拿到了进入你数据中心的钥匙了,也许吧?) 4、显示每个用户会话的登入和登出信息代码如下:# utmpdump/var/log/wtmp在/var/logwtmp中,一次新的登录事件的特征是,第一个字段为‘7’,第三个字段是一个终端编号(或伪终端id),第四个字段为用户名。相关的登出事件会在第一个字段显示‘8’,第二个字段显示与登录一样的PID,而终端编号字段空白。例如,仔细观察上面图片中PID 1463的行。在 [Fri Sep 19 11:57:40 2014 ART],TTY1上显示登录提示符。在 [Fri Sep 19 12:04:21 2014 ART],用户 root登入。在 [Fri Sep 19 12:07:24 2014 ART],用户 root登出。旁注:第四个字段的LOGIN意味着出现了一次登录到第五字段指定的终端的提示。到目前为止,我介绍一些有点琐碎的例子。你可以将utmpdump和其它一些文本处理工具,如awk、sed、grep或cut组合,来产生过滤和加强的输出。例如,你可以使用以下命令来列出某个特定用户(如gacanepa)的所有登录事件,并发送输出结果到.csv文件,它可以用像LibreOffice Calc或Microsoft Excel之类的文字或工作簿应用程序打开查看。让我们只显示PID、用户名、IP地址和时间戳:代码如下:# utmpdump/var/log/wtmp grep-E"[7].*gacanepa" awk-v OFS=","'BEGIN{FS="]"};{print$2,$4,$7,$8}' sed-e's/[//g'-e's/]//g'就像上面图片中三个高亮区域描绘的那样,过滤逻辑操作是由三个管道步骤组成的。第一步用于查找由用户gacanepa触发的登录事件([7]);第二步和第三部用于选择期望的字段,移除utmpdump输出的方括号并设置输出字段分隔符为逗号。当然,如果你想要在以后打开来看,你需要重定向上面的命令输出到文件(添加“>[文件名].csv”到命令后面)。在更为复杂的例子中,如果你想要知道在特定时间内哪些用户(在/etc/passwd中列出)没有登录,你可以从/etc/passwd中提取用户名,然后运行grep命令来获取/var/log/wtmp输出中对应用户的列表。就像你看到的那样,有着无限可能。在进行总结之前,让我们简要地展示一下utmpdump的另外一种使用情况:修改utmp或wtmp。由于这些都是二进制日志文件,你不能像编辑文件一样来编辑它们。取而代之是,你可以将其内容输出成为文本格式,并修改文本输出内容,然后将修改后的内容导入回二进制日志中。如下:代码如下:# utmpdump/var/log/utmp> tmp_output<使用文本编辑器修改 tmp_output># utmpdump-r tmp_output>/var/log/utmp这在你想要移除或修复二进制日志中的任何伪造条目时很有用。下面小结一下,utmpdump从utmp、wtmp和btmp日志文件或轮循的旧归档文件来读取详细的登录事件,来补充如who,w,uptime,last,lastb之类的标准工具的不足,这也使得它成为一个很棒的工具。

在CentOS系统上查看用户登录记录的方法

保留、维护和分析日志(如某个特定时期内发生过的,或正在发生的帐号事件),是Linux系统管理员最基础和最重要的任务之一。对于用户管理,检查用户的登入和登出日志(不管是失败的,还是成功的)可以让我们对任何潜在的安全隐患或未经授权使用系统的情况保持警惕。例如,工作时间之外或放假期间的来自未知IP地址或帐号的远程登录应当发出红色警报。

在CentOS系统上,用户登录历史存储在以下这些文件中:

/var/run/utmp(用于记录当前打开的会话)被who和w工具用来记录当前有谁登录以及他们正在做什么,而uptime用来记录系统启动时间。

/var/log/wtmp(用于存储系统连接历史记录)被last工具用来记录最后登录的用户的列表。

/var/log/btmp(记录失败的登录尝试)被lastb工具用来记录最后失败的登录尝试的列表。

   在本文中,我将介绍如何使用utmpdump,这个小程序来自sysvinit-tools包,可以用于转储二进制日志文件到文本格式的文件以便检查。此工具默认在CentOS 6和7系列上可用。utmpdump收集到的信息比先前提到过的工具的输出要更全面,这让它成为一个胜任该工作的很不错的工具。除此之外,utmpdump可以用于修改utmp或wtmp。如果你想要修复二进制日志中的任何损坏条目,它会很有用(LCTT译注:我怎么觉得这像是做坏事的前奏?)。

Utmpdump的使用及其输出说明

正如我们之前提到的,这些日志文件,与我们大多数人熟悉的其它日志相比(如/var/log/messages,/var/log/cron,/var/log/maillog),是以二进制格式存储的,因而我们不能使用像less或more这样的文件命令来查看它们的内容。所以,utmpdump的出现拯救了世界。

为了要显示/var/run/utmp的内容,请运行以下命令:

代码如下:

# utmpdump/var/run/utmp

   同样要显示/var/log/wtmp的内容:

代码如下:

# utmpdump/var/log/wtmp| tail-15[code]

最后,对于/var/log/btmp:

[code]# utmpdump/var/log/btmp

   正如你所能看到的,三种情况下的输出结果是一样的,除了utmp和btmp的记录是按时间排序,而wtmp的顺序是颠倒的这个原因外(LCTT译注:此处原文有误,实际上都是按照时间顺序排列的)。

每个日志行格式化成了多列,说明如下。第一个字段显示了会话识别符,而第二个字段则是PID。第三个字段可以是以下值:--(表示运行等级改变或系统重启),bw(启动守候进程),数字(表示TTY编号),或者字符和数字(表示伪终端)。第四个字段可以为空或用户名、重启或运行级别。第五个字段是主TTY或PTY(伪终端),如果此信息可获得的话。第六个字段是远程主机名(如果是本地登录,该字段为空,运行级别信息除外,它会返回内核版本)。第七个字段是远程系统的IP地址(如果是本地登录,该字段为0.0.0.0)。如果没有提供DNS解析,第六和第七字段会显示相同的信息(远程系统的IP地址)。最后一个(第八)字段指明了该记录创建的日期和时间。

Utmpdump使用样例

下面提供了一些utmpdump的简单使用情况。

1、检查8月18日到9月17日之间某个特定用户(如gacanepa)的登录次数。

代码如下:

# utmpdump/var/log/wtmp| grep gacanepa

   如果你需要回顾先前日期的登录信息,你可以检查/var/log下的wtmp-YYYYMMDD(或wtmp.[1...N])和btmp-YYYYMMDD(或btmp.[1...N])文件,这些是由logrotate生成的旧wtmp和btmp的归档文件。

2、统计来自IP地址192.168.0.101的登录次数。

代码如下:

# utmpdump/var/log/wtmp| grep 192.168.0.101

   3、显示失败的登录尝试。

代码如下:

# utmpdump/var/log/btmp

   在/var/log/btmp输出中,每个日志行都与一个失败的登录尝试相关(如使用不正确的密码,或者一个不存在的用户ID)。上面图片中高亮部分显示了使用不存在的用户ID登录,这警告你有人尝试猜测常用帐号名来闯入系统。这在使用tty1的情况下是个极其严重的问题,因为这意味着某人对你机器上的终端具有访问权限(该检查一下谁拿到了进入你数据中心的钥匙了,也许吧?)

4、显示每个用户会话的登入和登出信息

代码如下:

# utmpdump/var/log/wtmp

   在/var/logwtmp中,一次新的登录事件的特征是,第一个字段为‘7’,第三个字段是一个终端编号(或伪终端id),第四个字段为用户名。相关的登出事件会在第一个字段显示‘8’,第二个字段显示与登录一样的PID,而终端编号字段空白。例如,仔细观察上面图片中PID 1463的行。

在 [Fri Sep 19 11:57:40 2014 ART],TTY1上显示登录提示符。

在 [Fri Sep 19 12:04:21 2014 ART],用户 root登入。

在 [Fri Sep 19 12:07:24 2014 ART],用户 root登出。

旁注:第四个字段的LOGIN意味着出现了一次登录到第五字段指定的终端的提示。

到目前为止,我介绍一些有点琐碎的例子。你可以将utmpdump和其它一些文本处理工具,如awk、sed、grep或cut组合,来产生过滤和加强的输出。

例如,你可以使用以下命令来列出某个特定用户(如gacanepa)的所有登录事件,并发送输出结果到.csv文件,它可以用像LibreOffice Calc或Microsoft Excel之类的文字或工作簿应用程序打开查看。让我们只显示PID、用户名、IP地址和时间戳:

代码如下:

# utmpdump/var/log/wtmp| grep-E"/[7].*gacanepa"| awk-v OFS=","'BEGIN{FS="]"};{print$2,$4,$7,$8}'| sed-e's//[//g'-e's//]//g'

   就像上面图片中三个高亮区域描绘的那样,过滤逻辑操作是由三个管道步骤组成的。第一步用于查找由用户gacanepa触发的登录事件([7]);第二步和第三部用于选择期望的字段,移除utmpdump输出的方括号并设置输出字段分隔符为逗号。

当然,如果你想要在以后打开来看,你需要重定向上面的命令输出到文件(添加“[文件名].csv”到命令后面)。

   在更为复杂的例子中,如果你想要知道在特定时间内哪些用户(在/etc/passwd中列出)没有登录,你可以从/etc/passwd中提取用户名,然后运行grep命令来获取/var/log/wtmp输出中对应用户的列表。就像你看到的那样,有着无限可能。

在进行总结之前,让我们简要地展示一下utmpdump的另外一种使用情况:修改utmp或wtmp。由于这些都是二进制日志文件,你不能像编辑文件一样来编辑它们。取而代之是,你可以将其内容输出成为文本格式,并修改文本输出内容,然后将修改后的内容导入回二进制日志中。如下:

代码如下:

# utmpdump/var/log/utmp tmp_output

使用文本编辑器修改 tmp_output

# utmpdump-r tmp_output/var/log/utmp

这在你想要移除或修复二进制日志中的任何伪造条目时很有用。

下面小结一下,utmpdump从utmp、wtmp和btmp日志文件或轮循的旧归档文件来读取详细的登录事件,来补充如who,w,uptime,last,lastb之类的标准工具的不足,这也使得它成为一个很棒的工具。

阿里云主机centos系统如何挂载和扩展多块硬盘(非目录挂载)步骤

笔记最近买了个阿里云主机(也是听说不错才买的),操作系统是CentOS,后来又新买了硬盘,在新硬盘如何挂载和扩展折腾了不少时间,所幸操作成功,现在把操作步骤记录分享给大家。

新买的阿里云主机默认硬盘没有挂载,如果是挂载那块没有挂载的默认硬盘,可以直接看看阿里云给的教程。但是我感觉硬盘不够用,后来又买了一块硬盘,又不想单独挂载到一个目录里,想扩展现有的硬盘,或者在挂载唯一那块硬盘又想留出以后扩展这块硬盘的余地,那么用阿里云给出的教程就不行了。

折腾了半天,终于挂载成功,不过这样的操作不建议你直接折腾在系统盘下面!不然你会后悔的!

1.阿里云的centos系统6系列的好像没装LVM2,需要先安装LVM2,上网搜搜教程,自己装,5.4 32位已经安装了LVM2,所以不需要这个步骤

2.如果你已经用阿里云给出的教程挂载过一块硬盘,可以先将这块盘里的数据备份出来(数据安全,别忘这一步,因为要格式化的),然后解绑

#umount-a

接着编辑启动项

#vi/dev/fstab

将之前/dev/xvdb1/mnt ext3 defaults 0 0这条加入进去的启动项去掉

然后保存

接着用fdisk删除分区假设你之前绑定的是/dev/xvdb1

#fdisk/dev/xvdb

#d

#wq

接着在用 fdisk-l

查看,是不是发现xvdb1已经解绑了

3.如果你是第一次挂载,或者不想折腾已经用阿里云官方给出的办法挂载的话,就略去上面过程

#fdisk-l

假设你看看到有两个盘还没挂载

/dev/xvdb

/dev/xvdc

先处理/dev/xvdb按下面顺序输入

#fdisk/dev/xvdb

#n

#p

#1

#t

#8e

#wq

然后按同样办法处理/dev/xvdc

#fdisk/dev/xvdc

#n

#p

#1

#t

#8e

#wq

如果你没第二块,就不用搞了

4.再用fdisk-l看看是不是已经出现/dev/xvdb1/dev/xvdc1这两个分区了

下面分别为这两个分区创建物理卷

#pvcreate/dev/xvdb1

#pvcreate/dev/xvdc1

如果你没有/dev/xvdc1,只是想以后为增加xvdb1容量,请自动忽略关于xvdc1的操作步骤

5.接着创建卷组

#vgcreate mygroup/dev/xvdb1

mygroup是卷组名,自己起

6.激活卷组

#vgchange-ay mygroup

还记得mygroup是你自己起的卷组名么,激活卷组是懒得重启VPS

7.扩展卷组

vgextend mygroup/dev/xvdc1

如果没有,请直接忽略这一步

8.创建逻辑卷

#vgdisplay mygroup| grep"Total PE"

先使用上面这个命令,得到

Total PE 15357

15357就是该卷组的逻辑数

#lvcreate-l15357 mygroup-n wwwroot

wwwroot是逻辑卷的卷名,自己起

8.格式化逻辑卷

#“mkfs.ext3/dev/mygroup/wwwroot

9.创建一个你要绑定的目录,比如/www(话说WDCP默认使用的就是/www)

mkdir/www

10.加入启动项

echo'/dev/mygroup/wwwroot/www ext3 defaults 0 0'>>/etc/fstab

11.挂载

mount-a

12.最后用df-hal看一下,是不是已经成功了?

用了这个办法,如果你以后想再次扩展增加这个分区,也很容易的

假设你用fdisk-l看到/dev/xvdd是你新买硬盘,需要扩展到之前的分区上

#fdisk/dev/xvdd

#n

#p

#1

#t

#8e

#wq

#reboot重启

得到/dev/xvdd1,接着

#/pvcreate/dev/xvdd1

#vgextend mygroup/dev/xvdd1

#vgdisplay mygroup| grep"Total PE"

这个命令得到总PE数 Total PE 10240

#lvresize-l10240/dev/mygroup/wwwroot

#resize2fs/dev/mygroup/wwwroot

喝杯茶然后运行df-hal,看看成功没

题外话,阿里云的centos的系统盘并没有使用LVM2分区,所以无法扩展/dev/hda1盘,如果你的网站很有前途,就别把数据库文件指定到系统盘上了,如果你是很有前途的图片站,也不要把站点放在系统盘上,也不要用阿里云给出的官方挂载方式,不然到时候做不到无隙增容,就蛋疼了。

不过曾经在某个网站上看到过别人的一个解决办法,就是把系统盘完全克隆到两外一个盘里,然后改启动方式,原系统和复制系统的启动文件都要改(都改成副盘启动),然后重启,然后让副盘起作用当做主系统使用,接着用LVM2分区原来的那个系统盘,弄好以后,再次把副盘里的系统克隆到原系统盘,再次更改两个系统的启动文件(都改成原盘启动),重启后,系统盘就变为LVM2分区,就可以进行扩展增容,然后就可以把副盘里的系统文件删除,该怎么折腾怎么折腾。

忘了在哪看的了,折腾了两次没成功,阿里云重装系统重启都太慢,就不想折腾了。

总体来说,阿里云的主机还是不错的,不要自己考虑备份问题,运行也稳定,就是宽带有点小贵。

阅读剩余
THE END