天天看点

企业场景运维案例:sed实战修改多行配置技巧

老男孩老师有关sed实战技巧分享,来自课堂教学内容实战

企业场景运维案例:sed实战修改多行配置技巧

1、在指定行前插入两行内容,分别为oldboy和oldgirl。

提示:被修改的文件内容必须要大于等于2行

sed -i '2 ioldboy\noldgirl' sshd_config 

2、企业实战例子:快速更改ssh配置(一键完成增加若干参数)

增加:

[root@oldboy ssh]# sed -i '13 iport 52113\npermitrootlogin no\npermitemptypasswords no\nusedns no\ngssapiauthentication no'  sshd_config 

查看:

[root@oldboy ssh]# sed -n '13,17p' sshd_config  

port 52113 

permitrootlogin no 

permitemptypasswords no 

usedns no 

gssapiauthentication no 

3、如果是快速修改参数可以用如下方法(企业实战例子)

echo "#--------sshconfig修改ssh默认登录端口,禁止root登录----------------------------#" 

\cp /etc/ssh/sshd_config /etc/ssh/sshd_config.$(date +"%f"-$random) 

sed -i 's%#port 22%port 52113%' /etc/ssh/sshd_config 

sed -i 's%#permitrootlogin yes%permitrootlogin no%' /etc/ssh/sshd_config 

sed -i 's%#permitemptypasswords no%permitemptypasswords no%' /etc/ssh/sshd_config 

sed -i 's%#usedns yes%usedns no%' /etc/ssh/sshd_config 

sed -i 's%gssapiauthentication yes%gssapiauthentication no%' /etc/ssh/sshd_config 

egrep "usedns|52113|rootlogin|emptypass|gssapiauthentication" /etc/ssh/sshd_config 

提示:如果是指定行修改还可以是:

sed -i '2735s/admin_tenant_name=service/adminadmin_tenant_name=admin/' nova.conf 

作者:老男孩linux运维

来源:51cto