1.口令文件
口令文件存储在/etc/passwd中,是一个ASCII文件
用用户名或UID获取passwd结构体信息的函数
#include <pwd.h>
struct passwd *getpwuid(uid_t uid);
struct passwd *getpwnam(const char *name);
获取口令文件中所有内容
#include <pwd.h>
struct passwd *getpwent(void);
Returns: pointer if OK, NULL on error or end of file
void setpwent(void);
void endpwent(void);
2.阴影口令
某些系统将加密口令存放在一个通常称为阴影的文件里面
访问阴影口令文件的函数
#include <shadow.h>
struct spwd *getspnam(const char *name);
struct spwd *getspent(void);
Both return: pointer if OK, NULL on error
void setspent(void);
void endspent(void);
3.组文件
组的信息存放在/etc/group文件中
查看组信息的函数
#include <grp.h>
struct group *getgrgid(gid_t gid);
struct group *getgrnam(const char *name);
查看整个组文件的函数
#include <grp.h>
struct group *getgrent(void);
Returns: pointer if OK, NULL on error or end of file
void setgrent(void);
void endgrent(void);
获取和设置附加组函数
#include <unistd.h>
int getgroups(int gidsetsize, gid_t grouplist[]);
Returns: number of supplementary group IDs if OK, 1 on error
#include <grp.h> /* on Linux */
#include <unistd.h> /* on FreeBSD, Mac OS X, and
Solaris */
int setgroups(int ngroups, const gid_t grouplist[]);
#include <grp.h> /* on Linux and Solaris */
#include <unistd.h> /* on FreeBSD and Mac OS X */
int initgroups(const char *username, gid_t basegid);
4.登录账号记录
系统都提供下列两个数据文件:utmp文件,它记录当前登录进系统的各个用户
wtmp文件,它跟踪各个登录和注销事件
5.系统标识
获取当前主机和操作系统相关的信息的函数
#include <sys/utsname.h>
int uname(struct utsname *name);
7.时间和日期
UNIX内核提供的时间是从1970年1月1日00:00:00以来经过的秒数
#include <time.h>
time_t time(time_t *calptr);
#include <sys/time.h>
int gettimeofday(struct timeval *restrict tp, void
*restrict tzp);
日期间的转换和格式化
#include <time.h>
struct tm *gmtime(const time_t *calptr);
struct tm *localtime(const time_t *calptr);
#include <time.h>
time_t mktime(struct tm *tmptr);
#include <time.h>
char *asctime(const struct tm *tmptr);
char *ctime(const time_t *calptr);
#include <time.h>
size_t strftime(char *restrict buf, size_t maxsize,
const char *restrict format,
const struct tm *restrict tmptr);
- 大小: 13.1 KB
分享到:
相关推荐
" Unix 环境高级编程 - 文件和目录" 在 Unix 环境高级编程中,文件和目录是两个基本概念。本章将详细介绍文件和目录的属性、stat 函数、fstat 函数、lstat 函数等知识点,并且对目录进行操作的函数进行详细的解释。...
在IT领域,UNIX系统编程是开发者和系统管理员必须掌握的核心技能之一。UNIX作为一个历史悠久且功能强大的操作系统,其设计理念和编程接口对现代操作系统产生了深远影响。本文将深入探讨UNIX系统编程的相关知识点,...
在“UNIX环境高级编程--第4章 文件和目录(下)”中,主要探讨了文件截短、文件系统以及inode等关键概念。 文件截短是一个实用功能,用于减少文件的大小。在某些情况下,可能需要从文件尾部移除数据以缩短文件长度。...
根据提供的信息,我们可以了解到这是一本关于《UNIX编程艺术》的经典书籍,该书提供了高清扫描版本,并且包含完整的书签,方便读者进行阅读与查阅。接下来,我们将从这本书的主题出发,探讨几个重要的UNIX编程概念与...
此外,书中还涉及了Unix工具和库的使用,如grep、sed、awk等强大的文本处理工具,以及C语言编程,包括标准库函数和系统调用的使用。这些工具和库是Unix系统编程的重要资源,能帮助开发者编写出高效、可维护的代码。 ...
《Linux/UNIX系统编程手册》是一本旨在深入介绍Linux和UNIX系统编程接口的权威指南,该书由经验丰富的Linux编程专家Michael Kerrisk所著。 该手册详细描述了系统编程中必须掌握的系统调用和库函数。系统调用是用户...
通过学习《UNIX高级编程》,程序员不仅可以掌握UNIX编程的核心技术,还能培养出系统级别的思维,从而能够设计和编写更高效、更稳定、更健壮的软件系统。无论是对初学者还是经验丰富的开发者,这都是一本极具价值的...
- **系统管理员与高级用户**:希望深入了解Linux/UNIX编程接口及系统软件实现原理的人员。 #### 三、核心知识点概览 ##### 1. 标准兼容性与可移植性 - **POSIX标准**:本书重点关注Linux编程接口的同时,也非常...
《Linux-UNIX系统编程手册(上册)》是由Linux编程专家Michael Kerrisk撰写的一部权威指南,详细介绍了Linux和UNIX系统的编程接口。这本书是针对那些希望掌握系统编程技能的开发者,无论是在Linux还是其他UNIX平台上...
《Linux/Unix系统编程手册》是一本深受程序员和系统管理员喜爱的经典著作,它详细阐述了在Linux和Unix操作系统上进行低级编程的各种技术。附录中的代码是书中的实例,旨在帮助读者深入理解和掌握这些系统编程的核心...
6. **文件系统操作**:包括文件权限管理、硬链接和软链接的创建、文件元数据的修改(如时间戳)等,这些都通过系统调用实现,如`chmod()`, `link()`, `symlink()`, `utimensat()`等。 7. **进程间通信(IPC)**:`...
《UNIX-Linux系统编程》是一本深入探讨UNIX与Linux系统编程的权威著作,它涵盖了操作系统接口、进程管理、文件操作、网络编程等多个重要领域。在光盘部分,可能包含了源代码、实例程序、练习题以及可能的教学视频,...
通过这个课程设计,学生不仅可以学习到操作系统的基本概念,还能提升编程和系统设计能力。通过实际操作,深入理解文件系统如何高效地组织和管理数据,为后续深入学习操作系统和软件开发奠定坚实基础。
《UNIX环境高级编程》是一本深受程序员喜爱的经典教程,它深入介绍了在UNIX操作系统环境下进行系统级编程的各种技术和方法。这本书不仅适用于C++开发者,也对任何想要深入理解UNIX系统的程序员都极具价值。以下是对...
通过这个项目,学生不仅能学习到操作系统的底层概念,还能提升实际编程和系统设计能力。这个模拟系统对于理解UNIX系统如何管理文件和目录,以及如何高效地在磁盘上分配和操作数据,具有极大的教学价值。
6. **管理工具**:提供了全面的系统管理和监控工具,如HPUX Admin Tools,便于系统管理员进行日常维护和故障排查。 通过下载并学习“HP-UNIX.rar”中的内容,用户可以掌握如何利用HP-UNIX搭建和管理高效、安全的...
6. **权限与安全**:Unix的用户和组权限系统以及访问控制列表(ACL)是保证系统安全的关键。理解`umask()`、文件权限位以及`setuid()`、`setgid()`等机制对于编写安全的程序至关重要。 7. **信号(Signal)**:Unix...
根据提供的信息,《Linux-Unix系统编程手册》是一本详尽且深入探讨Linux和UNIX系统编程接口的专业书籍。此书由德国作者Michael Kerrisk撰写,并由孙剑、许从年、董健、孙余强等人翻译成中文。该书旨在帮助读者深入...
在本资源中,我们聚焦于"Unix 系统和网络编程16-7答案完整版",这显然是针对某一教科书或课程的第十六章习题解答。这个章节可能涵盖了Unix系统的基础知识以及网络编程的核心概念。让我们深入探讨一下这些主题。 ...