doraemon的python centos的入门(五)用户和用户组权限

13 用户和用户组

13.1 用户

  • 分类

    • 超级管理员 root uid 0

    • 普通用户

      • 系统用户:一般情况下用来启动服务或者运行进程,一般情况下系统用户是不可以登录

        uid 1-999(centos7)1-499(centos6)

      • 可登录用户:可以登录系统的用户

        uid 1000-65535(centos7) 500-65535(centos6)

useradd

只能用root用户来创建

-d 指定用户的家目录,不能创建在/tmp,默认用户的家目录不需要手动创建-g 组信息 主组有且只能有一个-G 指定附加组 可以有多个-M 不创建家目录-N 不创建组,默认继承user组-r 创建一个系统用户,id从1000一次递减-s 登录以后使用的shell /sbin/nologin(相当于一个黑名单) 可以登录看到提示,但是立马被踢掉-u 指定uid/etc/default/useradd 默认的配置文件-D 显示默认配置useradd -D -s /sbin/nologin 修改默认登录后的shelluseradd -D -b /opt/ 修改默认的家目录useradd -D -g 3000 修改摩尔你的组

passwd

passwd [options] username 用来设置密码-d 删除用户的密码 不能登录-l 锁定用户-u 解锁用户-e 强制用户下次登录的时候修改密码-x maxdays 密码的最长有效期-m mindays 密码的最短有效期-w wandays 提前多长时间开始警告用户-i days 密码过期多长时间以后账号被禁用--stdin 从标准输入读入数据 echo "passwd"|passwd ==stdin username

chage

交互式的修改密码的策略

-d  将密码修改时间设置为执行的时间-E 设置用户的过期时间-I 密码过期多长时间以后账户被禁用-l 显示密码的策略-m 密码的最短使用期限-M 密码的最长使用期限-W 密码去哦器的警告天数

passwd文件详解:

  • 用户名

  • 密码占位符(x)

  • 用户的id

  • 组id

  • 描述信息

  • 家目录

  • 登录后shell

usermod

-L 锁定-U 解锁-d 新的家目录不会自己创建,要想创建要使用-m选项usermod -md /user/local/alex alexdsb-g 修改主组-G 修改附加组-a 追加附加组usermod -a -G root alexsb-l 改名-s 修改登录后的shell-u 修改uid

userdel 删除用户

-r 删除用户的时候删除用户的家目录

shadow 文件格式(存放用户名与密码等信息的)

  • 用户名

  • 密码:一般情况是sha512加密 $加密方式$盐$加密之后的字符串

  • 从1970年1月1日到密码最近一次被修改的时间

  • 密码的最少使用期限

  • 密码的最大使用期限

  • 密码过期多长时间提示用(默认是7天)

  • 密码过期多长时间之后被锁定

  • 从1970年1月1日算起,多少天之后账户失效

切换用户

  • su

    • su username 切换用户,切换用户要输入切换到用户密码

    • su - username 完全切换,会切换用户的目录还会切换用户的环境变量

    • root 切换到别的用户不需要输入密目

  • su [-] username -c "command" 切换用户执行命令后再退回之前用户

  • sudo command

用root用户修改/etc/sudoers文件加上xiaofeng ALL=(ALL(命令))      NOPASSWD(不需要输入密码): ALL表示一个组%wheel  ALL=(ALL)       ALL

13.2 用户组

  • 超级用户组 root 0

  • 普通用户组

    • 系统用户组 gid 1-999(centos7)1-499(centos6)

    • 可登录用户组 1000-65535(centos7) 500-65535(centos6)

groupadd

-g 用来指定gid-r 用来指定系统组

group文件格式

  • 组名

  • 密码占位符

  • gid

  • 以当前组为附加组的用户

groupmod

-g 修改gid-n 修改组的名称

groupdel 删除用户组

登录远程机器

两种认证方式:

  • 用户名+密码

  • 用户名+key

使用key登录

ssh-keygen 生成key
公钥
私钥
非对称加密
ssh-copy-id 复制key到远程机器
公钥加密私钥解密

14 磁盘

