Shell's Home

Linux配置文件测序

Sep 11, 2006 - 1 minute read - Comments

CopyRight: Written by Shell.E.Xu. Published under GPL. KeyWord: Linux bash profile 配置文件。 Abstract: 利用变量声明次序测定多个配置文件是否被调用以及调用的次序。 环境: Debian/GNU Linux starg 3.1 Kernel:2.6.16-686-2 测定方法,加入变量TEST=XXX。此方法可能被某些变量解除函数解除,因此不予执行的反应未必是真,不过执行次序一般假不了。 1.tty登录时 /etc/environment;/etc/profile;~/.bash_profile->~/.bashrc->/etc/bashrc; /etc/environment;/etc/profile;~/.bash_login /etc/environment;/etc/profile;~/.profile 当上级启动过程中文件不存在时,才进行下面的过程。 2.GDM登录时 /etc/environment 3.新启动bash时 /etc/bash.bashrc;~/.bashrc->/etc/bashrc; 4.~/.inputrc 根据文档,这个函数在readline函数初始化时启用。 5.结论 如果需要有效执行命令,需要同时修改/etc/profile和/etc/bash.bashrc。因为GDM登录的时候不执行登录脚本顺序,所以仅仅修改/etc/profile会造成对GUI下面开的term无效。虽然/etc/bashrc在理论上也有效,但是一旦~/.bashrc中没有引用,则无效(例如Debian中的root,由于安装系统的时候没有copy skel,所以缺少很多.XX文件)。如果仅仅是设定变量,可以用/etc/environment。该文件没有找到资料,其中仅可以设定变量(不用export,应当是被某程序作为配置读取而非脚本执行),据分析是登录时当即起效。

有线通封锁变通办法

Sep 9, 2006 - 1 minute read - Comments

虽然决定不用有线通了,但是还是要熬到年费结束。所以稍微研究了有线通的封锁方法,看看有没有变通方案。根据我上面的研究,有线通浦东地区封锁的是协议。所以我实验打开了BT和ED两个协议。结果证实,这两个协议同时打开对于单个协议的速度稍微有影响,估计是TCP的优先相应问题。不过总体速度比单个协议高了很多。昨天打开的时候,ED是30下载5上传,没有BT。今天同时打开的结果是BT45下载10上传,ED17下载10上传。总体来说有62下载20上传左右,高了很多。 其中针对BT说一句。之所以有这么高的速度,主要因为打开了BT中的加密协议头优先。这样在某些传输中就被当作HTTP连接,这个速度就是赚到的。不过现在不多,因此也没有太高的提升。不过总体下来不无小补,所以提供给继续要受到有线通荼毒的人士用用。 另外,有线通对HTTP下载不限速。大家可以把HTTP下载速度降低到不影响P2P连接的水平(例如用flashget的限制速度功能),慢慢下。这样你的总体平均流速是最大的,同时对于有线通的杀伤也是最大的。

音乐文件转换技巧和脚本

Sep 8, 2006 - 1 minute read - Comments

