一、linux用户登录过程访问的文件

  • /etc/passwd---用户登录时,linux会先到这里查看用户Id、组Id、登录后的shell、用户工作目录
  • /etc/shadow(影)---linux在这里取得用户密码比较和密码修改周期等策略问题在这里设置
  • /etc/group---在这里取出组名称、组id,组密码,支持的账号

/etc/passwd文件结构分析

/etc/shadow文件结构分析

/etc/group文件结构分析

  1. 用户和组都可以设置密码,密码都是保存在/etc/shadow文件里,但是一般不使用组登录,所以组的密码一般为空的
  2. /ect/passwd文件主要提供登录后的shell信息和shell自动进入的工作目录
  3. 一个组当然可以有多个用户,多个用户用","分割
  4. adduser、passwd等shell脚本操作的就是以上文件,完全可以手动更改,但是注意默认位置
  5. 用户的运行权限是根据用户ID和组ID来判断的(详细内容见:linux的文件权限分析

二、linux登录后的权限设置

我们知道linux的权限概念是非常重要的,但是传统的权限仅是三种身份(owner,group,others)搭配三种权限(r,w,x)而已,并没有办法针对某一个用户或者某一个组来设置特定的权限需求。ACL可以针对单一用户、单一文件或目录进行r w x的权限设置,对于特殊权限的使用情况非常有帮助。(具体参见另文:待续。。。

三.Quota

linux是多用户的多任务的环境,所以会有多用户使用一个硬盘空间的情况,如果其中有几个用户大量占掉了硬盘的空间的话,那肯定会影响其他用户的使用权限,因此管理员应该适当限制硬盘空间给用户,以妥善的分配系统资源。这就需要用到Quota,这是linux权限的一个应用。(具体参见另文:待续。。。

四、进程

linux的哲学是"一些都是文件",而文件是有user group other的rwx权限的。程序是放置在磁盘中的文件,通过用户的行为来执行触发。触发后会加载到内存中成为一个个体,这就是进程。为了操作系统可管理这个进程,因此进程被给予了执行者的权限/属性等参数,并包括所需要的脚本与数据和文件数据等,最后再赋予一个PID。系统就是根据这个PID和他所携带的权限信息来判断其是否有执行某个操作的权限。

在linux里任何的操作都是属于用户的,不存在没有用户的文件和线程。

linux的/bin目录的用户是bin,他的权限是[rwxr-xr-x]。而bin用户本身是不可以登录的。所有的登录用户从/bin/bash里获得的程序都是执行的read和execute权限。每个用户登录的时候本身还是在和另一个用户在交互,不同的用户获得的bash线程的PID是不一样的。

参考资料:Linux中用户管理详解(上)

参考图书:鸟哥的linux私房菜            

linux用户登录的更多相关文章

  1. Linux用户登录记录日志和相关查看命令汇总

    # 1 utmp.wtmp.btmp文件 Linux用户登录信息放在三个文件中: 1 /var/run/utmp:记录当前正在登录系统的用户信息,默认由who和w记录当前登录用户的信息,uptime记 ...

  2. Linux用户登录日志查询

    # 1 utmp.wtmp.btmp文件 Linux用户登录信息放在三个文件中: 1 /var/run/utmp:记录当前正在登录系统的用户信息,默认由who和w记录当前登录用户的信息,uptime记 ...

  3. Linux用户登录记录日志和相关查看命令汇总(转)

    # 1 utmp.wtmp.btmp文件 Linux用户登录信息放在三个文件中: 1 /var/run/utmp:记录当前正在登录系统的用户信息,默认由who和w记录当前登录用户的信息,uptime记 ...

  4. 初学Python-搞了一个linux用户登录监测小工具

    这几天突发奇想,想学习一下Python.看了点基础,觉得有点枯燥,所以想搞点什么.想了想,就随便弄个检测Linux用户登录的小工具吧~ 首先,明确一下功能: 1.能够捕获 linux 用户登录的信息. ...

  5. (转)Linux用户登录记录日志和相关查看命令汇总

    原文地址:http://www.cnblogs.com/lizhaoxian/p/5981029.html # 1 utmp.wtmp.btmp文件 Linux用户登录信息放在三个文件中: 1 /va ...

  6. 如何修改linux 用户登录后默认目录

    1.linux用户登录后默认目录是在/etc/passwd文件设置的.如下图所示,一共显示了四行数据,其中第一行的/root即为root用户登录后的默认目录,第二行daemon用户的默认目录是/usr ...

  7. Linux用户登录查看命令总结 - w,who,last,lastlog

    Linux用户登录查看命令总结 - w,who,last,lastlog linux shell 747 次阅读  ·  读完需要 15 分钟 0 1. 查看登录用户信息 who -H 命令输出 NA ...

  8. 禁止Linux用户登录方法

    我们在做系统维护的时候,希望个别用户或者所有用户不能登录系统,保证系统在维护期间正常运行.这个时候我们就要禁止用户登录. 1.禁止个别用户登录.比如禁止lynn用户登录. passwd -l lynn ...

  9. linux用户登录指定目录

    一.创建用户和用户组 [root@web4 lianyu]# groupadd lianyu [root@web4 lianyu]# useradd lianyu -g lianyu [root@we ...

随机推荐

  1. HNOI2018 摸鱼记

    HNOI2018 摸鱼记 今天我又来记流水账啦 Day 0 颓废的一天. 我,球爷和杜教在颓膜膜.io ych看起来在搓碧蓝 鬼知道哥达鸭干了什么 学习氛围只局限在机房的一角 后来全体Oier开会,5 ...

  2. Android学习记录(3)—Android中ContentProvider的基本原理学习总结

    一.ContentProvider简介        当应用继承ContentProvider类,并重写该类用于提供数据和存储数据的方法,就可以向其他应用共享其数据.虽然使用其他方法也可以对外共享数据 ...

  3. C# 6.0/7.0 的新特性

    转眼C#语言都已经迭代到7.0版本了,很多小伙伴都已经把C# 7.0 的新特性应用到代码中了,想想自己连6.0的新特性都还很少使用,今天特意搜集了一下6.0和7.0的一些新特性,记录一下,方便查阅. ...

  4. [转]赵桐正thinkphp教程笔记

    原文:赵桐正thinkphp教程笔记 ,有修改 常用配置 常用配置config.php: <?php return array( //'配置项'=>'配置值' 'URL_PATHINFO_ ...

  5. C语言中强制类型转换总结

    C语言中强制类型转换总结  ● 字符型变量的值实质上是一个8位的整数值,因此取值范围一般是-128-127,char型变量也可以加修饰符unsigned,则unsigned char 型变量的取值范围 ...

  6. js 请求异常重连或断线后联网重连机制(ajax)

    转到到 https://blog.csdn.net/mengtoumingren/article/details/80296788

  7. 在 MongoDB 上模拟事务操作来实现支付

    我们的产品叫「学海密探」,属于在线教育行业,产品需要有支付功能,然而支付最蛋疼是什么?有人会说是支付宝和微信等支付接口的接入开发!没错,但支付接口的开发算是比较简单的了,我觉得凡是跟钱有关系的操作最重 ...

  8. jsp页面提示“Multiple annotations found at this line: - The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path”解决方案

    Multiple annotations found at this line: - The superclass "javax.servlet.http.HttpServlet" ...

  9. 【BestCoder #45】

    用家里的电脑来编程,各种不算 一开始15分钟刷掉T1和T2,然后就永远地卡在了T3... 后来看题解,傻了眼... 它强调的“只有一个答案”我还以为这是在提示我二分答案,于是我一直往权值线段树那个方向 ...

  10. POJ 3180 The cow Prom Tarjan基础题

    题目用google翻译实在看不懂 其实题目意思如下 给一个有向图,求点个数大于1的强联通分量个数 #include<cstdio> #include<algorithm> #i ...