linux入门基础——linux用户基础
这篇内容是linux用户基础,相关内容见linux改动username和ubuntu改动username和主机名。
用户。组
当我们使用linux时,须要以一个用户的身份登入,一个进程也须要以一个用户的身份执行。用户限制使用者或者进程能够或不能够使用哪些资源。
用户的实质就是用来限制资源的使用。
组用来方便管理组织管理用户。
每一个用户都拥有一个UserID,操作系统实际使用的是用户ID。而非username
每一个用户属于一个主组,属于一个或者多个附属组
每一个组拥有一个GroupID
每一个进程以一个用户身份执行,并受该用户可訪问的资源限制
每一个可登陆用户拥有一个指定的shell。
用户
用户ID为32位。从0開始,可是为了和老式系统兼容。用户ID限制在60000下面。
用户分为下面三种:
-root用户 (ID为0的用户为root用户)
-系统用户 (1-499) 专门为某些进程或者某些服务创建的,不拥有shell。
-普通用户 (500以上。也可能是1000以上)
系统中的文件都有一个所属用户以及所属组。
使用id命令能够显示当前用户的信息
使用passwd命令能够改动当前用户password
相关文件
/etc/passwd 保存用户信息
/etc/shadow 保存用户password(加密)
/etc/group 保存组信息
打开/etc/passwd
每一行代表一个用户的信息,每一行分为七个部分,每一个部分使用冒号:隔开。
第一个部分 username
第二个部分 password
第三个部分 用户的ID号UserID
第四个部分 组ID
第五个部分 用户的描写叙述信息
第六个部分 用户的家文件夹
第七个部分 用户登陆的shell(普通用户是/bin/bash。系统用户即ID为500下面都为/sbin/nologin或者/bin/false)
打开/etc/shadow
每一行代表一个用户信息。
第一个部分 username
第二个部分 password(仅仅有当前用户有password,系统用户没有password,两个!
!
表示没有创建password)
password分为三个部分。使用$分开
第一个部分是6。代表password的加密类型
第二个部分是盐salt,加点盐,是插入这部分到我们的password。添加破解难度
第三个部分是加密后的password
查看登陆的用户
命令whoami显示当前用户
命令who显示有哪些用户登陆上
命令w显示有哪些用户已经登陆而且在干什么
创建一个用户
命令useradd用以创建一个用户
如何确定是否创建好呢?通过cat /etc/passwd发现会多了一个用户。UserID为当前用户ID+1
这个命令会运行一下操作:
1.在/etc/passwd中加入用户
2.假设使用passwd命令创建password。则将加密以后的password保存在/etc/shadow中
3.为用户建立一个新的家文件夹/home/houlu
4.将/etc/skel中的文件拷贝到用户的家文件夹中
5.建立一个与用户username同样的组,新建用户默认属于这个同名组
命令useradd支持下面參数
-d 家文件夹
-s 登陆shell
-u userid
-g 主组
-G 附属组
也能够通过直接改动/etc/passwd实现。不建议这样做。
改动用户信息
命令usermod用以改动用户,它支持下面參数
-l 新username
-u 新userid
-d 用户家文件夹位置
-g 用户所属主组
-G 用户所属附属组
-L 锁定用户使其不能登陆
-U 解除锁定
删除用户
命令userdel用以删除指定用户
userdel user 删除用户,但不删除家文件夹
userdel -r user 所有删除
组
差点儿全部操作系统都有组的概念。通过组,我们能够更加方面的归类,管理用户。一般来讲,我们使用部门、职能或者地理区域的分类方式来创建使用组。
每个组有一个组ID
组信息保存在/etc/group
每一个用户有一个主组,同一时候最多有31个附属组
创建、改动、删除组
命令groupadd用以创建组
groupadd linuxcast
命令groupmod用以改动组
groupmod -n newname oldname 改动组名
groupmod -g newGid oldGid 改动组ID
命令groupdel用以删除组
groupdel linuxcast
linux入门基础——linux用户基础的更多相关文章
- Linux入门——初识Linux
Linux入门——初识Linux 摘要:本文主要说明了Linux是什么,Linux发展历史,以及同Linux系统有关的一些基本知识. 简介 操作系统 Linux系统同Windows系统.Mac系统一样 ...
- linux入门—安装linux系统(1)
一,linux介绍 linux是一套免费使用和自由传播的类Unix操作系统,简单的说就是不要钱,你可以随便使用,也可以分享给其他人. (剩下的详细内容,个人认为百度百科的内容比我瞎讲强的多,网址:ht ...
- 【苏勇老师Linux 入门笔记】网络基础
IP 地址 IP 编制时一个双层编制方案,一个 IP 地址标示一个主机 (或一个网卡接口). 一个 IP 地址分为两个部分:网络部分(所属区域)和主机部分(标示区域中的哪个主机).IPv4 共32位, ...
- Linux入门-9 软件管理基础(CentOS)
0. 源代码形式 1. RPM软件包管理 RPM RPM查询 RPM验证 2. YUM软件管理 YUM基本命令 YUM查询 创建YUM仓库 0. 源代码形式 绝大多数开源软件都是直接以源代码形式发布 ...
- Linux入门:增加用户,并赋予权限
一.增加用户 1.增加用户,并指定主目录 # useradd –d /usr/sam -m sam此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/us ...
- Linux入门-6 Linux网络基本配置
1. 网络基础知识 网络编址 IP编址 子网掩码 同一网络主机之间通信--MAC地址 不同网络之间的通信 路由 域名 DNS 基本网络参数 2. Linux网络基础配置 以太网连接 配置网络信息 网络 ...
- Linux入门(二)Linux基本命令及基本操作
1 常用Linux命令 图形界面进入到字符界面: ctrl+alt+F2~F6 字符界面进入到图形界面:ctrl +alt+F7 查看本机ip: ifconfig (windows是:ipconf ...
- Linux入门-8 Linux系统启动详解
系统启动流程 BIOS MBR GRUB KERNEL INIT 单用户修改root密码 GRUB加密 系统启动流程 BIOS MBR: Boot Code 执行引导程序 - GRUB 加载内核 执行 ...
- Linux入门-7 Linux管道、重定向以及文本处理
Linux管道.重定向以及文本处理 1 Linux多命令协作:管道及重定向 管道和重定向 2 Linux命令行文本处理工具 文件浏览 基于关键字搜索-grep 基于列处理文本-cut 文本统计-wc ...
- Linux入门-3 Linux磁盘及文件系统管理
1. 磁盘基本概念 1.1 磁盘结构:盘片(单碟vs多碟).磁头(读写数据) 1.2 磁盘在Linux中的表示 1.3 分区概念 2 使用fdisk进行磁盘管理 3 Linux文件系统 mke2fs ...
随机推荐
- luogu2261 [CQOI2007] 余数之和
题目大意 求 \[\sum_{i=1}^{n}(k\mod i)\] \(n,k\leq 10^9\). 题解 先只考虑\(n\leq k\)的情况. \[\sum_{i=1}^{n}(k\mod i ...
- php建立简单的用户留言系统
php建立简单的用户留言系统 样例 addMsg.php--添加留言页面 doAction.php--响应添加留言页面 . viewMsg.php--显示留言页面 目录结构 addMsg.php--添 ...
- 自定义数据类型 C++ 结构体类型 共同体类型 枚举类型 类类型{}
一.结构体类型 结构体类型,共用体类型,枚举类型,类类型等统称为自定义类型(user-defined-type,UDT). 结构体相当于其他高级语言中的记录(record);例如: struct St ...
- [Java] 总结1.5/1.6/1.7版本的特性
开发过程中接触到了从jdk1.5---jdk1.7的使用,在不同的阶段,都使用过了jdk的一些新特性,操作起来更加方面啦!特此总结了下,以下是测试代码: JDK1.5新特性: 1.自动装箱与拆箱: I ...
- css中!important的用法
{*rule !important}这个css规则当今在网页制作的时候的普及已经非常流行了,以前我对它的理解就停留在‘浏览器是否识别阶段’ 而没有真正去研究过,可是现在发生了变化.众所周知,!impo ...
- Hdu-6242 2017CCPC-哈尔滨站 M.Geometry Problem 计算几何 随机
题面 题意:给你n个点,让你找到一个圆,输出圆心,和半径,使得有超过一半的点刚好在圆上.n<=1e5,题目保证了有解 题解:刚开始看着很不可做的样子,但是多想想,三点确定一个圆,三点啊! 现在有 ...
- MAVEN 杂记
MAVEN中央仓库 http://repo.maven.apache.org/maven2http://repo1.maven.org/maven2/http://mvnrepository.com/ ...
- SqlServer执行存储过程时,参数值为null,sql语句参数值变成default
从C#代码里传入参数到调用存储过程,参数的值为null,执行存储过程一直提示需要参数 '@xxx',但未提供该参数.通过profiler发现生成的参数值变成为default. 解决方案:1.将Para ...
- c++ stl swap
好久没写了,简单水一下吧! 一个是最近没怎么刷题,圣诞,元旦,leetcode暂停的比赛两周,自己最近沉迷于打游戏,没有好好抓住时间. 其实最近看了一点书,是侯捷的 <stl源码剖析>,有 ...
- 【Oracle】ORA-55610: Invalid DDL statement on history-tracked table
—删除表emp1时出现问题 SCOTT@GOOD> drop table emp1; drop table emp1 * ERROR at line 1: ORA-55610: Invalid ...