好久没动手写啥东西了,最近在准备LPIC1考试。Will everyone keep finger cross 4 me?嘿嘿—— 这个题目是个大家伙,反正每天写一点,也不忙在一时。大家有啥需要了解的,也可以问在下面。我会更新的。 copyright: 本文所提到各种软件版权归各个软件开发者所有。文章内容及所有附属脚本为独创,按照GPL发布。 keyword: 音乐 格式 转换 脚本 标签 bash shell script mp3 midi ape flac cue toc directory: 1.文件格式解说 1.1.mp3/ogg 1.2.midi 1.3.ape 1.4.flac 1.5.cue/toc 1.6.wav 1.7.iso 2.文件转换 2.1.wav/mp3 2.2.wav/ape 2.3.wav/flac 2.4.midi2wav 2.5.iso/wav 3.转换细节问题 3.1.按照cue切割 content: 1.1.mp3/ogg 这两个是非常有名的音乐压缩文件,其中MP3是mepg II layer 3。不要以为是mpeg III。一般来说,MP3都被认为是一种小巧但是音质比较差的格式。不过事实上,要指摘MP3的音质前,你先自己找找是否满足了一定条件。周围是否安静,没有噪音。音源是否高清晰(拿MP3还原出来的CD是没意义的)。声音设备是否足够好(至少也要是高质量的音响或者高档耳机,耳塞或者200-300的所谓音箱根本不用说)。如果没有上述条件,那么MP3的音质也算过的去的。MP3格式的压缩比值大约是10:1,和wav相比。另外,如果有CD的话,最好使用lame进行适当压缩。而不要为了方便随便使用一个压缩工具。压缩最好使用VBR格式。这种格式本质上没有什么变化,只是在信息流高的地方使用高的编码格式,以获得最高的质量/空间比值。ogg具体情况没有研究,不过使用上和MP3没有区别。 1.2.midi midi是所有格式中唯一不记录音频数据的音乐格式。midi记录的实质上是发声事件,简单来说就是什么时候鼓响了一下,什么时候钢琴的哪个键被按下了。因此midi也是没有立体声效果的。除非你使用特殊的软件指定某个乐器演奏时候的位置,然后根据环境生成出相应的音乐文件。midi文件在当前主要是两个用途。一个是midi记录了乐手演奏时候的指法细节,也记录了曲子的曲谱。midi本质上就是谱子。另外一个是midi的超小体积使得在某些嵌入系统(例如手机)上面可以作为背景音乐。 1.3.ape ape是一种无损压缩格式,你可以把ape看成是一种只能对wav作用的zip文件。压缩比一般是2:1。 1.4.flac flac和ape基本差不多。 1.5.cue/toc cue/toc不是音乐文件,他们是用于flac/ape等光盘的音轨定义。一个CD可以有多个音轨,iso会记录下音轨的切分方式。但是ape就不行了。于是eac等抓轨软件生成cue来切分音乐文件。往往看到ape的发行方式是一个ape和一个cue,直接打开ape往往是一首非常长的歌曲。其实切分信息在cue里面。虚拟光驱使用的bin文件也是一样,会有配套的cue文件。两者可以用cuetools和mkcue互相转换。 1.6.wav wav文件又叫做PCM编码格式。这是一切音乐的基础。无论你是哪种格式,最后都会被还原成wav的某种格式或者变形,才能够从声卡中播放出去。当然,midi的情况特殊,不在此列。 1.7.iso iso也不是音乐文件,但是和音乐的关系非常密切。大家都知道iso是光盘的镜像,其实说的还不确切。iso本身就是光盘内容严格1字节比1字节复制的结果。至于有的为什么有其他格式。那就涉及光驱设备工作和数据流/加解密的问题了。 另外说一个iso的问题,大家知道linux下面挂载iso的指令是 # mount -t iso9660 -o loop file /mnt

上海有线通,不爽

Sep 5, 2006 - 1 minute read - Comments

