作者: forever steel(zhoun)
原发: http://guo9310.blog.163.com/
1. kernel head 问题
因为自己下载和编译了新内核, 所以想把老的内核删掉, 出问题了.
无法编译内核了, 报头文件找不到. 原来我把所有内核相关的package都删除了, 包括kernel-header,
/usr/include下面的几个头文件目录被删除了, 导致找不到.
解决办法:
1) 安装kernel-header, 这个最简单, 就是把头文件复制到/usr/include目录
2) 在/usr/include目录做几个link, 指向/usr/src/linux目录下的对应目录
kernel source里面都包括这些头文件了, 为什么还要有一个重复的文件目录?
推荐用第一种方法, 具体看这个Linus Torvalds的说明
http://man.chinaunix.net/linux/lfs/h...06/kernel.html
2. 休眠耗电
最近发现休眠是耗电的, 我拔电源休眠一晚上, 用了12%左右的电.
好像网上thinkpad出这种问题的还是挺多的.
Windows和Linux都有.
thinkwiki上也有说明(http://www.thinkwiki.org/wiki/Proble..._in_ACPI_sleep ),
就是说hibernate之后, 因为一些驱动的问题, 导致没有真正关闭硬件,
所以还是耗电的, 比如有线网卡, 无线网卡等.
现在Linux下面, 休眠还是有不少问题的, 而且Linux下面休眠和关机的开机速度差不多,
所以还是只用待机和关机了, 休眠就不用了
3. 另存中文文件名乱码问题
用Firefox和ThunderBird, 把中文文件另存为的时候, 生成的文件名是乱码,
在文件管理器界面无法删除, 只有到命令行用模糊匹配删除. 感觉这个文件名是用utf8编码的, 而不是用locale设置.
在这里找到了解决方法:http://developer.gnome.org/doc/API/2...b-running.html
在环境变量里增加G_FILENAME_ENCODING="@locale"
就可以让glib知道文件名是用当前的locale来编码的
还可以通过设置G_BROKEN_FILENAMES来达到这一效果(只用一个就够了)
我在.profile里面增加一行,
export G_FILENAME_ENCODING="@locale"
, 重启kde就可以了
glib默认用utf8, 而不是当前用户的locale, 所以才导致文件名乱码问题.
两个环境变量解释如下:
G_FILENAME_ENCODING. This environment variable can be set to a comma-separated list of character set names. GLib assumes that filenames are encoded in the first character set from that list rather than in UTF-8. The special token "@locale" can be used to specify the character set for the current locale. G_BROKEN_FILENAMES. If this environment variable is set, GLib assumes that filenames are in the locale encoding rather than in UTF-8. G_FILENAME_ENCODING takes priority over G_BROKEN_FILENAMES. |
4. 在Linux下面运行VSS
用虚拟机还是慢, 所以找找办法, 直接运行VSS, 试了一下还不错, 就是启动有点慢
参考http://www.kegel.com/linux/vss-howto.html
1)先创建/mnt/vss目录(映射服务器目录)
2) 用samba把VSS服务器映射到本地目录
mount -t smbfs -o username='myuser',password='mypass',iocharset=cp936,uid=1000 //192.168.1.1/projects$ /mnt/vss
其中要指定编码, 否则中文文件名乱码, 还要指定用户uid, 否则这个用户对映射目录没有写权限, 登录无法创建日志文件, 会报错
每次用vss的时候, 先运行这个命令, 或者把这个命令写入/etc/fstab, 以后直接mount, 都可以
3) 我把windows下面安装好的c:/Program Files/Microsoft Visual Studio目录复制到wine的drive_c的Program Files下面
4) 用winecfg, 把/mnt/vss映射为driver g:
5)运行vss, 执行下面的脚本vss.sh, 输入密码, 就可以用了
#!/bin/sh ssUser=guo export ssUser ssDir=g:/ export ssDir wine "c:/Program Files/Microsoft Visual Studio/VSS/win32/SSEXP.EXE" "$@"
6) 选定一下工作目录, 跟windows下面操作一样