1.用chattr命令防止系统中某个关键文件被修改

chattr +i /etc/resolv.conf
chattr -i /etc/resolv.conf 要想修改此文件就要把i属性去掉
lsattr /etc/resolv.conf
# 让某个文件只能往里面追加数据,但不能删除,适用于各种日志文件
chattr +a /var/log/messages

2.chown:改变文件的属主和属组

chown oldboy hehe.txt  只改变属主
chown :oldboy hehe.txt 只改变属组
chown oldboy.oldboy hehe.txt 两者都改
chown -R oldboy.oldboy oldboy/ -R递归所有文件

3.chmod:改变文件的权限

chmod u=rw,g=r,o=rwx hehe.txt
chmod o=--- hehe.txt
chmod o-rwx hehe.txt 这两种方法都可以去掉权限

4.cat

cat -n hehe.txt  查看文件并为所有行标记行号
cat -b hehe.txt 查看文件但之标记非空行的行号
cat -E a.txt 查看文件并在行尾显示$(每一行都有$)
cat -s a.txt 将多个空行合并成一个空行
-s:suppress repeat empty lines
cat -T a.txt 可以区分tab键和空格(制表符显示为^I)

所以查看所有行、空行和不看空行的命令如下:

grep "$" a.txt
grep -n "^$" a.txt
grep -nv "^$" a.txt

tac命令是从文件的末行开始显示,rev命令是将字母顺序先后颠倒.

5.cut-默认以tab键为分隔符

head -n -10 /etc/inittab  除了后十行其余都显示
tail -f access.log
tailf access.log
# tail -f的简写并不是tailf,这两个没什么关系,是两个命令
cut -b 3 hehe.txt 显示第三个字节
cut -b 3-4 hehe.txt 显示n到m
cut -b -4 hehe.txt 显示n个字节之前的内容

用-b切割中文的话就会乱码,-c切割中文不会乱码,会自动分辨英文、中文.

# head -1 /etc/passwd | cut -d : -f4

-d指定分隔符--delimiter,-f指定字段--fields

cut分隔符只支持单个字符,awk默认分隔符是空格,且支持多个分隔符

指定空格为分隔符用:-d ' ' 引号中有一个空格

6./etc/skel目录

/etc/skel目录是用来存放新用户环境变量文件的目录,当添加新用户时,

这个目录下所有文件会被复制到新添加的用户家目录下.作用:

可以为新用户创建统一的、标准的初始化环境(例如编辑.bash_profile)

切换用户时出现这种情况---bash-4.1$
用户没有家目录或者家目录下缺少.bash_profile、.bashrc文件,解决办法:
以当前用户的身份将这些文件拷贝过来.
bash-4.1$ cp /etc/skel/.bash* .

7.useradd

使用useradd命令添加用户,所用参数在这个文件中/etc/default/useradd

GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes
# useradd -c "production" -u 806 -G root,mysql -s /bin/sh -md /oldboy1 oldboy1
-c:创建用户的说明;-G:指定多个用户组;-g:指定主组
-m:指定家目录,如果不存在则创建;-d:指定家目录(得存在)
-e:指定过期时间(格式年/月/日);-M:不创建家目录

8.passwd(更改的是/etc/shadow文件)

a.非交互式修改密码:

echo "123456" | passwd --stdin oldboy

b.批量创建10个用户stu01-stu10,并且设置随机8位密码,

要求不能用shell的循环(例如:for,while等),只能用linux命令及管道实现.

echo stu{01..10}|tr " " "\n"|sed -r 's#(.*)#useradd \1 ; pass=`echo $RANDOM|md5sum|cut -c 1-8`; echo $pass|passwd --stdin \1; echo -e "\1 \t $pass">>/tmp/oldboy.log#g'|bash
举一条命令stu01用户的过程拆解如下:
useradd stu01;
pass=`echo $RANDOM|md5sum|cut -c 1-8`;
echo $pass|passwd --stdin stu01;
echo -e "stu01\t$pass">>/tmp/oldboy.log

c.passwd设置日期

passwd -n 7 -x 60 -w 10 -i 30 oldboy
-n:多少天以内不能修改密码
-x:多少天以后必须修改密码
-w:过期前多少天通知用户
-i:密码过期后多少天,用户被禁掉

d.chage(不常用)

chage -l oldboy  查看用户密码期限,看的是/etc/shadow

-E:将账户过期时间设为"过期日期",MM/DD/YY

e.删除用户

userdel -r oldboy  连家目录一起删,一般不这么用

删除经验:

1.vi /etc/passwd 注释掉用户;
2.把登录shell改成/sbin/nologin;
3.openLDAP账号统一管理,ldap库里删掉用户

f.usermod--修改用户属性

# usermod -c "oldboy6" -u 999 -G sa -s /bin/bash -md /home/oldboy6 oldboy6

参数老男孩QQ空间:https://user.qzone.qq.com/49000448/blog/1422183723

