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. poj-1979 red and black(搜索)

    Time limit1000 ms Memory limit30000 kB There is a rectangular room, covered with square tiles. Each ...

  2. JS手风琴特效

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...

  3. Clarke and five-pointed star

    Clarke is a patient with multiple personality disorder. One day, Clarke turned into a learner of geo ...

  4. iOS学习笔记46-Swift(六)扩展

    一.Swift扩展 扩展就是向一个已有的类.结构体或枚举类型添加新功能,这包括在没有权限获取原始源代码的情况下扩展类型的能力.扩展和 Objective-C中的分类(category)类似,但是它要比 ...

  5. HDU1877 又一版 A+B

    Problem Description 输入两个不超过整型定义的非负10进制整数A和B(<=231-1),输出A+B的m (1 < m <10)进制数.   Input 输入格式:测 ...

  6. 【bzoj1604】[Usaco2008 Open]Cow Neighborhoods 奶牛的邻居 旋转坐标系+并查集+Treap/STL-set

    题目描述 了解奶牛们的人都知道,奶牛喜欢成群结队.观察约翰的N(1≤N≤100000)只奶牛,你会发现她们已经结成了几个“群”.每只奶牛在吃草的时候有一个独一无二的位置坐标Xi,Yi(l≤Xi,Yi≤ ...

  7. Server-Side Rendering(服务端渲染)的优点与缺点

    优点 1. SEO 客户端渲染,页面中只有初始的几个html容器,js生成内容填充到容器中,爬虫只能识别到初始的html容器,js生成的内容一般不会被识别,而服务端渲染直接给出html,爬虫可以识别到 ...

  8. python 面向对象与类的基本知识

    一  什么是面向对象,面向对象与类的关系. 面向对象的程序设计是用来解决扩展性. 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象 ...

  9. Docker 使用指南—— 基本操作

    版权声明:本文由田飞雨原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/98来源:腾云阁 https://www.qcloud ...

  10. FZOJ Problem 2103 Bin & Jing in wonderland

                                                                                                        ...