最近贝壳要换ISP了。大家知道,贝壳用了5年多的上海有线通。虽然速度不快,偶尔还有降到半速的现象,但是总体来说还是不错的。TTL跃点主要在12到16上下(经过12-16个路由器),极限上传一般在55K/s上下。虽然说和标称有一定区别,不过考虑IP封包头问题,也还可以。只是最近有线通不怎么像话,封了P2P不说,还不告知。去询问,又不承认。幸好贝壳两个月后包年到期,到时就跑了结束。 开始(8.30左右)贝壳的ED速度突然从50K/s持续上传下跌到7K/s持续上传。贝壳以为是电信故障维修,造成数个连线失效,路由重生成后形成瓶颈。这现象照理不会在电信这种大公司发生。不过按照莫菲定律,什么坏事都可能发生。就随他去了。24小时以后,贝壳打电话到96877报修。对方开始说会不会是系统问题,windows新出病毒云云。贝壳两台电脑,平台不一样(Intel和AMD64),系统不一样(WindowsXP和Debian/GNU Linux),所用软件不一样(eMuleVC,BC0.70和aMule)。不会都是出这个问题吧?再说windows出病毒,关linux啥事情? 维修人员看看没法说的通,换了口风。说这种问题不能算是问题,他需要“提交”一下。OK,你本身做维护的,还向谁提交问题?我也不管他,这几天忙,没空和他唠叨。说好好,你提交下看看。 过两天空了,看问题照旧,贝壳坐不住了。莫非我碰到了P2P封锁?贝壳先查看了网络上的评论,说上海有线通有这问题,已经有人在315网上提交了抱怨。贝壳下面做了几个测试。 首先将eMule复制一份,保留原先的配置。然后关闭所有共享,只共享一个文件。名字起的奇怪点,这样就没有别的下载客户了。然后找一个朋友来做下载,速度是5K上下,而且一般有下没上。 然后贝壳打开apache2,共享同一个文件,打开端口映射(ED等软件的端口映射也是做好的,经EtherReal核查没有问题)。下载速度是50K上下,一般有上没下。 再打开BT,勾选其中“加密数据包头”为“优先”。然后在传输测试中,多数客户的速度是2K-3K,但是一个也是BC0.70的客户,本地发起连接,速度高达50K。后面偶尔也会出现这样的客户,估计是因为不是所有BT客户端全支持加密数据包头的。 最后,测试Debian/GNU Linux从ftp.linuxforum.net下载更新的速度。这是ftp和http混用协议,一般在70K以上,最高甚至达到120K。 至此,基本可以下结论,有线通封锁了P2P类软件的使用。 最可笑的是,我再次打电话过去。他们的服务人员开始还跟我念叨机器问题等等。然后我把测试方法一说,他们立刻改口,说从不保证任何P2P类软件的稳定。只保证Http协议的传输速度。什么时候宽带还有条款,说只能保证Http协议的速度了?如果说只衡量HTTP协议速度,那条款应该重新修订。如果说网络速度,一般都是指IP封包的传输速度。或者放松说,底层网络封包的传输速度。有线通此举就是明显的侵权。上述电话可以向有线通查询的,工号7061。 任何愿意起诉有线通的同志,贝壳这里免费提供技术支持,提供有线通的网络数据统计(ntop统计结果)。大家高兴起诉的,贝壳提供声援和支持。并且贝壳郑重表示,有生之年,见到用有线通的就游说用别的宽带,即使他道歉并且解除封锁也不例外。自10月底有线通到期后,贝壳即抽空银行资金,签订解约协议,改用ADSL。

Helix关键提示

Aug 7, 2006 - 1 minute read - Comments

今天被整死了,好久不用Helix,结果细节忘记光了。 开启Helix后的测试是http://localhost:port/admin/index.html,其中port是安装时候指定的管理端口。然后要输入安装时候指定的用户和密码。开的开吧——那就用不着它了。 在HelixProducer中的设置是Push, user & pass,然后用户和密码就填写管理员的(要么刚刚的管理界面里面自己新建一个去)。端口改安装时候设置的http端口,千万别搞错了。path可以不写,传输方式UDP。最后要记得流名字。 然后我们的点播URL就是rtsp://ip:port/path/filename。port是你指定的rtsp端口,path是HelixProducer指定的,不写就没有,filename是流名字。 希望大家顺利吧。

testren

Aug 3, 2006 - 1 minute read - Comments

