中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 操作系统 > Solairs
怎样给一般用户以关机的权限?
作者:未知 时间:2005-09-13 14:11 出处:ChinaUnix.net 责编:chinaitpower
              摘要:怎样给一般用户以关机的权限?

如何比较好的给某个普通用户以关闭系统的权限(init 5)?

 kiner007 回复于:2003-01-16 13:44:09
用RBAC或者是sudo都可以.

 procrus 回复于:2003-01-16 14:20:21
建一个关机用户,然后su

 webtone 回复于:2003-01-16 14:23:02
建一个shutdown用户,用户ID和组ID是0和1,不要口令,在/.profile中执行init 0等关机命令,一般用户关机时可以登陆该用户

 quaine 回复于:2003-01-16 14:23:06
各位可以详细说说吗?谢谢!

 procrus 回复于:2003-01-16 14:26:37
vi  /etc/passwd
hait::0:14::/:/etc/halt
su -halt,就能够直接到ok状态了

 南非蜘蛛 回复于:2003-01-16 14:28:10
[quote:fbe0f22837="procrus"]vi  /etc/passwd
hait::0:14::/:/etc/halt
su -halt,就能够直接到ok状态了[/quote:fbe0f22837]
经典,快试试,要是可以,我就加精了

 quaine 回复于:2003-01-16 14:35:48
[quote:cf9001625c="procrus"]vi  /etc/passwd
hait::0:14::/:/etc/halt
su -halt,就能够直接到ok状态了[/quote:cf9001625c]


密码留空,好像切不过去。

 quaine 回复于:2003-01-16 14:43:13
要在shadow文件里加入halt用户,才能使用。

 procrus 回复于:2003-01-16 14:43:13
那就vi /etc/passwd 
hait:0:14::/:/etc/halt 
vi /etc/shadow
halt::6445::::::
再试试看吧,我好长时间没有试过了

 quaine 回复于:2003-01-16 14:50:35
ok,成功!
我试了一下,halt命令可以用,不过好像用init加运行级就有问题了,估计它不认识init 5之间的空格,用什么把/etc/init 5括起来?我试了“”好像不行。

 hellcasper 回复于:2003-01-16 14:55:06
小技巧,精华阿。。。^_^

 procrus 回复于:2003-01-16 14:55:16
新建一个命令就可以了呀
vi /usr/bin/guanji
sync;sync;sync
init 5

chmod +x /usr/bin/guanji

试试吧,应该可以的

 quaine 回复于:2003-01-16 15:18:30
[quote:5d1bf6b47e="procrus"]新建一个命令就可以了呀
vi /usr/bin/guanji
sync;sync;sync
init 5

chmod +x /usr/bin/guanji

试试吧,应该可以的[/quote:5d1bf6b47e]

不行吖

 mmmmn 回复于:2003-01-16 15:38:34
精华区有

 大漠孤烟 回复于:2003-01-16 15:54:10
先用admintool创建shutdown用户,
然后#vi /etc/passwd,将shutdown的uid改为0,gid改为1,
再然后#vi /home/shutdown/.profile
在其中加入init 0
最后#su - shutdown
再最后就没了:)

 quaine 回复于:2003-01-16 16:20:37
[quote:e5cd1f89d6="大漠孤烟"]先用admintool创建shutdown用户,
然后#vi /etc/passwd,将shutdown的uid改为0,gid改为1,
再然后#vi /home/shutdown/.profile
在其中加入init 0
最后#su - shutdown
再最后就没了:)[/quote:e5cd1f89d6]

建用户时,不能创建home下的目录?

 quaine 回复于:2003-01-16 16:21:50
[quote:e8f5f417b1="大漠孤烟"]先用admintool创建shutdown用户,
然后#vi /etc/passwd,将shutdown的uid改为0,gid改为1,
再然后#vi /home/shutdown/.profile
在其中加入init 0
最后#su - shutdown
再最后就没了:)[/quote:e8f5f417b1]

建用户时,不能创建home下的目录?

 大漠孤烟 回复于:2003-01-16 16:31:10
那就创到/下啊~~~
#vi /shutdown/.profile

 johnyou 回复于:2003-01-16 17:38:33
But the real way is RBAC.

 quaine 回复于:2003-01-17 07:56:26
[quote:21410726e4="大漠孤烟"]那就创到/下啊~~~
#vi /shutdown/.profile[/quote:21410726e4]

不起作用。

 iricyan 回复于:2003-01-17 08:14:31
