【Linux】账户和权限管理

管理员用户一般默认为:root用户

cat /etc/passwd        查看用户账户信息文件

普通用户:普通用户都是由管理员用户创建的,拥有的权限是受限的

                  普通用户在自己的家目录拥有完整的权限(bin、sbin受限)

程序用户:安装操作系统以及某些特定程序时,会安装一些低权限的账号,

                  主要用来维持特定的系统程序,以及某个第三方程序的正常运行;

                  这些用户是不能登录到系统的(nologin)

                 

通过uid区分用户类型:

        管理员           0

        普通用户        centos7,1000+;centos6,500+;

        程序用户        centos7,1-999;centos6,1-499;

id root                查看root用户的简略信息

gpasswd -a user1 user2        将用户1添加为用户2的附加组

group        基本组(私有组)        基本组只能有一个

dn              附加组(公共组)        附加组可以有多个

在Linux系统中:我们统一用账户、用户作为标的

用户名;x密码占位符;0 uid;0 gid;root 用户全名;/root 用户的家目录

 /bin/bash        登录到shell bash解释器;可以登录到系统

/sbin/nologin        不能登录到系统,适用于一般用户

 /etc/shadow 用户账号文件

       保存用户的密码、账户有效期等信息

       文件位置:/etc/shadow

        每一行对应一个用户的密码记录

用户名;密码 

添加用户账号

        useradd [选项] 用户名

常用选项:

        -u 指定uid号(uid号要未被使用)

        -d 指定用户家目录的位置

        -e 指定用户账户的失效时间;yyyy-mm-dd

        -g 指定用户的基本组

        -G 指定用户的附加组

        -M 不建立用户的家目录

        -S 指定用户的登录shell

查看用户信息:

        cat /etc/passwd

        cat /shadow

        id 用户名

创建密码的两种方式:

        passwd 用户名

        echo 密码 | passwd --stdin 用户名

passwd 管理用户账户

        -d        清空账户密码;清空后可以免密登录

        -l        锁定账户;锁定后无法登录(小写L)

        -s        查看账户的状态,是否被锁定

        -u        解锁账户

        

su 切换用户

        su = su - root        切换到root用户

        su - 用户A        切换到指定用户A(完全切换)

        su 用户A        切换到用户A(不完全切换)

exit        关闭当前用户;退回到上一用户

修改主机名:

        hostname 主机A        修改主机名为“主机A”;临时修改 

        hostname set-hostname        永久修改,刷新即可;

        vim /etc/hostname                永久修改,但需要重启才能生效;

usermod 修改用户账户属性

usermod [选项] 命令

        -u        修改用户的uid号

        -d        修改用户家目录的位置

        -e        修改用户账户的失效时间

        -g        修改用户的基本组(私有组)

        -G       修改用户的附加组(公共组)

        -s        修改用户的登录shell

        -L        锁定用户

        -U        解锁用户

锁定用户的两种方法

        1.passwd -l        锁密码

        2.usermod -L      所账户

cp /etc/skel/.bashrc/ /home/test/

cp /etc/skel/.bash_profile/ /home/test

userdel        删除用户

        userdel -r     删除用户及其家目录

配置文件

        source 文件        读取、令文件立即生效

        source /etc/profile        在当前bash环境下读取并执行 /etc/profile 中的命令

        /etc/bashrc                用户账号的初始配置文件;是系统的全局配置文件,对所有用户都生效

                                          包含一些系统级别的环境变量和默认的系统级别的 shell 配置

        vim /etc/profile

                alias cat="cat -n"        设置别名

                :wq!

        source /etc/profile                读取并执行

~/.bash_profile        该文件是用户登录时被执行的脚本

                                可以用来设置环境变量和一些常用的命令别名等信息。

                                通常用来为用户定制个性化的系统环境。

        vim .bash_profile

                alias cat="cat -n"

        source .bash_profile

        修改之后重新登录shell即可

~/.bashrc        该文件是在每个新的bash shell打开时被执行的脚本

                        通常用来定义一些用户自己的shell函数、命令别名、路径、颜色等等

        vim .bashrc

                alias cat="cat -n"

        source .bashrc

