A. JAXIS的手錶好不好
蠻不錯啟敗啊,我又一塊jaxis的表,十悄薯顫多年前在日本買的手槐,到現在還在用,可以玻璃被我打碎了,不過沒關系,總能換嗎,,,
B. 程序化購買的優勢在哪裡
你好,程序化購買就是自動化流程購買廣告位流量,具有單個受眾的實時購買特性,相對於傳統的人工售岩穗賣方式,程序化購買長指旅橋的是通過自動化流程購買廣告位流量。
相對於人工售賣程序化購買的優勢有:1.自動化;2.實時購買;3.單個受眾購買。
國內出現了參差不齊的60-80多家DSP平台,但粗鎮卜是建議你跟Trading Desk(媒體交易平台)咨詢,因為DSP其實主要是技術開發。對於交易、投放和優化效果而言還是Trading Desk比較在行。可以看看像國內第一家Trading Desk創略Chinapex,或者像Xaxis, AOD等。
C. 如何有效的幫助電商增加網路訂單量
如果是在電商平台上的品牌旗艦店推廣,主要分站內和站外。站內就是電商運營推廣了。站外可以考慮效果比較好的程式化媒體投放。可以咨詢下專業程式化媒體交易平台,像創略Chinapex,Auen,Xaxis等。
我了解到的一家agency有下單給Trading Desk創略,當然同時也會把單子給到一些DSP。感覺如果單從 CPM,CPC去比較的話,應該說是沒有太大區別。但是要從效果上去看,Trading Desk較DSP會有定位上的不同,在效果上下的功夫會更多。了解下來創略一些行業的單子在CPA效果上會做得更好。
原因有:Trading Desk在優化效果上的人力配置比DSP要多得多,花的工夫更多,自然效果好可以理解。;一些DSP主要核心是技術開發,希望能夠做到市場份額然後賣掉,起量是關鍵。相較而言,Trading Desk更貼近客戶一端,必須保證客戶的投放效果從而達成長期合作。總體感覺Chinapex創略的效果是不錯的。其在資源等其他方面的布局也會更全面更早一些。
權重和關鍵詞在的排名有關系網站 IP 在 0 的時刻,權重是 0; 網站 IP 在 1——100 的時刻,權重是 1; 網站 IP 在 100——500 的時刻,權重是 2; 網站 IP 在 500——1000 的時刻,權重是 3; 網站 IP 在 1000——5000 的時刻,權重是 4; 網站 IP 在 5000——1 萬的時刻,權重是 5; 網站 IP 在 1 萬——10 萬的時刻,權重是 6; 網站 IP 在 10 萬——20 萬的時刻,權重是 7; 網站 IP 在 20 萬——100 萬的時刻,權重是 8; 網站 IP 在 100 萬以上,權重是 9. 以上所說的 IP,是從來的 IP。權重是按指數流量來劃分標準的,所以當你希 望快速晉升你的網站權重, 那麼首頁晉升你全部網站的指數流量, 只要流量上升了, 那麼權重天然就會上升
1、新使用者安裝:可以在原來基數使用者之上設定一個數值。
2、新用交易轉化率:
3、新使用者留存:
4、權重設定:
1)看你公司發展期,如果是早期,可以把重心放在新使用者安裝和新使用者轉化率上。參考權重比例:總分100分,1佔比:50%。2佔比30%,3佔比20%。
2)如果是A輪後,可以把重心放在新使用者安裝和使用者留存上槐帆。參考比例:總分100分,1佔比30%,2佔比30%,3佔比40%
想想作瞎咐為顧客來購物,如果看到店內有琳琅滿目的商品自然可以任由選擇暢游其間,感受購物的樂趣.不斷發現有更喜歡的寶貝如發現新大陸一般驚喜,不識店主真面目,只願身在此店中.
淘寶網店裝修風格有關
店鋪的裝修風格應與所售商品相匹配!比如賣女士精品的店應選比較柔美的店鋪模版,體現其所售商品的屬性.比如賣男士用品的店應選體現剛硬風格的店鋪模版.
個性化裝飾,如:店標\分類\公告\寶貝描述.這類個性裝飾要與店鋪模版風格統一,應突出簡潔、干凈利落,不宜太繁鎖.如果店裝飾效果非常突出,那麼顧客只會贊嘆店很漂亮,卻不是說寶貝很漂亮,這就喧賓奪主適得其反了(當然賣店鋪裝修的例外,因為本來就是賣這的磨明純).區域性裝飾應該體現出品位,細部刻畫得精緻,為寶貝增色.
淘寶網店寶貝陳列有關
相信作為顧客都喜歡逛分類清晰、商品陳列有序的商店,隨手可以輕意挑選到自己喜歡的商品,如果商品雜亂無章只會讓顧客迅速逃離.
商品陳列方法:
首先,"店鋪類目"相當於一本書的目錄,你有哪些精彩的內容就先在這里預告.最好做到細分,比如我店裡是賣床品的,床品首先要分品牌,品牌里又分三件套到十件套、又分印花綉花提花、又分套件芯類毯類、也分兒童類單人用品婚慶類、還可根據季節分.總之,一切為了顧客選購方便,一目瞭然.
其次,網店商品的顯示是根據釋出時間來的,那麼這樣也可以控制商品陳列的次序,做到每一時段也就是在店內顯示的版面要每類商品交叉錯落有致、顏色由深入淺、價位高低起伏.好處在於:由於每個顧客喜歡的風格不同、喜歡的顏色不同、承受的價位不同.避免看到同一版面都是相類似的東西,錯以為都一樣了沒有她想要的寶貝.
陳列也是一門藝術,陳列好了可以緊緊抓住顧客的心,銷量迅速提升.
店主服務有關
服務是老聲長談了,人者見仁志者見智.
市場優勢有關
市場優勢包括產品優勢和價格優勢.
商品品質無憂是關鍵,優質的商品自會有顧客的口碑做宣傳,那麼後來的顧客看到前面有人買了說效果很好,自然也就放心購買您的寶貝.
價格不是說越低越好,合理的定價是關鍵.合理的定價是:比市場價低這樣才能突出網路的優勢,和同類商品相差不大取其中間值(價格太低顧客認為質量估計有問題,價格太高感覺又不劃算)提倡合理的利潤,共同促進市場的繁榮.
淘寶網店寶貝活動有關
不是來寫心情故事的,是來發布店內最新優惠活動的.優惠活動促銷活動能為提升成交量推波助瀾,商場總能抓住顧客的心理,他們那些小優惠總能引起顧客更大的購買慾望.同樣網店也要不時推出各種優惠活動,一是與顧客拉近距離,二是逐進銷售.促銷方法比如送禮比如折扣,八仙過海,自己各顯神通了.如果促銷得當,銷量將猛漲
主要從訂單、產品、使用者、購物車、營銷活動、站內搜尋、頁面、路徑等九個角度
,Topbox分析網站運營資料,幫助廣告主發現訂單背後規律,從而制定更好的營銷和推廣策略。
網上找客戶技巧與方法很重要,不是網頁做好了就萬事大吉了,我們的後續工作非常重要,在做好相關的產品介紹,產品資訊釋出等工作以外,還要做好以下幾方面的工作:1.准確把握好客戶對產品搜尋的習慣用語,搜尋方式等----特別是關鍵字的選擇要把握好這很關鍵,我認為可以選擇覆蓋面比較廣的關鍵字進行競價,這樣會讓客戶更快的找到你.2.要主動尋找相關的客戶進行溝通,客戶是找來的而不是等來的,「守株待兔」碰巧撞上的畢竟還是少數,要想更多更快的找到我們的目標客戶就要主動出擊,可以利用貿易通主動尋找客戶交流,也可以利用電子郵件與留言與客戶溝通,必要時也可以做電話跟蹤等相關的工作.3.與客戶的交流是一種藝術,淵博扎實的業務學識和廣闊的視野更能贏得客戶的信任與尊重, 我們可以運用一些幽默的語句讓客戶在聽我們介紹產品的同時既調節了氛圍,又加深了客戶對自已的印象,同時也增加了客戶的信任度.因為與客戶在網路上的溝通不同於現實的實際接觸,掌握一定的語句技巧與用詞可以讓客戶感到親切友好的同時拉近我們與客戶之間的距離.這就是與客戶交流的第一印象,記住做好這第一次的溝通很重要.我們要做到找准物件.切入主題.坦誠相待.目的明確.命中要害才能達到交流的目的4.要持之以恆堅持競價持續排名前三.這樣既能彰顯公司的實力,又能增強客戶對我們的印象.網上展現的產品或服務應以客戶為中心。只有這樣,我們才有機會與潛在客戶進行有意義的溝通,進而影響他們。另外,及時地回復每一位客戶的每一個問題,您會贏得信任和尊重。同時,在網上我們不僅要提供好的產品或服務,而且也應向客戶提供多種選擇機會。有付出才會有回報----這是一個人人都明白的道理.切記:網上生意不同,產品種類各異,其潛在的市場也不同。網路銷售的技巧也有許多種,你所花的時間和你所做的努力會直接影響到你的銷售業績.俗話說:商機無時不在,機會處處都有,就看我們怎麼把握了.我們的經驗與技巧是在實踐中找到的,我們要有不達目的永不言棄的精神與態度才能實現我們的銷售目標.希望對朋友有所幫助,祝生意興隆 檢視原帖>>
樓上這些都不是理想的方法,最好的方式是利用小號給自己大號輸送訂單。假如你有50個小號,每天就有幾百的訂單,相信這幾百個訂單能有幾個是你需要的訂單吧?訂單是獲得金錢的最好方法了
可以拓展外賣渠道,除了三大外賣平台,還可以搭建微信外賣,微信小程式外賣等,廣州餐道在這方面已經有了豐富的經驗,建議可以理解一下。
理論上是可以的,但網路營銷畢竟有利有弊,如果能發揮極致,可以在一定程度上提高利潤
D. 請教視力驗光報告中的AXIS和ADD是什麼意思
左好廳雹眼實際度數是:+0.50×92度。這個散光度,伏清是可以用+0.25代替的。為了省事,實際上就買一副250度老花鏡,就可以了。這樣不但解決了看書看報的問題,而且也比較經濟。
散光軸最大值是180度,002是指2度。ADD:是近用附加鏡度(俗稱下加鏡友帆度).
E. 女血清停效果怎麼樣有人服用過女血清停嗎月經淋漓不止怎麼辦香港什麼地方能買到女血清停
你好,我只知道,救人一命勝造七級浮屠,欺騙人一個會遭報應!我也知道知恩報恩。我是內蒙古赤峰市的,我姓綦。只是離河北太遠,暫時不能親自報恩,但是有機會一定會親自答謝的,也了了我一輩子的心願。我只是把我的機遇,也算醫緣吧,在這里說一下。 我也是個女人,深能感受功血這個病對我帶來的痛苦,自己經歷過,只有自己知道啊!整天流血,有多少血流啊!整天太受罪了,不能工作,孩子也照顧不了,心理壓力多大啊!各大醫院治療了三年,中葯西葯啥法都使了,都沒有治好,老公很心疼我,就是看著我受罪,他也無奈! 若是有半點方法的話,誰會在網上找醫生看病啊!也是怕被一些不好的醫生欺騙了!主要的是現在的好醫生真的不多啊!這是我的感覺,不知道大家是怎麼想的! 在我失去信心,走頭無路的情況下,在網上查功血治療方法的無意間,查到了徐斗公醫術。看到徐醫生論述治療功血的文章寫的和我的情況一樣,就想辦法聯繫到了徐醫生,沒有想到在交談中,對我的病哪么負責,百問不厭,哪么的耐心,總之給我的感覺,是我遇見很關心病人的好醫生。 因為我的病很麻煩,我問什麼,徐醫生都不嫌麻煩,而且哪么的有耐心,有時候我都不好意思了,醫院的醫生都沒有這樣對待我。我的感覺,是個不錯的醫生,我就下定決心,接受治療了。真的沒有想到,好幾年的功血,我治療吃葯三年都沒有好,徐醫生給我治療了20天,把我的出血全部止住了,我有卵巢囊腫,附件炎,白帶還有血絲,經常腰酸小腹難受,這些症狀也沒有了,我的精神感到特別的輕松,老公看見我說簡直換了一個人似得,真是無病一身輕啊,葯就是難喝了點,老公也勸我,找到一個好醫生,不容易的。就讓我多堅持鞏固,開始收到葯的時候,說實話,開始的時候心理還有點不放心,可是服用後連我都沒有想到的效果特好,對自己出滿了信心。40天把我幾年的功血給徹底治好了,現在月經周期很正常,身體很好,臉色也紅潤了,是徐醫生救了我,真的無以為報。 我是信佛的,希望好人一生平安。我把我的情況寫在這里,希望有和我一樣,正在受罪的女性以幫助。我是內蒙古赤峰市人,姓綦。在我們醫院檢查做的彩超,彩超顯示子宮內膜不厚0.3,宮內可見節育器回聲,位置正常,雙側卵巢發育正常,陶氏腔未見積液,子宮宮頸管旁見直徑0.6CM囊腫。 我於2009年得病,月經干凈了之後就一直出血,後來趕緊找了一名中醫開始吃中葯,就一直吃著,每個月都得去吃,不吃就來月經不痛快,肚子疼賬來事時候於著不來,吃葯才來,一個月吃6副左右中葯,反正就得靠中葯維持,不吃就不來,還沒時候好,後來吃的煩了,就停了兩月左右就又犯了,接著又吃了12副中葯,又打打的縮宮素才好的。 臘月我又吃了9副中葯,因為要去北京過春節,又讓醫生給配了一副料葯,在北京沒吃,因為沒來月經,在家來過了,正月初八從北京回來的,十一就又不行了,出血淋漓不止!又吃的葯.吃了幾副葯後就接著吃料葯,好了倆月又犯了,最後去找給我看病的中醫吃中葯都不管用了。 後來還是血流不止,不過量不多,就又換了一個醫生,她懷疑說是環的事,就又把環摘了,流了5天的血還沒有見少,就找醫生問了,讓吃獨一味膠囊,吃了一盒血止住了兩天。緊接著就是月經周期來了,先也是月經不來,後來醫生讓吃益母草顆粒,吃了幾代後血多了,就停了,這就一發而不可收拾了!出血多了,服中葯,打縮宮素都不管用了! 最後決定去市裡看看,市裡檢查是子宮腺肌症,是計生服務站給定的,附屬醫院就是卵巢右側有個囊腫,那的醫生也要觀察一下再給做手術,由於老公上班忙,所以我就決定回來治療了,回來後做的清宮手術,吃的替硝唑,炔諾酮,按第一說明吃的,我走著去接孩子,路上宮頸疼的就不行了,回來好一些了,乳房還脹痛,早晨就來血水了,平時呆著肚子脹好像有氣似的,往上打嗝.在我們做的子宮內膜病理是增殖期子宮內膜,子宮內膜炎,子宮內膜息肉,醫生又讓吃的婦樂顆粒,吃了一盒停了,在市裡就給用的止血敏,還輸的消炎葯,要給下宮腔鏡,我沒讓,就回來了,在那裡是一天給做一樣,最後才給下結論呢,醫生說這次不給切除,下次再來血止不住就切除子宮。 出血不多,血淡紅色,有時褐色,有血水量不多一點。來了月經後淋漓不凈,吃了宮血寧止血葯少了,干凈幾天又出血,來了就沒時候好,吃什麼葯都不管用!可那啥時候是頭啊,我的宮頸內檢肥大,有時候還疼! 我的情況就是這樣的,多虧了遇見徐斗公醫生,讓我徹底康復了,給了我做女人的幸福,不然我的病還不知道啥時候是個頭呢!我只能說這些了,希望對一些像我這樣的女性有幫助,也希望像我這樣曽經受罪的女性早日擺脫功血帶來的傷害。
F. 左眼PWR1.75 CYL0.75 AXIS160右眼PWR1.75 CYL1.75 AXIS030配多少度的隱形眼鏡
左眼散光有點高了,建陸族議定製那種專門帶散光度數的隱形眼鏡,因為市場上喚悉和賣的都是成品隱形眼鏡,而成品隱形眼鏡都是只有近視度數和盯的。
如果買成品隱形眼鏡,左眼帶200度或是225度,右眼帶250度,但右眼的效果帶上去不是很好。
G. Axis I diagnoses 啥意思
axis diagnoses的意思是軸診斷。axis是軸或地軸的意思。
地軸,又稱地球自轉軸,是指地球自轉時所繞的那根假想的軸,北端與地表的交點是北極,南端與地表的交點是南極。
地軸通過地心,連接南、北兩極,和地球自轉軌道面——赤道面垂直。
地軸空間指向:其北端始終指向北極星附近。
不管地球在軌道的哪裡,其北極始終指向北極星附近,南極也一樣,根據牛頓萬有引力定律,其上方或者下方可能有一個星體吸引住了地球的南極或北極。
地軸是地球自轉的假想軸。地球始終不停地繞著這個假想的軸運轉。故又稱地球自轉軸。閉叢這個軸通過地心,連接南、北兩極,與地球軌道面的夾角為66°34′。地軸正對著北極星。通過地心並與地軸垂直的平面稱赤道面。
地軸在地球中的位置並不固橘辯定,而有微小的移動,造成「極移」。其延長線為「天軸」。地軸同地面的兩個交點為「地極」。天軸同天球的兩個交點為「天極」。
母音字母a在重讀閉音節里發短元轎伍櫻音/æ/的音,發音時,舌端靠近下齒,舌前部抬高,舌位低,是四個前母音中舌位最低的,但開口最大的一個,屬於短母音,但是,在實際發音中有相當的長度,牙床介於半開和開之間,不圓唇。/æ/這個音出現在字首、字中位置。如:
mat 墊子
map 地圖
bag 袋子,包
cat 貓
hat 寬邊的帽子
fan 扇子,風扇
bat 球拍
apple 蘋果
希望我能幫助你解疑釋惑。
H. 我9月份買的天彩750機器,在前幾天開始頻繁出現InternalERROR;ShutdownCarriageAxisFailure這個英文字母
和皮帶輪沒有關孫手系,和皮帶彈簧有關系,如果皮帶過松請把皮帶彈簧拉長,還判培有主板也掘凱唯可能會引起這方面的原因。
I. anylogic人流量統計折線圖縱坐標為啥不是人流量
在AnyLogic中,人口流量統計折線圖的縱坐標默認情況下是顯示「平均數」,而液悉不是實際的人口數量。
當您使用人口流量統計功能時,AnyLogic會自動對數據進行統計敏埋悶和平均處理,以便更好地展示數據趨勢和波動。因此,在人口流量統計折線圖上,默認情況下顯示的是每個時間段內的平均人數,並非實際的人數。
如果您想要查看實際的人口數量數據,可以通過調整圖表屬性來更改縱坐標顯示方式。具體方法如下:
1. 在AnyLogic中打開您的模型並進入場景視圖。
2. 選中要調整縱坐標顯示方式的人口流量統計折線圖。
3. 右鍵單擊該折線圖並選擇「Properties」選項。
4. 在彈出窗口中選擇「Data」選項卡。
5. 在「Data」選項卡中,找到並單擊「Y-axis」設置區域下拉菜單旁邊的按鈕,並選擇「Value」選項即可將縱坐標切換為實際值。
這樣就能夠查看到實際的人口數量了。不過需要注意的是,在實際應用場景中,對於大規模的人群活動,可能存在著難以精確測算、出入房間等其他影響因素,導致實際觀測到的數橋彎據與模擬預測結果有所偏差,需要綜合考慮多種因素來進行分析和判斷。
J. 有誰知道如何安裝配置安全的freeBSD還有php.ini怎麼配置
我的FreeBSD5.3配置筆記(相同於5.4\答彎耐6.0)
接觸FreeBSD時間不長,我發現配置FreeBSD對於象我這樣的新手還是很有些困難,經過幾天的研究取得了一點進展,現在我的配置方法寫出來希望新手能少走一些彎路。
1.安裝完成配置xorg,命令如下:
#Xorg -configure
這時,當前目錄下就多了一個xorg.conf.new的文件,把它cp到/etc/X11/下:鬧圓
#cp xorg.conf.new /etc/X11/xorg.conf
然後,編輯xorgcfg -textmode,修改一下屏幕的解析度.
2.啟動gnome
在用戶主目錄下創建.xinitrc文件,加入以下內容:
exec gnome-session
#startx 即進入gnome
3.啟動KDE
方法1:
在用戶主目錄下創建.xinitrc文件,加入以下內容:
exec startkde
方法2:
修改一下/usr/X11R6/1ib/X11/xinit/xinitrc文件
拉到文件最後...看到..twm了嗎...從這里起..後最後前面都加#吧..
然後加上一句:
startkde
方法3:
直接輸入
# echo "/usr/local/bin/startkde" >> ~/.xinitrc 就行了
4.打開聲音
修改/boot/defaults/loader.conf
將下面兩項的NO改為YES
sound_load="NO"
snd_driver_load="NO"
5.漢化圖形界面
1.安裝kde-i18n-zh_CN:
#cd /usr/ports/chinese/kde3-i18n-zh_CN
#make install clean
2.安裝字體
在/usr/X11R6/lib/X11/fonts/下建立TrueType目錄
將windows下的SIMSUN.TTC復制到TrueType目錄
雙擊SIMSUN.TTC,字體就安裝好了
3.更改語言環境為中國,簡體中文
4.在KDE的控制中心》外觀和主題》字體 中修改字體為SIMSUN
6.安裝fcitx輸入法
1.通過ports安清春裝fcitx
#cd /usr/ports/chinese/fcitx
#make install
2.修改~/.xinitrc,添加:
export LANG=zh_CN.eucCN
export LC_CTYPE=zh_CN.eucCN
export XMODIFIERS='@im=fcitx'
fcitx&
exec startkde
6.#qtconfig
然後選擇-->Interface--->XIM Input Style 選Over the Spot(上面的復選框也選上)-->File--Save
7.掛載windows分區並支持中文文件名
1.建立掛載點,在/mnt/下建立文件夾C,D,E,F
2.修改/etc/fstab文件,加入windows分區,並把分區掛載到剛才建好的目錄上,設置許可權為讀寫,語言為中文並自動掛載
/dev/ad0s1 /mnt/C msdos rw,-L=zh_CN.eucCN,auto 0 0
/dev/ad0s5 /mnt/D msdos rw,-L=zh_CN.eucCN,auto 0 0
/dev/ad0s6 /mnt/E msdos rw,-L=zh_CN.eucCN,auto 0 0
/dev/ad0s7 /mnt/F msdos rw,-L=zh_CN.eucCN,auto 0 0
8.激活滑鼠滾輪
修改/etc/xorg.conf
在"Mouse"中加入
Option "ZAxisMapping" "4 5"
保存推出,重啟X。
9.調整屏幕偏移
開個終端窗口運行xvidtune,調整好之後現不要退出,點一下那個「Show」按鈕,終端窗口中會顯示幾行類似於這樣的信息:
hsync range 0: 31.50 - 48.50
vsync range 0: 40.00 - 70.00
"1024x768" 65.00 1024 1048 1184 1344 768 771 777 806 -hsync -vsync
打開/etc/X11/XF86Config或者xorg.conf文件,找到Section "Monitor"段,在EndSection前面加入一行:
# 這里填入上面顯示的第3行信息,前面加上ModeLine
ModeLine "1024x768" 65.00 1024 1048 1184 1344 768 771 777 806 -hsync -vsync
保存退出,重啟X。
FreeBSD配置:
更新FreeBSD
完成了安裝、配置,FreeBSD基本上就算裝完了。不過,目前為止沒有哪個通用操作系統能夠保證「bug-free」,FreeBSD也一樣。在重新啟動之後,我們需要做一些調整;並且,通過重新配置內核,我們可以得到一個更小、更快的操作系統。
第一步要做的是同步源代碼。FreeBSD是一套開放源代碼的操作系統,它的全部源代碼都可以通過cvsup與中央cvsup伺服器,或它的某個鏡像同步。
cvsup是一個可選的package,同樣的,它也可以從ports裡面安裝(/usr/ports/devel/cvsup和 /usr/ports/devel/cvsup-nogui)。考慮到許多應用程序都依賴X的庫文件,在前面安裝的部分我安裝了它,並且直接安裝了 cvsup的package。不過,如果你有足夠的耐心去一個一個地make需要的ports,那麼先安裝ports collection,然後make cvsup-nogui也是一個不錯的主意,盡管這需要比較長的時間。
創建一個用於cvsup(1)的supfile,命名為stable-supfile:
(default host中選定的cvsup伺服器——ftp.bjpu.e.cn對訪問的IP進行了限制,筆者只在北京工業大學校內使用過,因此如果您無法連接這個伺服器,請嘗試www.cn.freebsd.org,或cvsup.freebsd.org)
*default host=ftp.bjpu.e.cn
*default base=/usr
*default prefix=/usr
*default release=cvs tag=RELENG_4
*default delete use-rel-suffix
src-all
ports-all tag=.
隨後執行
cvsup -g -L 2 stable-supfile
這里需要稍微解釋一下FreeBSD的幾種版本。
FreeBSD包括3類分支:-RELEASE,-STABLE和-CURRENT。FreeBSD 3.x、4.x和5.0是目前受到維護的版本,如果你期待穩定運行,那麼,可以選擇的最新版本將是FreeBSD 4.6-STABLE(如果你是在4.6.2-RELEASE發行之後更新的,那麼它實際上比4.6.2-RELEASE新,並且,它正式的CVS tag是RELENG_4,即FreeBSD 4-STABLE)。
那麼,三類分支有什麼區別呢?
FreeBSD的開發是非常活躍的。系統中可能會隨時引入一些新的特性。最新的代碼是在-CURRENT分支中引入的。-CURRENT的修改非常頻繁,每天都可能有數百處修改。使用-CURRENT分支的FreeBSD需要耐心和勇氣,因為你的系統隨時可能崩潰(隨著FreeBSD 5.0開發尾聲的接近,這種現象已經越來越少),make world也可能空手而歸(沒有人保證-CURRENT分支能夠正常編譯),此外,這個分支的性能也不好(因為調試的原因,這個分支引入了大量的調試選項,這意味著運行速度不會太快)。當然,正像它的名字那樣,-CURRENT分支的版本也是最新的5.0,而且,一切FreeBSD的錯誤和漏洞的修正都是首先在-CURRENT分支引入的。目前,-CURRENT分支碩果僅存的只有FreeBSD 5-CURRENT(指定cvs tag時寫「.」),這個分支包括了FreeBSD 5.0開發的最新進展。
FreeBSD 5中將引入大量的新特性,包括核心級線程(目前FreeBSD中的線程支持僅限於用戶級線程,這在多處理器的環境下性能不夠好,當然,目前使用fork ()來支持的多進程線程模擬能夠提供類似核心級線程的功能,但並不是所有的程序員都知道如何使用fork)、完整的Soft Updates(這一變化將提供更好的文件系統性能,同時提供更好的穩定性),等等。如果你有快速的Internet連接,一台或一些空餘的機器(當然,不是生產用的伺服器),並且希望為FreeBSD的開發作貢獻,或者你關心操作系統的最新發展,那麼,-CURRENT分支是最好的選擇。此外,
由於-CURRENT分支性能不好、穩定性不夠等這些缺點,對於生產的伺服器來說,通常運行的應該是FreeBSD-STABLE。如同它的名字那樣, FreeBSD-STABLE的目的是「穩定地運行」。-CURRENT分支中的代碼,在經過一段時間(通常是7到90天,但安全更新屬於特例,通常會在幾個小時)的驗證之後,符合版本條件(有些新特性只能用於FreeBSD 5.0)的代碼會被FreeBSD-STABLE吸收,這個操作稱作MFC(Merge From -CURRENT,不是Microsoft Foundation Classes:P)。
由於FreeBSD 5.0的第一個RELEASE至今仍然沒有發布,因此,目前還沒有5.0-STABLE。目前,FreeBSD-STABLE有兩個版本,FreeBSD 3-STABLE和FreeBSD 4-STABLE,分別對應3.x和4.x的最新穩定版代碼(對應的cvs tag分別是RELENG_3和RELENG_4)。由於版本的更新換代,其中3.x的-STABLE正在逐漸消亡。FreeBSD-STABLE每天平均會修改10個左右的文件。
每隔一段時間,FreeBSD的發行工程組(Release Engineering Team)會對FreeBSD-STABLE的源代碼樹進行鎖定。這段時間(目前的規定是30天,之前還有30天准備)內,所有的MFC操作都需要發行工程組的批准,因此,FreeBSD-STABLE在這個階段基本不會引入任何新的特性。經過這段時間之後,發行工程組會在最後鎖定ports樹,並 build一份所有的package,之後,這份鎖定的-STABLE,可能經過若干RC(Release Candidate),被命名為RELEASE,並製作光碟發行。
顧名思義,-RELEASE的設計目標是「發行」。一個版本一旦RELEASE,那麼他的功能就不會再增加了。此後的所有維護的目標都只有一個,那就是絕對穩定。如果你和-RELEASE分支同步,那麼絕不會出現make無法通過的情況,而且,通常這也可以保證你的系統「絕對」穩定,因為它不會引入任何新功能(例如,4.6就是4.6,如果你想要4.6.2的功能,必須明確地指定4.6.2)。
目前,FreeBSD有很多RELEASE版本,它們的cvs tag如下。我個人建議使用最新的4.6.2-RELEASE。
對於多數人來說,-RELEASE是一個比較極端的選擇。無論何時出現版本升級,如果你想跟進,那都必須修改supfile,如果你選擇不跟進,那麼就可能造成ports工作異常。如果經常更新,-RELEASE可以保證操作系統本身的安全性,但同其他分支一樣,如果ports出了問題,那麼也得一塊 make,而既然這樣,還不如使用-STABLE。
如果你符合下面的條件,那麼RELEASE分支可能比-STABLE分支更適合你
* 你使用的軟體對於操作系統的變化非常敏感,比如,它只能FreeBSD 4.5,而無法在4.6上運行;同時,你不打算採用它的更新版本,或者它的作者拒絕更新
* 操作系統的更新對於你來說沒有任何意義,比如,你打算把FreeBSD當作一個相對固定的嵌入式操作系統來使用,例如,作為防火牆的一部分
* 更新會對你造成困擾,操作系統的絕大多數新特性對於你來說除了增加煩惱之外,不能帶來任何其他東西。
-並且,符合以下的全部條件-
* 你每天察看FreeBSD,以及使用的全部軟體的安全公告
* 你的Internet連接比較通暢
目前我本人維護的所有主機,除了作為防火牆的那台之外,使用的都是FreeBSD-STABLE。
一旦同步完源代碼,就應該對整個系統進行更新。如果你沒有每天察看安全公告的習慣,那就應該關心一下cvsup到底更新了哪些代碼。nectar是目前 FreeBSD的Security Officer。如果你發現他一下子更新了許多代碼,那麼對你來說立即make world和kernel很可能是必需的。
為了更新整個系統,在/usr/src中執行
make world
以及
make kernel KERNCONF=內核配置文件名
當然,也可以連起來執行:
make world kernel KERNCONF=內核配置文件名
如果你的計算機運行速度較慢,那麼,對於基本系統的更新(相當於不包括庫的一次world),可以用
make most
替代make world,但make world是一個不錯的主意,因為它能夠保證對C運行環境的改變應用到所有的程序中,如果修正的不是動態連接的C函數庫,那麼make world可以保證代碼的一致性。
make kernel是一個需要重新啟動的操作。如果你的make world修改了系統的關鍵服務,那麼最好也重新啟動一下。我很少有耐心看完make world和kernel的執行,根據系統的運行速度不同,這需要一個小時到一天的時間,而且,不是所有的SSH客戶端都能夠長時間正確的執行,例如, SecureCRT的多個版本都有內存泄漏問題。
為了解決這個問題,我用下面的命令來完成更新:
make world kernel KERNCONF=內核配置文件名 clean > /var/log/world,out && reboot &
這個命令能夠記錄更新的全過程,如果在什麼地方編譯失敗,你可以很快地找到原因。對於多數人來說,由於後面的&&,只需要察看uptime就能知道便以是否成功。
需要說明的是,FreeBSD的make world並不總能成功。有時需要修改一些環境變數才能成功完成make。為了保證make成功,在/usr/src中執行任何make操作之前,建議你看一眼UPDATING中是否有特殊的要求(這種要求並不是在FreeBSD Release的時候才會出現,很多時候他會在某個CURRENT中引入,然後隨著MFC進入-STABLE分支),並且,在進行大的版本升級之前(跨 RELEASE,甚至主版本號),首先執行下面的命令
mergemaster -p
並在make world之後執行
mergemaster -i
運行mergemaster腳本需要一定的Unix配置知識,不過,由於配置文件中包含很多幫助信息,因此,只要master.passwd、group 這樣的文件不出大問題(如果cvsup更新了master.passwd,那麼就需要留神,因為master.passwd標准配置是root口令為空,這時需要用m來合並,而不是使用i安裝),mergemaster並不會引入什麼新的問題。
前一條命令是更新make的配置(/etc/defaults/make.conf和/etc/make.conf)。對於多數人來說,除非進行跨版本升級,否則一般情況下是不需要這樣做的。後一條命令是同步全部配置,並安裝以前不存在的配置文件,而不進行提示。
筆者曾經遇到過FreeBSD因為系統日期不正確而無法make的情況,因此,再次特別提醒大家,如果你的系統日期不正確,最好是用date命令修改一下,或者乾脆用ntpdate或ntpd來同步時間。關於如何使用ntp,將在以後說明。
以後我們將講解FreeBSD內核的配置,以及如何配置make.conf來優化FreeBSD的編譯結果。
「簡單的東西不容易出問題。」
至理名言!事實上,削減操作系統中那些對你沒用的功能是一件非常重要的事情。這不僅僅意味著一個更小的操作系統,佔用更少的磁碟空間(現在的硬碟少說也有幾十GB,幾兆的空間根本就是九牛一毛),而且意味著你被攻擊的可能性也更低——簡而言之,你不需要擔心操作系統中沒有安裝的模塊存在問題會對你造成影響。
這篇文章中,我們將一起對FreeBSD-i386的內核進行優化配置。這篇文章是針對FreeBSD4.7-STABLE寫的,並且,FreeBSD 4.x的配置不會和這篇文章有太大出入。如果你要優化FreeBSD 5或FreeBSD 2/3的內核的話,則需要仔細參考它們的LINT文件了(後面將會提到)。
[注意:FreeBSD 5.0預定將於2002年11月20日發布。FreeBSD的開發組非常重視發行版本的質量,並認為這比發行版本的計劃還重要,但由於同樣的原因,我們往往會發現FreeBSD實際發行的版本比預定計劃晚一些,通常在半個月之內。FreeBSD 5.0作為FreeBSD近期最為重要的發行版本,很可能也會延後發表,但筆者個人認為無論如何我們在今年年底之前肯定是可以看到最終的發行版本的。 FreeBSD 5.0對系統進行了大量的修改,這一系列的文章將在FreeBSD 5.0發布當天發表針對5.0的修訂版本,而現有版本將保留,但進入維護階段,不再引入新的內容。]
FreeBSD的源代碼可以直接從中央cvsup伺服器同步,也可以作為系統的一部分在安裝的時候一兵裝上。前面已經說過如何同步源代碼,在此不再贅述。 FreeBSD的源代碼(通常在/usr/src)包含建造基本系統的全部代碼,而在/usr/src/sys中則有若干個目錄,對應不同的計算機體系結構(4.x只支持i386和alpha)。i386是一個泛指的名字,包含了與Intel 80386兼容的所有機器,並不是特指80386。
簡單介紹一下FreeBSD的內核文件。在4.x系統中,/kernel這個文件是默認的內核,通常正常啟動使用的就是它。 /kernel.GENERIC這個文件是兼容性較強的內核,如果/kernel無法引導系統,就得靠這個文件來引導。/kernel.old是本次make kernel之前的內核,通常如果你的kernel壞掉,也可以考慮使用/kernel.old來引導系統。
/moles/是內核的模塊,而/moles.old/是對應/kernel.old的模塊。這些文件在每次替換kernel的時候都會同時替換。
在5.0中,內核以及內核的模塊都被保存在/boot/kernel中。
在/usr/src/sys/i386/conf中有兩個配置文件,GENERIC和LINT。其中GENERIC是make kernel的默認配置文件,直接make kernel生成的是GENERIC內核,但安裝時命名為/kernel。系統在安裝時會安裝一個kernel.GENERIC,以後,這個文件不會跟隨系統的make kernel更新,因此,如果你認為這個文件有必要更新的話,需要手工make kernel,並把/kernel改名為kernel.GENERIC。當然,通常並不需要這樣做。
LINT是包括幾乎所有內核編譯配置詳細信息的文件。這個配置並不是用來真正建立kernel的,他的主要用途是向用戶展示可用的內核編譯配置。在修改內核編譯配置時,最好先參考這個文件。
為了配置自己的內核,應將GENERIC復制為一個另外的文件。習慣上這個文件和主機名相同。例如,我把自己的這台Web機器命名為apache.intranet.frontfree.net,就把配置文件命名為APACHE:
cd /usr/src/sys/i386/conf
cp GENERIC APACHE
隨後,用ee APACHE編輯它。我們拿一個實際的GENERIC文件來說明。
為了節省篇幅,這個文件頭上的注釋被刪掉了一部分。
machine i386 # 體系模型為i386
cpu I386_CPU # 支持80386
cpu I486_CPU # 支持80486
cpu I586_CPU # 支持Pentium
cpu I686_CPU # 支持Pentium Pro以及更高
ident GENERIC # 內核文件的名字
maxusers 0 # 自動檢測同時允許的最大用戶數
#makeoptions DEBUG=-g # 包含調試符號。通常只有current版本打開
options MATH_EMULATE #支持協處理器模擬
options INET #支持互聯網
options INET6 #IPv6通訊協議
options FFS #伯克利快速文件系統
options FFS_ROOT #FFS作為根設備[必須保留]
options SOFTUPDATES #打開FFS soft updates支持
options UFS_DIRHASH #提高大型目錄的支持
options MFS #內存文件系統
options MD_ROOT #MD作為根設備
options NFS #Network Filesystem
options NFS_ROOT #NFS作為根設備(需要NFS)
options MSDOSFS #MSDOS文件系統
options CD9660 #ISO 9660文件系統(光碟)
options CD9660_ROOT #CD-ROM作為根設備(需要CD9660)
options PROCFS #進程文件系統
options COMPAT_43 #兼容4.3BSD[必須保留]
options SCSI_DELAY=15000 #檢測SCSI設備前的延時(ms)
options UCONSOLE #用戶可以奪取控制台
options USERCONFIG #boot -c編輯器 editor
options VISUAL_USERCONFIG #菜單式boot -c編輯器
options KTRACE #ktrace(1)支持
options SYSVSHM #SYSV-風格的共享內存
options SYSVMSG #SYSV-風格的消息隊列
options SYSVSEM #SYSV-風格的信號量(semaphores)
options P1003_1B #Posix P1003_1B實時擴展
options _KPOSIX_PRIORITY_SCHEDULING
options ICMP_BANDLIM #對惡意ICMP請求進行限制
options KBD_INSTALL_CDEV # 在/dev安裝一個CDEV設備
# 下面兩項在製作對稱多處理器(SMP)內核時需要
#options SMP #對稱多處理器內核
#options APIC_IO #對稱(APIC) I/O
device isa
device eisa
device pci
# 軟碟機
device fdc0 at isa? port IO_FD1 irq 6 drq 2
device fd0 at fdc0 drive 0
device fd1 at fdc0 drive 1
#
# 如果使用東芝Libretto以及他的Y-E Y-E Data PCMCIA軟碟機
# 不要使用上面的fdc0,而應使用
#device fdc0
# ATA以及ATAPI設備
device ata0 at isa? port IO_WD1 irq 14
device ata1 at isa? port IO_WD2 irq 15
device ata
device atadisk # ATA 磁碟驅動器(IDE硬碟)
device atapicd # ATAPI 光碟機
device atapifd # ATAPI 軟碟機
device atapist # ATAPI 磁帶機
options ATA_STATIC_ID #靜態設備編號
# SCSI控制器
device ahb # EISA AHA1742 family
device ahc # AHA2940 板載AIC7xxx設備
device amd # AMD 53C974 (Tekram DC-390(T))
device isp # Qlogic family
device ncr # NCR/Symbios Logic
device sym # NCR/Symbios Logic (較新的晶元組)
options SYM_SETUP_LP_PROBE_MAP=0x40
# 使用ncr可以在配置了sym和ncr的情況下掛接舊的NCR設備
device adv0 at isa?
device adw
device bt0 at isa?
device aha0 at isa?
device aic0 at isa?
device ncv # NCR 53C500
device nsp # Workbit Ninja SCSI-3
device stg # TMC 18C30/18C50
# SCSI 外設
device scbus # SCSI 匯流排(如果使用SCSI設備,必須有)
device da # Direct Access (硬碟)
device sa # Sequential Access (磁帶,等等)
device cd # CD
device pass # Passthrough device (直接 SCSI 訪問)
# 通過SCSI子系統介面的RAID控制器
device asr # DPT SmartRAID V, VI and Adaptec SCSI RAID
device dpt # DPT Smartcache - See LINT for options!
device iir # Intel Integrated RAID
device mly # Mylex AcceleRAID/eXtremeRAID
device ciss # Compaq SmartRAID 5* series
# RAID控制器
device aac # Adaptec FSA RAID, Dell PERC2/PERC3
device aacp # SCSI passthrough for aac (requires CAM)
device ida # Compaq Smart RAID
device amr # AMI MegaRAID
device mlx # Mylex DAC960 family
device twe # 3ware Escalade
# atkbdc0 控制鍵盤和PS/2滑鼠
device atkbdc0 at isa? port IO_KBD
device atkbd0 at atkbdc? irq 1 flags 0x1
device psm0 at atkbdc? irq 12
device vga0 at isa?
# 啟動畫面和屏幕保護程序
pseudo-device splash
# syscons 是默認的控制台驅動,類似SCO控制台
device sc0 at isa? flags 0x100
# 對於pcvt vt220控制台,啟用這個和PCVT_FREEBSD
#device vt0 at isa?
#options XSERVER # 在vt控制台支持X伺服器
#options FAT_CURSOR # 使用大游標
# 如果你是用ThinkPad,將下面的一行和其他PCVT相關設備的注釋去掉
#options PCVT_SCANSET=2 # IBM使用非標准鍵盤
# 浮點運算支持 - 請勿禁用
device npx0 at nexus? port IO_NPX irq 13
# 電源管理支持
device apm0 at nexus? disable flags 0x20 # Advanced Power Management
# PCCARD (PCMCIA) 支持
device card
device pcic0 at isa? irq 0 port 0x3e0 iomem 0xd0000
device pcic1 at isa? irq 0 port 0x3e2 iomem 0xd4000 disable
# 串口(COM)
device sio0 at isa? port IO_COM1 flags 0x10 irq 4
device sio1 at isa? port IO_COM2 irq 3
device sio2 at isa? disable port IO_COM3 irq 5
device sio3 at isa? disable port IO_COM4 irq 9
# 並口
device ppc0 at isa? irq 7
device ppbus # 並口匯流排 (所有並口設備都需要)
device lpt # 列印機
device plip # 並口TCP/IP
device ppi # 並口介面設備
#device vpo # 需要scbus和da
# PCI 乙太網適配器
device de # DEC/Intel DC21x4x (``Tulip'')
device em # Intel PRO/1000 adapter Gigabit Ethernet Card (``Wiseman'')
device txp # 3Com 3cR990 (``Typhoon'')
device vx # 3Com 3c590, 3c595 (``Vortex'')
# 使用公共的MII匯流排控制器代碼的PCI乙太網適配器
# 注意:一定要保留'device miibus'以確保可用
device miibus # MII匯流排支持
device dc # DEC/Intel 21143 and various workalikes
device fxp # Intel EtherExpress PRO/100B (82557, 82558)
device pcn # AMD Am79C97x PCI 10/100 NICs
device rl # RealTek 8129/8139
device sf # Adaptec AIC-6915 (``Starfire'')
device sis # Silicon Integrated Systems SiS 900/SiS 7016
device ste # Sundance ST201 (D-Link DFE-550TX)
device tl # Texas Instruments ThunderLAN
device tx # SMC EtherPower II (83c170 ``EPIC'')
device vr # VIA Rhine, Rhine II
device wb # Winbond W89C840F
device xl # 3Com 3c90x (``Boomerang'', ``Cyclone'')
device bge # Broadcom BCM570x (``Tigon III'')
# ISA乙太網適配器
# 'device ed' 需要 'device miibus'
device ed0 at isa? port 0x280 irq 10 iomem 0xd8000
device ex
device ep
device fe0 at isa? port 0x300
# Xircom Ethernet
device xe
# PRISM I IEEE 802.11b wireless NIC.
device awi
# WaveLAN/IEEE 802.11 wireless NICs. Note: the WaveLAN/IEEE really
# exists only as a PCMCIA device, so there is no ISA attachment needed
# and resources will always be dynamically assigned by the pccard code.
device wi
# Aironet 4500/4800 802.11 wireless NICs. Note: the declaration below will
# work for PCMCIA and PCI cards, as well as ISA cards set to ISA PnP
# mode (the factory default). If you set the switches on your ISA
# card for a manually chosen I/O address and IRQ, you must specify
# those parameters here.
device an
# The probe order of these is presently determined by i386/isa/isa_compat.c.
device ie0 at isa? port 0x300 irq 10 iomem 0xd0000
#device le0 at isa? port 0x300 irq 5 iomem 0xd0000
device lnc0 at isa? port 0x280 irq 10 drq 0
device cs0 at isa? port 0x300
device sn0 at isa? port 0x300 irq 10
# 偽設備 - 數字表示分配多少個
pseudo-device loop # 環回網路
pseudo-de