qiuxing

喜欢统计,数学,计算机和一切有意思的事情。

Homepage: https://qiuxing.wordpress.com

我的数学血统(欧拉的十世后代)


国外有一个Mathematics Genealogy Project,记录了(主要是欧美)数学家的家谱。下面记录了从我博士导师Michael Cranston算起的我的数学血统。可惜这个网站几乎没有记录中国数学家,否则我还可以从我硕士导师沈尧天教授回溯看看。

0. Xing Qiu (这是我)xingqiu_2018

Ph.D. University of Rochester 2004. Advisor: Michael Cranston.

Dissertation: On Stochastic Flows and Backward Stochastic Differential Equations with Reflections.

1. Michael Cranston

cranston_mike_6801

Ph.D. University of Minnesota-Minneapolis 1980, Advisor: Steven Orey. Dissertation: On the Tail Sigma-Field of Certain Diffusion Processes.

我老板Cranston一辈子都在搞扩散过程。可能最早搞过离散的(一般人知道的马尔可夫链),但后来搞的都是连续的多维伊藤扩散,也就是随机偏微分方程(stochastic partial differential equations)。对了他最近(2015)年拿了伊藤奖(Ito prize),是随机微分方程里头有影响力的一个荣誉。

2. Steven Orey

orey1

Ph.D. Cornell University 1954.

Dissertation: Formal Development of Ordinal Number Theory and Applications to Consistency Proofs.

Advisor: John Barkley Rosser.

我师祖的博士论文是数论??仔细看了一下Orey的介绍,原来他在康乃尔读博士的时候就经常去听William Feller (我们概率论的巨牛)的课。他从那里接触到了(当时还是一维的)扩散。后来,Orey在数学上的主要贡献就是马尔可夫链的遍历问题(ergodic theory of Markov chains)。这个方向传给了我老板变成了随机偏微分方程,然后又传给了我,但我又跑到统计系去搞超高维常微分方程的反问题(inverse problem of ODE systems)去了,呵呵。

========== 华丽的分界线,以下的数学家可是都有维基词条的 ==========

3. John Barkley Rosser (正中的老头,50年代的康奈尔大学数学系的样子)

e_math_01141

Ph.D. Princeton University 1934.

Dissertation: A Mathematical Logic without Variables。

Advisor: Alonzo Church。

这个论文题目太高大上了。搞计算机的同学,尤其是做functional programming的,有可能听说过lambda calculus里的Church-Rosser Theorem,就是他和他老板搞出来的。他另外一个重要的贡献是在1936年他弄出了一个Rosser’s trick, 可以认为是哥德尔第一不完备定理的强形式。他的证明我看不懂,但里头有一句话把我给逗笑了:”For every proof of me, there is a shorter proof of my negation.”

========== 分界线,以下的数学家大部分都有中文维基词条 ==========

4. Alonzo Church (阿隆佐·邱奇)

quote-never-had-any-mathematical-conversations-with-anybody-because-there-was-nobody-else-alonzo-church-81-99-76

Ph.D. Princeton University 1927,

Dissertation: Alternatives to Zermelo’s Assumption

Advisor: Oswald Veblen

邱奇的论文题目就更牛X了,直接指向现代数学的最最底层的地基。邱奇1936年发表可计算函数的第一份精确定义,定义了lambda calculus,和图灵一起提出了邱奇-图灵命题(Church-Turing thesis),和图灵分别证明了Entscheidungsproblem不可解,据此,可以说是现代计算机理论之父。您看看照片右边他的名言有多牛。

5. Oswald Veblen(奥斯瓦尔德·维布伦)

Oswald

Ph.D. The University of Chicago 1903.

Dissertation: A System of Axioms for Geometry (看看当年博士论文的题目!!).

Advisor: E. H. (Eliakim Hastings) Moore.

普通的数学学生知道维布伦的可能不多,他主要的贡献是在1905年证明了若当曲线定理。这个定理只要学过研究生级别的拓扑应该就要学到:在二维欧氏空间上,每一条若当曲线(简单闭曲线)都把平面分成一个“内部”区域和一个“外部”区域,且任何从一个区域到另一个区域的道路都必然在某处与环路相交。维布伦在一战的时候上了前线,从上尉做起,后来升到了少校。

6. E. H. (Eliakim Hastings) Mooreduq89vuv_original

Ph.D. Yale University 1885。Dissertation: Extensions of Certain Theorems of Clifford and Cayley in the Geometry of n Dimensions。Advisor: H. A. (Hubert Anson) Newton。

Moore的数学理论研究似乎不如他的几个徒子徒孙,但他算是美国数学教育史上的大家。他是芝加哥大学数学系的创始人,他的两个学生,Birkhoff和Velben, 后来分别成为哈佛和普林斯顿数学系的系主任。他说服了纽约数学学会改名成了今天的美国数学学会。

在数学理论上,他在1883年证明了伽罗华域的分类定理,大约在1900年左右,在好几个和几何相关的希尔伯特问题上作出了重大贡献。但是对于普通人来讲,他的名字出现的最多的地方就是Penrose-Moore广义逆

7. H. A. (Hubert Anson) Newton

hubert_a_newton_yale_college

B.A. Yale University 1850。Advisor: Michel Chasles。

这个美国牛顿和他在英国的那个更出名的老祖宗一样,数学和物理都搞,而且主要出名是对天体物理的贡献。他是当时美国研究彗星的大家。

8. Michel Chasles(沙勒)

michel-chasles-83345d73-6634-451f-a55d-d487478f0cf-resize-750

Ph.D. École Polytechnique 1814. Advisor: Simeon Denis Poisson。

沙勒是艾菲尔铁塔上所刻“七十二贤”之一,主要贡献集中在刚体运动还有圆锥曲线论。

9. Simeon Denis Poisson(泊松)

9782730215848_h430

Ph.D. École Polytechnique 1800。Advisor 1: Joseph Louis Lagrange(拉格朗哥日)。Advisor 2: Pierre-Simon Laplace(拉普拉斯)。

