[转帖]Unix toolbox注解2之Linux系统状态用户和限制_VMware, Unix及操作系统讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  VMware, Unix及操作系统讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 3240 | 回复: 0   主题: [转帖]Unix toolbox注解2之Linux系统状态用户和限制        下一篇 
ulee@land
注册用户
等级:上尉
经验:769
发帖:55
精华:1
注册:2012-12-17
状态:离线
发送短消息息给ulee@land 加好友    发送短消息息给ulee@land 发消息
发表于: IP:您无权察看 2012-12-20 9:59:06 | [全部帖] [楼主帖] 楼主

北京联动北方科技有限公司Unix toolbox注解2Linux系统状态用户和限制北京联动北方科技有限公司

1.2显示状态信息

以下命令有助于找出正在系统中运行着的程序

# top           # 显示和更新使用 cpu 最多的进程

注:

top小技巧,执行top命令之后,可以敲击如下按键,实现不同功能

1(数字1):列出所有的单个CPU负载情况

z:top显示颜色

P:CPU占用高低顺序列出程序

M:按内存占用高低顺序列出程序

x:类似高亮显示,在z显示模式下才有效果

如下效果图:

top显示Swap利用率,使用top命令后按f键,然后按p键,回车之后即可看到Swap状态

d:top默认的刷新时间是3s,使用d键可以自定义刷新时间

top类似上下翻页的方法:

shift <  下翻页

shift >上翻页

top默认按cpu占用排序,这也是可以修改,按F(大写)即可选择相应排序,之后回车即可

c:显示进程命令的全路径与参数

W:将当前设置写入~/.toprc文件中。这是写top配置文件的推荐方法

# mpstat 1      # 显示进程相关的信息
# vmstat 2      # 显示虚拟内存的状态信息
# iostat 2     # 显示 I/O 状态信息(2 秒间隙)
# tail -n 500 /var/log/messages # 显示最新500条内核/系统日志的信息
# tail /var/log/warn                # 显示系统警告信息(syslog.conf)


1.3用户

# id        # 显示当前用户和用户组的 ID
# last      # 列出目前与过去登入系统的用户相关信息
# who       # 显示目前登入系统的用户信息
# groupadd admin # 建立新组"admin"和添加新用户 colin 并加入 admin 用户组(Linux/Solaris)
# useradd -c "Colin Barschel" -g admin -m colin
# userdel colin # 删除用户colin(Linux/Solaris)


使用 nologin 来临时阻止所有用户登录(root除外)。用户登录时将会显示nologin 中的信息。

# echo "Sorry no login now" > /etc/nologin # (Linux)


1.4限制

某些应用程序需要设置可打开最大文件和socket 数量(像代理服务器,数据库)。默认限制通常很低。

注:

关于ulimit使用可阅读IBM文档:通过 ulimit 改善系统性能

笔者之前也写过有关文件描述符文章介绍:Linux下文件描述符

关于RHEL6ulimitnproc限制

ulimit用于限制 shell 启动进程所占用的资源,支持以下各种类型的限制:所创建的内核文件的大小、进程数据块的大小、Shell 进程创建文件的大小、内存锁住的大小、常驻内存集的大小、打开文件描述符的数量、分配堆栈的最大大小、CPU 时间、单个用户的最大线程数、Shell 进程所能使用的最大虚拟内存。同时,它支持硬资源和软资源的限制。

作为临时限制,ulimit可以作用于通过使用其命令登录的 shell 会话,在会话终止时便结束限制,并不影响于其他 shell 会话。而对于长期的固定限制,ulimit 命令语句又可以被添加到由登录 shell 读取的文件中,作用于特定的 shell 用户。

[root@kumu ~]# ulimit -a         //显示当前所有限制的详细信息
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 1829
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 10240
cpu time               (seconds, -t) unlimited
max user processes              (-u) 1024
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited


shell/脚本

shell的限制是受ulimit支配的。使用ulimit -a 可查看其状态信息。举个例子,改变可打开最大文件数从1024 10240,可以这么做:

# ulimit -n 10240   # 这只在shell中有用

ulimit 命令可以使用在脚本中来更改对此脚本的限制。

用户/进程

登录用户和应用程序的限制可以在/etc/security/limits.conf中配置。举个例子:

# cat /etc/security/limits.conf
* hard nproc 250                # 限制所有用户进程数
asterisk hard nofile 409600 # 限制应用程序可打开最大文件数


系统级

sysctl来设置内核限制。要使其永久,可以在/etc/sysctl.conf 中进行配置。

# sysctl -a         # 显示所有系统限制
# sysctl fs.file-max    # 显示系统最大文件打开数
# sysctl fs.file-max=102400 # 更改系统最大文件打开数
# cat /etc/sysctl.conf
fs.file-max=102400          # 在 sysctl.conf 中的永久项
# cat /proc/sys/fs/file-nr # 在使用的文件句柄数




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论