harvey@ubuntu:/etc$ cat -b passwd
root:x:::root:/root:/bin/bash
daemon:x:::daemon:/usr/sbin:/bin/sh
bin:x:::bin:/bin:/bin/sh
sys:x:::sys:/dev:/bin/sh
sync:x:::sync:/bin:/bin/sync
games:x:::games:/usr/games:/bin/sh
man:x:::man:/var/cache/man:/bin/sh
lp:x:::lp:/var/spool/lpd:/bin/sh
mail:x:::mail:/var/mail:/bin/sh
news:x:::news:/var/spool/news:/bin/sh
uucp:x:::uucp:/var/spool/uucp:/bin/sh
proxy:x:::proxy:/bin:/bin/sh
www-data:x:::www-data:/var/www:/bin/sh
backup:x:::backup:/var/backups:/bin/sh
list:x:::Mailing List Manager:/var/list:/bin/sh
irc:x:::ircd:/var/run/ircd:/bin/sh
gnats:x:::Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
nobody:x:::nobody:/nonexistent:/bin/sh
libuuid:x::::/var/lib/libuuid:/bin/sh
syslog:x::::/home/syslog:/bin/false
messagebus:x::::/var/run/dbus:/bin/false
colord:x:::colord colour management daemon,,,:/var/lib/colord:/bin/false
lightdm:x:::Light Display Manager:/var/lib/lightdm:/bin/false
whoopsie:x::::/nonexistent:/bin/false
avahi-autoipd:x:::Avahi autoip daemon,,,:/var/lib/avahi-autoipd:/bin/false
avahi:x:::Avahi mDNS daemon,,,:/var/run/avahi-daemon:/bin/false
usbmux:x:::usbmux daemon,,,:/home/usbmux:/bin/false
kernoops:x:::Kernel Oops Tracking Daemon,,,:/:/bin/false
pulse:x:::PulseAudio daemon,,,:/var/run/pulse:/bin/false
rtkit:x:::RealtimeKit,,,:/proc:/bin/false
speech-dispatcher:x:::Speech Dispatcher,,,:/var/run/speech-dispatcher:/bin/sh
hplip:x:::HPLIP system user,,,:/var/run/hplip:/bin/false
saned:x::::/home/saned:/bin/false
harvey:x:::Harvey,,,:/home/harvey:/bin/bash
harvey@ubuntu:/etc$ sudo cat -b shadow
root:!:::::::
daemon:*:::::::
bin:*:::::::
sys:*:::::::
sync:*:::::::
games:*:::::::
man:*:::::::
lp:*:::::::
mail:*:::::::
news:*:::::::
uucp:*:::::::
proxy:*:::::::
www-data:*:::::::
backup:*:::::::
list:*:::::::
irc:*:::::::
gnats:*:::::::
nobody:*:::::::
libuuid:!:::::::
syslog:*:::::::
messagebus:*:::::::
colord:*:::::::
lightdm:*:::::::
whoopsie:*:::::::
avahi-autoipd:*:::::::
avahi:*:::::::
usbmux:*:::::::
kernoops:*:::::::
pulse:*:::::::
rtkit:*:::::::
speech-dispatcher:!:::::::
hplip:*:::::::
saned:*:::::::
harvey:$$GHg7l$G5x.F1Rf8RBgIfDyMfwGL/:::::::
harvey@ubuntu:/etc$ cat -b group
root:x::
daemon:x::
bin:x::
sys:x::
adm:x::harvey
tty:x::
disk:x::
lp:x::
mail:x::
news:x::
uucp:x::
man:x::
proxy:x::
kmem:x::
dialout:x::
fax:x::
voice:x::
cdrom:x::harvey
floppy:x::
tape:x::
sudo:x::harvey
audio:x::pulse
dip:x::harvey
www-data:x::
backup:x::
operator:x::
list:x::
irc:x::
src:x::
gnats:x::
shadow:x::
utmp:x::
video:x::
sasl:x::
plugdev:x::harvey
staff:x::
games:x::
users:x::
nogroup:x::
libuuid:x::
crontab:x::
syslog:x::
fuse:x::
messagebus:x::
bluetooth:x::
scanner:x::
colord:x::
lpadmin:x::harvey
ssl-cert:x::
lightdm:x::
nopasswdlogin:x::
netdev:x::
whoopsie:x::
mlocate:x::
ssh:x::
avahi-autoipd:x::
avahi:x::
pulse:x::
pulse-access:x::
utempter:x::
rtkit:x::
saned:x::
harvey:x::
sambashare:x::harvey
  1. 用户名为root,密码为!(!代表的意思不详),用户ID和组ID都为0,用户最先进入的目录就是/root,和内核交互细信息的内核是/bin/bash。init进程是所有用户进程的祖先进程PID为0,应该就是root用户和用户组权限限制的进行。
  2. 用户名为daemon,密码为*(表示禁止登录),用户ID和组ID都是1,组名是daemon,daemon用户和组是负责创建进程的daemon进程的PID就是根据daemon用户对/usr/sbin文件夹的权限来确定的,和内核交互使用的shell是/bin/sh。Daemon是一个特殊的进程,他独立于控制终端并且周期性的执行某种任务或等待某事的发生,常见的daemon进程为日志进程syslogd、web服务器httpd、邮件服务器sendmail、数据库服务器mysql。(syslogd的程序一定就是在/usr/sbin的目录下的,在daemon创建进程的时候可以直接从这里读取程序文件),daemon进程的父进程是init进程。因为他真正的父进程在fork出子进程后就先于子进程exit了,所以daemon是一个从init继承的孤儿进程。