泊松, 就不需要写简介了吧?接下来的几位老祖宗也应该免去简历了

10a. 拉格朗日

lagrange

10b. 拉普拉斯

225px-pierre-simon2c_marquis_de_laplace_281745-182729_-_guc3a9rin

11a. 拉格朗日的导师是欧拉

leonhard-euler

11b. 拉普拉斯的导师是达郎伯(d’Alembert)

alembert1
沿着欧拉往上推是一堆伯努利,就不多说了。

留下评论

川普当选之后的一些零碎看法


只整理一下一些零碎的想法放在这里,可能比较没有条理,大家将就着看。

  1. 美国亚裔占人口5.6%多一点, 大概1730万的样子(2010年美国人口普查数据;包括multi-racial),其中380万左右为华裔,为最大族群。这次投票,亚裔票占了4%,虽然比我经们的人口比例要低很多,但其实纵向比已经比历次大选投票率都高了。可见此次大选确实牵动了亚裔的神经。
  2. 这4%的亚裔票里面,大概65%投了希拉里,31%投了川普。看起来亚裔很偏民主党对吗?和刚刚的例子一样,其实要纵向比的话,这个比例是最近几次大选里最低的。2008年奥巴马得了大概70%左右;2012年他竟然拿了74%的亚裔票。有人做过一个时序模型,亚裔polls里头支持民主党的比例在加州针对SCA5法案(关于能否在大学招生时引入种族作为参考)投票(大约在2014年)时有个突然的下降。这说明民主党支持的AA(affirmative action, 就是照顾黑人墨西哥人等弱视少数民族)在亚裔里非常不得人心。
  3. 从受教育程度和收入上来看,亚裔是美国除了犹太裔以外,最成功的“模范少数民族”。收入请看下面的图。教育参见附录一。
  1. 目前似乎还没有针对亚裔细分到中国人的比例,但按照以往大选的数据,亚裔几个大族群(中,印,日,韩,越)的同票倾向是非常接近的。所以以上针对亚裔的分析,基本可以推广到华裔。
  2. 美国的380万华人,按照我大概记得的数据,有200万为1980年以后从来的新移民。根据《中国国际移民报告(2015)》蓝皮书,2013年,来自中国大陆的通过职业技能而获得永久居留权的人数有20,245人,占年度永久居留权总数的28.2%;比上一年度增加2041人,比重也提高了4.9%(2012年为23.3%)。这七成多的其他移民,大部分是亲属移民,小部分是其他类型移民(投资,大赦,结婚,等等)。换一句话说,绝大多数中国来美新移民,并非高技术或者高资产移民。而剩下的一两百万老移民就更不用说,大部分估计都是当年卖猪仔到美国的。这从反面说明了一个问题,那就是不管出身如何,华人对教育都很重视,而且收入都很高– 光靠一年2万左右的高科技码公不可能把整体收入带到超过白人那么多的地步。
  3. 这次大选,以mitbbs美新版为首的新华人网络,几乎一边倒的支持川普。这和亚裔整体压倒性的投希拉里,成了鲜明的对比。一个通常的解释是华人社会两极分化,老移民龙虾党靠吃福利,当然投民主党。新移民都是高科技评本事吃饭,所以支持川普。不少川粉自己写的网络帖子也提到,ABC(美国出生的华裔)绝大部分都投了希拉里。但问题是,根据我上面的数据,通过合法途径,以技术移民取得身份的华人到2013年也才两万人一年,以前就更少。所以380万华裔收入高绝非仅仅靠这些人。按照排除法,大部分投希拉里的华裔,收入都必然高于美国收入中位数,更不要谈贫困线了。那他们还要投大政府高税收高福利的民主党是什么原因呢?
  4. race_6_figure_household_and纽约时报前段时间的一篇社评分析过这个问题。文章开头就提到,亚裔家庭观念强,工作积极,收入高,教育高(川普以前,共和党才是精英党),不支持非主流思潮比如LGBT,经济上天生喜欢存钱不喜欢借钱消费,本来应该是共和党保守主义最好的选民。但为什么却都投了民主党?文章援引几次之前的调查,结果是比起税收上损失一点,美国主流亚裔认为微歧视(micro aggression)是他们最不能容忍的。绝大多数的亚裔受调查者曾经遇到过一次或一次以上的暗示他们不是“real”美国人的问题,比如在他们已经回答自己来自加州的前提下,依然追问他们原本从哪里来的(”Where are you originally from?”)。
  5. 技术新移民里的川粉对此的解释是主流华裔/亚裔被左派媒体和大学教育洗脑了。或者自己来自中国,没有经受过政治正确的教育,所以反而“旁观者清”。对这一点我持怀疑态度。就我个人观察,绝大多数第一代移民的英语都不太好,和美国同学同事又没有多少共同的文化爱好和关心的话题,基本上除了高校(一般比较左,哪怕在红州的大学)和单位以外,没有太多机会接触除了华人圈子以外真正的美国社会。即使有白人/黑人/拉丁同学同事,也往往没有深交。说这样的人反而是美国通,比真正在美国土生土长的主体亚裔更了解美国,就好比去中国留学的美国学生说自己比中国人更了解中国社会的本质一样,不是理论上不可能,但可能性确实不大。
  6. 政治人物多少要对自己的“基本盘”负责。我其实非常佩服川普本人,他一个圈外人,在民主,共和两党还有几乎所有的媒体的围剿下突出重围,反败为胜,这本身就是美国精神的一个体现。我也相信他说的很多divisive的话都是为了竞选而说的,不能当真。但这次把川普抬进白宫的主力是红脖子,其中有少数一部分极端白人至上主义者,也是不争的事实。川普赢了的几个关键州都在rusty belt, 比如俄亥俄,密西根,还有除了费城的宾州。这里没多少墨西哥非法移民,很多中学教育水平的白人都认为他们的工作机会是通过全球化被亚洲国家抢走的。这些人会因为一部分中国人拉了支持川普的横幅就对亚裔有好感?
  7. 如果要举一个华人对民主党最切齿的政策,我估计绝大部分人会选AA。这里我也想谈一下我的看法。从录取分数和别的要求上来讲,毫无疑问亚裔是最受歧视的。有大量的资料证实这一点,就不用我再引用了。但从结果(招生比例)上来讲,美国任何一个政党都不大可能让亚裔彻底占领最好的高校指标。加州目前禁止基于种族的AA,结果就是在加州大学体系里,大约35~40%的学生为亚裔,其中最大的族群为华裔,占了差不多20%左右(参见附录2)。作为对比,黑人加上拉丁裔占加州总人口43%,是亚裔的三倍多(加州亚裔大约为13%),只有15~16%左右的招生率;更可怕的是作为加州的主体民族,白人占了57%的比例,却只有不到25%的比例!【注:在美国,个人可以报多个种族,所以总数加起来超过100%】。今天刚刚在Pew Research上找到了更新的加州的单一族群分类数据:
    http://www.pewresearch.org/fact-tank/2014/01/24/in-2014-latinos-will-surpass-whites-as-largest-racialethnic-group-in-california/
    总的来说,就是2014年拉丁人和非拉丁裔白人都差不多占四成,黑人接近六个百分点,亚裔13百分点。又在维基上查到了加州华裔的数据,3.4个百分点。换句话说,在不执行AA的加州大学,3.4%的华人占据了20%的最好的大学资源;比华人多了十一倍的纯白人占据了24.8%, 比华人多了十三倍的黑➕墨占了可怜的15~16%. 
    我将心比心,如果我是白人,我肯定不会在乎“施舍”给黑人2.8%的入学指标;对占人口37%的拉丁裔占用了13%的大学资源有点微词但依然可以接受。但一个本来在白人心目中就不是“real American”的少数族群,却造成了对白人教育资源的实质 冲击,你说如果我是白人至上主义者,要make America white again的那种人,能按老中川粉一厢情愿的想法,废除AA,赶走“黑墨三”,然后全凭SAT/GRE考试成绩录取,让整个美国大学一半以上都是黄种人?说难听一点,在教育资源争夺战里,对于白人来说,黑人拉丁人目前是可控的,黄人至少从考试上讲才是白人真正可怕的有力竞争者。加州模式,民主党政府不愿意在全国推广,川普政府这样一个代表白人民粹的集团难道就会推广?
  8. 突然想到美新版还有一个让人喷饭的怪论,就是我们中国人可以通过努力工作努力同化,变成“白人”。这个论调我就不批了,持这个观点的同学们可以试试看在自己的脸书上发表这个观点,看看你们的白人同学们会怎么想:-) 你们有孩子的,可以试着让你的孩子在班上跟同学说,我学习努力,我一个夏天捂着不晒太阳,所以我是白人,看看他的同学怎么看他。
  9. 还有一个观点,就是我投川普,就是因为不确定性。反正再坏也坏不过奥黑,西婆治国。这里首先就涉及到如何评价奥巴马治理的8年。先上图(截至2014年):

