cygwin chmod 失效
问题背景
为了在 Cygwin 下使用之前最喜爱的 screen 命令, 安装 Cygwin 时就选上了 screen

来运行一把
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ screen.exe -ls
Directory '/tmp/uscreens' must have mode 777.
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ chmod 777 uscreens/ -R
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ ll
total 0
drwxr-xr-x 1 ganiks.liu Domain Users 0 Jul 25 13:28 .
drwxr-xr-x 1 ganiks.liu Domain Users 0 Jul 25 13:10 ..
drwxr-xr-x 1 ganiks.liu Domain Users 0 Jul 25 13:49 uscreens
cygwin chmod 失效
为什么 chmod 失效呢?
查了原因是 当前 cygwin 所在磁盘 E:\ 盘格式为 Fat32, 不支持 权限管理。
好吧,来转 NTFS 吧
cmd就是个很不错的工具(经过实际运行,我否定了“不错”这个形容,因为整个过程花费了不知道多少个小时)
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\Documents and Settings\ganiks.liu>e:
E:\>convert E:/FS:NTFS /V
The type of the file system is FAT32.
Enter current volume label for drive E: DISK1_VOL3
Convert cannot run because the volume is in use by another
process. Convert may run if this volume is dismounted first.
ALL OPENED HANDLES TO THIS VOLUME WOULD THEN BE INVALID.
Would you like to force a dismount on this volume? (Y/N) Y
Volume dismounted. All opened handles to this volume are now invalid.
Convert cannot gain exclusive access to the E: drive,
so it cannot convert it now. Would you like to
schedule it to be converted the next time the
system restarts (Y/N)? Y
The conversion will take place automatically the next time the
system restarts.
E:\>
我转换的这个 E 盘, 从下午3点多开始转换, 一直到 5点下班的时候还在转换, 于是关掉显示器回家...
谢天谢地, 第二天早上来, 机器正常开机了, 而且 E盘 成功转换了 NTFS
用工具实现 windows 硬盘格式的转换
已经体会了 win 自带 转换命令的不靠谱(据同事说我算幸运的,花了这么久转换成功了, 有很多失败的, 可能是没有开启虚拟内存 or sth.)
来试试他们介绍的 2个工具吧
- partassist分区助手 (待测试)
- paragon Partion Manager 9.0


