JavaScript is required to for searching.
跳过导航链接
退出打印视图
手册页第 1 部分:用户命令     Oracle Solaris 11.1 Information Library (简体中文)
为本文档评分
search filter icon
search icon

文档信息

前言

简介

User Commands

acctcom(1)

adb(1)

addbib(1)

admin(1)

alias(1)

allocate(1)

amt(1)

appcert(1)

apptrace(1)

apropos(1)

ar(1)

arch(1)

as(1)

asa(1)

at(1)

atq(1)

atrm(1)

audioconvert(1)

audioctl(1)

audioplay(1)

audiorecord(1)

audiotest(1)

auths(1)

auto_ef(1)

awk(1)

banner(1)

basename(1)

basename(1B)

batch(1)

bc(1)

bdiff(1)

bfs(1)

bg(1)

biff(1B)

break(1)

builtin(1)

cal(1)

calendar(1)

case(1)

cat(1)

cd(1)

cdc(1)

cdrw(1)

chdir(1)

checkeq(1)

checknr(1)

chgrp(1)

chkey(1)

chmod(1)

chown(1)

chown(1B)

ckdate(1)

ckgid(1)

ckint(1)

ckitem(1)

ckkeywd(1)

ckpath(1)

ckrange(1)

ckstr(1)

cksum(1)

cktime(1)

ckuid(1)

ckyorn(1)

clear(1)

cmp(1)

col(1)

comb(1)

comm(1)

command(1)

compress(1)

continue(1)

cp(1)

cpio(1)

cpp(1)

cputrack(1)

crle(1)

crontab(1)

csh(1)

csplit(1)

ct(1C)

ctags(1)

ctrun(1)

ctstat(1)

ctwatch(1)

cu(1C)

cut(1)

date(1)

dc(1)

deallocate(1)

decrypt(1)

delta(1)

deroff(1)

df(1B)

dhcpinfo(1)

diff(1)

diff3(1)

diffmk(1)

digest(1)

digestp(1)

dircmp(1)

dirname(1)

dirs(1)

dis(1)

disown(1)

dispgid(1)

dispuid(1)

dos2unix(1)

dpost(1)

du(1)

du(1B)

dump(1)

dumpcs(1)

dumpkeys(1)

echo(1)

echo(1B)

ed(1)

edit(1)

egrep(1)

eject(1)

elfdump(1)

elfedit(1)

elffile(1)

elfsign(1)

elfwrap(1)

encrypt(1)

enhance(1)

env(1)

eqn(1)

errange(1)

errdate(1)

errgid(1)

errint(1)

erritem(1)

error(1)

errpath(1)

errstr(1)

errtime(1)

erruid(1)

erryorn(1)

eval(1)

ex(1)

exec(1)

exit(1)

expand(1)

export(1)

exportfs(1B)

expr(1)

expr(1B)

exstr(1)

factor(1)

false(1)

fastboot(1B)

fasthalt(1B)

fc(1)

fg(1)

fgrep(1)

file(1)

file(1B)

filebench(1)

filep(1)

filesync(1)

filofaxp(1)

find(1)

finger(1)

fmt(1)

fmtmsg(1)

fold(1)

for(1)

foreach(1)

franklinp(1)

from(1B)

ftp(1)

function(1)

gcore(1)

gencat(1)

geniconvtbl(1)

genmsg(1)

get(1)

getconf(1)

getfacl(1)

getlabel(1)

getopt(1)

getoptcvt(1)

getopts(1)

gettext(1)

gettxt(1)

getzonepath(1)

glob(1)

goto(1)

gprof(1)

grep(1)

groups(1)

groups(1B)

grpck(1B)

hash(1)

hashcheck(1)

hashmake(1)

hashstat(1)

head(1)

helpdate(1)

helpgid(1)

helpint(1)

helpitem(1)

helppath(1)

helprange(1)

helpstr(1)

helptime(1)

helpuid(1)

helpyorn(1)

hist(1)

history(1)

hostid(1)

hostname(1)

i386(1)

i486(1)

iconv(1)

if(1)

indxbib(1)

install(1B)

ipcrm(1)

ipcs(1)

isainfo(1)

isalist(1)

jobs(1)

join(1)

jsh(1)

kbd(1)

kdestroy(1)

keylogin(1)

keylogout(1)

kill(1)

kinit(1)

klist(1)

kmdb(1)

kmfcfg(1)

kpasswd(1)

krb5-config(1)

ksh(1)

ksh88(1)

ksh93(1)

ktutil(1)

kvno(1)

lari(1)

last(1)

lastcomm(1)

ld(1)

ldapadd(1)

ldapdelete(1)

ldaplist(1)

ldapmodify(1)

ldapmodrdn(1)

ldapsearch(1)