gdp

 

2014年以后的数据如下, 总之大概平均在2%左右。

united-states-gdp-growth2x

单从这些数据来看,奥巴马搞经济确实很差,还不如公认的笨蛋小布什。但我们不要忘了,奥巴马继承了自大萧条以来美国最大的一次经济危机,而且外部还面临了欧洲主权债务危机和几场战争,还有中国经济放缓。纵向比,这八年将近2%的GDP当然谈不上好,但要是横向比,欧盟作为一个整体更加疲软, 见下图:

euro-area-gdp-growth2x

日本就更惨,人均GDP在2008年时为(购买力平均)美金3万8,2015年为3万2. 同期美国从4万8涨到了5万6. 即使是中国,从08年到现在,经济增长也放慢了许多。我举这些数据不是说我觉得奥巴马治国很好了,而是想说明那些觉得“不可能更坏”的人未免太naive了。和男克林顿,里根比较起来奥巴马的经济确实搞的不好,但公正的讲,能把美国从经济危机中相对平稳的带出来,他依然算是中等略偏上的一位总统。

  1. 关于私德。这个是今年选举最大的话题。无论希拉里还是川普都丑闻缠身,都非当总统的最好人选。但我个人认为,要求国家领导人品德高上是涉世不深的人关心的话题。和政策,国家长远战略,乃至于引领未来思潮相比,私德几乎是可以忽略不计的小话题。男克林顿没管好自己的裤链,但这不妨碍他是美国当代历史上最杰出的几位总统之一。极端川粉,西粉津津乐道于各种小道消息荒诞性丑闻,不客气的说,是完全不懂政治的表现。
  2. 最后一条。我其实相信,无论谁当总统,日子都不会差太多。一个国家没有救民于水火的大英雄,是成熟的表现。美国建国2,3百年,经历过独立战争,英国的反攻到算(白宫都被人烧掉了),内战,废奴收编南方,两次世界大战,真正饿死人的大萧条,总统暗杀,弹劾,冷战,比一个小小的川普上台惊险刺激百倍的时刻都坚持过来了,今年这算什么?我一个投了希拉里的人都看不惯一些西粉现在的抗议,什么不是我的总统,哭天抢地。愿赌服输是民主政治的起码原则,这样闹纯粹让人家看笑话。无论川粉西粉,我们都应该对美国的分权政治体系,对美国人民有起码的信心好吗?我们不能一边说川普这个demagogue靠仇恨,分裂,和煽动上台,一边自己又给自己国家的民选总统拆台。要反的不是川普,而是他*可能*执行的民粹主义甚至白人民族主义政策;反智主义的科研教育政策,搞贸易孤立主义闭关锁国的经济政策。只要他不干这些事情,他就是我们的总统,没什么好丢人的。如果他干了这些事情呢?很简单啊,写信给你们的议员,说他违宪弹劾他啊!我就不信3亿美国人当真就选了一个希特勒出来?作为一个温和左派,我想大声说我们应该给川普一个机会,我们应该和另外一边里的绝大多数人放下分歧,共同建设家园。尤其是华人里头的川粉和西粉,我们在中国的时候是同胞,在美国还是同胞,没有什么比这个更大的缘分了。政治观点有分歧非常正常,但两边都要相信对方愿望是好的,要学会妥协,求同存异。我记得05年看连战跑到北大演讲,他说:在大陆的时候,我们国民党和共产党一样,也以中国的富强为目标。。。话没有讲完,底下的学生全体起立,雷鸣般的鼓掌。我当时看到这里也为之动容。因为我知道,这些掌声实际上表达的是两岸精英对历史的反思,为什么当年就非要斗个你死我活,把对手描绘为恶魔,用8百万人命做为代价来革命。历史是不能修改了;但明天还要靠我们共同来创造,对吧?

