] - copy host->device only if changed
(see 'adb help all')
adb shell - run remote shell interactively
閱讀全文
posted @
2008-06-03 17:36 小強 閱讀(1051) |
評論 (0) |
編輯 收藏
摘要: adb(Android Debug Bridge)是Android提供的一個通用的調試工具,借助這個工具,我們可以管理設備或手機模擬器的狀態。還可以進行以下的操作:
1、快速更新設備或手機模擬器中的代碼,如應用或Android系統升級;
2、在設備上運行shell命令;
3、管理設備或手機模擬器上的預定端口;
4、在設備或手機模擬器上復制或粘貼文件;
閱讀全文
posted @
2008-06-03 17:35 小強 閱讀(1504) |
評論 (0) |
編輯 收藏
摘要: Android是基于Linux內核的,對于喜歡研究底層的朋友來說,自然不會放過搞明白Linux層面上一些東西的機會。當然,最終目的還是要搞清楚Linux是如何和上層lib以及虛擬機結合的,但是這得等Google完全開源Android之后了。很多關于Linux運行的細節,都可以通過adb的shell來看到。 閱讀全文
posted @
2008-06-03 17:30 小強 閱讀(3580) |
評論 (1) |
編輯 收藏
大學 (一) http://www.tkk7.com/uiiang/archive/2007/05/27/120342.html
康誥曰:“克明德。”大甲曰:“顧諟天之明命。”帝典曰:“克明峻德。”皆自明也。
湯之盤銘曰:“茍日新,日日新,又日新。”康誥曰:“作新民。”詩曰:“周雖舊邦,其命惟新。”是故君子無所不用其極。
康誥說:“能夠弘揚光明的品德。”太甲說:“念念不忘這上天賦予的光明稟性。”堯典說:“能夠弘揚崇高的品德。”這些都是說要自己弘揚光明正大的品德。
商湯王刻在浴盆上的箴言說:“如果能夠有一天自新,就應保持天天自新,永遠不斷自新。”康誥中說:“鼓勵人們棄舊圖新。”詩經中說:“周朝雖然是古老的國家,但卻稟受了天命,自我更新。”所以,品德高尚的人無處不追求完善。
軟件開發乃至IT行業的更新速度極快,今天出個JAVA,明天出個.net,后天又來個什么ruby。所以咱們要不斷的學習,不斷的進步才能跟上技術的更新速度,才能不被淘汰。
但什么叫自新,這個自新不是說今天出了JAVA,呼啦呼啦的就全買thinking in java去了,明天出了.net又呼啦呼聽的全安.net 2005去了。自新是一個發掘和汲取的過程。別一天到晚的看不起struts嫌他麻煩,瞧不上hibernate嫌他浪費性能。人家的技術能在全世界流行,必然有過人之處。想想他為什么能在全世界流行,他體現的是哪種設計思想。多學學人家的優點,想辦法把這些優點用在自己的代碼上。
詩云:“邦畿千里,惟民所止。”詩云:“緡蠻黃鳥,止于丘隅。”子曰:“于止,知其所止,可以人而不如鳥乎!”
詩云:“穆穆文王,于緝熙敬止!”為人君,止于仁;為人臣,止于敬;為人子,止于孝;為人父,止于慈;與國人交,止于信。
詩經說:“京城及其周圍,都是老百姓向往的地方。”詩經又說:“‘緡蠻’叫著的黃鳥,棲息在山丘的角落上。”孔子說:“連黃鳥都知道它該棲息在什么地方,難道人還能不如一只鳥兒嗎?”
詩經說:“品德高尚的文王啊,為人光明磊落,做事始終莊重謹慎。”做國君的,要做到仁義;做臣子的,要做到恭敬;做子女的,要做到孝順;做父親的,要做到慈愛;與他人交往,要做到講信用。
經常看到論壇上有人抱怨,自己的工作單調只不過是復制粘貼別人的代碼。可你有沒有想過為什么去復制粘貼,是因為他的代碼寫得太好了,放到哪里都能用?還是架構設計得不合理,需要重構。如果是好,他好在哪里,他為什么這么寫。如果不好,又不好在哪里,應該怎么改,如果是你來設計,你又會怎么做來避免犯這樣的錯誤。
很多人抱怨自己在一個小公司不得志,可有沒有想過為什么在這種小公司。你有沒有給IBM,google這樣的公司投過簡歷,投了簡歷有沒有面試,面試了這些大公司為什么不要你,而是錄用了別人。要擺正心態,找到自己的位置。你可以覺得不得志,但要有真才實學。龐統那么大的才,到了劉備手下不還是先被發配去當縣令。是金子終要發光的,后來劉備不也終于認識到龐統的才能并委以重任嗎。可如果你啥都不會,看這個看不起,瞧那個瞧不上。一天到晚就知道上網聊天打游戲泡MM。就算到了曹營也就當個蔣干,成事不足敗事有余。要本著謙虛學習的態度來對待工作對待周圍的人,要學會從別人身上發現優點。
詩云:“瞻彼淇澳,菉竹猗猗。有斐君子,如切如磋,如琢如磨。瑟兮僩兮,赫兮喧兮。有斐君子,終不可諠兮!”如切如磋者,道學也;如琢如磨者,自修也;瑟兮僩兮者,恂栗也;赫兮喧兮者,威儀也;有斐君子,終不可諠兮者,道盛德至善,民之不能忘也。
詩經說:“看那淇水彎彎的岸邊,嫩綠的竹子郁郁蔥蔥。有一位文質彬彬的君子,研究學問像加工骨器一樣,不斷切磋;修煉自己像打磨美玉,反復琢磨。他莊重而開朗,儀表堂堂。這樣的一個文質彬彬的君子,真是令人難忘啊!”
這里所說的“加工骨器,反復琢磨”,是指做學問的態度;“像打磨美玉,反復琢磨”,是指自我修煉的精神;說他“莊重而開朗”,是指他內心謹慎而有所戒懼;說他“儀表堂堂”,是指他非常莊重;說“這樣一個文質彬彬的君子,真是令人難忘啊!”是指由于他品德非常高尚,達到了最完善的境界,所以使人難以忘懷。
不要為了工作而工作,為了寫代碼而寫代碼。既然干了這行了就要干好,即使不求名揚天下,至少要也對得起自己這么多年的努力吧。我帶過幾個手下,我每次安排任務后都會說:認真干活,只要干完活,你去打CS我都不管。我說這話的目的是不想給大家太多壓力,大家都挺辛苦都不容易。只要干完活,該聊天該上網隨便你。可如果真正會學習的人,就應該明白,自己干的那些活,永遠是別人安排的。要想多學東西,還得根據自己的特點和能力補充知識。自己寫的代碼是不是已經無懈可擊了,有什么地方值得優化,實現方法是不是可以用更優雅的方式。
總之,心中要想著不斷進步,要么不做,做了就要做到更好。
posted @
2007-05-29 13:05 小強 閱讀(1115) |
評論 (1) |
編輯 收藏
這兩三年來,生活一直被工作占據著,習慣了用工作來充實的生活,閑下來卻非常無聊。即使不加班的時候,回到家里也不知道干點什么好,于是下意識的又開始寫代碼,學新技術。這樣的生活單調乏味,人也變得無趣起來。于是決定,從今天起在家休息的時間,不再寫代碼。重新找回以前的興趣,豐富業余生活。想起以前上學時住校,閑得沒事做就到圖書館借書,反正呆著也是呆著,那會兒什么書都看,從古今中外概不排斥。可惜工作后再沒這閑心了。
今天休息,在家翻了翻書柜,讀一讀大學。藍色字是原文,紅色的字是我的一些理解,如果有錯的地方,還望大家指正,謝謝。
大學之道,在明明德,在親民,在止于至善。知止而后有定,定而后能靜,靜而后能安,安而后能慮,慮而后能得。物有本末,事有終始,知所先后,則近道矣。
大學的宗旨在于弘揚光明正大的品德,在于使人棄舊圖新,在于使人達到最完善的境界。知道應達到的境界才能志向堅定;志向堅定才能夠鎮靜而不驕躁;鎮靜而不驕躁才能夠心安理得;心安理得才能夠思慮周詳;思慮周詳才能夠有所收獲。每樣東西都有根本和枝末,每件事都有開始和終結(還記得黑客帝國3里,先知說的那句話嗎?Everything that has a beginning has an end。大概先知也讀過大學)。明白了這本末始終的道理,就接近事物發展的規律了。
在軟件開發過程中,我們經常會遇到很多問題。其實每一個客戶需求都是一個大問題,是一堆問題的總合。這就需要我們在編程之前,明白自己要做什么(知止而后有定),要認真的分析我們的需求和目標。這樣才能不被一堆稀奇古怪的問題嚇倒,能夠讓我們從容的面對這些工作(定而后能靜)。初學者經常犯一個錯誤,就是不分析問題。調試出錯代碼的時候,經常是一遍一遍的運行錯誤的代碼,然后看著報錯信息發呆。而不知道如何分析錯誤所在,也不知道在哪里打印幾行標志來找出出錯的代碼的位置。于是越看越亂,越亂越心慌。這時候就需要先靜下心來不要被一個報錯信息嚇到(靜而后能安)。只有靜下心來,才能想到其實任何報錯信息,都是有根有據的,只要根據提示信息中給出的線索,或者在代碼中打印幾條標志信息,或者根據你輸入的信息運行的類或方法去推理,就能夠找到出錯的地方(安而后能慮)。當你做到這一步,你就找到問題的所在了,經驗值又增加了(慮而后能得)。
就像剛才所說,任何代碼任何錯誤,都是有根有據不會憑空出現。我們軟件開發人員的工作,就是解決一個一個的問題。只要能把這些問題分析得當,條理清晰的列出來,就離成功不遠了。
很多初學編程或剛剛工作的人都會報怨,看不懂代碼,不知道業務邏輯所以沒法工作。其實做事的時候,不要一上來就想一次解決問題,要循序漸進,你連代碼出錯出在哪里都不知道,怎么去修改錯誤。要先找到出錯的代碼是哪個文件,是從哪里進入的,又經過哪些方法的調用,要明白這些代碼的業務邏輯。如果不明白就先注釋起來。初學的時候要學會分析問題的方法,找到問題的關鍵點,每行代碼其實都是在調動數據,但有些調動是對當前業務沒有影響的這些可以先排除掉,那些會對后面的業務邏輯產生影響的,都是問題的關鍵點。初學者不要嫌麻煩,遇到這些關鍵點一定要注釋。就算不明白整個的業務邏輯,單獨一行代碼的意思總該明白吧,無非就是添刪查改和方法調用嘛。當你把這些代碼通讀一遍并都注釋后,就可以把這些注釋當成讀小說一樣讀下來,再復雜的業務邏輯也應該能讀明白了。
古之欲明明德于天下者,先治其國;欲治其國者,先齊其家;欲齊其家者,先修其身;欲修其身者,先正其心;欲正其心者,先誠其意;欲誠其意者,先致其知;致知在格物。
物格而后知至,知至而后意誠,意誠而后心正,心正而后身修,身修而后家齊,家齊而后國治,國治而后天下平。
古代那些想在天下弘揚光明正大品德的人,先要治理好自己的國家;要想治理好自己的國家,先要管理好自己的家庭和家族;要想管理好自己的家庭,先要修養自身的品性;要想修養自身的品性,先要端正自己的心思;要想端正自己的心思,先要使自己的意念真誠;要想使自己的意念真誠,先要使自己獲得知識;獲得知識的途徑在于認識和研究萬事萬物。通過對萬事萬物的認識,研究后才能獲得知識;獲得知識后意念才能真誠;意念真誠后心思才能端正;心思端正后才能修養品性;品性修養后才能管理好家庭和家族;管理好家庭后才能治理好國家;治理好國家后天下才能太平。
咱們先不說什么治國之論,單就軟件開發這個行業來講。很多人都在抱怨公司小掙錢少管理混亂感覺屈才之類的。可你真的有這么大才嗎,那些剛剛畢業的學生,在學校里玩兒了四年。到公司時什么都不會白紙一張,就像我以前發過的一個文章里說的。都不用說敬業精神,當你連最起碼的認真工作都做不到時,還有什么資格說公司給你的工資太少,對不起你的工作量。
要么別做這份工作,別接受這個任務,既然做了就要做好。不要把工資少當成不認真工作的借口。你再不認真工作,該被剝削的地方誰也跑不了,老板還是要賺他的錢。但工作經驗是自己的呀!!! 軟件開發這個工作需要不斷學習不斷的進步才能保持自己的位置。而軟件開發正是需要認真工作,才能體會出其中的奧妙,體會其中的精華所在。要想讓自己將來有好的發展,就要先做到自律,休息的時候當然要玩兒,但上班的時候就要以工作為重。要想自律就要提高自身修養,提高自己對工作重要性的認識。要想提高自身修養,就要端正自己的心態,上班的時候不要總去想什么窗外的高樓街上的美女。要想端正心態,就要讓自己的意念真誠,要真心的認真負責的對待自己的工作,對待自己手中寫出的每一行代碼。這時就需要先獲得知識,要學會這些技術,不然什么都不懂的人只能復制粘貼別人的代碼,卻不知道這些代碼在干什么,往往復制錯了自己卻混然不知。
自天子以至于庶人,壹是皆以修身為本。其本亂而末治者否矣,其所厚者薄,而其所薄者厚,未之有也!
上自國家君王,下至平民百姓,人人都要以修養品性為根本。若這個根本被擾亂了,是不可能治理好家庭甚至國家天下的。不分輕重緩急,本末倒置卻想做好事情,這也同樣是不可能的。
就像剛才說的,剛工作的人工資少工作累這是事實情況,大家都是從這一步走過來的。只有經歷過這一步,才能明白認真工作和提高工作效率的重要性。要想提高工作效率,就要提高自身能力,就要積累工作經驗。可工作經驗這東西并不是說來就來的,需要自己刻苦努力才能得來。并不是說明天把你送到IBM或者什么大公司,給你好多好多錢,給你換了一個超美的工作環境。你就突然什么都會了什么都懂了。當你什么都不會還凈犯錯的時候,真的到了這種環境中,周圍都是高手,你還好意思和別人打招呼嗎?
posted @
2007-05-27 20:27 小強 閱讀(1410) |
評論 (4) |
編輯 收藏
? 很久沒有上blogjava了, 自從離職后, 從過春節到現在, 家里發生了很多事, 搞得我暈頭轉向. 一直沒有去找工作. 最近終于穩定下來.?
? 休息這段時間, 為了保持自己的工作狀態, 并且希望將這幾年工作中學習到的技術, 做一個總結, 便產生了開發自己的網站想法.
? www.songguo.net
??從功能上講, 以譯客為主. 由網友發布文章, 其它網友來對文章進行翻譯. 可以翻譯整篇文章, 也可以只翻譯其中一個片段.
? 網友還可以對別人的翻譯進行投票,?當有人點擊一個片段時, 翻譯的結果也會根據其它網友的投票結果排序顯示出來.
? 另一個小功能是股票管理. 現在只實現了很小一部分功能. 主要想法是最近股市火熱, 我也不幸上了賊船, 可是在公司上班時,?明目張膽的打開股票軟件未免有點太囂張了.?而且現在的股票軟件太顯眼,?老遠一看就知道是什么.?
? 于是受google的簡約主義影響, 做了這個盡可能簡化功能和界面的小功能.?界面上的各個面板都可以通過點擊標題欄關閉, K線圖也可以直接點擊關閉. 這樣可以很快的隱藏自己,?嘿嘿~~
??技術上講的話, 網站使用了大量的開源技術, 基本的struts, spring hibernate就不說了, 火爆的AJAX也根據性能和需求的考慮也用到了. AJAX方面主要使用了DWR框架.? 其它的技術像url重寫之類的也是能用就用.
??
? 過去幾年一直是在做企業應用的開發, 這是我第一次做通用型的網站, 實在沒什么經驗.? 而且完全是一個人做, 沒什么借鑒, 只能分析一下別人的網站來模仿.?? 在很多功能的實現上也經常找不到最好的解決方案, 很想知道那些成熟的網站中, 是如何設計的. 現在只能一邊摸索一邊做了
? 由于時間倉促, 很多想法還沒有實現,?也有不少BUG, 衷心希望大家能給我多提意見. 謝謝
?
posted @
2007-03-21 09:53 小強 閱讀(1871) |
評論 (22) |
編輯 收藏
一年又要過去了,人長大了喜歡懷舊, 懷念小時候的伙伴, 小時候的胡同, 小時候的一切.
?
????? 想想小時候, 天天盼著過年, 能放鞭炮, 有壓歲錢, 有好吃的, 可以打雪仗堆雪人, 可以熬夜看電視, 可以和小伙伴吹各種各樣的牛, 那時候的生活簡單又快樂.
????? 現在長大了怕過年, 過年意味著又長一歲, 意味著又在這個世界上浪費了一年的時間. 現在過年沒氣氛, 電視里演著無聊的晚會, 千篇一律的電視劇. 小時候見到長輩嘴甜點兒, 收個五塊十塊的壓歲錢, 樂的屁顛屁顛的. 現在我也變成長輩了, 見到了晚輩一出手就得200, 人家還嫌少呢.
?
????? 小時候的生活那么單純, 夢想也是那么單純而模糊, 和許多小伙伴一樣,我曾經夢想過當解放軍, 夢想過當科學家,當天文學家.
????? 人越長大, 夢想變得越現實, 上學時夢想能天天考100分, 夢想周末能去公園. 夢想將來能上個好的大學, 夢想能早點長大不上學.
????? 現在真的不上學了才發現, 還是學校好啊~~~~ 沒有說不清的稅交不完的錢. 沒有沒完沒了的加班, 沒有沒完沒了的代碼. 沒有各種各樣的假貨, 沒有防不勝防的摻毒食品.
?
????? 現在夢想著能有個不加班的工作, 夢想能下班有時間到后海散步, 夢想周末能和朋友去公園. 夢想著房子降價, 夢想著不在堵車.
?
????? 想想小時候的夢想, 還是單純而熟悉, 模糊又清晰. 它是那么的近, 近得好像就在昨天,近得還能聽到那時候開心的笑聲. 它又那么的遠, 仿佛永遠不能實現.
????? 想想現在的夢想, 它不在是五光十色, 充滿了蒼白和無奈, 它還是那么近, 壓得我喘不過氣. 它還是那么遠........
?
????? 曾經對21世紀充滿無限憧憬的四有新人, 現在卻落得為了掙一點點錢, 為了一個房子, 放棄尊嚴, 放棄自由,放棄夢想.
?
????? 去年也是在這個時候, 朋友問我是不是懷念過去的生活,那時候很迷茫. 可惜這一年的時間過去了, 面對這個問題我還是那么迷茫. 我只能再把去年的答案搬出來
?
??? 我喜歡1990年以前的生活,那時候的社會還比較單純.
??? 我喜歡1995年以前的生活,那時候周圍的人還比較單純.
??? 我更喜歡2000年以前的生活,那時候的我還比較單純.
posted @
2006-12-22 00:41 小強 閱讀(525) |
評論 (6) |
編輯 收藏
?今天突然發現, 鍵盤的空格鍵被磨出了一個坑......
?在02年的時候,剛買電腦不久, 電腦的 ASDW 被磨沒了, 那時候成天打游戲, 尤其是FIFA.
?過了一兩年, ALT+S被磨的很多, 那時候聊QQ比較多.
?今天發現, 空格被磨出了坑, 看來平時寫代碼和QQ比較多
?其次被磨的比較多的是 < 鍵 , 是因為最近HTML比較多. 接下來就是ctrl , 回車, C, V 三個鍵, 寫代碼的幾個經典按鍵都有非常明顯的磨痕.
?還有左面的shift, ctrl , alt雖然沒有嚴重磨損, 但明顯要比右面的功能鍵干凈, 是因為寫代碼時, 我習慣使用左面的功能鍵來搭配快捷鍵的使用.
?
幾年來電腦一直陪在我身邊,? 雖然我不承認自己有所謂的電腦癮或者網癮, 但對電腦和網絡有很深的依賴是個事實. 工作生活中無處不需要電腦.
從按鍵的磨損程度上, 可以看出幾年來我的興趣愛好和工作的變化. 再過幾年, 又會是哪個鍵被磨平呢?
但愿N年后再發現有新的磨損組合時, 我依然能像5年前那樣開心的坐在電腦前面
posted @
2006-12-04 22:55 小強 閱讀(454) |
評論 (2) |
編輯 收藏
?????? 剛才看了SeamanWang的文章
http://www.tkk7.com/wanghaikuo/archive/2006/11/09/80054.html
???????想想自己的經歷...........
?????? 現在一聽"能者多勞" 這四個字, 我就煩, 也不知道是哪個SB發明了這個詞, 也許這個詞并沒有錯.
?????? 但是用到項目里, 就全變味了, 就這么簡簡單單的四個字, 就能把人累個半死.
?????? 每次一有任務, 全都堆到我身上.
?????? 經理說你是高手, 這活太急了, 只能交給你. 然后就什么都不管了, 反正每個月的工資數都是定好的,?能怎么使喚就怎么使喚了.
?????? 同事說: 你是高手, 這種活我們干不了, 只能交給你. 然后就在旁邊聊天的聊天, 看小說的看小說. 到了下班時間, 大爺似的拍拍屁股就走了, 留下我一個人拼死累活的加班.?
???????少給我戴高帽子, 誰也別裝傻, 項目組里那么多人, 什么緊急項目非得壓在我一個人身上.?
?????? 少給我戴高帽子, 誰也別裝傻, 覺得自己不是高手, 就多干點活, 少看小說
???????
???????一直很奇怪, 每次路過同事電腦前時, 他肯定是在看小說, 聊天, 看網頁.? 最無聊的時候就是殺毒, 然后兩眼呆呆著盯著殺毒軟件的進度條..........
??????
??????? 去TMD高手, 我不是高手.
posted @
2006-11-09 13:40 小強 閱讀(994) |
評論 (10) |
編輯 收藏
????? ?看到這么多人點擊我的博客,?我很欣慰呀.?
?????? 大家可能有不認識我的,我是京城IT業的一個小字輩,?混到今天確實很不容易.?我是從打字員做起的,打字,?復印傳真, 業務咨詢...
?????? 剛入行的時候,?先是學了一段VB,后來學過JAVA,?現在正在研究ruby.
?????? 經歷過十冬臘月大雪紛飛,也經歷過大雨傾盆.?有一年上班天寒地凍大雪鋪路,學院路上連條狗都沒有.?我在雪地里騎著自行車,吭哧吭哧了一個半小時才到公司.?然后想起來今天是周日不上班.? 這么艱苦的日子也有過. 但是我也堅持到了今天.
posted @
2006-11-08 23:03 小強 閱讀(1126) |
評論 (6) |
編輯 收藏
轉自:http://mailboxpublic.googlepages.com/ubuntu%E6%98%AF%E6%80%8E%E6%A0%B7%E7%BB%83%E6%88%90%E7%9A%84
這篇文章在互聯網上被廣泛轉載,但是很多都不完整,誤導新手。同時有許多人根本不尊重作者的辛勤勞動,沒有給原文署名。因此,我把它放到googlepages來,作為正式的文章。如果有商業用途,請聯系本人:yulewang \at gmail \dot com
?[轉載請保持原樣,請勿擅自修改,以免誤導新手]
yulewang 翻譯
整理
二十一世紀到了,每個人都強調自己的個性,于是一種叫做DIY的東西悄然興起。
操作系統作為全人類智慧的結晶,自然DIY起來難度極大,因而DIY出一個操作系統成就感絕對比買宜家的東西的成就感大。
為了不至于從頭開始編寫一個操作系統,我們當然把采用現成的操作系統作為一個底線。
當然,我們可以通過LFS讓我們爽到底,但是,能夠做到LFS的人可真的是鳳毛麟角。而且更重要的是LFS簡直在挑戰我的忍耐程度。
我的這篇文章,教大家如何DIY一個自己的ubuntu發行版。在非常節省時間的情況下,達到耍酷的目的。
就好比LFS一樣,我們需要一個創作基地。我們首先建立一個變量。建立這個變量的好處很明顯,即使你不用~/diy_ubuntu這個目錄,一樣可以照著這個文章繼續做下去。
$ export WORK=~/diy_ubuntu
$ mkdir -p $WORK
然后我們把光盤鏡像文件掛到/mnt
$ sudo mount -t iso9660 -o loop dapper-live-i386.iso /mnt
$ cd $WORK
復制文件光盤文件
$ mkdir ubuntu-livecd
$ cp -a /mnt/. ubuntu-livecd
$ chmod -R u+w ubuntu-livecd
$ sudo umount /mnt
由于光盤中包含了很多windows下面的自由軟件,我們來把不必要的文件刪除。當然你可以保留。
$ rm -rf $WORK/ubuntu-livecd/programs
把光盤中的壓縮文件掛起來,這個樣子以后你可以在$WORK/old目錄中看到一個完整的linux操作系統的目錄。
$ mkdir $WORK/old
$ sudo mount -t squashfs -o loop,ro $WORK/ubuntu-livecd/casper/filesystem.squashfs $WORK/old
我們建立一個2GB大小的文件系統,然后把這個文件當作一個設備文件格式化,結果系統給出了一個警告,別理會它,選擇是就是。
$ sudo dd if=/dev/zero of=$WORK/ubuntu-fs.ext2 bs=1M count=2147
$ sudo mke2fs $WORK/ubuntu-fs.ext2
然后我們把這個空文件系統掛起來。
$ mkdir $WORK/new
$ sudo mount -o loop $WORK/ubuntu-fs.ext2 $WORK/new
復制linux操作系統的文件.由于我們事先得到的linux是壓縮的,所以我們把它解壓了。
$ sudo cp -a $WORK/old/. $WORK/new
當然現在$WORK/old就沒有用處了。廢掉它
$ sudo umount $WORK/old
我們首先進入剛才得到的那個操作系統
$ sudo cp /etc/resolv.conf $WORK/new/etc/
$ sudo mount -t proc -o bind /proc $WORK/new/proc
$ sudo chroot $WORK/new /bin/bash
現在你就進入系統了,高喊linux for human beings,大煉ubuntu,想干什么就干什么。
# vi /etc/apt/sources.list #選擇適合你的源
# apt-get update
# apt-get dist-upgrade
# apt-get install 你想裝的軟件
# apt-get clean
.... #更多的配置
最后離開你的那個操作系統
# exit
$ sudo umount $WORK/new/proc
$ sudo rm $WORK/new/etc/resolv.conf
現在你已經回到了你的初始狀態中
把manifest重新整一遍
$ sudo chroot $WORK/new dpkg-query -W --showformat='${Package} ${Version}\n' > $WORK/ubuntu-livecd/casper/filesystem.manifest
然后做一下“磁盤清理”
$ sudo dd if=/dev/zero of=$WORK/new/dummyfile
$ sudo rm $WORK/new/dummyfile
重新壓縮系統
$ sudo rm $WORK/ubuntu-livecd/casper/filesystem.squashfs
$ cd $WORK/new
$ sudo mksquashfs . $WORK/ubuntu-livecd/casper/filesystem.squashfs
你的改動都保存了。現在把$WORK/new廢掉
$ cd $WORK
$ sudo umount $WORK/new
把文件的md5重新算一下
$ cd $WORK/ubuntu-livecd
$ sudo find . -type f -print0 |xargs -0 md5sum |sudo tee md5sum.txt
建立光盤鏡像,命令很長,忍受著點。
$ cd $WORK
$ sudo mkisofs -o ubuntu-new.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -r -V "My Cool Ubuntu Live CD" -cache-inodes -J -l ubuntu-livecd
然后你就可以用iso把光盤燒了
然后你就可以在別人前面耍酷了。最后,王子和公主過著幸福的生活
posted @
2006-10-31 15:58 小強 閱讀(366) |
評論 (0) |
編輯 收藏
Ubuntu Live CD 個性化定制全程圖解
轉載,未測試
個性化定制最為明顯的好處就在于能夠真正適合自己的需要。想要個性化定制 Ubuntu 的 Live CD 嗎?想要體驗 DIY 的樂趣嗎?本文將以圖解的方式全程為你提供指導與幫助。
選擇工具
“工預善其事,必先利其器”。選擇一款合適的定制工具,對于普通用戶來說尤其重要。這兒有兩種 Ubuntu Live CD 的定制工具:UCK 和 Reconstructor。前者可以增刪 Live CD 中的語言包和應用程序,后者能夠提供從 GNOME 桌面到應用軟件的多方面定制功能。本文選擇 Reconstructor 作為 Ubuntu Live CD 的定制工具,讀者朋友也可以自行嘗試 UCK。
前期準備
在正式定制之前,應該做好這些方面的準備工作:制作或收集需要用到的定制資源,如主題、壁紙、模塊等等;Ubuntu Live CD 的原始 ISO 映像(Reconstructor 支持 6.06 及 6.10);從 Reconstructor 官方網站下載定制程序;安裝 Reconstructor 的使用依賴,如 squashfs-tools、libbogl-dev、mkisofs 等(詳見 readme.txt 文件)。
定制過程
執行程序
tar xvzj reconstructor-2.0.tar.gz
cd reconstructor-2.0/
sudo python reconstructor.py
Reconstructor 在啟動時會檢查使用依賴,并提示用戶安裝未完成的依賴。接著會進入歡迎頁面。

