Skip to Content
LINUX系統程式設計 第二版
book

LINUX系統程式設計 第二版

by Robert Love
December 2013
Intermediate to advanced
496 pages
8h 57m
Chinese
GoTop Information, Inc.
Content preview from LINUX系統程式設計 第二版
178
|
第五章
HP-UX 的手法變更用戶和群組的識別碼
你可能會覺得情況越來越混亂,就連 HP-UXHewlett-Packard Unix 系統)也提供了
自己的機制,以便用於設定一個行程的用戶和群組識別碼。Linux 隨後也提供了這些介
面,如果你想要維持 HP-UX 的移植性,這會很有用:
#define _GNU_SOURCE
#include <unistd.h>
int setresuid (uid_t ruid, uid_t euid, uid_t suid);
int setresgid (gid_t rgid, gid_t egid, gid_t sgid);
setresuid()
可用於把真實、有效以及暫存的用戶識別碼分別設定成
ruid
euid
以及
suid
。若把任何參數值設定成
-1
,則相對應的用戶識別碼會維持不變。
root
用戶可以把任何的用戶識別碼設定成任何值。非 root 用戶可以把任何的用戶識別碼
設定成當前之真實、有效或暫存的用戶識別碼。執行成功時,
setuid()
會傳回
0
。發生
錯誤時,則會傳回
-1
並把
errno
設定成下面其中一個值:
EAGAIN
uid
與真實用戶識別碼不相符,而且把真實用戶識別碼設定成
uid
,會使得用戶逾越
NPROC
rlimit(用於指定一個用戶所能擁有之行程的數目)。
EPERM
用戶不是
root
,而且企圖把真實、有效或暫存的用戶識別碼設定成與當前之真實、
有效或暫存的用戶識別碼不相符的值。
前面的討論同樣適用於群組—僅需要把
setresuid() ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

深入理解運算原理|從簡單的機器到無所不能的程式

深入理解運算原理|從簡單的機器到無所不能的程式

Tom Stuart
管理Kubernetes

管理Kubernetes

Brendan Burns, Craig Tracey
算法技术手册(原书第2 版)

算法技术手册(原书第2 版)

George T.Heineman, Gary Pollice, Stanley Selkow

Publisher Resources

ISBN: 9789862769812