附录1 (出处:Wikipedia).

Asian Americans have the highest educational attainment of any racial group in the country; about 49.8% of them have at least a bachelor’s degree.[39] Since the 1990s, Asian American students often have the highest math averages in standardized tests such as the SAT[40][41] and GRE.[42] Their verbal scores generally lag, but their combined scores are usually higher than those of white Americans.[40]The proportion of Asian Americans at many selective educational institutions far exceeds the national population rate. Asians constitute around 10–20 percent of those attending Ivy League[43][44] and other elite universities. Asian Americans are the largest racial group on seven of the nine University of California campuses,[45] are the largest racial group of undergraduates in the system,[46] and make up more than a quarter of graduate and professional students.[47]

附录2: 加州大学伯克利分校招生比例表

http://opa.berkeley.edu/uc-berkeley-fall-enrollment-data

UC Berkeley Fall Enrollment Data

NEW FRESHMAN ENROLLMENT BY ETHNICITY

ETHNICITY 2013 FALL 2014 FALL 2015 FALL 2013 FALL 2014 FALL 2015 FALL
African American/Black 133 159 157 2.8% 2.9% 2.8%
Mexican American/Chicano 395 557 500 8.4% 10.2% 9.0%
Other Hispanic/Latino 141 187 192 3.0% 3.4% 3.5%
Native American/Alaskan Native 18 42 27 0.4% 0.8% 0.5%
Pacific Islander 8 5 9 0.2% 0.1% 0.2%
Chinese 889 1,078 1,082 18.9% 19.7% 19.5%
Filipino 110 155 164 2.3% 2.8% 3.0%
Japanese 62 101 104 1.3% 1.8% 1.9%
Korean 249 242 269 5.3% 4.4% 4.8%
Other Asian 78 78 91 1.7% 1.4% 1.6%
South Asian 349 411 496 7.4% 7.5% 8.9%
Vietnamese 128 170 176 2.7% 3.1% 3.2%
White 1,166 1,363 1,347 24.8% 24.9% 24.3%
Decline to State 160 211 269 3.4% 3.9% 4.8%
International 820 707 667 17.4% 12.9% 12.0%
Total 4,706 5,466 5,550 100.0% 100.0% 100.0%
Underrepresented Minority Subtotal 687 945 876 14.6% 17.3% 15.8%

, ,

一条评论

一个旁观者的股评


前天跟我表姐在微信谈了很久股市,觉得不post出来给更多的人看可惜了。今天我把聊天内容整理了一下发出来,希望有更多的人可以了解一下我的观点。

首先说一下,我不炒股,或者说我从来不炒短线。我唯一投资的是标普指数综合股,这以绝大多数中国股民的眼光来看,我肯定是一个门外汉。我下面要讲的东西也完全不涉及哪只股好赶紧买进什么的,而是一些站在圈子外看的大趋势。

我觉得从长远来讲股市是由一个国家实体经济决定的。以美国为例,美国标普过去几十年平均涨幅大概是每年7~8%左右。举个例子,1976年年初标普第一次突破100点;今天是1940点。将近40年涨了19倍,折算增速为7.8%。道理是什么?美国过去几十年,平均通涨大概为3%,平均GDP增长率也是3%多一点,加起来是6%多。因为上市公司大多是优质公司,所以股票增值略微多个1到2个点。当然几十年里美股也做过几次过山车,最近的就是2008年危机,但几十年的平均规律放在那里,就是大盘年均涨幅为通涨加GDP加一两个点。那么现在我们来用这个规律来看今天的中国,就应该是1.5%的通涨(政府公布数字可能有水分)加7.5%的GDP(按照西媒分析也有水分,大概和通胀水分抵消)再加一两个点,等于10~11%左右。多余这个就是泡沫,少于这个就值得买进。当然了,这里面有一个小小的变数,那就是中国的上市公司是否和标普记录的公司那样是“优质公司”,能以超过国家经济增长1~2%的速度增长。这一点值得讨论但对以下分析的结果影响不大。

下面我们来看看两幅图。

上证指数自1991年来的趋势

上证指数自1991年来的趋势

上证指数。07-08年大泡沫后的低谷,反弹,和稳定

上证指数。07-08年大泡沫后的低谷,反弹,和稳定

第一幅图是上证指数这20多年来的趋势。明显在2007年年底产生了一个巨大的泡沫。这个泡沫开始之前,中国股市已经有5年左右没有大涨过了。平均大概是1400点左右。然后从06年初开始,到07年底,不到两年的时间上证指数升到了将近6000点,翻了四倍多!这其中固然有之前5年不涨所积累下来的能量(按照之前的推算,5年间中国股市正常应该涨60~70%的样子,或者说2300点左右)。

第二幅图则专门放大了这个泡沫产生后的股市变化。从2007年下半年开始,泡沫破了。由于恐慌心理,股市一直下行至08年底的1700点左右。这也绝对是背离经济规律的低点。从09年开始,股市回升,回调,大概有5年总的趋势是缓慢下行。这几年的平均为2200点左右。接下去的故事就很清楚了。长期被低估的股市能量在14年到15年得到释放,最高超过了5000点;紧接着就是最近的大跌,几乎和08年的走势一致。

