linux什么用户有完全控制权,Linux初学3-1 *用户管理

===============Linux用户管理===============

用户的分类:(网络环境)

网络操作系统必不可少的一个安全概念,标识网络操作系统的安全主体

根据用户信息的存储位置的不同,可以分为:

1、本地用户:存储在本地(本机)的数据库中

2、网络用户(Windows 2000 AD,linux):存储在网络中一个服务器(目录服务器)

linux用户的分类(本地用户): UID:用户标识符

UID=0  超级用户(root):拥有对系统的完全控制权

UID=1——499 伪用户:用于管理系统中后台服务的启动和关闭(不可本地登录)

UID=500—— 普通用户:分配给系统的使用者,对计算机资源具有特定的访问权的用户

本地用户的信息存储在——“数据库”中,一系列的配置文件

linux配置文件

/etc/passwd :存储用户的基本信息

/etc/shadow :存储用户的安全信息

/etc/group :存储组的基本信息

/etc/gshadow :存储组的安全信息(一般不用)

/etc/passwd文件结构(表格)(共7列):

一行代表一个用户的信息,一行由7列构成,每一列具有不同的含义

root:x:0:0:root:/root:/bin/bash

1、用户名 (用户登陆系统时使用的名字,即登录名)

2、x说明用户有密码,且密码存储在/etc/shadow文件中,并加密。

3、UID用户编号为0

4、所属的组的编号(GID标识一个组)(用户是哪一个组的成员)为0

5、用户的comment信息(用户的全名或者一些解释信息)

6、用户的主目录的绝对路径

7、用户默认登录的SHELL类型(shell外壳程序,用于命令解释执行)

/etc/shadow文件结构(影子密码文件,存储用户的加密密码和其他安全信息的文件)

root:sdfkjshfkjshdfkjhsfkdsfdsfds:13657:0:99999:7:::

1、用户名

2、用户的加密密码(MD5算法得出的,密码不可逆)

3、其他安全选项(如有效期、锁定时间等)(Uinx时间)

/etc/group

root:x:0:root,admin,normal

1、组名

2、组密码(废弃,一般不使用)

3、GID:组的惟一标识号码

4、组成员,可以有多个成员

*****创建用户,对以上4个文件的影响如何??????****

创建用户本质:在以上文件中建立相应的行

命令:useradd = adduser(功能相同)

默认语法(\命令行,换行)

格式: useradd user_name(最简单、最常用的,直接创建用户的命令格式)

帮助: man useradd

复杂用法:useradd [-option values ...] user_name

范例:

1、创建用户abc,其他的选项默认

useradd abc

通过运行以上命令,系统会做如下修改:

1、在/etc/passwd等文件中添加了相应的行

2、在/home目录下自动创建了以用户名命名的主目录

3、自动将用户锁定,不允许登录,因为没有设置密码

2、为用户设置密码,使其可以登录

passwd user_name ——> passwd abc

3、创建用户hygj,用户的主目录设置为/home/hyadmin,默认的shell为

/bin/sh ,用户全名为hygj administrator。

useradd -d /home/hyadmin -s /bin/sh -c "hygj administrator" hygj

选项  选项 选项      用户名

用户信息维护:

修改用户名:

usermod -l new_name username

usermod -l newabc abc:把abc用户的名字改为newabc

锁定用户:使用户帐户暂时失效,不能够登录系统

1、usermod -L  -U   (L=LOCK U=UNLOCK)

帐户加锁本质,在/etc/shadow/文件的相应行的加密密码前加“!”

2、passwd -l -u (l=lock u=unlock)

密码加锁的本质,在/etc/shadow/文件的加密密码前加“!!”

反过来,如果锁定用户可以在密码前加“!”或“!!”,就可以实现锁定用户

用户身份切换

一般情况下,不推荐直接使用超级用户登录系统,推荐使用普通用户登录系统

当需要执行管理任务时,使用临时身份切换执行管理任务。

:用于临时的特定用户的管理任务

1、su 需要把管理员的密码告诉用户(一般管理员自己使用)

2、sudo   不需要管理员密码,即可执行管理员的任务(普通用户使用)

(默认情况下,只有管理员才可以创建用户)

1、su命令

格式: su user_name

user_name指用户需要使用的管理员帐户,如root

su [root] (没有将管理员的环境进行转换)

实验:让普通用户,创建用户test

1、创建用户test  useradd test

2、给用户test设置密码 passwd test

3、用户test用户登录 login。。。

4、su 回车,输入管理员密码

5、通过使用绝对路径执行管理任务

su - root(完全和管理员相同)

4、su - root 回车,输入管理员密码

5、此时和管理员的环境一样

以上的用法,存在一个缺点,就是管理员必须告诉用户超级密码,这样是不安全的。

sudo可以在不给用户管理员密码的情况下,执行管理任务

给普通用户授权步骤:

1、visudo

2、添加用户

normal ALL=(ALL) NOPASSWD:ALL

3、保存退出

4、用普通用户,通过sudo /path/command执行管理任务

用户的删除:

命令:userdel [-r] user_name

-r:在删除用户时,一并把用户的主目录一起删除,默认没有-r选项是不删除的

图形界面的用户管理:redhat-config-users

==================SHELL======================

SHELL的概念:

接口,用于用户和系统交互,它在内核的外面,用于向内核发出指令。

linux内核(汇编语言、C语言)

界面友好性非常差。使用接口用过编程实现,系统调用(API)

操作界面:

图形SHELL:gnome桌面环境、KDE桌面环境

字符SHELL:bash  sh csh tcsh ash

SHELL特性:拥有哪些优点以简化用户的操作

1、命令和文件的自动补齐功能

TAB(制表符):按一次是补齐,连续按两次就会把所有可能都显示出来

2、命令的别名

alias   显示系统中定义的别名

alias  alias_name='command' 定义别名

unalias alias_name  删除别名

3、命令历史的功能

history 显示命令历史

调用历史

!number  (编号):调用指定编号的命令

!String  执行最近历史中被执行过的以String开头的命令

!!  执行上一次执行的命令

向上箭头  从最近执行的命令向上翻行,然后执行

4、支持通用的管道和重定向功能(适用于DOS等系统)

重定向:修改命令的输入或输出

计算机的

标准输入 键盘和鼠标

标准输出 显示器

如果不希望使用以上的标准输入输出,就可以使用重定向符号

1、输出重定向符号

>  覆盖模式

>> 追加模式

ls  列出当前目录的文件列表,到显示器

ls > list 将当前目录的文件列表信息存储在文件list中

2、输入重定向符号

<  覆盖模式

<

mail to root 回车就会进入写邮件的界面

mail to root < list 将list文件的内容作为邮件的内容发给root用户

管道:一个命令的输出用于另一个命令的输入

“|” 管道符号

命令 :grep

grep string file_name  :在file_name中找出包含string的行

管道范例:

1、ls -l > list

2、grep inittab list

合并

3、ls -l | grep inittab 【文件名】

把ls -l的输出结果,作为grep命令的文件名参数

在ls -l的输出结果中找到包含”inittab“的行

分析:

rpm -qa | grep samba

在rpm -qa命令的输出结果中找”samba“字符串

5、具有强大的编程功能(批处理文件的语法)

程序功能:检查文件abc是否存在,且是目录

#!/bin/sh

if [ -d abc ]

then

echo "abc is exists,it is a dircetory"

else

echo "abc is not exists"

fi

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值