`
lxs647
  • 浏览: 516854 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

CYGWIN设置 .【转】

 
阅读更多

1. 资源

1.1. 网址链接

  • 主页:
http://www.cygwin.com/
  • 同步:
ftp://ftp.sunsite.utk.edu/pub/cygwin/release/
ftp://anonymous:cygwin@ftp.gnupilgrims.org/pub/cygwin/release/

 

1.2. WIKI 关键字

 

2. 版本

 

3. FAQ

3.1. Q Howto get version info?

 bash$ cygcheck -c cygwin

 

3.2. Q 安装注意事项

  • gzip
gzip 版本 1.3.3-4 可用。高版本如: 1.3.5-1 使 tar -z 命令运行不正常。

 

3.3. Q Howto setup default text format, CRLF(dos) or LF(unix)?

  • 修改注册表项:HKEY_LOCAL_MACHINE/SOFTWARE/Cygnus Solutions/Cygwin/mounts v2/.../cygdrive flags。 cygdrive flags是一个DWORD值,&0x2 == 0x2 为 Unix Style,否则为 Dos like style。

 

  • 设置环境变量 CYGWIN, 使得在 pipe 等模式下的处理方式:export CYGWIN=nobinmode

 

3.4. Q 为什么在 Cygwin 下创建的文件,其他管理员不可写?

这是所谓的 ntsec 在起作用。通过 NTFS 的权限设置,模拟 UNIX 的权限。可以通过 CYGWIN 环境变量修改。如:
 bash$ export CYGWIN="nontsec nosmbntsec"

 

3.5. Q 如何让 ls 能够显示中文文件名?

因为 ls 不使用 readline 来显示, 因而不能用 .inputrc 控制。即 less 和 ls 需要特别设置。在 .bashrc 中加入如下 alias:
 alias less='/bin/less -r' alias ls='/bin/ls -F --color=tty --show-control-chars'

 

3.6. Q 如何在按 TAB 键进行文件名扩展时忽略大小写,这样在 Windows 下才方便噢?

参见: [Cygwin User's Guide]

 

Customizing bash

Three initialization files that control the behavior of bash: .profile, .bashrc and .inputrc.

 

.profile

It is executed when bash is started as login shell, e.g. from the command bash --login.

建议

  • 在 PATH 后加上 ":.",这样可以象在 DOS 下,执行本目录下程序;

 

.bashrc

.bashrc is similar to .profile but is executed each time an interactive bash shell is launched.

 

.inputrc

.inputrc controls how programs using the readline library (including bash) behave.

 

# Ignore case while completing set completion-ignore-case on # Make Bash 8bit clean set meta-flag on set output-meta on # to show 8-bit characters set convert-meta off # to show it as character, not the octal representation

但是并不能保证 ls 显示中文。因为这些工具不使用 readline 来显示。象 less 和 ls 需要特别设置。在 .bashrc 中加入如下 alias:

 alias less='/bin/less -r' alias ls='/bin/ls -F --color=tty --show-control-chars'

 

 

3.7. Q 如何在 Cygwin 中运行 crontab?

如下:
  • 在Windows上安装系统服务 cron,开机即运行。
 bash$ cygrunsrv -I cron -p /usr/sbin/cron -a -D
  • 启动服务
 bash$ cygrunsrv -S cron

 

3.8. Q 配置 SSH client?

  • 为了能够通过公钥验证进行SSH登陆其他服务器,先要在本地建立 SSH 公钥私钥对:
 bash$ ssh-keygen -t rsa1 bash$ ssh-keygen -t rsa bash$ ssh-keygen -t dsa
  • 建立无口令登录
需要将本机的 *.pub 拷贝(cat>>)到服务器中 $HOME/.ssh/ 下的 authorized_keys (ssh1) 和 authorized_keys2 (ssh2) 文件中去。

 

3.9. Q 如何在 cygwin 中运行 sshd (SSH Server)?

如下:
  • 设置 Windows 环境变量,添加“CYGWIN = ntsec tty”

 

  • Config SSHD, running:
 bash$ ssh-host-config -y
根据提示,输入 CYGWIN=ntsec tty

 

  • Change permissions and ownership on some files:
 bash$ cd /; chmod -R og-w . bash$ chmod og+w /tmp bash$ touch /var/log/sshd.log bash$ chown system:system /var/log/sshd.log /var/empty /etc/ssh_h* bash$ chmod 755 /var/empty

 

  • start the service:
 bash$ cygrunsrv -S sshd

 

3.10. Q 如何在 cygwin 中配置 Email?

As follows:
  • ssmtp & mutt
    • ssmtp
     bash$ /usr/bin/ssmtp-config
    When using mutt as the mail client, add the following line to your $HOME/.muttrc file:
     set sendmail="/usr/sbin/ssmtp"

 

  •  
    • mutt
      • Make sure you have the Cygwin ssmtp package installed
      check file /etc/ssmtp/ssmtp.conf
      • vi .bashrc and/or .bash_profile
       export MAIL=~/Mail/inbox export EDITOR=nano
      If you have nano installed (and I stongly recommend that you do)
      • Create the following directory structure in your HOME directory:
       ~/Mail | -- inbox (EMPTY FILE, NOT DIRECTORY) | -- sent (EMPTY FILE, NOT DIRECTORY) | -- received (EMPTY FILE, NOT DIRECTORY) | -- postponed (EMPTY FILE, NOT DIRECTORY)
      • Create a ~/.muttrc file that looks like this:
       # The file/directory where your incoming mail will be spooled to # (same as 'set spoolfile' below) mailboxes ~/Mail/inbox # Mail account setup. I know nothing about IMAP, so you're # on your own there. set sendmail="/usr/sbin/ssmtp" #set pop_host="your.pop3.mail.server.com" #set pop_last=yes #set pop_user="your_email_username" #set pop_pass="your_email_password" set from="your_complete@email_address.com" # Mail folder setup. set folder=~/Mail set mbox_type=mbox set spoolfile=+inbox set mbox=+received set postponed=+postponed set record=+sent

 

  •  
    •  
      • mutt command line
    •  mutt [...] address 参数: -a file : attach a file to message -b address: BCC -c address: CC -F muttrc -H draft: draft contain both header and body -s subject: subject of the message -x : emulate the mailx compose mode 环境变量: EMAIL : user's email address MAIL : user's spool mailbox 示例: bash$ echo "contents" | mutt -x -s "subject" mail@address bash$ echo | mutt -x -s "subject" -i filename mail@address

 

  • exim & minires
    • exim
     Exim is a fully featured mail transfer agent, a drop-in replacement for sendmail. bash$ /usr/bin/exim-config bash$ view /etc/exim.conf bash$ vi /etc/aliases postmaster: your_login_name bash$ vi /etc/reslov.conf nameserver 10.0.0.7 search your.domain bash$ cygrunsrv -I exim -p /usr/bin/exim -e CYGWIN=nontsec -a "-bdf -q15m" -d "Exim Mail Transfer Agent" -1 /var/log/exim/cygrunsrv_out.log -2 /var/log/exim/cygrunsrv_err.log bash$ cygrunsrv -S exim

 

3.11. Q 如何得到 Dos/Windows? 格式的路径名?

 bash$ cygpath -d -m "`pwd`"

 

3.12. Q Setup Xinetd

  • start init service
 bash$ /usr/bin/init-config

 

  • chkconfig 工具用来维护 /etc/rc.d 下的脚本
    • 若要启动 sshd 执行 "/sbin/chkconfig --add sshd"

 

  • xinetd config
 bash$ /usr/bin/xinetd-config

 

3.13. Q other command?

ttcp, netsnoop

 

3.14. Q XFree86 under Cygwin?

  • add /usr/X11R6/bin to PATH;
  • start Xwindow using startxwin.bat(dos/windows), or startxwin.sh(cygwin);
  • if has a firewall installed, open port "6000" of local server;
  • run xclient in local machine, just set environment: export DISPLAY=127.0.0.1:0.0
  • if run xclient in remote machine, give authorize to remote host:
bash$ /usr/X11R6/bin/xhost remote_hostname_or_ip_address
  • telnet/ssh to remote host;
  • set environment DISPLAY, like: export DISPLAY=<IP_of_Cygwin_XFree86>:0.0
  • xterm

 

3.15. Q 安装后的设置综述?

  • binmode or textmode?
执行 mount 命令,如果不是 textmode,修改注册表 HKEY_LOCAL_MACHINE/SOFTWARE/Cygnus Solutions/Cygwin/mounts v2/.../cygdrive flags。 cygdrive flags是一个DWORD值,&0x2 == 0x2 为 Unix Style,否则为 Dos like style。

 

  • 修改 ~/.inputrc 文件,加入如下内容
# Ignore case while completing set completion-ignore-case on # Make Bash 8bit clean set meta-flag on set output-meta on # to show 8-bit characters set convert-meta off # to show it as character, not the octal representation

 

  • 修改 /etc/profile, 加入如下内容:
set -o vi alias less='/bin/less -r' alias ls='/bin/ls -F --color=tty --show-control-chars' # glob filenames in a case-insensitive manner shopt -s nocaseglob export SGML_CATALOG_FILES=/share/catalog.sgml export XML_CATALOG_FILES=/share/catalog.xml export CYGWIN="nobinmode nontsec nosmbntsec" export PATH=$PATH:.

 

  • 修改登录用户的主要组:
 bash$ vi /etc/passwd
默认属于 513 组(对于域控制器是Domain Users,非域控制器为 NONE),个人偏好设置为 544(Administrator)

 

  • 建立 symbol link:
    • 因为一些脚本默认的 md5 摘要程序是 md5, 而非 md5sum;
     bash$ ln -s /usr/bin/md5sum /usr/bin/md5
    • 设置 DOCBOOK DTD/DSSSL 路径
     bash$ ln -sf /cygdrive/e/HOME/WORK/johnson_homepage/worldhello/share /share

 

  •  
    • 设置 usemodwiki 路径映射
  • mkdir /repos cd /repos/ ln -s /cygdrive/d /d ln -s /d/HOME/WORK/johnson_homepage/worldhello/usemod JohnsonUseModWiki ln -s /d/HOME/WORK/johnson_homepage/worldhello/wiki .

 

 

  •  
    • 设置建立工作路径
  •  bash$ ln -sf /cygdrive/e/HOME/WORK/ ~/work

 

 

from:http://blog.csdn.net/onefish/article/details/229192

 

分享到:
评论

相关推荐

    ln2mklink:在cygwin中将ln命令转换为mklink

    笔记似乎可以通过在环境变量 CYGWIN 中设置 winsymlinks 来将 Cygwin 的 ln -s 命令更改为 Windows 符号链接创建命令,而无需编写包装器。用法 $ mkdir -p ~/bin$ curl -L ...

    Console-Setup:Windows的控制台设置说明

    控制台设定 去做: 将所有这些转换为点文件和bash设置脚本。 ( ) 合并ZSH软件包管理器: : ...gcc(适用于C和C ++)(从Cygwin设置中获取而不是apt-cyg) 自动配置 自动制作 libxml2 利比亚 Weechat mk

    eclipse 开发c/c++

    其它选项用于设置调试选项,例如使用哪个调试器(GNU GDB 或 Cygwin GDB)。 图 8 显示了正在为项目创建运行概要文件(run profile)。 图 8. 为项目创建运行概要文件 当进入 C/C++ Projects 视图,选择您的项目...

    devkitadv-GBA开发工具

    任天堂GBA官方开发包安装及开发环境的设置 Romandoo 解压安装包至某目录后,安照以下步骤操作: 一: 安装CYGWIN工具 运行CYGWIN_SETUP目录下setup.exe进行cygwin的安装 选INSTALL FROM LOCAL DIRECTORY...

    LuaBind 源码 (Lua增强库)

    你正在使用一个UNIX系统(或者 cygwin),他们将使得构建LuaBind静态库变得很简单.如果 你正在使用 Visual Studio ,很简单的包含 src 目录下的文件到你的工程即可. 构建LuaBind的时候,你可以设定一些选项来使得库更加...

    r2dec-js:Radee2插件-将asm转换为伪C代码

    设置R2DEC_HOME env变量或将整个r2dec-js目录复制到%R2_RDATAHOME%\r2pm\git\ ,其中%R2_RDATAHOME%是radare2.exe -H R2_RDATAHOME返回的路径。 用法 用radare2打开文件 分析您要反汇编的功能( af ) 通过pdd运行...

    基于ApacheNutch和Htmlunit的扩展实现AJAX页面爬虫抓取解析插件nutch-htmlunit.zip

    由于Nutch运行是基于Unix/Linux环境的,请自行准备Unix/Linux系统或Cygwin运行环境。 git clone整个工程代码后,进行本地git下载目录: cd nutch-htmlunit/runtime/local bin/crawl urls crawl false 1 ...

    Git权威指南PDF完整版

    3.3 在Windows 下安装和使用 Git(Cygwin篇)/ 31 3.3.1 安装 Cygwin/ 32 3.3.2 安装 Git/ 36 3.3.3 Cygwin 的配置和使用/ 37 3.3.4 Cygwin 下 Git 的中文支持/ 40 3.3.5 Cygwin 下 Git 访问 SSH 服务/ 41 3.4 ...

    devtools:脚本、点文件和一个很好的系统,它可以通过一组点文件扩展所有内容以在 osx 和 windows 上有效运行

    我已成功运行的一组点文件: Ubuntu 操作系统Windows (Cygwin/Msys) 将转换为在不同平台上运行的文件模板。 一小组扩展脚本使用运行。 ##注意事项一些脚本显然经过调整,可以根据适合我的流程工作。 尽管已经做了...

    Postgresql中文分词扩展zhparser安装程序【windows&VS2008;环境】

    原因有两个方面,一个是本身像这种数据库服务器一般都是linux系统的,另外一个比较致命,zhparser本身并没提供windows环境下的编译工程,连依赖库scws的readme里也建议在linux环境下使用,或者用cygwin或mingw一类...

    嵌入式课件

    11.2.2 Cygwin模拟环境 11.2.3 VMware虚拟机环境 11.3 Linux的使用 11.3.1 Linux基本命令 11.3.2 vi编辑器的使用 11.3.3 gcc编译器 11.3.4 make工具和Makefile文件 11.4 Linux内核结构 11.4.1核心子系统 11.4.2设备...

Global site tag (gtag.js) - Google Analytics