如果我之前的估算靠谱的话,以10年股市真正价值2300点为起点,5年算下来到今天股市基本面应该有3800点左右。那么现在我们看到的跌穿3000点,应该是非理性的市场恐慌,但这个恐慌有可能有一定惯性,可能还会跌几个月才能真正见底(请参看08年的走势),然后反弹并稳定至一个合理价格,大概16年年初我们会看到上证在4000点左右企稳。

说了这么多,其实我最想说的就是中国多的是短线投机的散户,他们做买卖的决策好一点是根据不知真假的内部消息,坏一点就完全是从众心理,没有几个人真正从经济基本面出发分析股价,并以*年*为单位做长线投资并不为短线波动所动。大量这样的散户的存在,是中国股市为什么波动大风险高并且非常不efficient的原因。我们一定要记住天上不会突然掉钱下来,任何政策市,庄家市,美帝亡我之心市都不可能长期左右股价–归根结底,股市的总价值和一个国家的经济应该是基本同步的。相比很多其他投资手段比如黄金,其实股市的长线回报率已经很好了—你等于不用劳动,就搭上了上市公司同仁们辛勤劳作从而实现财富增长的顺风车。但你不应该指望炒短线一夜暴富,甚至不应该指望年回报率超过通胀+GDP太多。当然了,我这些话在疯狂的中国股市估计没有几个人听的进去,呵呵。

留下评论

mount小tricks


1. 我今天才知道原来同一个device (比如/dev/sdb1)可以被重复mount到几个不同的mount points(比如/home和/mnt/debug).

2. 一个mount point上重复mount两个devices会发生什么情况?比如说在/dev/sda1已经被mount到/home的情况下,你不小心又mount /dev/sdb1到/home. 这个我很早以前就知道了,效果基本上相当于直接mount了后面那个device. 你可以读写到/dev/sdb1。当你执行了一次umount /home之后,Kernel会自动恢复到mount /dev/sda1到/home的状况。

3. 一般情况下当然只有root才能mount。要想让某个device可以让用户mount,可以在/etc/fstab里相关的那一行加参数user. 比如:

/dev/cdrom /cd iso9660 ro,user,noauto,unhide

4. mount好了的一个分区想改变属性,比如说从可读写改成只读,可以这样:mount -o remount,ro /home

,

留下评论

Ubuntu 12.04安装笔记


又到了需要升级我的Ubuntu系统的时候,以下是我的笔记,写出来主要是为了给自己看,但如果能给别人一些帮助也挺好。

基本系统安装

CD
烧了一张Ubuntu 12.04 Alternative AMD64 安装CD. 没有用标准的图形化界面一是因为这年头Gnome/Unity已经没法用了,得选其它的桌面;二是因为Alternative disk有更多的控制选项(boot的时候按F4, 选定制安装)。本来也可以用USB jumpdrive的,但我以前试过,读取数据有时候远远不如从CD上读。
分区
之前的电脑上本来就分好了,一个28G的分区给系统(/), 56G的给/home,145G的放在/mnt/data,用来存所有的音乐,照片等等。这次重装系统,我只需要把/格式化掉即可。现在的Ubuntu default文件系统好像是ext4, 速度谈不上最快但很稳定。我觉得没必要折腾btrfs之类的东西了。
安装
现在基本上很智能了。记得选附近(RIT)的mirror,还有就是从网上直接下载最新的package. Desktop我选了Lubuntu和Xubuntu。

安装更多的软件

装完基本系统,重启看看没什么问题之后就装自己常用的软件。

  • 第一步,打开universe和multiverse source,再加上Ubuntu partners. Optional: 可以再加上一些PPA. 比如说下面是最新版本emacs的源
    sudo add-apt-repository ppa:cassou/emacs
  • 第二步,update system.
    sudo aptitude update && sudo aptitude safe-upgrade
  • 第三步,去网上下载安装ubuntu-tweak. 用它可以方便的管理一些第三方软件源,比如说skype。
  • 第四步,用自己的script装(几乎)所有的软件。

系统配置

  • sudo免密码
    用这个命令修改sudo的设置

    sudo visudo

    加上这么一句:

    yourusername ALL=(ALL) NOPASSWD: ALL
  • 网卡问题
    装好之后我这个老革命也碰到了一个从来没见过的新问题。无线网卡不能上网,只能有线上。用ifconfig看,只有lo和eth0,没有wlan0. ifup wlan0也不行。开始我以为是kernel module的问题(3.2系列kernel我以前没用过,而且驱动模块从iwlagn变成了iwl4965)瞎折腾了半天,后来才发现最神奇的是一旦插上网线,eth0和wlan0就同时出来了,然后拔掉网线也可以用无线上网。这样的话就肯定不是内核或者硬件的问题。折腾了半天,最后的解决方法是删掉/etc/network/interfaces里头的这一段看似无比正确的语句

    auto eth0
    iface eth0 inet dhcp

    然后一切都正常了。至今不明原理。

  • 声音问题
    这个也是好久好久没碰到过的问题了:没有声音。根据以前的经验,多半不是什么高深的驱动问题,而是最最简单的mute/unmute问题。浪费了不少时间调alsamixer一点用都没有,突然想起来这些年来Linux又换了一个声音后端,现在多半不用alsa而是用pulse audio了。赶紧查一下什么程序可以调pulse, 发现系统自带一个程序叫做pulse volume control(包的名字:pavucontrol)就是干这个的。unmute即可。
  • 生成中文locales
    现在其实需要中文locales的地方已经很少很少了。但telnet上BBS还是需要的。 cd /var/lib/locales/supported.d 编辑一个文件:zh zhHK.UTF-8 UTF-8 zhTW.UTF-8 UTF-8 zhCN.UTF-8 UTF-8 zhCN.GB2312 GB2312 zhCN.GBK GBK zhCN.GB18030 GB18030 zhTW.Big5 Big5Optional: 你可以从那个en文件当中删掉一些不想要的locales, 只保留一个enUS.UTF-8 UTF-8即可。然后sudo dpkg-reconfigure locales
  • Keyboard shortcuts
    • xmodmap
      Xfce自动会读=~/.Xmodmap=.
    • GTK apps Emacs keybindings
      如果想要让GTK程序(绝大多数程序)都用上类似于emacs的keybindings, 可以这样: gconf-editor ==> desktop ==> gnome ==> interface ==> gtkkeytheme, replace ‘Default’ to ‘Emacs’
    • Make use of “Win” key
      [GUI] ==> System ==> Keyboard ==> Layout Options ==> Alt/Win key behavior ==> Hyper is mapped to the Win-keys
    • Use Alt-F6 to max vert
      gconf-editor ==> apps ==> metacity ==> globalkeybindings, disable <Alt>F6, then windowkeybindings, define A-F6
  • xrdb
    Xfce会自动读=~/.Xdefaults=. 如有另外配置需读,可以放到=.xsessionrc=里。

