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

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

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

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

3.chmod:改变文件的权限

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

4.cat

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

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

  1. grep "$" a.txt
  2. grep -n "^$" a.txt
  3. grep -nv "^$" a.txt

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

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

  1. head -n -10 /etc/inittab 除了后十行其余都显示
  2. tail -f access.log
  3. tailf access.log
  4. # tail -f的简写并不是tailf,这两个没什么关系,是两个命令
  5. cut -b 3 hehe.txt 显示第三个字节
  6. cut -b 3-4 hehe.txt 显示nm
  7. 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)

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

7.useradd

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

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

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

a.非交互式修改密码:

echo "123456" | passwd --stdin oldboy

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

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

  1. 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
  2. 举一条命令stu01用户的过程拆解如下:
  3. useradd stu01;
  4. pass=`echo $RANDOM|md5sum|cut -c 1-8`;
  5. echo $pass|passwd --stdin stu01;
  6. echo -e "stu01\t$pass">>/tmp/oldboy.log

c.passwd设置日期

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

d.chage(不常用)

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

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

e.删除用户

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

删除经验:

  1. 1.vi /etc/passwd 注释掉用户;
  2. 2.把登录shell改成/sbin/nologin;
  3. 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. 第一课 项目的介绍 Thinkphp5第四季

    学习地址: https://study.163.com/course/courseLearn.htm?courseId=1004887012#/learn/video?lessonId=1050543 ...

  2. lwqq

    源码安装lwqq 加密保存密码 发送截图

  3. 常用C/C++预处理指令详解

    预处理是在编译之前的处理,而编译工作的任务之一就是语法检查,预处理不做语法检查.预处理命令以符号“#”开头. 常用的预处理指令包括: 宏定义:#define 文件包含:#include 条件编译:#i ...

  4. dll和lib关系及使用

    对于dll和lib两者的关系,需要理解的一个概念是编译时和运行时.   lib是编译时的东西,在lib里面包含了方法名和方法所在的dll名字,可以用dumpbin -all XXX.lib查看内容. ...

  5. 认识Function.prototype.call

    一.前言                                大家先预计一下以下四个函数调用的结果吧! var test = function(){ console.log('hello w ...

  6. Linux inode 之我见

    Linux硬盘组织方式为:引导区.超级块(superblock),索引结点(inode),数据块(datablock),目录块(diredtory block).其中超级块中包含了关于该硬盘或分区上的 ...

  7. ASP.Net教程系列:多线程编程实战(一)

    Web开发中使用多线程可以增强用户体验,尤其是多用户.多任务.海量数据和资源紧张的情况下.所以我们的ASP.Net教程设立多线程编程实战专题.下面这些代码范例都是入门级的,希望对对大家学习ASP.Ne ...

  8. 听说你的模型损失是NaN

    听说你的模型损失是NaN 有时候,模型跑着跑着,损失就莫名变NaN了.不过,经验告诉我们,大部分NaN主要是因为除数是0或者传给log的数值不大于0.下面说说是log出NaN的几种常见解决方法. 毕竟 ...

  9. NumPy数值计算(1)

    NumPy数值计算(1) 将列表转为NumPy中的array from __future__ import print_function from numpy import * import oper ...

  10. creat-react-app/dva静态项目,用nginx部署在次级域名路径(如a.com/sub/)需要注意的几点

    因为要把dist文件夹部署在一个域名的次级目录,没想到和运维同学一起折腾了一下午.. 放在这里备忘,也给后来的同学一些可查的中文资料: 1,dva/cra给你的模板index.html是在public ...