shell909090.testren.com,相信很多我的朋友都在上面做了题。其中成绩最高的是李默雯小姐,一半答对——说实话,她应该去赌球的,我的题目可不比世界杯好猜——。最低的是Stella同学,相信伊直觉差的和我有拼。 下面公布下正确的答案: 1、下面哪种技术/标准是贝壳完全没有研究的? c、 CLR CLR是用于.net的Common Language Runtime,小马在这里弄错了——亏你还和我一起看的SQL。 2、下面哪个组织/论坛是贝壳没有提供过技术支持/服务的? d、 www.foxmail.com 其他几个贝壳至少都做了服务的,sinofrance是GIGI工作的那个。 3、贝壳邮箱的909090是? a、 缓冲区溢出中的代码 NOP指令,熟悉ASM的人应该看的出来—— 4、贝壳家里面完全没有人做过的职业是? d、 海员 有在船上工作的,但是没有出海。 5、贝壳曾经在2006年春天出去旅游,当时和多少人去了几个城市? c、 1个5城市 我自己去的,深圳没啥好写的——所以看我博客的同志,辛苦了。 6、贝壳和上面广告中的Shell Company的关系是? a、 没有关系 恩,不要想太多。 7、贝壳名字的由来是? c、 有一种算法叫shell 其实也是有个人叫shell的,算法就是以他命名的。问题是——我不崇拜那家伙—— 至于说交互程序的,的却,很像,可惜,不是—— 8、贝壳属于以下哪个星座? d、 巨蟹 有的人——错的很不应该阿—— 9、贝壳曾经养过以下哪种动物? a、 狗 答狗熊的给扔出去—— 10、下面哪门课,贝壳一次就过了? a、 体育 这是所有题目错误最高的——所有全错了。贝壳高数因为太嚣张,结果被85分关掉。体育到是因为认识老师(李忠彬阿,Stella不知道还记得不——不好意思——),所以一次过去。 11、下面哪个学校,贝壳完全没有念过? d、 汇文中学 恩,因为北京和上海都有汇文中学(这个我是跟李默雯小姐确认过的,她就是上的汇文,所以一次就答对),但是贝壳从来没有上过任何一个汇文中学。因此拿来蒙人—— 12、以下哪种技能,贝壳完全不在行? c、 八卦 呃,无论是八卦,还是八卦掌,贝壳全不会—— 答其他的去撞墙吧—— 13、下面哪个不是贝壳的昵称/外号? c、 阿迪达斯 答D的去医院检查眼睛去—— 14、贝壳的DVD存档总资料量是多大? d、 450G 没啥好说的—— 15、贝壳维护的桌面系统最常未重装时间是多久? 嘿嘿,厉害吧—— 16、下面哪种系统,贝壳本人的机器上从来没有运行过? a、 Minix 混蛋minix跑不起来——So。 17、贝壳曾经在自己的机器上运行过多少种类的系统?

新版MSN试用报告

Jul 30, 2006 - 1 minute read - Comments

最近MSN又更新了,出乎我的意料,这次是stella同学率先跟进的。结果伊在刚刚用的时候发现好友全部消失了,正在惊惶的时候,偶撞上去打招呼,结果被伊捉来拷问。最后恢复是恢复了,不过还欠下新版MSN的论文一篇。 虽然不知道伊何时对MSN的机制感兴趣了,不过偶还是写了一个blog来分析新MSN的战略意义和运行机制。 免责声明,以下内容尚没有经过严密测试。如有偏差,作者不负任何责任。 copyright itten by Shell.E.Xu, public under GPL. abstract 新版MSN的功能和工作原理。 keywords N,安全,兼容,分布式 context 我们先分析what’s new上面提到的两个新功能,语音通讯和共享文件夹。 1.语音通讯 这东西很老啦,我测试的情况下是直接连接,连对方的IP都暴了出来,而且还不稳定。不知道为啥微软拿来宣传。 2.共享文件夹 共享文件夹的功能不是MSN的独创,但是MSN的共享文件夹思路很特殊,是针对每个人共享的。这不同于设置共享文件夹权限的做法,针对每个人的共享在正常来看差不多就是文件传输。通常IM的文件共享都是共享一个文件集,然后设置不同人的访问权限。这个时候IM宿主的功能就好像一个文件服务器。但是MSN的做法使得管理者不是单个IM宿主,而是两个。而且IM宿主不必在线,也可以修改文件。对此我跟踪了下整个实现过程,发现是这样的。 MSN使用了%ROOT%Local SettingsApplication DataMicrosoftMessenger%EMAIL%目录来保存和共享有关的东西,对每个人的共享内容都会保存在SharedFolder下面的Email下。每个人只保存自己共享出去的,对方的内容在联机的时候同步。这里要提到一个概念,硬连接和软连接。假定文件内容相同,连接能减小空间损耗。NTFS虽然在理论上支持了硬连接,但是却没有在platform API里面导出相关函数。何况FAT根本不支持硬连接。所以MSN使用硬连接的可能为0。至于软连接,同样,FAT根本不支持。所以使用软连接的可能也不大。因此,假定你一个文件要共享给所有人,使用MSN的话你要重复拖曳,并且多次保存。(短期试用,还不知道是否真的必须这样)这样共享文件根本不经济。更何况每次上线都要进行同步,取得别人的更新,这样对网络也非常浪费。同时还存在下载染毒文件的风险(当然不会有运行的风险)。不知道微软存了啥心思。 3.Windows Live Safely Scanner 微软在共享文件夹里面配套提倡的,就是Windows Live Safely Scanner。其他厂商为了增大合作空间,一般在查毒功能上都是利用外包方式,只要你提供一个杀毒软件主程序的路径,就可以利用%PATH% %FILE%的方式查毒。微软就在MSN内推荐使用本公司的产品。由此看出微软准备借助IM的优势,向安全领域进军。 4.联系人列表加密 这个是本人最不齿的功能,如果要加密了联系人列表,那么gaim一类的东西就全成了废物。微软如果真的有这个心思,完全是本着把开放协议搞成封闭协议的精神在做事了。如此无异于步QQ的后尘。 5.其他特征 新版MSN登录时间一般比较长,估计是在做功能通讯。有得有失,大家就别计较了吧。不过如果你登录过,速度就比较快了。MSN新版的稳定性还是不行,stella小姐被吓个半死,我这里是分组丢失。不过伊重新登录就恢复了,偶拿gaim登录也正常了。

