Archive for the ‘Linux’ Category
Wednesday, August 18th, 2010
一般使用第三方code hosting网站(如GitHub)需要上传你的sshkey公钥,这个步骤很简单,网上一搜就有。不过有些情况你不想用默认的~/.ssh/id_rsa和id_rsa.pub作为你的sshkey,因为你希望在github这类网站上就使用一个sshkey公钥,然后在不同的机器上都使用这对公私钥,省得制作一堆key上传麻烦。
原先以为可以通过git自身的设置来达到目的,后来意识到和它没关系,仅仅需要配置下ssh就行。
在~/.ssh/config文件附加下面一段:
Host github.com # 必须写一样的hostname,因为是要ssh xxx@github.com
HostName github.com
User git # 不是你在github上的账户,必须是"git"
...
Posted in Linux | 1 Comment »
Sunday, February 7th, 2010
买了块新的大硬盘,准备把原先硬盘上的Slackware迁移过去,并且采用LVM,xp不要了换成Win7。记录下迁移过程和遇到的一些问题及解决方法。
用Slackware 13.0 dvd系统盘引导启动,并分区。Slackware 从12.0开始支持安装系统到LVM。
Device Boot Start End Blocks Id System
/dev/sda1 * 1 ...
Posted in Linux | 3 Comments »
Saturday, December 19th, 2009
用MLDonkey很久了下不热门的资源一直非常慢,以至失去用ed2k网络的兴趣了。最近才发现原来是我没有开启MLDonkey的KAD功能 -_____-!! 没有KAD之类的技术用P2P久失去了很大的乐趣。
下面记录下几点设置,我不太懂养驴子,应该还有使驴子跑得更快的设置,还请路过大大教教我 ;-)
1. MLDonkey里的enable_kademlia设为true
2. 网上看到说需要nodes.dat和contact.dat(其实这个文件不需要了,是eDonkey的Overnet网络,现在eMule的ed2k和KAD网络足矣),而且还得手工添加。其实可以通过配置MLDonkey的download.ini文件来实现自动更新nodes.dat文件。
~/.mldonkey/download.ini
web_infos = [
("server.met", 0, "http://sn.im/server.met");
("nodes.gzip", 1, "http://upd.emule-security.net/nodes.dat");
("contact.dat", 168, "http://download.overnet.org/contact.dat");
("geoip.dat", 0, "http://www.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz");
("guarding.p2p", 96, "http://www.bluetack.co.uk/config/level1.gz");
(hublist, 0, "http://dchublist.com/hublist.config.bz2");]
主要修改"server.met"和"nodes.gzip"两段,server.met用的参考[1]里提供的链接,设成0是表示只需在MLDonkey启动时载入; nodes.gzip用的参考[2]里提供的链接,设成1是表示每1小时更新一次。其他字段默认。
参考:
[1] 安全eD2k服务器列表 2009-11-28
[2] Kad节点文件 nodes.dat
[3] 终于可以在ubuntu上养驴了
[4] [问题]mldonkey可以连接kad吗?
Posted in Linux | 2 Comments »
Friday, November 6th, 2009
X11Forwarding
X11转发,在本地机器(Linux/Windows)上运行远程服务器上的X程序
***Linux***
方法1、2是在本地Linux机器上的当前窗口上显示远程服务器上的X程序(单独窗口的形式);
方法2、3使用SSH的X11转发,因此确保远程服务器上的/etc/ssh/sshd_config的X11Forwarding为yes;
方法3、4是在本地Linux上新的控制台下的新的X server上运行远程服务器的完整X环境;
方法1、4需要设置DISPLAY环境变量;
* 所有方法在两端都不需要root权限
* 192.168.1.xx 为本地Linux的IP
方法一:
本地Linux:
$ xhost +
$ ssh user@remotehost
远程服务器:
$ export DISPLAY=192.168.1.xx:0[.0]
...
Posted in Linux | No Comments »
Tuesday, August 18th, 2009
一切问题来自我前些天在优盘上搞的移动版的wiki(采用DokuWiki),插上优盘后,直接编辑我的wiki。但是发现有些页面是空白,功能不正常。后来发现是因为某些文件文件名在Linux下挂载后发生了变化,比如:"JSON.php"变成了"json.php",造成了wiki无法正常运行 -______-!!
/etc/mtab显示有一个选项是shortname=lower,于是顺藤摸瓜google,发现通过手工挂载用参数shortname=mixed就正常。Linux下mount对fat/vfat文件系统(通常就是优盘的文件系统格式)默认挂载参数shortname的值就是lower。其实这个不太好,所有有人给了patch建议改成默认为shortname=mixed,可以看如下代码,更多见LKML里的讨论:
diff --git a/fs/fat/inode.c b/fs/fat/inode.c
index 8970d8c..f9af501 100644
--- a/fs/fat/inode.c
+++ b/fs/fat/inode.c
@@ -971,7 +971,7 @@ static int parse_options(char *options, int is_vfat, int silent, int *debug,
opts->codepage = fat_default_codepage;
opts->iocharset = fat_default_iocharset;
if (is_vfat) {
- opts->shortname = VFAT_SFN_DISPLAY_LOWER|VFAT_SFN_CREATE_WIN95;
+ opts->shortname = VFAT_SFN_DISPLAY_WINNT|VFAT_SFN_CREATE_WIN95;
opts->rodir = 0;
} else {
opts->shortname = 0;
这个shortname参数都是因为有8.3文件名这种东西的存在而存在的,可以参考Wikipedia上的这篇文章。
还没完,每次手工挂载太蠢了。所以我想到了HAL,当时觉得可以改变默认的mount挂载参数(但事实不是)。还找到了如下的HAL policy:
...
Posted in Linux | 4 Comments »
Wednesday, February 11th, 2009
这个数字最先是从王聪大哥的饭否那儿得知。后来陆续的就有相关报道,不知道这个代表啥的请看这篇文章。图新鲜,想亲手把这数转成具体时间看看。当时不知道 date 命令能很方便的转换,就用了 Python,于是问题随之而来。
vvoody@slackware:~$ python
Python 2.5.2 (r252:60911, Sep 11 2008, 13:43:31)
[GCC 4.2.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from time import strftime, gmtime, localtime
>>> strftime("%a, %d %b %Y %H:%M:%S", gmtime(1234567890))
'Fri, 13 Feb 2009 23:31:06'
>>> strftime("%a, %d %b %Y %H:%M:%S", localtime(1234567890))
'Sat, 14 Feb 2009 07:31:30'
>>> strftime("%a, ...
Posted in Linux | 2 Comments »
Thursday, October 30th, 2008
看了 WANG Cong 的 Qbak 后,写了这个小脚本,以满足我自己的需求。
就是简单地把你想备份的文件复制到备份仓库里(一个文件夹而已),并且可以给文件打上标记(Tag),方便将来操作一组文件。脚本也支持自动更新备份列表中的文件,检出(checkout)一组文件,取消文件的备份,列出已备份的文件。
Vbak 基本可以使用, 现已作为我日常使用. 欢迎大家帮我捉虫, 改进代码质量 ;-)
项目地址:
http://code.google.com/p/vvoodys/source/browse/#svn/trunk/vbak
Posted in Linux | 2 Comments »
Sunday, October 19th, 2008
一开始我的脚本只支持转换成 mp3,后来 grissiom 提出并自己增加了 ogg 格式的支持,下面贴出比较完善的版本。
主要改进:
增加转换格式选项,支持 mp3/ogg;
把 your.ape|flac 这个参数去掉了,现在脚本可以从 cue 里面提取文件名;
修改了程序说明,优化程序结构;
写入 mp3 的 id3 采用 slackbuilds.org 上的 id3v2,你也可以继续采用 mutagen,修改相应注释即可;
感谢 Grissiom ^_^
#!/bin/bash
# Split the big single ape/flac file to mp3 or ogg files.
# Lastly, write the id3(version 2) tag info into the mp3s or oggs.
#
# Ensure that your cue file is ...
Posted in Linux | No Comments »
Friday, October 17th, 2008
用我之前写的那个 ape/flac 转 mp3 的脚本转最近下的几张专辑,发现多出一个 00.pregap.mp3; 并且 id3 写入也不对,后一个的 id3 写入了前一个的。
问题出在这些专辑抓录的时候在最前面多了段 gap,对应生成了 00.pregap.mp3 这个文件,于是原本第一首音乐的 id3 写到了 00.pregap.mp3,以此类推。
解决方法只要在脚本写入 id3 之前把那个 00.pregap.mp3 删掉即可。如果有朋友在用这个脚本,务必请更新一下;-)
--- one2mp3s.sh 2008-10-13 15:56:36.000000000 +0800
+++ one2mp3s.fix.sh 2008-10-13 17:18:52.000000000 +0800
@@ -53,6 +53,12 @@
# More output format, see `man shntool`
shntool split -f "$cuefile" -t '%n.%t' -o ...
Posted in Linux | 2 Comments »
Friday, August 1st, 2008
硬盘里有一些APE/Flac文件,越发觉得它们太占地方。这两种格式对我来说唯一的好处是,可以找到好唱片。故我准备把它们转换成mp3格式。网上搜了一下,发现这篇和那篇文章提供了一些解决方案。但前者需要生成中间文件,而且只支持flac格式; 后者无法写入mp3的tag信息,也就是 id3。所以,自己hack一下,有了下面两个shell脚本。
没啥技术含量,就是把各种工具组合一下,一劳永逸了;-) 我对shell用得不熟,如脚本有错误或不精确处,还请指正。
您需要:
mac - 用于处理APE格式的;
flac - 用于处理flac格式,多数发行版都已安装;
lame - 著名的mp3编码器;
cuetools - 从cue文件中提取信息;
mutagen - 一个处理音乐文件tag信息的python库,我们用它来向mp3写入id3v2;
shntool - 像是一个容器,在各种音乐格式间转换,非常强大!(墙ed)
如果你是用的Slackware,我用src2pkg把除了flac的都打了包,可以从这儿下载 ;-)
用前请把你的 cue 文件转换成 UTF-8 编码。
这里有一个格式化加亮的代码版本。
用处一:
如果你有一个大的单个未分轨的APE/Flac文件,以及它对应的 cue 文件,想把它分轨并转换成mp3的话,并且要有tag信息的话,那么把下面这个脚本放到该 APE/Flac 所在目录,执行 ./one2mp3s.sh hifi.ape hifi.cue。自己根据实际情况改,支持 APE/Flac 格式。
#!/bin/bash
# Split the big single ape/flac file and then convert to mp3 format.
# Lastly, write the id3(version 2) tag info into ...
Posted in Linux | 11 Comments »