Linux 学习 - 2

学习linux,做到基本能够运维服务器

2016-04-24 | 阅读

用户相关命令

  • who : 查看当前登录的用户信息,以及登录ip

Linux 用户权限管理 UID和GID

机器识别的是ID,输入的账号最终在 /etc.passwd中对应成ID.

所以,有UID,用户ID ,User ID, 有GID,群组ID,Group ID.

修改用户权限,以让用户获得管理员权限

权限问题,配置jenkins时,jenkins执行部署代码时,由于没有slave的管理员权限,导致脚本执行异常,所以必须要赋予jenkins以管理员权限,才能正常执行命令.

修改 /etc/sudoers 文件

添加chenwd ALL=(ALL) ALL赋予root权限:

## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
jenkins ALL=(ALL) ALL
添加%chenwd ALL=(ALL) NOPASSWD: NOPASSWD:  ALL 执行sudo时不用输密码:

## Same thing without a password
# %wheel        ALL=(ALL)       NOPASSWD: ALL
%jenkin ALL=(ALL) NOPASSWD: NOPASSWD:  ALL
使用sudo获得root权限举例:

vi /etc/sudoers (最好用visudo命令)

注释掉 Default requiretty 一行

#Default requiretty

添加开机启动脚本

/etc/rc.d/rc.local文件中执行需要执行的初始化脚本.如 :

sh /root/serverSetup.sh

Linux Sed命令

sed -e 's/foo/bar/' myfile.txt

将 myfile.txt文件中的每一行第一次出现的foo用bar进行替换.

  • sed总是以行为单位进行替换
  • sed 处理的是源文件的拷贝,而不是源文件.

-i 表示直接替换文件中的内容,但是在mac上运行会出现错误 :sed: 1: "Podfile.lock": extra characters at the end of P command,需要在命令中加一个空白,如下:

 sed -i "" "s/helloworld/coding/g" Podfile.lock

sed的匹配模式是正则表达式