How to Use Port in Mac OS X to Install New Utilities

假设我们想要在Mac OS X中安装: MySQL,这是一个开源的免费的数据库,当然备Oracle收购之后有一些变化。 postgreSQL,这又是另外一个开源的免费的数据库。 perl,这是一种流行的编程语言。 lua,这又是另外一种流行的编程语言。 watch,这是一个实用程序,可以默认每隔2秒重复执行某条命令,比如你想监控一个目录下的文件生成情况,这条命令就很有用。 tree,这是一个实用程序,可以提供类似于ls -R的功能,但是输出是更加直观的树状结构。 当然,我们可以在网络中一个一个地找这些程序,然后一个一个地安装,用不同的安装方法,但是,你也可以选择非常简单的方法,这就是本文要介绍的MacPorts。 在Linux中如果我们要安装一些软件,要解决各个软件之间的包依赖性关系,我们会使用到apt-get(Ubuntu)或者yum(Redhat,CentOS)或者zypper(openSUSE),如果你熟悉一些Linux的话,对于这些软件包管理程序应该有所耳闻。而MacPorts正是在Mac OS X上的软件包管理程序。 安装MacPorts最简单的方法是直接下载dmg文件,双击安装 - Lion版安装文件 | Snow Leopard版安装文件。 MacPorts安装完以后,我们就可以通过命令行的方式来安装其它软件了,可以参看具体命令文档。以下列出常用的命令: 1. 更新本地软件库列表,该命令可以不定时多次执行(sudo以后需要输入密码,输入你自己用户的密码即可)。 sudo port selfupdate 2. 列出软件库中有哪些软件,注意,该命令会输出大量软件名称,因此建议添加more来查看,或者使用后面的search命令。 port list | more 3. 检索需要安装的软件。 port search 当然,还有更精确地搜索,比如如果直接port search tree会出现上百个结果,但是如果执行以下命令,就只会出现一个结果。 $ port search –name –exact tree tree @1.6.0 (sysutils) display tree-view of directories with optional color/HTML…

Oracle Datafiles & Block Device & Parted & Udev

需求: 1. 使用裸设备作为Oracle数据文件,而且要跳过操作系统或者其它软件提供的卷管理(比如Linux下的LVM)。 2. 由于small datafile限制,有大量磁盘分区需要创建。 以下测试环境操作系统为CentOS 6.0,如果你的操作是RHEL6或者OEL6,也同样适用,如果是RHEL5或者OEL5,那么udev部分的命令是不相同的。但是只需要在操作系统中man udev,查看一下相应的语法即可,思路是相同的。 解决方案: 1. 使用parted命令,脚本式创建多个分区,使用gpt类型分区表,这样可以创建大量primary分区,而如果使用msdos分区,则必须要要创建extend分区,然后再创建logical分区,这样在后面的udev规则文件中,还需要将extend分区排除出去,比较麻烦。 在我的测试环境中,对于/dev/sdc磁盘进行操作,分了11个分区,每个50M。 parted -s /dev/sdc mklabel gpt parted -s /dev/sdc unit MB mkpart primary 1 50 parted -s /dev/sdc unit MB mkpart primary 50 100 parted -s /dev/sdc unit MB mkpart primary 100 150 parted -s /dev/sdc unit MB mkpart primary 150 200 parted…

How to set Safari to use PAC file in Mac OS X Lion

目标: 通过设置Safari的自动proxy切换,实现浏览网页的时候,如果是GFW的站点则自动通过Proxy,如果不是,则不使用Proxy。这样保证浏览国内网站时候速度够快,而浏览GFW的网站也没有问题,全自动,无需手工干预。 操作系统和浏览器: Mac OS X Lion + Safari 5.1(当然低版本的Safari也同样可以这样设置)。如果浏览器是Firefox,可以直接用autoproxy插件,如果浏览器是Chrome,可以用Switchy!插件。 需要下载的软件: 1. SSH Tunnel Manager,在Mac App Store中搜索安装即可。 要使用该软件,首先要求有一个可以通过ssh访问的国外虚拟主机,通常有这样主机的,大概也都知道该如何设置ssh端口转发了,所以不再赘述,要注意的是,监听的端口可以随便设置,我设置为7080。如果使用本文中的pac文件,那么也必须要设置为7080。 2. autoproxy.pac脚本,该脚本可以从AutoProxy2PAC站点下载。很可惜,这个站点本身需要翻墙,不过我已经将我自己用的pac文件放在这里,可以下载使用,在SSH Tunnel Manager中必须设置本地端口是7080。 启动SSH Tunnel Manager: 连接设置好的ssh会话,检查本地端口是否已经被正常监听。注意最后两行末尾的LISTEN字样,表示已经监听在本地的7080端口上,这意味着任何通过socks代理发送到本地7080端口的请求,都会通过ssh转发到国外的虚拟主机,然后从国外访问GFWed的网站,再通过ssh返回请求的页面。基本上是这样的方式完成翻墙。 Kamus$ netstat -a|grep 7080 tcp4 0 0 localhost.7080 localhost.37233 ESTABLISHED tcp4 0 0 localhost.37233 localhost.7080 ESTABLISHED tcp4 0 0 localhost.7080 localhost.37232 ESTABLISHED tcp4 0 0 localhost.37232 localhost.7080 ESTABLISHED tcp4…