XFCE或者LXDE桌面相关配置

和gnome相比,这两个桌面都比较轻量。相对而言,需要手动配置的地方也多一些。

  • 让XFCE/LXDE启动时source一些个人配置
    这两个桌面(还包括一些更简单的“桌面”,比如说openbox)默认都不会去source你的~/.bashrc. 这样可能会造成很多不方便的地方,因为所有通过GUI启动的程序都不会遵守你自己写的配置。 查了好久,发现正确的配置文件为=~/.xsessionrc=. 通过这个就可以改比如说PATH之类的环境变量了。 另外一个相关但不一样的问题:如何让LXDE/XFCE启动桌面的时候自动启动一些程序?最佳的方式是把一些=.desktop=文件拖拽到=~/.config/autostart=这个目录下。

,

留下评论

SSH的配置文件


该文件本身为~/.ssh/config,可以把常用的一些配置写在里面。

例子:

ServerAliveInterval 30  #每30秒发一个空包让服务器不把你踢下去
ForwardX11 yes  #相当于ssh -X

Host servname # 短名, 这样 ssh servname就行了
  Hostname servname.domain.com # 全名或者IP
  Port 12345 # 相当于 ssh -p 12345
  User root # 相当于 ssh root@....
  LocalForward 10021 ftpserv.ip.address:21
  LocalForward 10139 fileserv.ip.address:139
  DynamicForward 9999

最后的几句解释一下。 LocalFoward把对方内网服务器端口map到本地,所以本来对外不开放的服务/端口就能通过SSH tunnel到你的本地机器。有了这两句,当你ssh servname联通之后,可以用ftp client直接连localhost的10021端口,用smb client连localhost的10139端口。之所以不直接用port 21, 139是因为这两个低号码端口只有root才能开。

DynamicForward 9999的意思是在你的本地机端口9999建立一个socks5代理,一大堆应用程序比如说Firefox, Pidgin等等就可以通过这个代理走SSH通道了。

最后一个小tip, Firefox的options菜单里头可以手动改SOCKS代理,但是每次要改来改去显然不方便。装一个叫做foxyproxy的插件就能点一个图标切换(多个)代理设置了。

最后最后一个小tip, SOCKS代理让你的公司网管查不到你上的网站,但聪明一点的网管仍然可以分析出来你大致上在干嘛,因为大部分http连接之前你还得做域名解析(DNS)。最安全的SSH加密浏览必须让域名解析也走SSH. 在Firefox里,这个选项叫做network.proxy.socks_remote_dns,可以通过about:config来改(不过好像通过foxyproxy的图形化界面也可以搞定)。

, ,

留下评论

[转载] 芦笛对动车事故的分析


很少转载文章,这篇算是还蛮靠谱的分析就转过来了。

====================
先声明,本人是道地外行,以下所说,是这两天杂七杂八从网上看来的 “民铁”(仿“民科”制作)们提出来的各种事故原因推测,经本人这完全彻底的老外综合提炼加工,得出的修正假说。本人不是方舟子,有严格的学术道德观念,深知理应给出各假说来源,无奈我看到的多为转帖,原作者是谁根本就不知道。好在这既不是向有偿杂志也不是向学术期刊投稿,不那么严格还是说得过去的吧。

一、 疑点

1) 为何所有的自动控制系统统统失灵?

为防止追尾事故发生,铁路系统有一系列的冗余(估计英文是redundant)的自动控制系统。所谓“冗余”,就是多于一个的系统具有同一功能。例如人有两个肾脏,仅用一个就能满足排除代谢废物的要求。上帝之所以多造一个,就是给您装个备胎,坏了一只还能靠另外那只顶住。此所以有的父/母可以放弃一个肾脏,把它献给自己的肾衰竭的孩子。这种事出于父爱母爱无足奇,但英国有位女子,竟然为一个素不相识的陌生人献出了一只肾。这种无缘无故的爱,国人包括我在内绝对无法理解。

安全系统也同样实行冗余原则,以便东方不亮西方亮。为防止同向运行的火车追尾,铁路以4公里为一“闭塞区间”。那意思是,在一列火车之后4公里内的这段距离,都不许车辆进入,是close的。为了确保这一点,有三四套系统执行警告功能。第一套就是信号机。信号机的转换靠测量两根铁轨之间的电阻改变触发。平时无车辆时为绿灯,车开进来了,钢轮与轮轴就把两根铁轨短接了,于是两轨间电阻剧降,触发继电器,绿灯就换成了红灯。要等该列车开出4公里之后,那红灯才会转换为黄灯,以后才是绿灯。这就是说,那列车之后一律红灯,到了4公里才变成黄灯,再往后一定距离(记不得是多远了)才会变成绿灯(有的作者说黄灯与绿灯之间还有黄绿灯)。