/etc/bashrc        该文件是系统全局的bash配置文件,对所有用户都有效

                          可以在该文件中添加系统全局的环境变量、别名等信息

                          通常用来为所有用户定制系统级别的配置信息

这些配置文件是在不同的环境下被执行的,执行的顺序也不同。

通常在登录系统时:

        系统会首先执行 /etc/profile 文件

        然后 /.bash_profile 文件会被执行

        然后再执行 /.bashrc 文件

而在退出bash shell时,~/.bash_logout文件会被执行

例:指定用户登陆时,以脚本的形式执行,弹出来提示语 "欢迎你!"

        vim /test.sh

                #!/bin/bash

        echo "提示语!"

        chmod 777 /test.sh

        chown student:student /test.sh

vim /home/student/.bash_profile

里面的编辑内容:(跳转到最后一行,添加脚本)

添加一行:/tset.sh

        groupadd        添加组

        groupdel          删除组

gpasswd 添加、删除组账号文件

        gpasswd [选项] 组账号名

                gpasswd        添加、删除组成员

        常用选项:

                -a        向组内添加一个用户

                -d        从组内删除一个用户

                -M        定义组成员列表,以逗号分隔

        cat /etc/gshadow        查看组账号密码

查询已经登录到主机的用户信息

        w

        who

        users

文件/目录的权限和归属

        访问权限

                ·读取r:允许查看文件内容、显示目录列表

                ·写入w:允许修改文件内容、允许在目录中新建、移动、删除文件或子目录

                ·可执行x:允许运行程序、切换目录

        归属(所有权)

                ·属主:拥有该文件或目录的用户账号

                ·属组:拥有该文件或目录的组账号

        chmod        修改文件的权限

                u        文件的所有者

                g        文件所在组

                o        其他用户

                a        所有用户

        chmod 用户 修改 权限 文件名

        chmod ugoa +-= rwx 文件名

        chmod -R                递归修改

        

chown 设置文件和目录的归属

        chown 所有者:所在组 文件名

        chown root.root 123        更改文件123的所有者和所在组为root

        chown root 123                只改所有者

        chown .root 123                只改所在组

chown -R root aa                  递归修改aa及其子目录和文件的所有者为root

chown -R aa/bb/cc                只对最后的文件cc生效

umask        决定创建目录和文件之后的默认权限

        文件默认:666        目录默认:777;文件默认不给予执行权限

例:umask 555

        touch ky30

例:cp /etc/passwd/ /opt/ky30 cp和两个文件所需的最低权限

        cp                 需要可执行x

        passwd         需要可读r

        ky30              需要可写w

实验题:

一、用户的家目录丢失后如何恢复?

1.先创建一个用户test,把它的家目录设置到/opt目录下

 2.再修改用户test的家目录到/home/test

    cat /opt/passwd        查看一下用户的信息,可以看到路径已经修改成功了;

    但是home目录下却没有对应的目录;此时达到了题意“家目录丢失

 3.由于家目录丢失,所以并不能正常切换用户;下面我们来解决这个问题

        首先在/home目录下创建一个test目录;

        然后从/etc/skel/复制两个文件:(.bashrc.bash_profile)test目录;

        将test目录和复制过来的两个配置文件的所有者修改为test

        再su - test 就可以正常切换用户test了

二、编辑初始配置文件,看一下效果

        1.通过vim /etc/profile 进入初始配置文件

       2.到最后一行输入alias ls='ls -l' 设置一个别名;然后:wq!保存退出

 

        3.退出vim后;source /etc/profile 读取并执行刚配置过的文件

            可以看到ls便可以长格式显示;切换到其他用户也同样生效

三、写一个脚本文件;使当切换指定用户时,出现欢迎词

       1. 在/opt目录下创建一个test.sh文件

       2. vim test.sh 进入这个文件;

        输入#!/bin/bash

                echo "欢迎你!"

        保存退出;chmod 777 test.sh 赋予test.sh文件读、写、执行的权限;

        创建一个用户student ;修改test.sh文件的所有者和所在组为student;

       vim /home/student/.bash_profile 进入studen用户的配置文件,

        在最后面添加路径 /opt/test.sh,保存退出

        然后su - student 切换用户,出现欢迎词

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值