与这里介绍的其他软件不同,Cygwin 使用 Windows 安装程序。Cygwin setup.exe 文件可以重新安装软件,可以添加、修改或升级 Cygwin 配置的组件。
在 Windows 系统上打开浏览器,通过访问 http://cygwin.com/setup.exe 下载 Cygwin 安装程序。安装程序本身非常小(大约 600KB),因为大多数 Cygwin 软件是在安装过程中下载的。完成下载之后,按照以下步骤安装 Cygwin:
1 运行安装程序。图 1 显示 Cygwin 欢迎屏幕。
图 1. 在安装 Cygwin 期间出现的第一个对话框
2 单击 Next 进入下一个屏幕,选择要执行的安装类型。
3 单击 Install from Internet。
4 单击 Next,然后选择一个安装目录。
配置安装的窗口见图 2。
图 2. Cygwin 安装选项
在大多数情况下,推荐的安装选项是合适的,也可以进行定制,但是要注意几点:
· 不要在 Windows 系统的根目录(比如 C:)中安装 Cygwin。最好把 Cygwin 安装在它自己的子目录中,比如默认目录(C:\cygwin)或 C:\Program Files\cygwin。(您选择的目标目录将成为模拟的 UNIX 环境的根目录/。例如,如果在 C:\cygwin 中安装,那么虚拟的 /usr/bin 实际上是 C:\cygwin\usr\bin)。
· 对于 Install For 选项,不要选择 Just Me。
· 把 Default Text File 类型设置为 Unix,从而尽可能提高与其他 UNIX 机器上存储的现有文件的兼容性。
5. 单击Next。
在下一个窗口中,选择一个存储 Cygwin 所需的数据的目录。不要选择前一步中选择的 Cygwin 目录。 如果可能的话,应该在有至少 1GB 空闲空间的驱动器上创建或选择一个目录。
6. 再次单击 Next,选择使用的 Internet 连接类型。通常应该选择 Direct Connection。
7. 再次单击 Next。
稍等一会儿,Cygwin 会下载当前的镜像站点列表,让您选择一个镜像站点,见图 3。如果不确定应该选择哪个站点,就选择地理位置比较近的站点。
图 3. 选择您认为可靠的或地理位置比较近的安装站点
经过短暂的延迟之后,安装程序显示可用的类别和包的完整列表。图 4 显示一个类别的部分内容。单击加号 (+) 展开对应的类别;单击 “循环” 标志在 Skip(忽略此包)和包的所有可用版本之间循环。如果 Cygwin 提供一个实用程序的多个版本,应该选择满足您的需求的实例。顺便说一下,如果选择 B 列,就会下载二进制包;选择 S,也会下载源代码。
图 4. 选择最适合需要的包和实例
在 Cygwin 中可用的包超过 1,000 个,所以应该只选择您需要的类别和包。(安装所有 Cygwin 包会占用超过 800MB 的磁盘空间)。以后随时可以添加整个类别或单独的包:只需重新运行 Cygwin 安装程序。(还可以在任何时候用相同的安装程序删除或更新包)。搜索 Cygwin 包列表(参见 参考资料),检查您喜欢的 UNIX 实用程序是否在 Cygwin 中可用。
8. 选择您需要的工具之后,单击 Next,下载过程开始!
进度条分别反映每个包的下载进度、总下载进度和磁盘使用量。图 5 是在我的测试计算机上在安装期间截取的屏幕图。
图 5. Cygwin 下载大量软件,所以请耐心等待
最后,安装程序安装软件并(可选地)在 Start 菜单和桌面中添加快捷方式。单击 Finish
9. 通过使用 Start 菜单或双击 Cygwin 图标(如果添加了这些快捷方式的话),启动 Cygwin;也可以执行 Cygwin 目录中的 Cygwin 脚本(比如 C:\cygwin\Cygwin.bat)。
图 6 显示第一次启动 Cygwin 时的情况:它创建您的主目录,执行 shell 启动文件,显示提示。现在可以运行 UNIX 命令了!
图 6. 现在可以在 Windows 中使用 UNIX 命令了!
例如,试一下 ls -a或 type touch。后一个命令表明 touch是可执行文件 /usr/bin/touch。
二:使用
使用上的方便性很是不错,启动Cygwin以后,会在Windows下得到一个Bash Shell,由于Cygwin是以
Windows下的服务运行的,所以很多情况下和在Linux下有很大的不同,这点上,苹果建议你多理解下这个
工作环境。我们开始使用Cygwin吧,比如PS,相当于Windows下的TM(任务管理器),呵呵,直接Ps的话
那么得到的会是Cygwin下的Shell的进程如下
Taynni-417@ENTERBD-417 ~
$ ps
PID PPID PGID WINPID TTY UID STIME COMMAND
2212 1 2212 2212 con 1003 01:54:29 /usr/bin/bas
3384 2212 3384 3232 con 1003 01:59:24 /usr/bin/ps
如果这个时候你需要在Cygwin下显示Windows下的进程你可以在PS后面加上参数-aW,
PS的相关用法:
Quote
Usage ps [-aefl] [-u uid]
-f = show process uids, ppids
-l = show process uids, ppids, pgids, winpids
-u uid = list processes owned by uid
-a, -e = show processes of all users
-s = show process summary
-W = show windows as well as cygwin processes
很容易看懂吧,呵呵
有点不一样的地方,我想大家一定想知道在Cygwin下怎么访问Windows下的内容了,
呵呵,首先使用DF命令直接查看下本地驱动器,呵呵,很容易了吧,显示的内容
如下:
Quote
Taynni-417@ENTERBD-417 ~
$ df
Filesystem 1k-blocks Used Available Use% Mounted on
e:\cygwin\bin 10231384 4844432 5386952 48% /usr/bin
e:\cygwin\lib 10231384 4844432 5386952 48% /usr/lib
e:\cygwin 10231384 4844432 5386952 48% /
c: 5106676 1240312 3866364 25% /cygdrive/c
d: 10239408 6560328 3679080 65% /cygdrive/d
e: 10231384 4844432 5386952 48% /cygdrive/e
f: 6333252 4065564 2267688 65% /cygdrive/f
g: 7150972 4672724 2478248 66% /cygdrive/g
如上便是我的硬盘的全部了,在后面的/cygdrive/c便是C盘了,然后/cygdrive/d便是D盘了
这样的话,想进D盘便可以这样进,呵呵
Quote
Taynni-417@ENTERBD-417 ~
$ cd /cygdrive/d
Taynni-417@ENTERBD-417 /cygdrive/d
$ ls -l
ls: pagefile.sys: Permission denied
total 0
drwxr-xr-x 9 Taynni-4 None 0 Aug 31 20:56 Book
drwxr-xr-x 2 Taynni-4 None 0 Aug 23 05:24 Ftproot
drwxr-xr-x 30 Taynni-4 None 0 May 10 23:38 HACKER
drwxr-xr-x 11 Taynni-4 None 0 Feb 1 2005 JIAOXUE
Taynni-417@ENTERBD-417 /cygdrive/d
$
在Cygwin下还可以运行Windows下的程序,如下:
Taynni-417@ENTERBD-417 ~
$ cmd.exe
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
e:\cygwin\home\Taynni-417>d:
D:\>cd hacker
D:\HACKER>cd tools
D:\HACKER\Tools>cd pstools
D:\HACKER\Tools\Pstools>ls
pdh.dll pskill.exe pspasswd.exe
Psinfo.exe psexec.exe pslist.exe psservice.exe
Pstools.chm psfile.exe psloggedon.exe psshutdown.exe
README.TXT psgetsid.exe psloglist.exe pssuspend.exe
D:\HACKER\Tools\Pstools>exit
Taynni-417@ENTERBD-417 ~
$
很明显的,直接输入CMD.EXE便可以得到一个本机CMDSHELL,这样你想运行什么程序都可以了退出到Cygwin的Bash shell需要使用exit命令,很方便吧,呵呵
所要使用的命令 --help获取帮助,如下所示:比如我不知道md5sum做什么用的
(这个命令是用于效验文件md5值的,主要是为了文件的完整性和安全性)
Quote
Taynni-417@ENTERBD-417 ~
$ md5sum --help
Usage: md5sum [OPTION] [FILE]...
or: md5sum [OPTION] --check [FILE]
Print or check MD5 (128-bit) checksums.
With no FILE, or when FILE is -, read standard input.
-b, --binary read files in binary mode (default on DOS/Windows)
-c, --check check MD5 sums against given list
-t, --text read files in text mode (default)
The following two options are useful only when verifying checksums:
--status don't output anything, status code shows success
-w, --warn warn about improperly formated checksum lines
--help display this help and exit
--version output version information and exit
The sums are computed as described in RFC 1321. When checking, the input
should be a former output of this program. The default mode is to print
a line with checksum, a character indicating type (`*' for binary, ` ' for
text), and name for each FILE.
Taynni-417@ENTERBD-417 ~
$