1.递归创建目录,并且指定权限值

 

2.创建文件,并且指定权限值

 

3.ls列出目录时,一定要列出的数据信息

最基本的显示标准:  以—full-time 全格式的形式显示 ,带文件大小 –h 【单位为MB,或者是GB,而非字节】的方式来显示(默认是字节), 标识文件类型,文件的权限,文件的所属用户以及用户组,并且排序:

 

按修改时间顺序显示:

ll –sh -t –full-time

-h 以MB,KB,GB的形式显示

-t  以修改的时间来排序

 

按文件名来进行排序

默认,即按照文件名来进行排序

 

按文件大小来进行排序【不包括目录】

ll –sh –S –-full-time  【加上-r,如  ll –sth –Sr –-full-time 则代表反向来进行排序】

 

默认的排序方式为文件名(字母顺序),  以文件名,文件大小,文件类型(目录,文件),修改时间来排序【最好先按类型排序,再根据时间或者是文件名】

 

排序优先级: 先以文件类型排序,再以大小【仅仅为文件,而不包括目录形式】来排序

 

 

 

4. 快递的查看某一个目录或者是文件的相关信息:文件类型,路径,权限值

 

5. 显示行号查看较小文件

    显示行号查看较大的文本文件【翻页查看】 ,翻页指定查看第几页,以及页数,当前页,每一页显示多少条记录

 

6. 选取文件部分查看【行数范围】—>比如说大文件的数据查看

有这个的几种情况:

  1. 从行首的40行到未尾

  2. 从行首的40行到行尾的前50行

  3. 获取文件中第30到到100行的数据

      第一种使用,head,tail来完成:   head –n 100 ~/.bashrc |tail –n 30

      第二种直接使用sed来完成:     nl ~/.bashrc |sed –n  ‘30,100p’

 

解释说明:

sed –n  n,--quiet,--silent取消默认输出, 不然对于nl ~/.bashrc |sed –n ‘30,100p’,它会全部输出  .bashrc 。 默认情况下,在一般的SED用法中,所有来自于STDIN的数据都会显示在屏幕上,如果加上-n参数,则只有经过sed特殊处理的数据才会显示。

 

7. locate 可以通配符匹配查找,同时解决locate不能搜索即时文件的问题

即先更新搜索数据库,后查找

 

以root更新执行updatedb命令 更新,进行再使用locate进行搜索寻找

 

--- 如何快速查找文件,进而使用列出文件的相关permission值

 

File Stat – Display Information About File

stat /home/ramesh


stat `locate detail.phtml`|cat -n 

ll --full-time -th  `locate detail.phtml`|cat -n

8. 当系统管理员清空了/etc/issue文件,如何知道当前系统的版本,版本号,内核号

 

ll -sh --full-time /etc/ |grep -i 'release'

如果有一个厂商商标-release文件,即为详细信息

 

lsb_release -a

 

如果是查看内核

uname -a

cat /proc/version

 

 

9. 让grep 支持通配符过滤

 

10. 如果要屏幕的内容输出到文本文件中,管道命令的应用[特别是stdout与正确,错误输出]

 

11. grep 对netstat,ps等过滤时,会将head头部的说明也去掉,如何让console即输出head头信息,同时又输出过滤的信息

 

12. 如果快速的查找某一个服务的日志信息

 

如如何快速的知道httpd,mysql,corntab的日志文件位置

查看syslog.conf

 

13.显示文件时,操作系统的不一样导致 换行,回车符不一样,如何查看回车符等

sudo cat access_etam.com.cn-check.log |egrep -i '.+\.html.+HTTP.+[[:space:]]?\b503\b[[:space:]]?.+'  

14. 找出当前系统所有可以登录的用户以及用户信息

 

 

15. 移出当前目录下,各个文件夹所占用磁盘的百分比

 

 

软件安装

1. 如何知道软件是通过bin, rpm-src, 还是源代码安装


日志上看

如何知道哪些是做了logrotate

 


以后操作linux ---------> 一切可能去使用 正则表达式 去查找文件

 

---------先用好原始的命令,再来使用alias---

 

一个过大的文本文件,比如HTTPD的日志文件,MYSQL的日志文件过大,有近2G大,如何快速的读取部分的数据(行数),当然使用grep,vim,cat肯定是不现实的

 

如何一次性杀死所有的进程,如现系统中有近15个httpd进程,不可能使用kill -9 PID 一个一个的杀,如何一次性全部杀死进程

killall 进程名

 

 

20.在不同的服务器中以最大的速度来传输大数据文件? 即大数据文件的网络传输?

 

 

HTTP日志的分析以及解决

1. 希望得到文件文件中所有的404页面,除spilder,crawler等

2. 希望得到文件中所有503,504,502错误的页面,以及IP地址

 

 

 gawk ‘BEGIN{FS=“,”; OFS=“--”} {print $1,$2,$3}’ data1


cat access_etam.com.cn-check.log|egrep -iv '(Spider|crawler|bot)'|egrep -i 'http://[-a-z0-9R:@&?=+,.!/~+%$]+\.(html|htm)'|gawk 'BEGIN{FS=" ";OFS="-"} {if ($9=="502" || $9="504") print $4,$9,$7}'|head -n 20

 

gawk ‘BEGIN{FS=“,”} $2 ~ /ˆdata2/{print $0}’ data1

 

cat access_etam.com.cn-check.log|egrep -iv '(Spider|crawler|bot)'|egrep -i 'http://[-a-z0-9R:@&?=+,.!/~+%$]+\.(html|htm)'|gawk 'BEGIN{FS=" ";OFS="----"} $7 ~/(html|htm)$/ {if ($9=="502" || $9="504") print $4,$9,$7}'

 

 

