Unix toolbox注解2之Linux系统状态用户和限制
Unix toolbox注解1之Linux系統(tǒng)硬件信息
Unix toolbox注解2之Linux系統(tǒng)狀態(tài)用戶和限制
本系列文章為筆者對(duì)Unix toolbox的一些個(gè)人注解,加入個(gè)人的一些元素,刪減了其中一些對(duì)于freebsd的一些命令介紹,文中的內(nèi)容筆者都一一驗(yàn)證過,放心使用。
1.2顯示狀態(tài)信息
以下命令有助于找出正在系統(tǒng)中運(yùn)行著的程序
# top ????????? # 顯示和更新使用 cpu 最多的進(jìn)程
注:
top小技巧,執(zhí)行top命令之后,可以敲擊如下按鍵,實(shí)現(xiàn)不同功能 1(數(shù)字1):列出所有的單個(gè)CPU負(fù)載情況z:top顯示顏色
P:按CPU占用高低順序列出程序 M:按內(nèi)存占用高低順序列出程序 x:類似高亮顯示,在z顯示模式下才有效果如下效果圖:
top顯示Swap利用率,使用top命令后按f鍵,然后按p鍵,回車之后即可看到Swap狀態(tài)
d:top默認(rèn)的刷新時(shí)間是3s,使用d鍵可以自定義刷新時(shí)間
top類似上下翻頁的方法: shift <?下翻頁 shift >上翻頁top默認(rèn)按cpu占用排序,這也是可以修改,按F(大寫)即可選擇相應(yīng)排序,之后回車即可
c:顯示進(jìn)程命令的全路徑與參數(shù)
W:將當(dāng)前設(shè)置寫入~/.toprc文件中。這是寫top配置文件的推薦方法
# mpstat 1 ???? # 顯示進(jìn)程相關(guān)的信息 # vmstat 2 ???? # 顯示虛擬內(nèi)存的狀態(tài)信息 # iostat 2? ?? # 顯示 I/O 狀態(tài)信息(2 秒 間隙) # tail -n 500 /var/log/messages # 顯示最新500條內(nèi)核/系統(tǒng)日志的信息1.3用戶
# id ?????? # 顯示當(dāng)前用戶和用戶組的 ID # last ???? # 列出目前與過去登入系統(tǒng)的用戶相關(guān)信息 # who ????? # 顯示目前登入系統(tǒng)的用戶信息 # groupadd admin # 建立新組"admin"和添加新用戶 colin 并加入 admin 用戶組(Linux/Solaris) # useradd -c "Colin Barschel" -g admin -m colin # userdel colin # 刪除用戶 colin(Linux/Solaris)使用 nologin 來臨時(shí)阻止所有用戶登錄(root除外)。用戶登錄時(shí)將會(huì)顯示 nologin 中的信息。
# echo "Sorry no login now" > /etc/nologin # (Linux)
1.4限制
某些應(yīng)用程序需要設(shè)置可打開最大文件和socket 數(shù)量(像代理服務(wù)器,數(shù)據(jù)庫(kù))。 默認(rèn)限制通常很低。
注: 關(guān)于ulimit使用可閱讀IBM文檔:通過 ulimit 改善系統(tǒng)性能筆者之前也寫過有關(guān)文件描述符文章介紹:Linux下文件描述符
?????????????????????????????? 關(guān)于RHEL6中ulimit的nproc限制
ulimit 用于限制 shell 啟動(dòng)進(jìn)程所占用的資源,支持以下各種類型的限制:所創(chuàng)建的內(nèi)核文件的大小、進(jìn)程數(shù)據(jù)塊的大小、Shell 進(jìn)程創(chuàng)建文件的大小、內(nèi)存鎖住的大小、常駐內(nèi)存集的大小、打開文件描述符的數(shù)量、分配堆棧的最大大小、CPU 時(shí)間、單個(gè)用戶的最大線程數(shù)、Shell 進(jìn)程所能使用的最大虛擬內(nèi)存。同時(shí),它支持硬資源和軟資源的限制。
作為臨時(shí)限制,ulimit可以作用于通過使用其命令登錄的 shell 會(huì)話,在會(huì)話終止時(shí)便結(jié)束限制,并不影響于其他 shell 會(huì)話。而對(duì)于長(zhǎng)期的固定限制,ulimit 命令語句又可以被添加到由登錄 shell 讀取的文件中,作用于特定的 shell 用戶。[root@kumu ~]# ulimit -a???????? //顯示當(dāng)前所有限制的詳細(xì)信息
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 可查看其狀態(tài)信息。舉個(gè)例子,改變可打開最大文件數(shù)從1024 到 10240,可以這么做:
# ulimit -n 10240 ?# 這只在shell中有用ulimit 命令可以使用在腳本中來更改對(duì)此腳本的限制。
用戶/進(jìn)程
登錄用戶和應(yīng)用程序的限制可以在/etc/security/limits.conf 中配置。舉個(gè)例子:
# cat /etc/security/limits.conf * hard nproc 250 ?????????????? # 限制所有用戶進(jìn)程數(shù) asterisk hard nofile 409600 # 限制應(yīng)用程序可打開最大文件數(shù)系統(tǒng)級(jí)
用sysctl來設(shè)置內(nèi)核限制。要使其永久,可以在/etc/sysctl.conf 中進(jìn)行配置。
# sysctl -a ??????? # 顯示所有系統(tǒng)限制 # sysctl fs.file-max ?? # 顯示系統(tǒng)最大文件打開數(shù) # sysctl fs.file-max=102400 # 更改系統(tǒng)最大文件打開數(shù) # cat /etc/sysctl.conf fs.file-max=102400 ???????? # 在 sysctl.conf 中的永久項(xiàng) # cat /proc/sys/fs/file-nr # 在使用的文件句柄數(shù)?
轉(zhuǎn)載于:https://blog.51cto.com/kumu1988/1091825
總結(jié)
以上是生活随笔為你收集整理的Unix toolbox注解2之Linux系统状态用户和限制的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PyQt - 维基百科,自由的百科全书
- 下一篇: PHP管理员登陆、验证与添加(前端验证)