Unix toolbox注解2之Linux系统状态用户和限制

本文发布时间: 2019-Mar-22
本系列文章为笔者对Unix toolbox的一些个人注解,加入个人的一些元素,删减了其中一些对于freebsd的一些命令介绍,文中的内容笔者都一一验证过,放心使用。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 用 于限制 shell 启动进程所占用的资源,支持以下各种类型的限制:所创建的内核文件的大小、进程数据块的大小、Shell 进程创建文件的大小、内存锁住的大小、常驻内存集的大小、打开文件描述符的数量、分配堆栈的最大大小、CPU 时间、单个用户的最大线程数、Shell 进程所能使用的最大虚拟内存。同时,它支持硬资源和软资源的限制。作 为临时限制,ulimit可以作用于通过使用其命令登录的 shell 会话,在会话终止时便结束限制,并不影响于其他 shell 会话。而对于长期的固定限制,ulimit 命令语句又可以被添加到由登录 shell 读取的文件中,作用于特定的 shell 用户。[[email protected] ~]# ulimit -a //显示当前所有限制的详细信息core file size (blocks, -c) 0data seg size (kbytes, -d) unlimitedscheduling priority (-e) 0file size (blocks, -f) unlimitedpending signals (-i) 1829max locked memory (kbytes, -l) 64max memory size (kbytes, -m) unlimitedopen files (-n) 1024pipe size (512 bytes, -p) 8POSIX message queues (bytes, -q) 819200real-time priority (-r) 0stack size (kbytes, -s) 10240cpu time (seconds, -t) unlimitedmax user processes (-u) 1024virtual memory (kbytes, -v) unlimitedfile locks (-x) unlimitedshell/脚本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.conffs.file-max=102400 # 在 sysctl.conf 中的永久项# cat /proc/sys/fs/file-nr # 在使用的文件句柄数


(以上内容不代表本站观点。)
---------------------------------
本网站以及域名有仲裁协议。
本網站以及域名有仲裁協議。

2020-Jul-13 01:14am
栏目列表