谯秀洁 发表于 2016-5-16 09:17:57

Mac OS X: 实用脚本程序(bash scripts)系列

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/
页: [1]
查看完整版本: Mac OS X: 实用脚本程序(bash scripts)系列