創建工作目錄
Reconstructor 默認會將工作目錄創建于 /home/username/reconstructor,另外分別創建 remaster、root、initrd 三個子目錄。工作目錄僅在首次使用時才有必要創建,如果是再次使用,則無需創建。因為我們是初次使用,所以勾選其中的三個選項。然后,在 Live CD ISO Filename 選擇先前下載好的原始 Ubuntu Live CD ISO 映像文件。

定制引導屏幕
引導屏幕這部分可以定制 Live CD Splash 圖像、引導選項文字的顏色、以及 Usplash 圖像。需要注意是,Splash 圖像要求是 pcx 格式,而 Usplash 則是編譯好的 so 文件(對于 Ubuntu 6.06,Reconstructor 支持直接生成)。設置后,點擊“Apply”按鈕以便生效。

GNOME 桌面的定制
GNOME 桌面包括登錄屏幕、桌面、主題三部分的定制。其中,在登錄屏幕中可以設置 GDM 主題、Splash 屏幕、背景顏色;桌面部分能夠定制壁紙和字體;在主題中可以選擇 GNOME 桌面所用的主題及圖標。對于這些定制,用戶既可以選擇系統自帶的,也可以使用自己的。從 GNOME LOOK 上可以找到這方面的豐富資源。

定制 Apt 源
通過定制 Apt 源,就能夠直接在 Live CD 中使用這些擴展的源,以便安裝需要的應用程序。在你需要使用的源前打勾選擇即可。對于其他的源,可以輸入到下面的文本框中。