BOINC分布式计算

Jul 27, 2006 - 1 minute read - Comments

嘿嘿,贝壳我现在正式参加了BONIC的两个项目,SETI@home和Einstein@home。这两个项目是通过个人电脑的剩余CPU能力来计算大规模运算项目。SETI是寻找外星人的存在。通过个人电脑来计算美国航天局射电望远镜的信号,来分析外星文明的存在可能。Einstein是在2005世界物理年发起的计算引力波的项目。 个人觉得计算来说,PII以上的计算机就可以参与计算,以下的就算了吧。因为您算出来的时候已经超时了。运算是在后台进行,除了系统指示上CPU基本全是满的以外没有什么异常。电影照看网络照上,就是CPU温度可能高了点。不过相对人为和意外来说,这点造成的寿命问题完全可以忽略。 BOINC还有很多有意思的项目,包括计算蛋白质折叠,计算病毒分子情况(以上的都是用来寻找疫苗的),还有大气环流(这个是预报自然灾害和预测人类行为影响的),计算防疫药品最有效分布,计算最大质数,分解大质因数等等。很多都有相当的科学意义。 BOINC的安装相当简单。下载程序,安装,在计算主页上注册,在软件上登录。然后你就不用管了,只要定期看看有多少分就好了。可以用多个计算机算一个项目,也可以一个计算机算多个项目。建议每个计算机算两个项目,这样一般不会超时,而且也不会没的算。 如果您有兴趣,可以参看。 伯克利开放式网络计算平台 Berkeley Open Infrastructure for Network Computing 如果决定参加的话,最好再加入中文站点上面列出的项目小组,为世界做贡献的同时为中国添光彩。 SETI@China , Einstein@China , LHC@China , Predictor@China , Rosetta@China , CPDN@China

删除无赖

Jul 14, 2006 - 1 minute read - Comments

大家知道,从3721首开记录后,很多软件都有卸不掉的情况。多数是插一个dll到explorer里面,让你无法UnloadLib,也不能kill。然后保护一堆文件不能删除,再放注册表项目。3721还加了一个驱动,这样就是神仙也删不掉。 骂人不多骂了,方法两个。http://www.sysinternals.com/Utilities/PendMoves.html有一个项目,可以延迟删除。换句话说就是在启动的时候,讨厌的流氓加载前让内核做删除动作。很方便,重起下就没了。至于怎么找这些流氓的位置。http://www.sysinternals.com/Utilities/Autoruns.html同样公司,这个项目可以将开机所有自动加载的模块全部找出来。IE的插入组件也可以找出来。 不过这个办法虽然好,可是还是会有破绽。万一连这两个软件运行都屏蔽呢?这个时候可以用linux live+ntfs r/w modules,这样删除任何东西的时候,神仙也挡不住。 BTW,做live的时候,千万记得放一个ntfsfix在盘里面。贝壳的/dev/hda1有个logfile没有clean,结果死活不能写挂载……