ldd(1)

ld.so.1(1)

let(1)

lex(1)

lgrpinfo(1)

limit(1)

line(1)

list_devices(1)

listusers(1)

llc2_autoconfig(1)

llc2_config(1)

llc2_stats(1)

ln(1)

ln(1B)

loadkeys(1)

locale(1)

localedef(1)

logger(1)

logger(1B)

login(1)

logname(1)

logout(1)

look(1)

lookbib(1)

lorder(1)

ls(1)

ls(1B)

m4(1)

mac(1)

mach(1)

machid(1)

madv.so.1(1)

mail(1)

Mail(1B)

mail(1B)

mailcompat(1)

mailp(1)

mailq(1)

mailstats(1)

mailx(1)

make(1S)

makekey(1)

man(1)

mconnect(1)

mcs(1)

mdb(1)

mesg(1)

mkdir(1)

mkmsgs(1)

mkstr(1B)

mktemp(1)

moe(1)

more(1)

mp(1)

mpss.so.1(1)

msgcc(1)

msgcpp(1)

msgcvt(1)

msgfmt(1)

msggen(1)

msgget(1)

mt(1)

mv(1)

nawk(1)

nc(1)

ncab2clf(1)

ncakmod(1)

neqn(1)

netcat(1)

newform(1)

newgrp(1)

newsp(1)

newtask(1)

nice(1)

nl(1)

nm(1)

nohup(1)

notify(1)

nroff(1)

od(1)

on(1)

onintr(1)

optisa(1)

pack(1)

packagemanager(1)

page(1)

pagesize(1)

pargs(1)

passwd(1)

paste(1)

patch(1)

pathchk(1)

pax(1)

pcat(1)

pcred(1)

perl(1)

pfbash(1)

pfcsh(1)

pfexec(1)

pfiles(1)

pfksh(1)

pflags(1)

pfsh(1)

pftcsh(1)

pfzsh(1)

pg(1)

pgrep(1)

pkcs11_inspect(1)

pkg(1)

pkgdepend(1)

pkgdiff(1)

pkgfmt(1)

pkginfo(1)

pkglint(1)

pkgmerge(1)

pkgmk(1)

pkgmogrify(1)

pkgparam(1)

pkgproto(1)

pkgrecv(1)

pkgrepo(1)

pkgsend(1)

pkgsign(1)

pkgtrans(1)

pkill(1)

pklogin_finder(1)

pktool(1)

plabel(1)

pldd(1)

plgrp(1)

plimit(1)

pmadvise(1)

pmap(1)

pm-updatemanager(1)

popd(1)

ppgsz(1)

ppriv(1)

pr(1)

praliases(1)

prctl(1)

preap(1)

print(1)

printenv(1B)

printf(1)

priocntl(1)

proc(1)

prof(1)

profiles(1)

projects(1)

prs(1)

prt(1)

prun(1)

ps(1)

ps(1B)

psig(1)

pstack(1)

pstop(1)

ptime(1)

ptree(1)

pushd(1)

pvs(1)

pwait(1)

pwd(1)

pwdx(1)

radadrgen(1)

ranlib(1)

rcapstat(1)

rcp(1)

read(1)

readonly(1)

red(1)

refer(1)

regcmp(1)

rehash(1)

remote_shell(1)

remsh(1)

renice(1)

repeat(1)

reset(1B)

return(1)

rksh(1)

rksh88(1)

rlogin(1)

rm(1)

rmail(1)

rmdel(1)

rmdir(1)

rmformat(1)

rmmount(1)

rmumount(1)

roffbib(1)

roles(1)

rpcgen(1)

rpm2cpio(1)

rsh(1)

runat(1)

rup(1)

rup(1C)

ruptime(1)

rusage(1B)

rusers(1)

rwho(1)

sact(1)

sar(1)

sccs(1)

sccs-admin(1)

sccs-cdc(1)

sccs-comb(1)

sccs-delta(1)

sccsdiff(1)

sccs-get(1)

sccs-help(1)

sccshelp(1)

sccs-prs(1)

sccs-prt(1)

sccs-rmdel(1)

sccs-sact(1)

sccs-sccsdiff(1)

sccs-unget(1)

sccs-val(1)

scp(1)

script(1)

sdiff(1)

sed(1)

sed(1B)

select(1)

set(1)

setenv(1)

setfacl(1)

setlabel(1)

setpgrp(1)

settime(1)

sftp(1)

sh(1)

shcomp(1)

shell_builtins(1)

shift(1)

shutdown(1B)

size(1)

sleep(1)

soelim(1)

sort(1)

sortbib(1)

sotruss(1)

source(1)

sparc(1)

spell(1)

spellin(1)

split(1)

srchtxt(1)

ssh(1)

ssh-add(1)

