Mac OS X: 实用脚本程序(bash scripts)系列
更新历史 :
2009-06-23: 添加关于祛除打印机共享的选项,并为了突出代码而改变字体和颜色。
2009-06-22: 添加有关用户组的部分(Group ID和Group)
添加说明的第4项.
变更ARD命令和说明中的MYADMIN.
说明 :
- 持续更新. 因为写过也有好多网上的优秀脚本程序,对学习掌握和实际应用很有用处,在这里可以搜集起来.
- 有的是一个完整脚本程序,有的可能只是一个语句.
- 搜集编写这些实用脚本,可以方便管理员的日常管理工作,通过Apple Remoe Desktop等程序远程运行,也可以适用于定制程序安装包的定制等.
- 由于篇幅排版限制,bash script语句在显示时可能自动换行.
Account UID:
按照数字排序显示当前系统所有本地用户的UID:
dscl localhost list /Local/Default/Users UniqueID | awk ' {print $2} ' | sort -g
用于查找用户帐户的UniqueID
Group ID:
按照数字排序显示当前系统所有本地用户组的GID:
dscl localhost list /Local/Default/groups PrimaryGroupID | awk ' {print $2} ' | sort -g
用于查找用户组的唯一GID
Account:
生成一个管理员帐户 sysadmin, 帐户UID=498, 密码'SysAdmin", 帐户home目录/Users/sysadmin
dscl . -create /Users/sysadmin
dscl . -create /Users/sysadmin UserShell /bin/bash
dscl . -create /Users/sysadmin RealName SystemAdmin
dscl . -create /Users/sysadmin UniqueID 498
dscl . -create /Users/sysadmin PrimaryGroupID 80
dscl . -create /Users/sysadmin NFSHomeDirectory /Users/sysadmin
dscl . -passwd /Users/sysadmin "SysAdmin"
dscl . -append /Groups/admin GroupMembership sysadmin
cp -R /System/Library/User/ Template/user.template /Users/schooladmin
chown -R schooladmin /Users/schooladmin
隐 藏用户UID小于500.
Group:
生成一个用户组Family, GID=500, 组成员student
dscl . -create /groups Family
dscl . -create /groups/Family PrimaryGroupID 500
dscl . -create /Groups/Family RealName FamilyMembers
dscl . -create /groups/Family GroupMembers student
隐藏的用户组GID小于500
Account Priveledge:
设置MYADMIN帐户可以通过ARD管理本地计算机:
/System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -users MYADMIN -privs -all -restart -agent -menu
Add Printer:
添加打印机:
lpadmin -p PRINTERNAME -E -L PRINTERLOCATION -v lpd://PRINTER_IP -P /Library/Printers/PPDs/Contents/Resources/HP/ LaserJet/ 9050.gz
注解: 将其中的全大写替换为真实环境中的值,最后根据打印机的型号制定打印机的PDDs文件.
Disable "Share this Printer" option:
祛除打印机的共享:
lpadmin -p PRINTERNAME -o printer-is-shared=false
在Mac OS X 10.5中使用上面的命令添加打印机后,打印机默认的是共享的,上面的语句就是祛除共享,当然-o选项王权可以使用在添加打印机的命令中.
Trace:
实用跟踪进程:
sudo opensnoop
比如:sudo opensnoop -avgn Safari
Details: http://theappleblog.com/2008/01/14/hidden-gems-in-leopard-opensnoop/
原文链接: http://blog.csdn.net/afatgoat/article/details/4287757