过去使用这预警系统的只有司机那活人,跟咱们开车无区别:看见黄灯就减速,看见红灯就刹车。现在的车上则多装了两套系统,一套lki监测系统,将前方的信号色灯显示在屏幕上。若是司机睡着了,它就会代替司机发出指令,减速或是刹车。这就是活人之外的第一套冗余系统。

第二套冗余系统则是ATP,亦即三磷酸腺苷——瞎扯哦,全称是Automatic Train Protection(列车自动保护系统)。它通过铁轨接收前一列车自动发过来信号,用电脑算出与前车的距离。若是发现进入了闭塞空间(也就是与前车之距小于等于4公里),则立即发出指令,减速或刹车。

第三套冗余系统则是车站的调度控制。线路上有多少列车,距离如何,在调度室的屏幕上都该显示出来。调度一眼就能看出列车之间的距离。若是两车相距太近,就会及时提醒后车司机减速和/或前车司机加速。

追尾事故要发生,必须是以上所有系统全部失灵。这概率小到不可思议,应该说是不可能——若是系统统统失灵,那调度就会命令司机停下来,司机的本能反应也只会是停下来。

2) D301是快车,D3115是慢车,按时刻表,应该是D301先到站,而实际运行却反了过来,是慢车D3115先开出永嘉,开得很慢,最后要停下来之时,却被从后面赶上来的D301以100多公里的速度撞了上去。D301本不该在永嘉站停车,却在那儿停了十多分钟,让理应后走的D3115先开走。歪?

3) 高铁为何对雷电超敏感,简直可以用来作雷电指示器了?京沪高铁因雷击,在不到一个月的时间内就出了4次故障,而供电单位却声称从未发生过断电现象。这是为什么?电力机车的驱动无非是电动机。若是电闪雷鸣能影响马达运转,那工厂都得在雨季停工了。而若是雷电动辄击毁输电线,那凡是城市都要在雨季大面积停电了。若是直接击中列车,那又怎么可能如此频繁?老天为何要一而再再而三地雷击高铁?那又不是什么高入云天的烟囱。

4) 事发后5小时,铁道部就命令活埋车辆,恢复通车,这处理完全违背常识——事故原因都没查清,恢复通车很可能再次发生类似事故,领导为何敢于冒这风险?他们就不怕一再出事?

二、 答案

1) 动车上根本没有ATP,或起码不工作,只有lki系统,它只能接收色灯信号,提醒司机或代替他采取减速制动措施。

2) 雷电使得信号机出了故障,统统成了红灯,发出假警报。

3) 因京沪高铁频频出事,上海铁路局将各地的干员抽去充实京沪高铁技术管理队伍,该地段留下来的管理人员乃是国企中最常见的废物,吃皇粮不干活的七大姑八大姨小舅子马舅子之类。

4) D3115准点到达永嘉,本来只该停靠一两分钟,但前方的信号灯却是红的。调度人员派出电务去查明前方究竟是怎么回事,致使D3115停了半小时左右。因为同一原因,本不该停车的D301在10多分钟后到站,也被迫停了下来。但电务马舅子不懂技术,迟迟无法修好,调度不得已只好实行“非常站控”,也就是以人力调度代替电脑,令司机关掉lki系统,大胆闯红灯,以每小时20公里的速度行进,靠目测确定前方有无障碍物。不幸的是,调度也是个不懂业务的马舅子,因此犯了个致命错误,把D3115当成了必须先发的D301,因此错误地让它先开走。此时检修信号机的电务查不出毛病来,干脆将信号机的继电器以手动置于高电阻位,于是红灯变成恒定的绿灯,调度见状,以为故障已被排除,于是又令D301开出。D301丝毫不知道信号灯被电务人为地转成绿灯,但见前方一路绿灯,于是按常规操作加速行进,很快就追上了前面开得很慢的D3115。调度在屏幕上看见两车距离越来越近,吓出了一身汗,他以为后面那车是D3115,立即命令D3115停车,于是D3115就停了下来,被后面的D301撞了上来。调度在屏幕上眼睁睁地看着两车相撞,总算悟出了他犯了什么错误,当场崩溃。

必须说明,以上头三段是假说,但第四段含有已知真实情形,请参看央视记者报导(http://news.sohu.com/20110728/n314735900.shtml)。该报导披露了D301与D3115颠倒了发车顺序,也披露了那晚实行的是非常站控,还披露:“当晚整个温州市区因为雷击都出现了短暂的停电。这个基地也是一样,电脑都无法使用。它不是一个点,而是一大片地区,电务都忙不过来。”但若动车真有ATP,即使调度的电脑失灵也不会造成追尾。所以,“没有有效的ATP”这一点似乎能肯定。不满足这一必要条件,则碰撞就绝不会发生。

以上假说,可以完满解释上列四个疑点:

1) 并不是所有的安全系统全都失灵:真正失灵的只是信号机系统。但因为信号灯失灵,lki系统也就无用了。若是车上真有ATP,则这事故就不会发生了。可惜ATP只存在于宣传中,因此只能实行非常站控。而车站调度虽然看到两车在迅速接近,却不幸误以为后车是D3115,令其停车,因而非但没有起到保护作用,还促成了两车相撞。

2) D3115在D301前开出,是调度把它错当成应该先走的D301了。

3) 高铁之所以对雷电超敏感,是因为它没有ATP,关键的安全保障系统是易受雷电影响的信号机系统,一旦信号灯失灵,则lki系统就只能关掉,唯一的办法便是非常站控,以人事指挥取代自动系统。在多数情况下,车站都只能决定暂不发车,或实行非常站控,于是造成晚点。换言之,因为没有ATP,信号机系统便成了高铁脆弱的瓶颈。

4) 事故发生后,领导要审的第一个对象,便是那调度马舅子,他自然只能如实招供。因此,早在领导前往现场查看前,他(们)就已经知道出事与路况无关,即使通车也不会再出什么事。这就是他(们)何以敢决定活埋车辆后就恢复通车。

