第6章系统数据文件和信息总结
1 口令文件的shell字段
如果是空,则使用系统默认的shell,一般是/bin/sh
/dev/null:阻止对应的用户名登陆系统
/bin/false:同样是阻止特定用户登录,以不成功状态终止
/bin/true:阻止特定用户登录,以成功状态终止
2 获取口令文件内容的函数
通过用户ID或用户名可以获取该用户在口令文件中的对应项
struct passwd* getpwuid(uid_t uid)struct passwd* getpwnam(const char *name)
获取整个口令文件内容:
struct passwd *getpwent()
示例:
struct passwd *a; printf("name\tpasswd\tshell\n"); while( (a = getpwent()) != NULL) {printf("%s\t%s\t%s\n",a->pw_name,a->pw_passwd,a->pw_shell); } endpwent();
调用getpwent函数时,一定要调用endpwent函数关闭
在getpwent之前调用setpwent可以反绕口令文件,使定位到口令文件开始处,防止口令文件已经被getpwent掉用过
3 阴影口令
关于阴影口令有一组与口令文件类似的函数:
struct spwd *getspnam(const char *name)struct spwd *getspent()void setspent()void endspent()
转载于:https://www.cnblogs.com/buptlyn/p/4142406.html
第6章系统数据文件和信息总结相关推荐
- APUE第6章 系统数据文件和信息
6.1 引言 UNIX系统的正常运作需要使用大量与系统有关的数据文件,例 如,口令文件/etc/passwd和组文件/etc/group就是经常被多个程序频繁 使用的两个文件.用户每次登录UNIX系统 ...
- 第6章 系统数据文件和信息
口令文件 用户: 基础密码文件:/etc/passwd 密码文件:/etc/shadow 组: 基础密码文件:/etc/group 密码文件:/etc/gshadow /etc/passwd 内容:用 ...
- 6.1 引言-系统数据文件和信息
6.1 引言-系统数据文件和信息 Unix系统的正常运行需要使用大量与系统有关的数据文件,例如,口令字文件/etc/passwd和组文件/etc/group就是经常由多种程序使用的两个文件.用户每次登 ...
- 《unix环境高级编程》笔记4——系统数据文件和信息
文章目录 系统数据文件和信息 口令文件 获取口令文件 getwpuid getpwnam 阴影口令 组文件 附属组ID 查看附属组ID 其他文件 登录账户记录: 系统标识 uname gethostn ...
- Unix环境高级编程-系统数据文件和信息
unix口令文件/etc/passwd 包含了下表所示的字段: 系统定义了两个获取口令文件项的函数,在给出用户登录名或数值用户ID后,这两个函数能够查看相关项. struct passwd *getp ...
- linux系统数据文件和信息--unix环境高级编程读书笔记
linux系统中的数据文件有很多,在这一章里介绍的主要内容是和系统有关的一系列文件,包括passwd,shadow,group,utmp,wtmp以及一些系统的相关信息和时间的相关操作. 1.pass ...
- UNIX再学习 -- 系统数据文件和信息
UNIX 系统的正常运作需要使用大量与系统有关的数据文件,例如,口令文件 /etc/passwd 和组文件 /ect/group 就是经常被多个程序频繁使用的两个文件.用户每次登陆 UNIX 系统,以 ...
- UNIX环境高级编程——系统数据文件和信息
6.1 引言 UNIX系统的正常运行需要使用大量与系统有关的数据文件,这些文件都是ASCII文本文件,并且使用标准I/O库读这些文件. 6.2 口令文件 UNIX口令文件是/etc/passwd,每一 ...
- 《UNIX环境高级编程》六系统数据文件和信息读书笔记
UNIX系统的正常运作需要使用大量与系统有关的数据文件,例如,口令文件/etc/passwd和组文件/etc/group等. 1.口令文件 口令文件的各字段包含在pwd.h>中定义的passwd ...
最新文章
- Linux新增开放端口
- 【计算理论】非确定性有限自动机 ( 计算过程 | 计算树 | 确定可接受字符串 | 设计非确定性有限自动机 | 空字符 )
- CSS 公共样式分享
- 后台执行UNIX/Linux命令和脚本的五种方法
- SAP UI5 初学者教程之二十四 - 如何使用 OData 数据模型试读版
- ioctl之FIONREAD
- 云原生生态周报 Vol. 2
- centos搭建rsync服务!
- 快速上手,教你开发第一个基于 AutoML 的量化投资决策应用
- 安卓机+数据线,带你开发部署人脸识别应用
- 深度学习技术干货免费听,AirPods2任性抽...520有场AI峰会不可错过!
- 白话 Golang 协程池
- 机器学习7-主成分分析
- 车内看车头正不正技巧_交规理论最全技巧口诀,学会后100%过关!
- 表白代码(纯干货),送给你爱的人
- 1的阶乘加到20的阶乘
- [Netlist29-358] Reg ‘Counter[7]‘ of type ‘FDCPE’ cannot be timed accurately. Hardwarebehavior may be
- 转载篇:RabbitMQ安装步骤和出现Plugin configuration unchanged.和出现1067系统错误.总结
- leet198.打家劫舍
- 多种文字翻译软件-翻译常用软件