ssh-agent(1)

ssh-http-proxy-connect(1)

ssh-keygen(1)

ssh-keyscan(1)

ssh-socks5-proxy-connect(1)

stop(1)

strchg(1)

strconf(1)

strings(1)

strip(1)

stty(1)

stty(1B)

sum(1)

sum(1B)

sun(1)

suspend(1)

svcprop(1)

svcs(1)

switch(1)

symorder(1)

sys-suspend(1)

sysV-make(1)

t300(1)

t300s(1)

t4014(1)

t450(1)

tabs(1)

tail(1)

talk(1)

tar(1)

tbl(1)

tcopy(1)

tee(1)

tek(1)

telnet(1)

test(1)

test(1B)

tftp(1)

time(1)

timemanp(1)

times(1)

timesysp(1)

timex(1)

tip(1)

touch(1)

touch(1B)

tplot(1)

tput(1)

tr(1)

tr(1B)

trap(1)

troff(1)

true(1)

truss(1)

tset(1B)

tsort(1)

tty(1)

type(1)

typeset(1)

ul(1)

ulimit(1)

umask(1)

unalias(1)

uname(1)

uncompress(1)

unexpand(1)

unget(1)

unhash(1)

unifdef(1)

uniq(1)

units(1)

unix2dos(1)

unlimit(1)

unpack(1)

unset(1)

unsetenv(1)

until(1)

updatehome(1)

uptime(1)

userattr(1)

users(1B)

uucp(1C)

uudecode(1C)

uuencode(1C)

uuglist(1C)

uulog(1C)

uuname(1C)

uupick(1C)

uustat(1C)

uuto(1C)

uux(1C)

vacation(1)

val(1)

valdate(1)

valgid(1)

valint(1)

valpath(1)

valrange(1)

valstr(1)

valtime(1)

valuid(1)

valyorn(1)

vc(1)

vedit(1)

ver(1)

vgrind(1)

vi(1)

view(1)

vipw(1B)

volcheck(1)

volrmmount(1)

w(1)

wait(1)

wc(1)

what(1)

whatis(1)

whence(1)

whereis(1B)

which(1)

while(1)

who(1)

whoami(1B)

whocalls(1)

whois(1)

write(1)

xargs(1)

xgettext(1)

xstr(1)

yacc(1)

yes(1)

ypcat(1)

ypmatch(1)

yppasswd(1)

ypwhich(1)

zcat(1)

zlogin(1)

zonename(1)

zonestat(1)

请告诉我们如何提高我们的文档:
过于简略
不易阅读或难以理解
重要信息缺失
错误的内容
需要翻译的版本
其他
Your rating has been updated
感谢您的反馈!

您的反馈将非常有助于我们提供更好的文档。 您是否愿意参与我们的内容改进并提供进一步的意见?

ppriv

- 检查或修改进程特权集和属性

用法概要

/usr/bin/ppriv -e [-D | -N] [-M] [-s spec] [-X | -r rule] command [arg]...
/usr/bin/ppriv [-vn] [-S] [-D | -N] [-s spec] [-X | -r rule]
     [pid | core]...
/usr/bin/ppriv -l [-vn] [privilege-specification | extended-policy]...

描述

ppriv 命令的第一次调用使用根据命令行上的参数修改的特权集和标志运行指定的 command

第二次调用检查或更改正在运行的进程和核心文件的特权状态。

第三次调用列出所定义的特权以及关于指定的特权或特权集规范的信息。

选项

支持以下选项:

-D

为所提供的进程或命令打开特权调试。

-e

将其余参数解释为一个命令行,并使用指定的特权属性和特权集运行该命令行。

-l

在 stdout 上列出当前定义的所有特权。

-M

当系统配置有 Trusted Extensions 时,此选项将启用 NET_MAC_AWARENET_MAC_AWARE_INHERIT 进程属性。

具有这些属性和 net_mac_aware 特权的进程可与较低级别的远程对等方进行通信。

-n

将端口号和用户显示为数字。通常,ppriv 将端口号和用户显示为符号。此选项仅在显示扩展策略时适用。

-N

为所提供的进程或命令关闭特权调试。

-s spec

根据 spec(以 [AEILP][+-=]privsetspec 格式指定的内容,不包含空格)修改进程的特权集,其中:

AEILP

表示一个或多个指示要更改的特权集的字母。这些字母不区分大小写,例如,aA 都指示所有特权集。

有关特权集合的单一字母缩写的定义,请参见 privileges(5)

+-=

表示修饰符,分别用于在 privsetspec 中指定的特权集中添加 (+) 或删除 (-) 所列出的特权,或者将所列出的特权赋予 (=) 该特权集。

privsetspec

表示以逗号分隔的特权集指定内容(priv1priv2,等等),如 priv_str_to_set(3C)中所述。