cat access_etam.com.cn-check.log|egrep -iv '(Spider|crawler|bot)'|egrep -i 'http://[-a-z0-9R:@&?=+,.!/~+%$]+\.(html|htm)'|gawk 'BEGIN{FS=" ";OFS="----"} $7 ~/(html|htm)$/ {if ($9=="502" || $9="504") print $4,$9,$7}'

 

 

1,对于使用了轮换的日志配置而言,它一般会生成一些压缩文件,如果在不解压这些文件的同时,同时又可以看到这些文件中的内容

 

 

 

22. 如何知道系统邮件哪些是已经发送,哪些还没有发送?

 

 

image

 

如何知道有哪些用户发邮件给了MTA? 包含了各种用户?

 

如何MTA发了什么的邮件给谁?

 

 

23. 当一个终端需要执行很长时间的命令时,使用后台运行来解决,问题是如何来知道后台运行是否有报错或者是知道它是运行成功的?

 

 

24. 对后台执行的管理,将运行程序添加到一个后台执行,以及相关的调用管理?

什么时候使用后台执行: 比如说你正在复制一个大文件,有3G,导入数据库脚本,需要1个小时,进行解压缩或者是压缩操作,如果不使用后台执行的话,它会一直占用终端,导致无法继续执行命令行

 

后台执行需要考虑的点:

1. 如何保证执行过程中是没有错误的,应该有一个记录。

2. 必须考虑到 sdtout与sdtin, 如果命令行中有标准的输入与输出,它还是会自动的显示在屏幕中.. 如 tar zxvf 中的v就是输出可视信息。

 

如: tar -zpcvf /tmp/etc.tar.gz /etc > /tmp/log.txt 2>&1 &

 

2>&1是什么含义:

就是将错误输出与正确输出放置到同一个文件中,需要使用这种特殊的写法 2>&1  它也就是代表着写入同一个文件中。

 

 

关于管道使用说明:

1 代表正确的输出 find /home testing > list_right   其实它所操作的就是1

 

2 代表错误输出   find /home –name testing > list_right  2> list_error

 

当我们仅需要正确的信息,而不需要错误信息时,就要使用到/dev/null这个垃圾桶了,  可以把/dev/null看作"黑洞". 它非常等价于一个只写文件. 所有写入它的内容都会永远丢失. 而尝试从它那儿读取内容则什么也读不到.

rm $badname 2>/dev/null   这样错误信息[标准错误]就要显示,同时也不会存储到系统中
 
 

如果需要把错误输出与正确输出放置在同一个日志文件中,可以使用 2>&1这种特殊的写法

如果希望将程序执行过程中的error忽视,则可以使用

 

 

查看当前的jobs

jobs –l

 

中止并且删除某一个作业:  kill –9 %作业编号

image

 

 

 

一台服务器是多个人操作的,当发现系统有点不稳定时,如何知道别人做了什么操作?

last   [它一般只会读取当前一个月的lo记录,一般它的信息量会比较大],  lastlog

 

 

硬件信息以及性能监控

 

 

查看计算机或者系统的基本配置信息

硬件

CPU型号以及大小

[root@localhost ~]# grep "model name" /proc/cpuinfo
model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz
model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz

 

4、查看CPU位数
[root@localhost ~]# getconf LONG_BIT

 

查看内存情况(只能以KB的单位显示)
[root@localhost ~]# more /proc/meminfo
MemTotal:      3755008 kB
MemFree:        155276 kB

 

查看内存情况(以MB的单位来显示)

[root@localhost ~]# free –m

 

查看网卡信息

[root@localhost ~]# dmesg | grep ‘eth’

 

系统软件

1、查看内核

[root@localhost ~]# uname -a
Linux localhost.localdomain 2.6.18-164.el5xen #1 SMP Tue Aug 18 16:06:30 EDT 2009 i686 i686 i386 GNU/Linux

 

2、查看版本

[root@localhost ~]# more /etc/issue
Red Hat Enterprise Linux Server release 5.4 (Tikanga)
Kernel \r on an \m

 

3. 查看系统语系

 

 

基本的磁盘信息

1.获取当前的存储设备信息(包括有品牌,商标,型号等最基本的信息)

cat /proc/scsi/scsi

 

或者是硬盘的容量等

如果仅仅是想获得磁盘的大小:  fdisk –l

最好是使用lshw这个软件来查看,它的信息会更加全面,当然前提是要先安装此软件

lshw -class disk -class storage

 

转速以及磁盘的基本读写速度

sudo hdparm -tT /dev/sda

 

查看硬盘或者是磁盘的组织形式: 是LVM,RAID等形式,这种组织形式的容量是多少

 

硬盘类型: RAID, 基本的硬盘

SCSI还是HDA

硬盘的读写速度测试

硬盘

几块硬盘

 

硬盘类型: RAID, 基本的硬盘

硬盘类型:
PV VP PE LV LVM

---------查看PV
pvscan
pvdisplay

vpdisplay

RAID的级别

分区

dmesg –l |egrep –I ‘disk’

参考资料

http://www.cyberciti.biz/faq/find-hard-disk-hardware-specs-on-linux/

http://www.cyberciti.biz/tips/how-fast-is-linux-sata-hard-disk.html

------------

主板:
硬盘可以插入的数量

USB的数据
USB的支持类型

 

 

 

日志过大的问题要解决

httpd的进程太多的问题也要解决

posted on 2013-03-24 14:52  myjavawork  阅读(445)  评论(0编辑  收藏  举报