linux的用户和组的详细管理机制使得linux内的资源更像是一个社会,root用户UID为0就是总统有最高的权限,而UID为1-499的用户是root领导下的各级社会部门(国会,银行,邮局等),他们都是由某个部门的leader在领导,而UID为500-60000的用户就是广大的民众和非政府组织。UID为1-499的服务进程也就是政府部门只是对外提供服务,除非服务进程对外开放访问资源的接口,否则不能使用其的资源。而普通用户则是直接用shell使用的计算机资源。

linux虽然可以进行丰富的权限管理,但如同社会虽然能管理但是制度很重要,linux的安全性只是从系统上保证了,真正安全不安全还是看怎么设置的权限管理。

ubuntu默认用户分析的更多相关文章

  1. [转]Ubuntu默认使用root用户登录并免去输入密码

    启用Root用户登录 Ctrl + Alt + T进入终端, 输入cd /usr/share/lightm/ightm.conf.d, 如果提示你没有那个文件或目录.那就一次次的进入目录. 进入之后会 ...

  2. [转]Ubuntu默认root用户密码

    Ubuntu默认root用户密码 在试验的过程中,安装完Ubuntu后忽然意识到没有设置root密码,不知道密码自然就无法进入根用户下. 到网上搜了一下,原来是这么回事:Ubuntu的默认root密码 ...

  3. ubuntu中用户使用的shell如何指定

    在机器上给同事开了一个账号,结果ssh登陆后,补全,高亮都没有,但是我自己的账号都可以.首先怀疑是.bashrc文件设置有问题,对比2个用户目录的这个文件并未发现可以的地方.搜索得知可能是所使用的sh ...

  4. Ubuntu新建用户

    新建用户的命令是useradd,修改密码是passwd,如下: sudo useradd linc sudo passwd linc 但是问题出现了,home目录下并没有相对应的linc目录. 原来u ...

  5. Ubuntu操作用户账户

    Git Gerrit $是普通管员,#是系统管理员,在Ubuntu下,root用户默认是没有密码的,因此也就无法使用(据说是为了安全).想用root的话,得给root用户设置一个密码: sudo pa ...

  6. 更改Ubuntu默认python版本的方法

    当你安装 Debian Linux 时,安装过程有可能同时为你提供多个可用的 Python 版本,因此系统中会存在多个 Python 的可执行二进制文件.一般Ubuntu默认的Python版本都为2. ...

  7. 更改Ubuntu默认python版本的两种方法python-> Anaconda

    当你安装 Debian Linux 时,安装过程有可能同时为你提供多个可用的 Python 版本,因此系统中会存在多个 Python 的可执行二进制文件.一般Ubuntu默认的Python版本都为2. ...

  8. 修改Ubuntu默认运行级别,启动字符界面

    Ubuntu的默认开机的runlevel是2,可以用runlevel来查看当前的默认运行级别. debian系(ubuntu是基于debian)的Linux一直是用runlevel 2来默认启动,并且 ...

  9. Ubuntu单用户模式(安全模式)

           说下我遇到的情况,ubuntu服务器,防火墙关闭,连的外网.服务器中毒,病毒自动生成用户,然后病毒进程开启启动,进程启动后,cpu立马占满,服务器立马卡死,本想着服务器启动后通过top命 ...

随机推荐

  1. Android 如何在xmL 里面动态设置padding

    如题,Android 如何在xmL 里面动态设置padding 有时候,你的布局加载完成之后,你findViewByid 找到控件,设置padding 会导致白条,布局闪动,那怎么办呢? 你是不是就想 ...

  2. Python的函数一

    一.函数的定义 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段.函数能提高应用的模块性,和代码的重复利用率.Python提供了许多内建函数,比如print().可以自己创建函数,这被 ...

  3. CC3200在AP模式的TCP sock作为客户端连接时返回SL_ECONNREFUSED(-111) Connection refused

    1. CC3200处于AP模式(电脑无线连接CC3200的WIFI信号),开启一个TCP socket,这个socket作为TCP客户端去连接TCP服务器端 struct sockaddr_in ad ...

  4. laravel5.5容器

    目录 1. 比较典型的例子就是 cache 缓存 2. 容器顾名思义,其实就是完成存取过程 2.1 绑定过程 简单绑定 绑定单例 绑定实例 绑定初始数据 2.2 解析过程 容器主要是为了实现控制反转, ...

  5. 《Cracking the Coding Interview》——第5章:位操作——题目3

    2014-03-19 05:57 题目:给定一个整数N,求出比N大,而且二进制表示中和N有相同个数的‘1’的最小的数,比如3是‘11’,接下来的5是‘101’,再接下来的6是‘110’. 解法:从低位 ...

  6. dynamic基元类型与隐式类型的局部变量var

    dynamic代码示例 using System; using System.Collections.Generic; using System.Linq; using System.Text; na ...

  7. appium-手势密码实现-automationName 是automator2

    上一篇博客已经说了 appium-手势密码实现-automationName 是Appium的情况 下面就说一下automator2的情况: 手势密码的moveTo方法的参数进行了改变. 参数是相对于 ...

  8. 设计模式之模板方法模式 templateMethod

    代码实现 public abstract class BankTemplateMethod { //具体方法 public void takeNumber(){ System.out.println( ...

  9. SQLEXPRESS 2012 安装NorthWind和Pub数据库

    安装SQL后,学习时总是没有这两个示例数据库. 先从微软那里下载此文件. 网址:http://www.microsoft.com/en-us/download/details.aspx?id=2365 ...

  10. Linux运维文档之nginx

    NGINX安装配置1.检查并且安装依赖组件检查安装nginx的依赖性,nginx的模块需要第三方库的支持,检查是否安装下列库:zlib.zlib-devel.openssl.openssl-devel ...