建立的halt用户,使用了不推荐的关机命令!

 路人甲 回复于:2003-01-17 08:51:04
很不错的技巧、!

 zjshaojianyu 回复于:2003-01-22 11:23:47
建完用户后只要#pwconv同步一下passwd和shadow文件就可以用了。

 zjshaojianyu 回复于:2003-01-22 11:33:37
#vi /etc/passwd
halt::0:1::/etc:/etc/halt
#pwconv
#su - halt

 凝嫣 回复于:2003-02-01 10:13:17
#head /etc/passwd
halt:0:1:Superuser:/:/bin/halt.sh

#cat /bin/halt.sh
sync
sync
shutdown -y -g0

任何人均可使用halt用户进行关机!!

 fanfan 回复于:2003-02-03 00:21:24
halt似乎不是最好的,那只是快速关机用的,对于有数据库的最好还是shutdown,在命令行加个时间和确认,作成一个shell文件,加上可执行权限,放在口令文件里即可
halt:0:14::/:/etc/shutdown_shell_file

 wd302 回复于:2003-02-03 23:14:47
[quote:ef45722e59="quaine"]


密码留空,好像切不过去。[/quote:ef45722e59]
这样对系统有没有什么危害呢?

 helixor 回复于:2003-02-12 00:31:13
[quote:c302845dfa="johnyou"]But the real way is RBAC.[/quote:c302845dfa]

这位大哥说得对,我来介绍一下Solaris下RBAC的用法。

1. [b:c302845dfa]Create a role [/b:c302845dfa](这个例子创建的角色名为
'pseudo ') 

# roleadd -u 1000 -g 10 -d /export/home/pseudo -m pseudo 

# passwd pseudo 

New password: 

Re-enter new password: 

passwd (SYSTEM): passwd successfully changed for pseudo 

# pwconv //同步/etc/passwd和/etc/shadow 

# grep -i pseudo /etc/passwd 

pseudo:1000:10::/export/home/minime:/bin/pfsh 

2. [b:c302845dfa]Create a profile [/b:c302845dfa](创建一个Shut的profile) 

# vi /etc/security/prof_attr 

Shut:::Able to shutdown the system: 

:wq! 

# grep Shut /etc/security/prof_attr 

Shut:::Able to shutdown the system: 

3. [b:c302845dfa]Add the profile to the role [/b:c302845dfa]

# rolemod -P Shut,All pseudo 

4. [b:c302845dfa]验证/etc/user_attr中的修改[/b:c302845dfa]

# grep Shut /etc/user_attr 

pseudo::::type=role;profiles=Shut 

# profiles pseudo //验证

Shut,All 

5. [b:c302845dfa]创建一个用户并赋予pseudo的角色('useradd -R')。或修改用户角色('usermod -R')  [/b:c302845dfa]

--创建一个用户并赋予pseudo的角色 -- 
# useradd -u 1001 -g 10 -d /export/home/shutadmn -m \ 

-s /bin/ksh -R pseudo shutadmn 

# passwd shutadmn 

New password: 

Re-enter new password: 

passwd (SYSTEM): passwd successfully changed for shutadmn 

# pwconv 

# grep shutadmn /etc/passwd 

shutadmn:1001:10::/export/home/shutadmn:/bin/ksh 

-- 修改用户角色-- 

# usermod -R pseudo shutadmn 

6. [b:c302845dfa]给Shut profile授权命令[/b:c302845dfa]。 

# vi /etc/security/exec_attr 

Shut:suser:cmd:::/usr/sbin/shutdown:uid=0 

# grep Shut /etc/security/exec_attr 

Shut:suser:cmd:::/usr/sbin/shutdown:uid=0 

7. [b:c302845dfa]测试 [/b:c302845dfa]

A. [b:c302845dfa]验证用户是否已被赋予角色[/b:c302845dfa]

# roles shutadmn 

pseudo 

B. [b:c302845dfa]验证已为角色设置profile[/b:c302845dfa]

# profiles pseudo 

Shut,All 

C. [b:c302845dfa]以shutadmn用户登录[/b:c302845dfa]

D. [b:c302845dfa]$ su pseudo [/b:c302845dfa]

Password: <enter pseudo's passwd> 

E. 验证effective UID 

$ /usr/ucb/whoami 

pseudo 

F. 验证 真正的 UID 

$ who am i 

shutadmn pts/10 Feb 12 08:45 (:0.0) 

G. 执行shutdown: 

# /usr/sbin/shutdown -i 6 -g 0 

<EOF>

关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有