優化啟動及關機過程
在啟動部分,可以選擇在系統啟動時需要運行的守護進程,如 ppp、laptop-mode 等。同時,Reconstructor 也能夠對關機過程進行優化。

設置用戶及口令
切換到 Live CD 選項頁,對在 Live CD 中要用到的用戶、口令及主機名進行設置。

定制應用程序
Reconstructor 的模塊功能可以讓用戶按需定制應用程序,如安裝程序、刪除程序等。普通用戶可以使用 Reconstructor 提供的現有模塊:包括圖像處理軟件、生產力軟件、多媒體軟件、網絡軟件、服務器軟件、及其他軟件等。如果現有模塊不能滿足你的要求,那么可以通過輸入安裝或刪除命令來實現對于軟件的定制。

構建選項
注意以上每一個部分的定制都需要點擊“Apply”按鈕。現在按“Next”進入構建選項頁。在此設置 Ubuntu Live CD ISO 文件的保存路徑、名稱、架構。如果所有的都沒有問題,那么繼續下一步吧。

定制結束
此時,需耐心等候一陣,直到看到 Finished 頁面。

最后測試
在 Ubuntu Live CD 定制結束后,先不要忙著刻盤,在虛擬機中測試一下,如果確認沒有問題,那么就燒錄并與朋友分享吧
posted @
2006-10-31 15:48 小強 閱讀(1008) |
評論 (0) |
編輯 收藏
轉自:http://blog.rubypdf.com/2006/10/20/install-ruby-on-rails-lighttpdsqlite3-and-mongrel-under-ubuntu/
nothing but the script I used:
#install Mysql
apt-get install mysql-server
#install Ruby and relative
apt-get install irb libdbm-ruby1.8 libgdbm-ruby1.8 libmysql-ruby1.8 libmysqlclient14 libopenssl-ruby1.8 libruby1.8-dbg mysql-common ri ri1.8 ruby1.8-dev
#install rubygems
wget http://rubyforge.org/frs/download.php/11289/rubygems-0.9.0.tgz
tar zxfv rubygems-0.9.0.tgz
cd rubygems-0.9.0
ruby setup.rb
gem update –system
#install Rails and dependencies
gem install rails –include-dependencies
#before install Mongrel,
apt-get install install build-essential #we need it to compile mongrel and Sqlite3
#intall Mongrel
gem install mongrel –include-dependencies
#install Sqlite3
apt-get install sqlite3 swig libsqlite3-ruby libsqlite3-dev
gem install sqlite3-ruby #compile this need libsqlite.h
#install Lighttpd
apt-get install lighttpd
some useful link
http://mongrel.rubyforge.org/docs/lighttpd.html
http://fo64.com/articles/2005/10/20/rails-on-breezy
http://scottstuff.net/blog/articles/2006/07/23/typo-installer
posted @
2006-10-30 17:09 小強 閱讀(1055) |
評論 (2) |
編輯 收藏
轉自:http://www.urbanpuddle.com/articles/2006/06/10/install-ruby-rails-on-ubuntu-dapper-drake
This is a small guide I wrote up to installing Ruby on Rails on Dapper Drake. It covers getting lighttpd running to support both rails and php which will be useful to anyone who likes to use phpmyadmin along with ruby on rails. It's similar to the article I wrote earlier for Arch Linux except modified for Ubuntu's Dapper Drake release.
1. Make sure the universe repository in /etc/apt/sources.list is uncommented:
deb http://us.archive.ubuntu.com/ubuntu dapper universe
deb-src http://us.archive.ubuntu.com/ubuntu dapper universe
2. Make sure you are up to date:
sudo apt-get update
sudo apt-get dist-upgrade
3. Install the ruby base packages:
sudo apt-get install ruby ri rdoc mysql-server libmysql-ruby
4. We need to grab the latest ruby gems from rubyforge. You may need to modify this command if a version after 0.90 is available.
sudo wget http://rubyforge.org/frs/download.php/11289/rubygems-0.9.0.tgz
tar -xvzf rubygems-0.9.0.tgz
cd rubygems-0.9.0
sudo ruby setup.rb
5. Now let's install Ruby on Rails!
sudo gem install rails --include-dependencies
6. We have Rails but we still need lighttpd and mysql. I've thrown in PHP too in case you want to manage your database with phpmyadmin like I do. Let's grab all the packages, shall we?
sudo apt-get install lighttpd php5-cgi php4-cgi php5-mysql php5-mysqli php4-mysql libfcgi-dev libfcgi-ruby1.8
7. Modify your /etc/lighttpd/lighttpd.conf file to set up your domains. Be careful because by default Ubuntu maps all the images so that they are taken from /usr/share/images instead of your/rails/root/public/images so if you're wondering why your rails app is working but your images aren't being displayed this is why. You can take out the offending code in your lighttpd.conf or just put your images in /usr/share/images.
8. Time to enable some modules for lighttpd. There are others that you may need but they should be enabled in your lighttpd.conf. Personally, I'm not a fan of enabling modules two different ways but I'm sure this will get cleaned up eventually.
sudo /usr/sbin/lighty-enable-mod fastcgi
sudo /usr/sbin/lighty-enable-mod proxy
sudo /etc/init.d/lighttpd force-reload
9. Let's make sure that there are no errors by stopping lighttpd and then starting it manually:
sudo /etc/init.d/lighttpd stop
sudo lighttpd -f /etc/lighttpd/lighttpd.conf
If you have errors there make sure you take a look and try to address them! The output you see will be your best bet in getting help from somebody on one of the forums.
10. Install some basic gems you might need to run your rails app:
sudo gem install actionmailer
sudo gem install activesupport
sudo gem install actionpack
sudo gem install actionwebservice
And now you should have a new, shiny, ready to go Ubuntu Dapper Drake server just waiting for your PHP or Ruby on Rails applications!
posted @
2006-10-30 17:07 小強 閱讀(396) |
評論 (0) |
編輯 收藏
摘要: Capistrano: Automating Application Deployment
Application deployment is one of those things that becomes more and more complicated as the scale of your application increases. With just a single box... 閱讀全文
posted @
2006-10-30 14:00 小強 閱讀(910) |
評論 (0) |
編輯 收藏
摘要: A Guide to Testing the Rails
Intended Audience
This article is for fellow Rubyists looking for more information on test writing and how that fits into Ruby On Rails. If you’re new to test writin... 閱讀全文
posted @
2006-10-30 14:00 小強 閱讀(832) |
評論 (0) |
編輯 收藏
前幾天在我的blogjava上和CSDN上發過一個帖子: 說一說編程惡習.
http://community.csdn.net/Expert/topic/5091/5091887.xml
http://www.tkk7.com/uiiang/archive/2006/10/16/75502.html
幾天的時間收到了很多網友的回復.
我發這個帖子時, 并不是想討論技術問題, 也不是為了抱怨, 只是想以另一種方式, 來提醒一下編程的初學者, 和一些所謂"經驗豐富"的老程序員. 因為我發現傳統的寫一篇編程規范的文檔, 似乎并不能引起大家足夠的重視. 垃圾代碼仍然一出再出.
我在帖子中所說的問題, 也并不需要太多的技術經驗和深厚的專業知識. 都是一些隨手而來的小問題, 解決這些問題的方法只需要工作時認真負責, 多動動腦子就行了.
在帖子的回復中, 有幾個回復讓我很在意:
==================================================================
錢給的太少,能對付過去就完了
社會上什么行業不是這樣,能對付就行了 。
要改變這種情況, 那還要上邊有改變的想法,改善一下工作環境,等等。 。
老板們吃的是良心,拉的是思想
我們那么認真干啥
=====================================================================
我對這種說法非常的不贊同, 代碼寫的再差, 老板還是要賺他的錢, 該被剝削還是跑不了.
可如果把這個當成不認真工作的理由, 那就只能永遠自己吃虧了.
如果總是這么不認真工作, 不養成良好的工作習慣, 自已思考的習慣, 那就永遠不能進步
只能當一輩子代碼民工, 一輩子給這種垃圾老板打工.
要明白一點, 好的編程習慣, 思考能力, 都是在平時工作當中, 一點一滴的積累起來的.
并不是當有人給了你一個好的工作環境后, 想變出來就能立刻變出來的.
老板對不起咱們是另一回事, 但自己是不是能對得起自己, 那就看你自己的想法了
態度決定一切
posted @
2006-10-30 10:28 小強 閱讀(2023) |
評論 (10) |
編輯 收藏