作者:芦笛 在 芦笛自治区 发贴, 来自 http://www.hjclub.info

留下评论

R的错误处理机制


基本用法:在自己写的函数里调用 warning("a message.") 或者 stop("a message.") 两者的区别是 warning() 不会中断你的函数, stop() 则会。

mysqrt <- function(x) {
  if (x>0) {
    warning("Only the positive square root is computed.")
    return(sqrt(x))
  } else if (x<0) {
    stop("x must be a positive number.")
  } else {
    return(0)
  }
}

大部分时候,警告/中断机制都有它存在的意义。但有时候我们要做1000次simulation, 其中要有一次 glm() 不收敛了可能整晚上的simulation就中断了。这时候怎么办?

解决方法是 tryCatch() . 写一个 inline 函数在警告的时候跑,再写一个 inline 函数在中断的时候跑。用 tryCatch() 来做这种特殊的分支。

newsqrt <- function(x) {
  tryCatch(mysqrt(x),
           warning=function(msg) {
             print(paste("Caught warning message:", msg))
             return(-x)
           },
           error=function(msg) {
             print(paste("Caught fatal message:", msg))
             return(NA)
           }
           )
}

留下评论

cacheSweave使用简介


介绍

我假设你了解并会使用Sweave. 如果你不知道Sweave但知道并会用R和LaTeX,我强烈建议你学一下Sweave. 一个Sweave文档基本上是LaTeX文档和R code的组合。我现在几乎所有的consulting的报告,一些教课的文档等都用Sweave来写了。 Emacs对Sweave(通过noweb-mode)的支持也还算可以。

就因为Sweave是联合体,每次编译Sweave都得要重新跑一遍里面的R code. 简单的consulting当然没有什么,但有些加了simulation的东西这样每次编译要重新跑就不现实了。cacheSweave/pgfSweave就是为了解决这个问题而写的。

安装

  • 先保证你的R版本够新(R>=2.12). 如果你嫌用Ubuntu自带的R太老,你可 以加CRAN上的deb repository. 具体请google之。
  • 接下来你只要在R里 install.packages(c("filehash", "cacheSweave")) 一下即可。 filehash必须手动装(这应该 是cacheSweave的一个bug)。
  • Google并下载 Sweave.sh, 放到binary PATH里头。

基本使用

  • 正文例子. 基本上,就是在需要计算但不需要output verbatim/tex的code chunk上加参数 cache=TRUE . 当然,最好用 setCacheDir(cache) 设一个cache directory, 否则在你的working directory里会生成无数垃圾文件夹。
  • 命令行用法:
    Sweave.sh -c foo.Rnw
    

    第一次跑当然不会变快,但第二次跑就应该几乎不花什么时间了。

, ,

留下评论

Linux下Access Control List (ACL) 的简单设置


Linux下标准的文件权限管理大致基于这么一个比较简单的模式:

  • 任何一个文件都有三个权限:可读,可写,可执行,记号分别是r, w, x。
  • 文件属性有三个级别:用户,群,全体;每个级别分别可以有不同的上述权限。

用=ls -l=命令可以看一个文件的这些权限,比如说:

-rwxrwxr-x 1 qiuxing compbio  556 Mar 30  2010 README.TXT

这说明=README.TXT=这个文件的创建用户为=qiuxing=, 群为=compbio=; 最前面的 rwxrwxr-x 说明用户 qiuxing (头三个字母)和群 compbio 都对这个文件拥有读写执行权限,但其他用户(最后三个字母)只拥有读和执行权限,不能写它。

现在假设我要和别人共享文件(比如说通过FTP server),那么标准的做法是这样子的:

  1. 新建一个群,比如说 ftpuser. 然后把所有要和我共享文件的用户都加入这个群。这个现在都可以通过图形化界面来干了。
  2. 把共享目录(比如说 /var/data )的所有文件的群都设成 ftpuser, 权限都设置成比如说群可读写。另外还要注意一点,所有的目录都得设置成群 可执行, 否则别人没法 cd 进去。
    sudo chgrp -R ftpuser /var/data
    sudo chmod -R 775 ftpuser /var/data
    

但这样做还有一点点问题。每次任何一个用户在 /var/data 下新生成的文件缺省属性都是这样的: 文件的群属性为该用户的主要群(在大部分Linux上这个群要么叫做users, 要么干脆就和用户名一样),权限为用户本人可读写,所有别人可读。这样每次生成一个文件都要改属性,很不方便。

所以我们应该让 /var/data 下的新生成文件缺省群属性为 ftpuser, 权限为群可读可写可执行。方法是 1. set group ID; 2. acl.

用root身份执行

find /var/data -type d -exec chmod g+s '{}' \;

这行命令把 /var/data 下所有的目录均 setgid 成 ftpuser, 这样在它们里面生成的任何文件缺省群为 ftpuser.

关于acl.

  1. Ubuntu下access control tool 可以如下安装:
    sudo apt-get install acl
    
  2. ACL是在文件系统级别上实现的。所以装上了之后得要让文件系统知道有这么回事。改你的 /etc/fstab, 在mount选项上加上acl这个参数:
    # <file system>  <mount point>     <type>  <options>   <dump>  <pass>
    /dev/sdb1        /var              ext3    defaults,acl   0       0
    

    然后重新mount一下:

    sudo mount -o remount,acl /var
    
  3. setfacl 来改属性
    sudo setfacl -d -m g:ftpuser:rwx /var/data
    

    这行命令具体什么意思,还有 setfacl 别的用法,请参看 BeginLinux.com 的文章。

高级问题:为什么不用 umask? 如果你去google, 会发现很多老一点的设置缺省权限的方法都基于 umask. 但是在shell 的配置文件里改 umask 值的后果是该用户创建的 所有 文件都变成这个属性了,这往往不是我们想要的效果。

, ,

留下评论