文章目录
笔记记录于《鸟哥的Linux私房菜-第三版》,以备多看。
系统服务-daemon
- 方式
- stand alone #独立启动常驻内存
/etc/init.d/*
(httpd,vsftpd) - super daemon #常驻内存的 xinetd 统一管理
/etc/xinetd.d/*
(telnet)- multi-threaded #一个服务负责多个程序
- single-threaded #一个一个处理,多的排队
- stand alone #独立启动常驻内存
- 服务
- /etc/services #记录服务端口
- super daemon的参数档案[/etc/xinetd.d/*]
- socket_type stream:tcp;dgram:udp;raw:直接和IP连接
- wait yes:single-control;no:multi-control
- instances 最大连接数
- per_source 同一IP最多可连接数
- cps num1 num2 1秒内能接受新连接数 超过则暂时关闭该服务的秒数
- redirect ip port #服务转址
- only-from [0.0.0.0,192.186.1.0/24,hostname,domainname] #防火墙机制
- no-access
- sccess_times [HH:MM-HH:MM] #时间控管
ldd
- 产看执行文件的动态链接库
tcp wraper
- 支援libwrap.so 的可以使用 /etc/hosts.{allow,deny} 来做防火墙(httpd没有此功能)
- rsync:127.0.0.100:deny
hosts.deny
第三栏默认为 deny,可不写 - 第一、二栏
- ALL 全部程序或ip
- LOCAL 来自本机
- UNKNOWN 不知道的IP、domain、服务
- KNOWN 可解析的IP、domain、服务
- 第三栏
- spawn %d(hostname),%a(address),%d(daemon)
- twist 执行后续命令后终止该连接
service
- service –status-all #查看所有服务状态,同
netstat -anl
chkconfig
- –list [服务名称] #列出服务状态
- –add 服务名称
- –del 服务名称
- –level [0-6] 服务名称 [on|off]
- chkconfig –level 345 atd on #atd在run level为3,4,5时启动
=>run level
- 0 halt (系统直接关机)
- 1 single user mode (单人维护模式,用在系统出问题时的维护)
- 2 Multi-user, without NFS (类似底下的 runlevel 3,但无 NFS 服务)
- 3 Full multi-user mode (完整含有网络功能的纯文本模式)
- 4 unused (系统保留功能)
- 5 X11 (与 runlevel 3 类似,但加载使用 X Window)
- 6 reboot (重新启动)
0,6系统启动相关,不应设置为预设
runlevel
log
- cron: /var/log/cron
- dmesg: /var/log/dmesg
- 系统账号最后登录资讯: /var/log/lastlog
- mail: /var/log/maillog或/var/log/mail/*
- 系统错误: /var/log/messages
- 密码错误等: /var/log/secure
- 登陆正确 | 错误: /var/log/wtmp (last) | faillog
level
- info,notice,warning,err,crit,alert,emerg [denug,none]
- . #大于等于后边等级的登陆记录
mail.info
- .= #指定为后边设置等级
- .! #除后边的等级都记录
logrotate
- -v #显示过程
- -f #强制rotate
操作syslog
#防止用户修改log导致log不能正常记录
chattr -a /var/log/messages
#利用prerotate和postrotate使logrotate正常进行
vi /etc/logrotate.d/syslog
/var/log/messages
/var/log/secure
/var/log/maillog
/var/log/spooler
/var/log/boot.log
/var/log/cron
{
sharedscripts
prerotate
/usr/bin/chattr -a /var/log/messages
endscript
sharedscripts
postrotate
/bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true
#下边这条在有rsyslogd.pid处使用
/bin/kill -HUP `cat /var/run/rsyslogd.pid 2> /dev/null` 2> /dev/null || true
/usr/bin/chattr +a /var/log/message
endscript
}
logrotate
- /var/log/log_name.log 有log文件
- /etc/logrotate.d/log_name 有对应配置
depmod
- -A 新的模块写入
- -n 不写入,输出屏幕
- -e 显示已加载的不可执行模块
lsmod
- 显示加载模块
modinfo
- -a [module_name|filename] :仅列出作者名称;
- -d :仅列出该 modules 的说明 (description);
- -l :仅列出授权 (license);
- -n :仅列出该模块的详细路径。
insmod,rmmod,modprobe
rpm
- rpm -ivh *.rpm #安装
- rpm -Uvh #安装的更新,未安装的安装
- rpm -Fvh #已安装的才升级
- rpm -qa #列出已安装软件
yum
- yum install xxx
- yum list xxx #列出package详情
- yum search rpm #
- yum update xxx
- yum -y upgrade #更新
- yum clean [packages|headers|all] #清除相关rpm文件
- yum remove xxx
- LANG=C yum grouplist #列出可用软件群组
- yum groupinfo 软件群组名
- yum groupinstall [–installtoot=/path/]
- yum groupremove 软件群组名
- yum repolist all #列出源
如有疑问,请文末留言交流或邮件:newbvirgil@gmail.com 本文链接 : https://newbmiao.github.io/2015/09/16/Niaoge-Linux-Desktop-Guide-notes-daemon.html