成功运行 screen 在 cygwin 中
经过千辛万苦转换了硬盘格式, 现在再来测试 screen
我变得非常脆弱, 貌似不能再接受 screen 不支持的其他问题了
其实这个心态非常不好, 因为程序员注定是为解决问题而生的, 遇到一个解决一个, 技能才得到提高
另外越是深入的解决一个问题,你会发现能打通到其他的领域, 对以后遇到别的问题很有可能是有帮助的
结束题外话, 这次确实运行成功了
ganiks.liu@MAMIS-Gaiks-Liu ~
$ screen.exe -ls
Directory '/tmp/uscreens' must have mode 777.
ganiks.liu@MAMIS-Gaiks-Liu ~
$ cd /tmp/
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ ll
total 0
drwxrwx---+ 1 Administrators root 0 Jul 25 13:28 .
drwxrwx---+ 1 Administrators root 0 Jul 25 13:10 ..
drwxrwx---+ 1 Administrators root 0 Jul 25 13:49 uscreens
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ chmod 777 uscreens/ -R
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ ll
total 0
drwxrwx---+ 1 Administrators root 0 Jul 25 13:28 .
drwxrwx---+ 1 Administrators root 0 Jul 25 13:10 ..
drwxrwxrwx+ 1 Administrators root 0 Jul 25 13:49 uscreens
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ screen.exe -ls
You are not the owner of /tmp/uscreens/S-ganiks.liu.
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ screen.exe -S aaa
You are not the owner of /tmp/uscreens/S-ganiks.liu.
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ chown ganiks.liu uscreens/ -R
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ ll
total 0
drwxrwx---+ 1 Administrators root 0 Jul 25 13:28 .
drwxrwx---+ 1 Administrators root 0 Jul 25 13:10 ..
drwxrwxrwx+ 1 ganiks.liu root 0 Jul 25 13:49 uscreens
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ screen.exe -ls
Directory /tmp/uscreens/S-ganiks.liu must have mode 700.
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ chmod 777 uscreens/ -R
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ screen.exe -ls
Directory /tmp/uscreens/S-ganiks.liu must have mode 700.
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ chmod 700 uscreens/ -R
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ screen.exe -ls
Directory '/tmp/uscreens' must have mode 777.
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ ll
total 0
drwxrwx---+ 1 Administrators root 0 Jul 25 13:28 .
drwxrwx---+ 1 Administrators root 0 Jul 25 13:10 ..
drwx------+ 1 ganiks.liu root 0 Jul 25 13:49 uscreens
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ chmod 777 uscreens/ -R
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ chmod 700 uscreens/S-ganiks.liu/ -R
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ screen.exe -ls
No Sockets found in /tmp/uscreens/S-ganiks.liu.
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$ screen.exe -S aa
[screen is terminating]
ganiks.liu@MAMIS-Gaiks-Liu /tmp
$
更改 cygwin machine name
对于有“不知道什么度”洁癖的人, 我总是会去想办法解决每一个“小问题”, 有可能这个问题根本对项目的进度没有关系
比如,我刚刚贴了这个代码, 发现机器名 MAMIS-Gaiks-Liu 丑陋无比, 我要改成 wswtech
印象中要改两个地方
- /etc/hosts
- /etc/hostname
- hostname your_new_name
cygwin chmod 失效的更多相关文章
- cygwin and its host machine
Senario 本来我是想要修改下 machine name 在Ubuntu中的步骤是这样的 1 sudo hostname newMechineName 2 sudo vi /etc/hostnam ...
- apt-cyg for Cygwin(setup-x86_64 .exe )在win10下的安装
cygwin安装后,如果没有选择安装所有包(这会占用5G空间,很多包不需要),再需要安装新的包,可以启动setup-x86_64 .exe(我把它放置在C:\cygwin64目录下),添加包(如wge ...
- Windows下安装Cygwin及包管理器apt-cyg(转)
本文为转载文章: http://www.2cto.com/os/201212/176551.html Cygwin可以在Windows下使用unix环境Bash和各种功能强大的工具,对于Linux管理 ...
- Installing Cygwin and Starting the SSH Daemon
This chapter explains how to install Cygwin and start the SSH daemon on Microsoft Windows hosts. Thi ...
- Cygwin下软件安装 - apt-cyg
安装了cygwin,但不能像centos上装yum,装东西很不方便.找了下可以用apt-cyg来安装软件. 1.下载apt-cyg $ wget raw.github.com/transcode-op ...
- [转]Cygwin的包管理器:apt-cyg
[转]Cygwin的包管理器:apt-cyg http://zengrong.net/post/1792.htm Cygwin的包管理工具setup.exe实在是难用的让人蛋碎.于是就有了这样一个ap ...
- 【转】Cygwin的包管理器:apt-cyg
原文网址:http://zengrong.net/post/1792.htm Cygwin的包管理工具setup.exe实在是难用的让人蛋碎.于是就有了这样一个apt-cyg,可以提供类似于 apt- ...
- 【搭建开发环境】在 Windows XP 中参与开源项目,搭建 git 和 cygwin 开发环境
引言 只有一台 Windows XP 家用机,却想在诸如 Git@OSC 之类的开源社区参与开发,本文提供一个入门级的开发环境搭建指引. 涉及工具:Eclipse,EGit,Cygwin. 欢迎来到 ...
- cygwin 扩展
1.使用setup,然后一路安装到select package,选择需要的包即可,然后一路next. 2.setup.exe -q -P 包名, 详细用法如下: Command Line Option ...
随机推荐
- Win 2003下IIS6+Mysql+php5.2 isapi搭建 升级php5.2到5.3测试 借助fastcgi实现
Win 2003下IIS6+Mysql+php5.2 原环境isapi搭建 升级php5.2到5.3测试 借助fastcgi实现 操作如下 实验前准备:php-5.3.5-Win32-VC6-x86 ...
- 发送Ajax请求获取JSON格式数据
Aspx前端页面: <script type="text/javascript"> $(function () { $.getJSON("Ajax/TestA ...
- ARC————自动引用计数
一.内存管理/引用计数 1.引用计数式内存管理的方式(下面四种) 对象操作 OC方法 生成并持有对象 alloc/new/copy/mutableCopyd等方法 持有对象 retain方法 释放对象 ...
- sqlserver 保留小数方法
1. 使用 Round() 函数,如 Round(@num,2) 参数 2 表示 保留两位有效数字. 2. 更好的方法是使用 Convert(decimal(18,2),@num) 实现转换,dec ...
- ASP.NET MVC5学习笔记之Action参数模型绑定值提供体系
这一节我们关注模型绑定的值提供体系,先来介绍几个重要的接口 一. IValueProvider,接口定义如下: public interface IValueProvider { bool Conta ...
- 【Delphi】从内存(MemoryStream)使用WMP(WindowsMediaPlayer)控件播放视频音频(Play Video with WMP from MemoryStream)
关键字: MemoryStream.WMP.WindowsMediaPlayer.Play .Load. Delphi.C++.C#.ActiveX控件 作 者: CaiBirdy 问 题:正常使 ...
- mvc url路由参数的加密和解密
查看某个信息的时候一般会在url上加上该信息在数据库中对应的主键id(而且一般是自增的) url是这样子的 xxxDetail/1 , 虽然对于我们开发人员来说可以这种显式的数据库主键会方便调试过程, ...
- 异步导出excel
最近看园里有几篇写有关导出导入excel的博客,我正好最近在项目中也有涉及想来一起分享一下,正好整理一下自己的思路. 一.异步的方式是通过iframe来实现,代码如下: if ($('#downloa ...
- 共享内存 share pool (1):heap /extent /chunk/
相关概念 CHUNK: Shared pool物理层面上由许多内存块组成,这些内在块称为chunk.但是chunk是大小不一的,在内存中一个chunk是连续的. EXTENT:由多个连续的chunk组 ...
- GPS之NMEA协议20160526
NMEA 0183是美国国家海洋电子协会(National Marine Electronics Association)为海用电子设备制定的标准格式.现在已经成为GPS导航设备统一的RTCM(Rad ...