顾名思义 觉得这个文件是用来存放用户密码的,但是打开一看里面竟然没有密码的信息,那这些东西的含义都是什么呢?
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
以上是我的passwd文件内容的一部分;
文件中每一行都是一个用户的信息,以:分隔开;第一部分是用户名,第二个x则表示用户密码已经被加密存储到了/etc/shadow文件中;
第三个是用户标识号,linux 中500以内是系统自留,用户的是从500开始,第四个是组标识号,标志着用户所属的组,对应着/etc/group文件
覅五个是用户登录进去后在的目录;第六个是登录后的执行程序,一般指定为shell例如为root指定的就是/bin/bash作为其shell,由此处也可以为用户指定某个程序作为其登录后的响应程序,可以限制其在登录后只能执行固定的功能;例如bin:x:1:1:bin:/bin:/sbin/nologin 这条中显示的bin用户登陆进去后所在目录为/bin 其命令解释器为/sbin/nologin 程序;当然既然显示为nologin,也就是说这个用户名是不可能登录成功的;
然后是/etc/shadow文件
root:$1$fyhEwc64$wghiy4kyM0dFTB.5fnNbm1:16171:0:99999:7:::
bin:*:16170:0:99999:7:::
daemon:*:16170:0:99999:7:::
adm:*:16170:0:99999:7:::
lp:*:16170:0:99999:7:::
sync:*:16170:0:99999:7:::
shutdown:*:16170:0:99999:7:::
以分号隔开的这些数据分别代表:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
加密口令的第一个字符若为* 或是! 则表示这个用户名不能用来登录;
/etc/group文件
root:x:0:root
bin:x:1:root,bin,daemon
daemon:x:2:root,bin,daemon
sys:x:3:root,bin,adm
adm:x:4:root,adm,daemon
tty:x:5:
对应表示:组名:组密码:组ID:成员列表
组密码也对应存在一个文件为、gshadow用于存放组密码
例如我的root:x:0:root则表示组名root,密码已加密,组ID 为0,组成员为root
/etc/securetty 文件中显示了所有当前root用户所能登陆的终端列表,如果想让root从对应终端登陆的话就要在此文件中加入其终端的名字;如果此文件中没有对应的那个终端的话,会提示login incorrect错误,如果没有此文件的话则root可以从任何终端登录此系统;
securetty 文件的内容显示为
console
vc/1
vc/2
...
vc/11
tty1
tty2
tty11
终端是一种字符型设备,它有多种类型,通常使用tty(Teletypes缩写)来简称各种类型的终端设备。
1、串行端口终端(/dev/ttySn)
串行端口设备
2、伪终端(/dev/pty/)
3、控制终端(/dev/tty)
4、控制台终端(/dev/ttyn, /dev/console)
计算机显示器通常被称为控制台终端
5 虚拟终端(/dev/pts/n)
xwindow下的终端显示为pts/n crt中测试tty也是pts/n
linux下 /etc/passwd 文件
顾名思义 觉得这个文件是用来存放用户密码的,但是打开一看里面竟然没有密码的信息,那这些东西的含义都是什么呢?
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
以上是我的passwd文件内容的一部分;
文件中每一行都是一个用户的信息,以:分隔开;第一部分是用户名,第二个x则表示用户密码已经被加密存储到了/etc/shadow文件中;
第三个是用户标识号,linux 中500以内是系统自留,用户的是从500开始,第四个是组标识号,标志着用户所属的组,对应着/etc/group文件
覅五个是用户登录进去后在的目录;第六个是登录后的执行程序,一般指定为shell例如为root指定的就是/bin/bash作为其shell,由此处也可以为用户指定某个程序作为其登录后的响应程序,可以限制其在登录后只能执行固定的功能;例如bin:x:1:1:bin:/bin:/sbin/nologin 这条中显示的bin用户登陆进去后所在目录为/bin 其命令解释器为/sbin/nologin 程序;当然既然显示为nologin,也就是说这个用户名是不可能登录成功的;
然后是/etc/shadow文件
root:$1$fyhEwc64$wghiy4kyM0dFTB.5fnNbm1:16171:0:99999:7:::
bin:*:16170:0:99999:7:::
daemon:*:16170:0:99999:7:::
adm:*:16170:0:99999:7:::
lp:*:16170:0:99999:7:::
sync:*:16170:0:99999:7:::
shutdown:*:16170:0:99999:7:::
以分号隔开的这些数据分别代表:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
加密口令的第一个字符若为* 或是! 则表示这个用户名不能用来登录;
/etc/group文件
root:x:0:root
bin:x:1:root,bin,daemon
daemon:x:2:root,bin,daemon
sys:x:3:root,bin,adm
adm:x:4:root,adm,daemon
tty:x:5:
对应表示:组名:组密码:组ID:成员列表
组密码也对应存在一个文件为、gshadow用于存放组密码
例如我的root:x:0:root则表示组名root,密码已加密,组ID 为0,组成员为root
/etc/securetty
该文件中显示了所有当前root用户所能登陆的终端列表,如果想让root从对应终端登陆的话就要在此文件中加入其终端的名字;如果此文件中没有对应的那个终端的话,会提示login incorrect错误,如果没有此文件的话则root可以从任何终端登录此系统;
securetty 文件的内容显示为
console
vc/1
vc/2
...
vc/11
tty1
tty2
tty11
终端是一种字符型设备,它有多种类型,通常使用tty(Teletypes缩写)来简称各种类型的终端设备。
1、串行端口终端(/dev/ttySn)
串行端口设备
2、伪终端(/dev/pty/)
3、控制终端(/dev/tty)
4、控制台终端(/dev/ttyn, /dev/console)
计算机显示器通常被称为控制台终端
5 虚拟终端(/dev/pts/n)
xwindow下的终端显示为pts/n crt中测试tty也是pts/n
测试一下 使用两个不同的工具同时连接到同一台linux 上 使用tty查看当前的设备终端 然后在其中一台终端上使用echo "hello" < /etc/pts/0 命令 则在对应的终端就能看到 其显示出hello单词。哎呦,好神奇..