shell基础练习笔记
1.关闭不必要的服务
ntsysv chkconfig
必须开启的服务有: crond/messagebus/network/iptables/sshd/syslog/sysstat/snmpd
关闭不必要的服务脚本:
for i in `chkconfig --list |awk ‘/3:on/ {print $1}‘|grep -v "crond\| messagebus\|sshd\|iptables\|network\|syslog\|snmpd\|sysstat"`;
do chkconfig --level 345 ${i} off;
done
开启需要的服务脚本:
for i in "crond" "messagebus" "iptables" "network" "snmpd" "sshd" "syslog" "sysstat";
do chkconfig --level 345 ${i} on;
done
3.检查服务的基本配置
dmidecode | grep "Product" | head -n 1 检查服务器型号
cat /proc/cpuinfo | grep name | cut -f2 -d: |uniq -c 检查CUP信号
free -m | grep Mem | awk ‘{print $2}‘
ifconfig | grep "inet addr" | awk -F: ‘{print $2}‘| awk ‘{print $1}‘
4.系统优化修改/etc/sysctl.conf文件,sysctl -p 是修改生效;
关闭不必要的服务使用ntsysv;查看自启动服务chkconfig;
5.修改系统的文件句柄书/etc/security/limits.conf 确认句柄允许数据ulimit -n
6.修改sshd监听端口,并禁止密码验证登录配置文件/etc/ssh/sshd_config
7.账号安全,清除除root用户之外的其他用户的登录权限
#!/bin/bash
for k in `cat /etc/passwd | grep -i "\/bin\/bash" | grep -v "root" | cut -d: -f1`;
do
usermod -s /sbin/nologin ${k};
done
更改root用户密码:
echo "xxxxxxxx" >/root/tmp.txt “xxxxxxxx”为设定的密码
passwd root --stdin </root/tmp.txt ;rm –f /root/tmp.txt
8.查看系统的基本信息脚本
#!/bin/bash
dmidecode | grep "Product" | head -n 1
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
free -m | grep Mem | awk ‘{print $2}‘
ifconfig | grep "inet addr" | awk -F: ‘{print $2}‘| awk ‘{print $1}‘
route -n
cat /etc/issue | head -n 1
uname -a
df -h | awk ‘{print $1,$2}‘
9.加载ext4模块
modprobe ext4
lsmod | grep ext4
yum -y install e4fsprogs
10.统计登陆用户数
uptime | cut -d‘,‘ -f 2 | sed ‘s/^[[:space:]]*//g‘
who | wc -l
11.添加用户脚本
#!/bin/bash
id $1 >/dev/null 2>&1
if [ $? -eq 0 ];then
echo "$1 is exsit!"
else
useradd $1
echo "123456" | passwd --stdin "$1" >/dev/null 2>&1
if [ $? -eq 0 ];then
echo "$1 create seccuss!"
fi
fi
12.sed删除空行
sed ‘/^$/d‘ file
13.sed删除行首的空格
sed -i ‘s/^[[:space:]]*//‘ filename
sed -i ‘s/[[:space:]]*//g‘ filename ##删除所有空格
sed s/[[:space:]]//g filename
#sed ‘s/^[ ]*//g‘ file
#sed ‘s/^ *//g‘ file
#sed ‘s/^[[:space:]]*//g‘ file
14.#删除所有行尾空字符
sed -i ‘s/[[:blank:]]+$//‘ filename
15.删除行的首数字
sed -i ‘s/^[0-9]*//g‘ filename
sed ‘s#^[0-9]{1,} ##g‘ filename
sed ‘s#^[0-9]* ##g‘ filename
本文出自 “咚咚的博客” 博客,谢绝转载!
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。