chattr&chown&cat&cut&useradd&passwd&chage&usermod的更多相关文章

  1. 用户管理命令--passwd,usermod,userdel

    用户修改密码命令--passwd 当修改用户的密码时,也要分普通用户和超级用户两种情况 普通用户:修改密码前需要先输入当前密码,确认是否正确 密码设置不可以过于简单 超级用户:权利非常的大,可以设置任 ...

  2. Linux 基础命令、文档树 和 bash

    最近发现了一个总结得更好的:bash cheatsheet 本文只是我对 linux 基础学习的一个总结,可能仅适用于复习用.算是我的 Linux 备忘录. 最基础 tab 补全 * 通配符 ctrl ...

  3. linux账户管理[转自vbird]

    useraddpasswdchageusermoduserdelfingerchfnchshidgroupaddgroupmodgroupdelgpasswd useradd 完全参考默认值创建一个用 ...

  4. Linux学习之CentOS(十一)-----Linux 账号管理(转)

    Linux 账号管理(转) useraddpasswdchageusermoduserdelfingerchfnchshidgroupaddgroupmodgroupdelgpasswd su(帐号切 ...

  5. linux 运维必备150个命令

    线上查询及帮助命令(1个) man 目录操作命令(6个) ls tree pwd mkdir rmdir cd 文件操作命令(7个) touch cp mv rm ln find rename 文件查 ...

  6. 运维必须掌握的150个Linux命令

    线上查询及帮助命令(1个)man 目录操作命令(6个)ls tree pwd mkdir rmdir cd 文件操作命令(7个)touch cp mv rm ln find rename 文件查看及处 ...

  7. liunx命令大全

    Linux常用命令大全   Linux常用命令大全(非常全!!!) 最近都在和Linux打交道,感觉还不错.我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人 ...

  8. Linux常用的200个命令总结分类

    ●目录操作命令(6 个) ls tree pwd mkdir rmdir cd   ●文件操作命令(7 个) touch cp mv rm ln find rename   ●文件查看及处理命令(21 ...

  9. Linux 账号管理与 ACL 权限配置

    要登陆 Linux 系统一定要有账号与口令才行,否则怎么登陆,您说是吧?不过, 不同的使用者应该要拥有不同的权限才行吧?我们还可以透过 user/group 的特殊权限配置, 来规范出不同的群组开发项 ...

随机推荐

  1. python 列表加法"+"和"extend"的区别

    相同点 : "+"和"extend"都能将两个列表成员拼接到到一起 不同点 :   + : 生成的是一个新列表(id改变) extend : 是将一个列表的成员 ...

  2. zookeeper安装、配置、使用

    [安装] wget http://www.apache.org/dist/zookeeper/zookeeper-3.3.6/zookeeper-3.3.6.tar.gz tar zxvf zooke ...

  3. MIP启发式算法:Variable Neighborhood Decomposition Search

    *本文记录和分享学习到的知识,算不上原创. *参考文献见链接. 本文主要简述和VND VNS RINS很相关的vairable neighborhood decomposition search. 目 ...

  4. 卸载firefox多余的搜索引擎

    火狐默认了几个搜索引擎,百度,bing,yahoo等.搜一些技术方面的东西的时候,google返回的结果比这些要准确有用.所以想卸载掉那些不用的. 具体操作: 点击搜索栏,左侧搜索引擎图票右下角的倒三 ...

  5. Android兼容性测试CTS --环境搭建、测试执行、结果分析

    为了确保Android应用能够在所有兼容Android的设备上正确运行,并且保持相似的用户体验,在每个版本发布之时,Android提供了一套兼容性测试用例集合(Compatibility Test S ...

  6. POJ 3057 网络流 Evacuation

    题意: 有一个n×m的房间,四周每个格子要么是墙要么是门.中间部分是墙或者人. 现在所有人要从房间逃出去,每个人的速度为1,也就是每个单位时间只能向上下左右四个方向走一格. 多个人可以站在同一个格子上 ...

  7. CSS3中的border-radius兼容IE低版本解决方法

    ie-css3.htc先说道说道这斯是弄啥嘞ie-css3.htc是一个可以让IE浏览器支持部份CSS3属性的htc文件,不只是box-shadow,它还可以让你的IE浏览器支持圆角属性border- ...

  8. TensorFlow——小练习:feed

    feed就是喂入数据 使用feed前必须要有占位符作为操作的对象,在运行操作的时候喂入数据. # _*_coding:utf-8_*_ import tensorflow as tf import n ...

  9. [UnicodeEncodeError]:Django中解决URL中文解释乱码问题

    Django中在使用HttpResponseRedirect的时候,跳转URL中如果存在中文,会报错:会报UnicodeEncodeError错误. 解决办法: 使用urlquote对URL进行编码 ...

  10. springboot集成shiro——登陆记住我

    在shiro配置类中增加两个方法: com.resthour.config.shrio.ShiroConfiguration /** * cookie管理对象 * @return */ @Bean p ...