mount 用来查看挂载信息

  • df 查看磁盘占用

    • -h 显示人类可读的信息

  • du 显示的目录的占用空间

    • -h 显示人类易读的信息

    • -s 显示的是目录的本身

  • du -sh / 显示根的占用情况

  • du -sh /* 显示根下的每一个目录的占用情况

dd 复制文件生成文件

dd if=/dev/zero of=/dev/null bs=10M count=2
if input file 复制的源文件
of output file 复制出来的文件
bs block size 只能用整数,单位可以试K,M,G,T
count 次数

14.1 raido

raid(安装系统):

  • 读写速度提升

  • 可用空间 N*个数

  • 没有容错能力

  • 最少需要2块磁盘

raid1(存放数据)

  • 度的能力提升,写的性能稍微有点下架

  • 可用空间N

  • 有容错能力

  • 最少要两块

raid5(目前比较流行)

  • 读写性能提升

  • 可用空间N*(个数-1)

  • 有容错能力

  • 最多可以坏1块(同时)

  • 最少要3块

raid6

  • 读写性能有提高

  • 可用空间N*(个数-2)

  • 有容错能力

  • 最多可以坏2块(同时)

  • 最少需要4块

raid10

先做raid1 在做raid0

  • 读写性能有提升

  • 可用空间N*个数/2

  • 有容错能力:一个组里面只能坏一块

  • 最少需要4块

raid01 先做raid0,在做raid1

15 包管理工具

不同系统中包管理工具是不一样的:

  • windows exe

  • rehat rpm

  • yum 自动解决依赖关系

  • 包:

    • 安装包 yum install

    • 清除缓存 yum clean

    • 列出所有的包 yum list

    • 更新包 yumupdate

    • 搜索包 yum search

    • 详细信息 yum info

    • 列出yum仓库信息 yum repolist

    • 重新安装 yum reinstall

    • 卸载包 yum remove

    • 检查依赖关系 yum deplist

    • 重建缓存 yum makecache

    • 搜索指定的命令是由哪个包生成的 yum provides

  • 包组

    • 列出包组 yum group list

    • 安装包组 yum group install

    • 查看包组信息 yum group info

    • 卸载包组 yum group remove

rpm命令

rpm -q package 检查这个包是否安装
-q 查询
-a 列出所有已经安装的包
-f 查询文件有哪个包生成
rpm -qf /etc/redis.conf
rpm -ql redis
-l 查询包的信息
rpm -qi redis
-i 查找包的信息
rpm -qc redis
-c 查找包生成的配置文件
rpm -e package 卸载包

包的命名规范

python-2.7.5-80.el7_6.x86_64
name-version(大版本.小版本.修订版)-制作者的修订次数.应用系统.架构
noarch 不区分架构
架构
	x86_64
	Amd64
	i386,i486,i586,i686
	ppc(powerpc)

yum参考的配置文件

位置::/etc/yum.repos.d/

后缀:repo

[epel] #名字                                                                                                           
name=Extra Packages for Enterprise Linux 7 - $basearch #描述信息
baseurl=http://mirrors.aliyun.com/epel/7/$basearch #仓库的地址 可以是http:// https:// ftp:// file://(本地)
failovermethod=priority # 设置访问规则
enabled=1  #是否禁用 0表示禁用 1表示启用
gpgcheck=0  # 要不要检查key,1表示检查 0表示不检查
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 
$release 系统版本
$basearch 架构

yum 选项

  • -y yes 需要确认的地方不用确认

  • -q 静默模式

15.1 编译

  • 优点:可以自定义功能

  • 缺点:安装比较耗时

yum install zlib-devel
wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tar.xz
tar xf Python-3.6.8.tar.xz
cd Python-3.6.8
./configure --prefix=/opt/python36  检查环节预处理
make 释放makefile文件
make install 安装

错误整理

configure: error: in `/root/test/Python-3.6.8‘:
configure: error: no acceptable C compiler found in $PATH
yum install gcc

添加环节变量

vim /etc/profile.d/python.sh
PATH=$PATH:/opt/python36/bin

相关推荐