文件路径:/etc/security/limits.conf
常见配置:
对appuser做资源限制
appuser soft nofile 655360
对所有用户做资源限制
* soft nofile 655360
对用户组做限制
@student hard nofile 65535
类型:
soft 超过阈值告警
hard 真正的上限
命令:ulimit
ulimit -a 显示当前所有的资源限制
ulimit -H 设置硬件资源限制 必须卸载n参数前面
ulimit -S 设置软件资源限制
ulimit -n 设置进程最大打开文件描述符数
ulimit -f 设置可以建立的最大文件容量
注意:
内核静态参数配置 /etc/sysctl.conf
例如:
????????在配置文件中追加:net.ipv4.ip_forward=1?
????????sysctl -p /etc/sysctl.conf 使参数生效
内核运行参数配置 sysctl
内核参数位置:/proc/sys 参数名称是以文件所在的路径,并将 '/' 以 '.' 来取代
例如:/proc/sys/net/ipv4/ip_forward的参数名称为net.ipv4.ip_forward
sysctl -w net.ipv4.ip_forward=1
等价于
echo 1 > /proc/sys/net/ipv4/ip_forward
注意:部分内核参数是不允许修改的,在没清楚参数作用前,变更要谨慎!!!
FIRST='Hello World!'
注意:
1) 变量等号左右不能有空格
2) 变量由字符和数字组成,但不能用数字开头
3) 变量的内容可以用""和''组成,可以拼接和共用
"" 内可以包含转义符
'' 会原样输出,纯文本
\ 在双引号内是转义字符
`` 反单引号返回内容命令执行结果
$() 同上,返回内容命令执行结果
4) $变量名 取值
5) 未定义的变量为空
案例:
# echo "$FIRST" # 可以取值
Hello World!
# echo '$FIRST' # 原样输出
$FIRST
# FIRST="Hello World!" # ! 是特殊字符需要转义
bash: !": event not found
unset FIRST
常用特殊变量
$ 当前shell的PID
? 上一条命令的返回值,0是执行成功,其他值都是不成功
echo $$
echo $?
用例:
time_env=`date "+%Y/%m/%d %H:%m:%S"`
echo $time_env
2023/12/26 17:12:16
从前往后剪切
# :从第一个字符开始,尝试匹配正则表达式,去掉 <第一个完全满足的最小子串>
例:去掉符合 '*/' 正则表达式的第一个子串,最小匹配
echo ${time_env#*/}
12/26 17:12:16
## : 从第一个字符开始,尝试匹配正则表达式,去掉 <第一个完全满足的最大子串> 贪婪
例:去掉符合 '*/' 正则表达式的第一个子串,贪婪匹配
echo ${time_env##*/}
26 17:12:16
从后往前剪切
% :从右往左,尝试匹配正则表达式,去掉 <第一个完全满足的最小子串>
echo ${time_env%:*}
2023/12/26 17:12
%% :从右往左,尝试匹配正则表达式,去掉 <第一个完全满足的最小子串> 贪婪
echo ${time_env%%:*}
2023/12/26 17
未完待续