可以使用多个 -s 选项修改同一特权集,前提是只指定了对单个特权集的赋值,或者指定了任意数目的添加和删除。也就是说,针对特权集的赋值与添加或删除是互斥的。

-r rule

安装扩展策略。请参见 privileges(5)

可以指定多个规则。新规则将添加到现有策略中。要替换现有策略,请先使用 -X 将其删除,然后使用 -r 添加新策略。

-S

短. 为特权集报告尽可能短的输出字符串。缺省设置是可移植输出。请参见 priv_str_to_set(3C)

-X

禁用扩展策略。

-v

详细模式。使用特权名称报告特权集。

用法

ppriv 实用程序检查进程和核心文件,并输出或更改其特权集。

ppriv 可以在启用或禁用特权调试的情况下执行命令,或者使用比调用进程时更少的特权运行命令。

执行子进程时,可修改的特权集只有 LI。只能从 LI 删除特权,因为 ppriv 是以 P=E=I 设置启动的。

还可使用 ppriv 从进程删除特权,或者将特权传递至其他进程。要控制某个进程,ppriv 实用程序的有效特权集必须是受控进程的 EIP 的超集。实用程序的限制特权集必须是目标的限制特权集的超集。如果目标的进程 uid 不匹配,则必须在实用程序的有效特权集合中声明 {PRIV_PROC_OWNER} 特权。如果受控进程具有值为 0 的 uid,则可能存在更多限制。请参见 privileges(5)

示例

示例 1 获取当前 Shell 的进程特权

以下示例将获取当前 shell 的进程特权:

example$ ppriv $$
387:   -sh
flags = <none>
         E: basic
         I: basic
         P: basic
         L: all

示例 2 从 Shell 的可继承的有效特权集中删除一个特权

以下示例将从 shell 的可继承的有效特权集中删除一个特权。

example$ ppriv -s EI-proc_session $$ 

子进程仍可检查父 shell,但不能再影响父进程,因为父进程在其允许特权集中的特权比 ppriv 子进程多:

example$ truss -p $$
truss: permission denied: 387

example$ ppriv $$
387:   -sh
flags = <none>
         E: basic,!proc_session
         I: basic,!proc_session
         P: basic
         L: all

示例 3 在启用特权调试的情况下运行进程

以下示例在启用特权调试的情况下运行进程:

example$ ppriv -e -D cat /etc/shadow
cat[418]: missing privilege “file_dac_read” (euid = 21782),
                    needed at ufs_access+0x3c
cat: cannot open /etc/shadow

特权调试错误消息将发送到当前进程的控制终端。needed at 地址规范是内核实现的人工产物,可在软件更新后的任何时间进行更改。

可使用 /etc/name_to_sysnum 将系统调用号映射至系统调用。

示例 4 列出当前区域中可用的特权

以下示例将列出当前区域中可用的特权(请参见 zones(5))。当在全局区域中运行时,会列出已定义的所有特权。

example$ ppriv -l zone
 ... listing of all privileges elided ...

示例 5 检查特权识别进程

以下示例检查特权识别进程:

example$ ppriv -S ‘pgrep rpcbind‘


928:    /usr/sbin/rpcbind
flags = PRIV_AWARE
        E: net_privaddr,proc_fork,sys_nfs
        I: none
        P: net_privaddr,proc_fork,sys_nfs
        L: none

有关标志的解释,请参见 setpflags(2)

示例 6 在扩展策略下运行进程

以下示例在扩展策略下运行进程:

example$ ppriv -r '{file_write}:/home/casper/.mozilla/*' \
           -r '{file_write}:/tmp/*,{proc_exec}:/usr/*' -e firefox

请参见 privileges(5)

示例 7 检查已启动的进程

以下示例检查在示例 6 中启动的进程:

example$ ppriv 101272
101272: /usr/lib/firefox/firefox-bin
flags = PRIV_XPOLICY
Extended policies:
{file_write}:/home/casper/.mozilla/*
{file_write}:/tmp/*
{proc_exec}:/usr/*
E: basic,!file_write,!proc_exec
I: basic,!file_write,!proc_exec
P: basic,!file_write,!proc_exec
L: all

退出状态

将返回以下退出值:

0

操作成功。

非零

出现错误。

文件

/proc/*

进程文件

/etc/name_to_sysnum

系统调用名称到系统调用号的映射

属性

有关下列属性的说明,请参见 attributes(5)

属性类型
属性值
可用性
system/core-os
接口稳定性
请参见下文。

调用为 Committed(已确定)。输出是 "Uncommitted"(未确定)。

另请参见

gcore(1)truss(1)setpflags(2)priv_str_to_set(3C)proc(4)attributes(5)privileges(5)zones(5)