栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Linux 服务器程序规范

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Linux 服务器程序规范

Linux 服务器程序规范
  • Linux 服务器程序一般以后台进程形式运行。
  • Linux服务器程序通常有一套日志系统,它至少能输出日志到文件,有的高级服务器还能输出日志到专门的UDP服务器。
  • Linux服务器程序一般以某个专门的非root身份运行。
  • Linux服务器程序通常是可配置的。
  • Linux服务器进程通常会在启动的时候生产一个PID文件并存入/var/run目录中,以记录该后台进程的PID。
  • LInux服务器程序通常需要考虑系统资源和限制,以预测自身能承受多大负荷。
7.1 日志 7.1.1 Linux系统日志

rsyslogd守护进程既能接收用户进程输出的日志,又能接收内核日志。用户进程通过调用syslog函数生成系统日志的。

7.1.2
# include
void syslog(int priority, const char *format, ...);

priority是设施值与日志级别的按位或。设施值的默认值是LOG_USER
第二个参数和第三个参数是一种格式,如 printf和格式所需的任何参数,除了两个字符序列 %m 将被错误消息替换string strerror(errno). 如果需要,可以添加尾随换行符。
日志级别有如下几个:


openlog可以用来改变syslog的默认输出方式

void openlog(const char *ident, int option, int facility);

logopt可以取下列值的按位或

facility参数对后续syslog函数中的默认设施值。
setlogmask函数设置日志掩码,使日志级别大于日志掩码的日志信息被系统忽略。

int setlogmask(int maskpri);

关闭日志功能

void clsoelog();
7.2用户信息 获取信息

获取当前进程的真实用户ID(UID)、有效用户ID(EUID)、真实组(GID)和有效组ID(EGID)。

UID是启动程序的用户ID,而EUID则是文件所有者的ID。

7.3 进程间关系 7.3.1进程组

获取进程组ID(PGID)

7.3.2 会话



7.4 系统资源限制
#include
int getrlimit(int resource,struct rlimit *rlim);
int setrlimit(int resource,const struct rlimit *rlim);

struct rlimit
{
	rlim_t rlim_cur;   //软限制
	rlim_t rlim_max;   //硬限制
};

rlim_t是一个整数类型,它描述资源级别。
resource参数指定资源限制类型。

7.5改变工作目录和根目录


服务器程序后台化

守护进程:创建子进程,关闭父进程

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/643027.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号