今年安装了Cygwin,在使用遇到了一些问题,总结了一下解决方法,涉及的方面比较多,比较凌乱,只当学习笔记做为参考.
------------------------------------ Cygwin ---------------------------------------
1 整合cygwin命令到Windows中
假设cygwin安装在d:/develop/cygwin,则将d:/develop/cygwin/bin添加到系统变量PATH中(最好加在 windows前面,这样的话,有些相同的命令的话,是先执行cygwin的命令,而不是windows命令,比如find).
2 寻找你想要的软件包.
在官网的package search中寻找你想要的软件(http://cygwin.com/packages/), 比如top.exe
3 更改硬盘mount模式
mount的记录在注册表中,也可在安装cygwin时(dos模式还是unix模式)中改变
HKEY_CURRENT_USER/Software/Cygnus Solutions/Cygwin/mounts v2 和
HKEY_LOCAL_MACHINE/SOFTWARE/Cygnus Solutions/Cygwin/mounts v2
我所知道的表示的值:
【0000】是文本模式(/r/n) { textmode, mount -t }
【0010】是二进制模式(/n), { binmode, mount [-b] }
【1000】是系统模式, 否则用户模式 {system, mount [-s]}, 用户模式: {user, mount [-u]}
【0001-0000】是缺省认为该mount point所有文件都是可执行的, {exec, mount -x}
【0010-0000】是不可以umount的,用umount -A也不能移除的
【0100-0000】是缺省认为该mount point所有文件都是cygwin格式的可执行文件, {exec, mount -X}
【0001-0000-0000】 是缺省认为该mount point所有文件不是可执行文件 {noexec, mount -E}
#用法实例:
mount的格式, 注意路径是"/"不是"/"
mount d:/tools /tools <--- mount d:/tools到/tools , 二进制模式(缺省)
mount -t d:/mydocs /mydocs <---mount d:/mydocs到/mydocs, 文本模式
mount -t -c /cyg <-- 改变/cygdrive的前缀为/cyg, textmode
mount -c /cyg <-- 改变/cygdrive的前缀为/cyg, binmode
mount -tuX d:/java /java
umount -A <--移除所有的mount point, 除了flags & 0x20 = 0x20的
------------------------------------ Apache2 --------------------------------------
apache2的启动前必须启动cygserver.
------------------------------------ Cygwin Xserver -------------------------------
1 启动错误 - could not open default font 'fixed'
mount c://cygwin//usr//X11R6//lib//X11//fonts /usr/X11R6/lib/
将xorg-x11-f***重新安装(共六个).
2 和windows共用简帖板失败 - winProcSetSelectionOwner - Clipboard not yet started, aborting.
更换或重新安装xorg-x11-libs-data,现在是08年8月24号,版本用的是6.8.20-1.
3 关闭xserver启动时的弹出窗口.
修改脚本/usr/X11R6/bin/startxwin.sh
屏蔽掉这几行:
# Startup an xterm, using bash as the shell.
# xterm -e /usr/bin/bash -l &
4 添加访问权限
# add XXX server
xhost + 135.123.123.123
xhost + 135.123.123.124
当然,加入 xhost + 则允许任何机器连接到该 X server
5 远程客户端设置回显
#-------------------------------------------------------------
# Set The DISPLAY automatically
#-------------------------------------------------------------
S_TTY=$(who am i | awk ' { print $2; } ')
S_IP=$(last -i $S_TTY -n1 | head -1 | awk ' { print $3; } ')
if [ -n "$S_IP" ]; then
DISPLAY="$S_IP":0.0
export DISPLAY
fi
其实只要设置 DISPLAY 变量为<cygwin - xserver 地址(就是本机地址)>:0.0 就可以了.
------------------------------------ Cygwin ---------------------------------------
1 整合cygwin命令到Windows中
假设cygwin安装在d:/develop/cygwin,则将d:/develop/cygwin/bin添加到系统变量PATH中(最好加在 windows前面,这样的话,有些相同的命令的话,是先执行cygwin的命令,而不是windows命令,比如find).
2 寻找你想要的软件包.
在官网的package search中寻找你想要的软件(http://cygwin.com/packages/), 比如top.exe
3 更改硬盘mount模式
mount的记录在注册表中,也可在安装cygwin时(dos模式还是unix模式)中改变
HKEY_CURRENT_USER/Software/Cygnus Solutions/Cygwin/mounts v2 和
HKEY_LOCAL_MACHINE/SOFTWARE/Cygnus Solutions/Cygwin/mounts v2
我所知道的表示的值:
【0000】是文本模式(/r/n) { textmode, mount -t }
【0010】是二进制模式(/n), { binmode, mount [-b] }
【1000】是系统模式, 否则用户模式 {system, mount [-s]}, 用户模式: {user, mount [-u]}
【0001-0000】是缺省认为该mount point所有文件都是可执行的, {exec, mount -x}
【0010-0000】是不可以umount的,用umount -A也不能移除的
【0100-0000】是缺省认为该mount point所有文件都是cygwin格式的可执行文件, {exec, mount -X}
【0001-0000-0000】 是缺省认为该mount point所有文件不是可执行文件 {noexec, mount -E}
#用法实例:
mount的格式, 注意路径是"/"不是"/"
mount d:/tools /tools <--- mount d:/tools到/tools , 二进制模式(缺省)
mount -t d:/mydocs /mydocs <---mount d:/mydocs到/mydocs, 文本模式
mount -t -c /cyg <-- 改变/cygdrive的前缀为/cyg, textmode
mount -c /cyg <-- 改变/cygdrive的前缀为/cyg, binmode
mount -tuX d:/java /java
umount -A <--移除所有的mount point, 除了flags & 0x20 = 0x20的
------------------------------------ Apache2 --------------------------------------
apache2的启动前必须启动cygserver.
------------------------------------ Cygwin Xserver -------------------------------
1 启动错误 - could not open default font 'fixed'
mount c://cygwin//usr//X11R6//lib//X11//fonts /usr/X11R6/lib/
将xorg-x11-f***重新安装(共六个).
2 和windows共用简帖板失败 - winProcSetSelectionOwner - Clipboard not yet started, aborting.
更换或重新安装xorg-x11-libs-data,现在是08年8月24号,版本用的是6.8.20-1.
3 关闭xserver启动时的弹出窗口.
修改脚本/usr/X11R6/bin/startxwin.sh
屏蔽掉这几行:
# Startup an xterm, using bash as the shell.
# xterm -e /usr/bin/bash -l &
4 添加访问权限
# add XXX server
xhost + 135.123.123.123
xhost + 135.123.123.124
当然,加入 xhost + 则允许任何机器连接到该 X server
5 远程客户端设置回显
#-------------------------------------------------------------
# Set The DISPLAY automatically
#-------------------------------------------------------------
S_TTY=$(who am i | awk ' { print $2; } ')
S_IP=$(last -i $S_TTY -n1 | head -1 | awk ' { print $3; } ')
if [ -n "$S_IP" ]; then
DISPLAY="$S_IP":0.0
export DISPLAY
fi
其实只要设置 DISPLAY 变量为<cygwin - xserver 地址(就是本机地址)>:0.0 就可以了.