第一、日志轮换
日志的目录 /var/log/
常见产生日志的设备都会把info级别的日志信息都会输出到/var/log/messages
/var/log/wtmp
/var/log/btmp
/var/log/maillog
日志轮换的工具 logrotate
/etc/logrotate.conf
/var/log/wtmp {
monthly <----每个月轮换一次日志
minsize 1M <---当我轮换日志文件的时候,日志文件尺寸不能低于1M,否则,尽管时间到了,也不轮换
create 0664 root utmp
rotate 1
}
size 512k <---尽管轮换日志还没到,但文件超过了512k,那么日志文件也会被轮换
例子:
对btmp进轮换
轮换之后都给管理员root@localhost发一个邮件,轮换周期是每个星期,日志轮换的最小尺寸不能少于1M
轮换之后文件的权限保持不变,轮换的版本数4,需要对轮换的日志进行压缩
/var/log/btmp {
weekly
minsize 1M
create 0600 root utmp #权限和/var/log/btmp保持一致
rotate 4
mail [email protected]
compress
}
/var/log/messages /var/log/secure /var/log/maillog /var/log/spooler /var/log/boot.log /var/log/cron {
sharedscripts
postrotate
/bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true
/bin/kill -HUP `cat /var/run/rsyslogd.pid 2> /dev/null` 2> /dev/null || true
endscript
}
prerotate
....
endscript
马上出发logrotate去轮换日志:
logrotate -f /etc/logrotate.conf
第二、syslog设定
软件包:sysklogd
syslogd配置文件:
/etc/syslog.conf <---主配置文件安,存放的是记录日志的一些规则
/etc/sysconfig/syslog <---syslogd服务启动的一些参数
日志记录规则的语法
设备.日志级别 动作
auth, <--- pam_pwd 产生的日志
authpriv, <--- 一般的用户登录验证的日志
cron, <--- 计划任务产生的日志
daemon, <--- xinetd 产生的日志
kern, <--- 内核产生的日志
lpr, <--- 打印服务产生日志
mail, <--- 邮件产生的日志
mark, <--- syslogd内部产生的日志,用来产生一条时间记录
news, <--- 新闻服务的日志
security (same as auth),
syslog, <--- syslog本身产生的日志
user, <--- 用户程序产生的日志
uucp <--- 文件拷贝服务产生的日志
local0 through local7. <--自定义日志设备
日志级别:
低
|
高
debug, 产生的日志最多的一个级别
info, 一般的日志信息,最常用的
notice, 具有重要性的日志
warning, 预警信息
warn (same as warning),
err, error (same as err), 某个子功能不能工作正常时产生日志
crit, 整个软件系统不能工作正常时产生的日志
alert, 某些错误如果不马上进行修正,就不能正常工作
emerg, panic (same as emerg). 内核崩溃
none 什么也不记录
从上往下看,日志级别越来越高,级别越低,产生的日志就越多
*.info;mail.none;authpriv.none;cron.none /var/log/messages
除了mail,authpriv,cron 其他的设备的info级别以及包括info以上级别的日志都会被记录
authpriv.* /var/log/secure
mail.=info /var/log/mymail.log
<---仅仅把mail的info级别的日志记录,别的级别都不记录
kern.info;kerno.!err /var/log/kernel-info.log
<---记录info级别以及info以上级别的日志,但排除err级别的
动作:
/var/log/test.log <---输出到日志文件
username <---日志就马上输出到该用户登录的所有终端
terminal(终端) <-- /dev/tty1 日志输出到某个终端
@hostname <---把日志记录到远程的主机里
例子:
1、
# vim /etc/ssh/sshd_config
SyslogFacility LOCAL6
LogLevel INFO
2、
# vim /etc/syslog.conf
local6.* /var/log/mysshd.log
service sshd restart
service syslog restart
日志测试命令:手动向日志文件中添加信息
# logger -t "Test for log" "Class over! "
远程日志服务:
1、配置日志服务器(可以用来接受和记录远程发送过来的日志的服务器)
# vim /etc/sysconfig/syslog
SYSLOGD_OPTIONS="-r -m 0"
# service syslog restart
2、产生日志的主机
# vim /etc/syslog.conf
local6.* @dns.upl.com <---主机名对应的IP 应该存在于/etc/hosts
# service syslog restart
# vim /etc/ssh/sshd_config
#SyslogFacility AUTH
#SyslogFacility AUTHPRIV
SyslogFacility LOCAL6
LogLevel INFO
# service sshd restart
==============================================
NFS服务器
涉及的软件包 nfs-utils
/etc/exports
共享资源本地路径 共享给谁(共享的权限) [....]
/share/soft 10.1.1.229(ro) 10.1.1.188(rw)
/share/ftp 10.1.1.0/255.255.255.0(rw)
/share/rhel 10.1.1.0/24(ro)
/share/ftp ---> rw ; client -->nfs_client 挂载 /mnt --> touch /mnt/test.txt
1、/share/ftp --> chmod 777 /share/ftp
2、exports
/share/ftp *(rw,root_squash,no_all_squash)
3、service nfs restart
all_squash <---会把所有用户身份都刷掉,都以nfsnobody进行操作
no_root_squash
root_squash <--默认的共享参数
man exports
例子:
1、要求共享的资源是可写的,客户端对资源进行操作的时候,身份都统一为uid=99,
要求数据实时同步。默认:刷掉管理员身份。 man exports
/share1 *(rw,sync,anonuid=99)
chmod 777 /share1
2、要求共享的资源只有管理员可以写,别的用户对nfs资源只有读的权限
/share/ftp --> nfsnobody:nfsnobody 775
/share/ftp 10.1.1.0/24(rw)
=====================================================================
which whereis locate
高级搜索命令
find 路径 选项
find /etc -name "httpd.conf"
find /etc -name "*tpd.conf"
find /etc/ -iname "*Tpd.conf"
find /dev -type s
find /etc -perm 400
find /etc/ -perm 400
find /etc -size 40k
find /etc -size +40k <---大于40k的文件
find /etc -size -40k
find /etc -size +1M 大于1M
ctime 《--- inode表信息更改,它也跟着更改 ,属性
mtime 《--文件内容修改,它也跟着改
atime 《--最后的访问时间
找到修改时间超过1天的文件 +0
找到修改时间在1天之内的文件 -1
操作过程:
[root@qianxin ~]# mkdir /aaa
[root@qianxin ~]# cd /aaa
[root@qianxin aaa]# touch aaa
[root@qianxin aaa]# ls
aaa
[root@qianxin aaa]# ls -l
总计 0
-rw-r--r-- 1 root root 0 03-25 15:51 aaa
[root@qianxin aaa]# find /aaa -m -1
find: 无效断言“-m”
[root@qianxin aaa]# find /aaa -mtime -1
/aaa
/aaa/aaa
[root@qianxin aaa]# touch -m -t 1003200905 aaa
[root@qianxin aaa]# ls -l
总计 0
-rw-r--r-- 1 root root 0 03-20 09:05 aaa
[root@qianxin aaa]# find /aaa -mtime -1
/aaa
[root@qianxin aaa]# find /aaa -mtime +0
/aaa/aaa
[root@qianxin aaa]#
#find /tmp/test -mtime +1 -exec rm {} \;
找到文件并执行后面的删除命令
=======================================
Xwindow --> X协议 <--tcp/ip
一种c/s架构
X服务器端 ---驱动IO设备,鼠标,键盘,显示器等
X客户端 ---- 产生窗体的程序或者主机
实验步骤:
1、
vim /etc/inittab
id:3:initdefault: <---让系统开机进入控制台模式
init 6
重启之后:
X 《----启动一个X Server端,他的功能就是驱动我们的I/O设备
ctrl + alt + F2 登录另外控制台输入以下命令:
DISPLAY=127.0.0.1:0.0 gnome-terminal &
ctrl + alt + F7 <----你会发现出现了一个没有标题栏的图形终端
然后你在这个终端输入命令:
gnome-session & <---这是启用我们的gnome桌面环境,也就是DE,常见DE有gnome,kde ,如果是启用kde,那么你可以运行kde,前提你安装了kde的桌面环境相关的软件包
另外的实现:
startx 《---直接启用X-server以及对应的桌面环境(调用了gdm 或者 kdm)
startx -- :1 ctrl + alt + F8 <---打开另外一个X-server+DE
2. 必须先在服务器中打开 6000 端口 (default close) <--- gdm-setup
a. gdmsetup ---> 安全 --> 允许 tcp 连接到服务器 [] -> 重启 X
b. 使用下面命令检测端口是否已经打开
netstat -ntl | grep 6000
c. [客户端]在图形中: xhost 10.1.1.10 <- 服务器 IP
允许接收对方服务器图形 PROTOCOL 连接到我本地
返回: 10.1.1.254 being added to access
影响Xwindow启动一个常见原因:
/tmp drwxrwxrwt 权限不对
简单修复Xwindow的命令:
system-config-display