當前位置:首頁 » 雲伺服器 » 搭建多個moon伺服器

搭建多個moon伺服器

發布時間: 2022-06-09 13:26:19

1. 戰地1942用的BFstart軟體聯機,一進去101.200.166.4:14567,就顯示伺服器連接失敗,怎麼辦

通過修改系統的host文件,使1942換個伺服器搜索平台來防止點「網際網綱」時卡死
1、戰地1942 多人游戲界面修復補丁:
http://tieba..com/p/3257021603

2、如果軟體打失敗的話,可以嘗試自己來修改host文件
【尊重原帖,尊重作者:http://tieba..com/p/3203314303】
直接去修改Windows系統里的C:\Windows\system32\drivers\etc\hosts 文件,加入以下指向條目:
109.71.69.254 master.gamespy.com
這樣就能解決網際網路卡死問題了

幾個常用的伺服器地址
=SUPER=伺服器(目前唯一的國服):162.222.166.15:14567
ping值很低,人基本只在放假的才有,以及星期五、六、日白天和晚上有人

= -ax- =伺服器:109.71.69.254:14567
很多人,但是ping高
MoonGamers伺服器:64.120.56.204:14567
人數也很多,ping略好點
日本伺服器:111.100.165.130:14567
除了國內服就是日本服ping不多了。不過人少。。。。。
希望被採納,謝謝

2. docker安裝zerotier設置tup

步驟如下:
1.安裝DOCKER
雲伺服器上安裝DOCKER,簡單一點的可以先安裝寶塔面板,在寶塔面板市場里搜索DOCKER,這個幾個docker管理器都可以用,關於如何安裝寶塔可以自行網路一下,一天命令,非常簡單。
2.部署moon服務
安裝dockerzerotier-moon服務打開寶塔終端工具,輸入命令dockerpullseedgou/zerotier-moon,在docker上部署zerotier服務dockerrun--namezerotier-moon-d--restartalways-p9993:9993/udp-v/home/zerotier-moon:/var/lib/zerotier-oneseedgou/zerotier-moon-410.0.0.1。運行之後可以在docker面板里看到正常運行的moondocker服務。
注意:在寶塔面板安全里開放9993埠,如果是騰訊雲或者其他雲伺服器記得在防火牆里開放9993埠服務。把剛剛掛載的目錄里自動生成moons.d文件夾下載到本地備用
3.配置win客戶端
Windows客戶端加入moon自建節點將moons.d文件夾整個復制到ZeroTier安裝目錄下默認路徑為:C:ProgramFiles(x86)ZeroTierOne,打開WindowsPowershell,輸入命令zerotier-cliorbitxxxxxxxxxxxxxxxxxxxx,將xxxxxxxxxx替換為你的moonid,在伺服器終端面板里運行下面命令查看moonid,dockerlogszerotier-moon,WindowsPowershell顯示提示200orbitok表示添加moon節點成功此後重啟zerotier,完畢。
4.測試服務
查看是否成功加入moon伺服器節點,查看節點信息命令zerotier-clilistpeers,當你看到某一行後面帶有moon字樣,就證明已經加入到moon自建節點中其中PLANET為官方的根伺服器。

3. moonlight怎麼添加游戲

手機和電腦處於同一區域網下,打開手機上的moonlight,可以看到我的電腦已經被識別。點擊這個電腦圖標,進入後會發現我們剛才添加的游戲或者桌面,點擊進入,手機開始串流你的電腦。moonlight里的設置可以根據你的網路情況和配置更改了。

moonlight介紹

使用月光有一個前提條件,因為月光是基於英偉達的技術實現,所以作為運行游戲的伺服器,必須使用的是英偉達顯卡,如果你當前使用的是AMD的顯卡。

有類似的應用,可以自行查找。首先我們需要下載月光相關安裝包,月光當前支持所有主流平台:Windows、Mac、linux、iOS、Android、ChromeOS。

簡單描述就是利用高性能電腦運行游戲,在以視頻的方式發送到其他設備,讓我們可以在更多設備中常玩大作,當前國內騰訊、網易,國外的谷歌、steam、微軟等眾多一線互聯網公司提供的雲游戲服務使用的就是類似的串流技術。

但不同的是,那些串流技術使用廠商提供的伺服器和游戲,如果我們自己有高性能PC和眾多游戲,完全可以自行搭建一個串流伺服器。

steam雖然提供了一個游戲串流技術,但steam的區域網串流還好,外網串流需要經過一個國外伺服器,使得體驗極差,並且無論是在串流優化還是游戲支持(steam只支持steam上你買的游戲)上,都沒有月光做的好。

4. 想用moonlight engine來玩地下城與勇士(1.14的)

希望對你有幫助。 下面是教程。
ME是基於CE而修改的程序,簡單點說,ME是一款內存修改工具,更簡單一點,ME就是一個修改器。
通過ME修改數據,一般在5分鍾左右會被T。
HOST是什麼呢?
HOST是通過架設虛擬伺服器,阻止游戲更新,並且可以修改裝備屬性達到全屏幕秒怪的效果。
使用HOST進入游戲一般20秒左右會被T。
內自帶CT表.

開機第一時間開ME,開游戲,修改……基本都能成功。教程:
地下城與勇士開掛,需要用到下面幾個工具
第一個,ME。這個是開CT的工具。
[img]http://www.zhaowaigua.com/dnf/pic/zc.jpg[/img]
請注冊,需要注冊一下才行,點文件夾里的注冊碼
點注冊後重啟電腦,就能用ME了
第二個需要用到的是CT文件
文件夾里的下面這個圖片就是
[img]http://www.zhaowaigua.com/dnf/pic/ct.jpg[/img]
准備好這兩個工具後,我們開始進行開掛
第一步驟:先打開ME軟體
打開文件夾,找到下面這個圖標,點開他(圓頭帶眼睛那個圖標)
[img]http://www.zhaowaigua.com/dnf/pic/1.jpg[/img]
打開後,界面如下;
[img]http://www.zhaowaigua.com/dnf/pic/2.jpg[/img]
接下來,在ME界面上點開這個圖標
[img]http://www.zhaowaigua.com/dnf/pic/3.jpg[/img]
選擇我們剛才下好的CT文件。界面如下圖
[img]http://www.zhaowaigua.com/dnf/pic/4.jpg[/img]
打開後功能列表將出現,如下圖
[img]http://www.zhaowaigua.com/dnf/pic/5.jpg[/img]
接下來,我們打開游戲 。注意是打開地下城與勇士游戲。到這一步。游戲頻道這一步,圖片如下
[img]http://www.zhaowaigua.com/dnf/pic/6.jpg[/img]
這個時候,等10秒中,然後我們用ME進行進程截取。(注意,一定要在這個時候進行進程截取。)
轉到ME軟體。在界面上找到下面這個圖標
[img]http://www.zhaowaigua.com/dnf/pic/7.jpg[/img]
點開他
[img]http://www.zhaowaigua.com/dnf/pic/8.jpg[/img]
選中 NDF.EXE這個進程。點open process
接下來就進行選擇你要的功能,進行打鉤
[img]http://www.zhaowaigua.com/dnf/pic/9.jpg[/img]
然後就選擇游戲頻道進行游戲
第一次會20秒掉線,後面就會少掉

5. zerotier moon原理

frp 很多人都了解,是一個用於內網穿透的高性能的反向代理應用,簡單點說就是可以把 NAT 後面的某台機器的埠轉發到公網 IP上去,類似 ngrok 或者花生殼內網版,好處是可以自建。
UDP 打洞是一種 NAT 穿透技術,與上面 frp 的區別在於,frp 的轉發模式本質是通過具有公網 IP 的伺服器 M
來進行流量轉發(frp 也提供 xtcp 模式來進行 NAT 穿透,但是成功率太低,效果不佳),這樣如果伺服器 M的帶寬有限,就會成為傳輸時的瓶頸,無法有效利用全部帶寬。
Zerotier 就是利用 UDP 打洞來實現內網穿透的工具,而且相比其他工具成功率更高、部署更簡單。

6. 操作系統是如何隨著硬體的發展而發展的

通信量。網際網路將從一個單純的大型數據中心發展成為一個更加聰明的高智商網路,將成為人與信息之間的高層調節者。其中的個人網站復制功能將不斷預期人們的信息需求和喜好,用戶將通過網站復制功能篩選網站,過濾掉與己無關的信息並將所需信息以最佳格式展現出來。同時,個人及企業將獲得大量個性化服務。這些服務將會由軟體設計人員在一個開放的平台中實現。由軟體驅動的智能網技術和無線技術將使網路觸角伸向人們所能到達的任何角落,同時允許人們自行選擇接收信息的形式。

2、帶寬的成本將變得非常低廉,甚至可以忽略不計。隨著帶寬瓶頸的突破,未來網路的收費將來自服務而不是帶寬。交互性的服務,如節目聯網的視頻游戲、電子報紙和雜志等服務將會成為未來網路價值的主體。

3、在不久的未來,無線網路將更加普及,其中cnet:短距無線網路前景看俏。短距無線通訊標准Zigbee與超寬頻UWB(Ultra wideband)即將制訂完成,未來將與藍芽(Bluetooth)共同建構短距離無線網路環境,包括藍芽、Zigbee與UWB等相關產品出貨量都將大幅成長。隨著電子電機工程師協會(IEEE)推出802.15個人區域網絡(WPAN)標准後,新一代的短距離無線通訊發展趨勢逐漸確定,除了藍芽(802.15.1)外,Zigbee(802.15.4)與UWB(802.15.3a)標准也將於今年或明年初陸續通過,未來Zigbee與UWB將以各自不同特性,如速度、價格等切入短距離無線網路環境。

4、計算機網路飛速發展的同時,安全問題不容忽視。網路安全經過了二十多年的發展,已經發展成為一個跨多門學科的綜合性科學,它包括:通信技術、網路技術、計算機軟體、硬體設計技術、密碼學、網路安全與計算機安全技術等。

在理論上,網路安全是建立在密碼學以及網

絡安全協議的基礎上的。密碼學是網路安全的核心,利用密碼技術對信息進行加密傳輸、加密存儲、數據完整性鑒別、用戶身份鑒別等,比傳統意義上簡單的存取控制和授權等技術更可靠。加密演算法是一些公式和法則,它規定了明文和密文之間的變換方法。由於加密演算法的公開化和解密技術的發展,加上發達國家對關鍵加密演算法的出口限制,各個國家正不斷致力於開發和設計新的加密演算法和加密機制。

從技術上,網路安全取決於兩個方面:網路設備的硬體和軟體。網路安全則由網路設備的軟體和硬體互相配合來實現的。但是,由於網路安全作為網路對其上的信息提供的一種增值服務,人們往往發現軟體的處理速度成為網路的瓶頸,因此,將網路安全的密碼演算法和安全協議用硬體實現,實現線速的安全處理仍然將是網路安全發展的一個主要方向。

在安全技術不斷發展的同時,全面加強安全技術的應用也是網路安全發展的一個重要內容。因為即使有了網路安全的理論基礎,沒有對網路安全的深刻認識、沒有廣泛地將它應用於網路中,那麼談再多的網路安全也是無用的。同時,網路安全不僅僅是防火牆,也不是防病毒、入侵監測、防火牆、身份認證、加密等產品的簡單堆砌,而是包括從系統到應用、從設備到服務的比較完整的、體系性的安全系列產品的有機結合。

總之,網路在今後的發展過程中不再僅僅是一個工具,也不再是一個遙不可及僅供少數人使用的技術專利,它將成為一種文化、一種生活融入到社會的各個領域。

操作系統(Operating System,簡稱OS)傳統上是負責對計算機硬體直接控制及管理的系統軟體。操作系統的功能一般包括處理器管理、存儲管理、文件管理、設備管理和作業管理等。當多個程序同時運行時,操作系統負責規劃以優化每個程序的處理時間。

一個操作系統可以在概念上分割成兩部分:內核(Kernel)以及殼(shell)。一個殼程序包裹了與硬體直接交流的內核:硬體<->內核<->殼<->應用程序

在有些操作系統上內核與殼完全分開(例如Unix、Linux等),這樣用戶就可以在一個內核上使用不同的殼;而另一些的內核與殼關系緊密(例如Microsoft Windows),內核及殼只是操作層次上不同而已。

Windows 98是一個發行於1998年6月25日的混合16位/32位的圖形操作系統。這個新的系統是基於Windows 95上編寫的,它改良了硬體標準的支持,例如USB、MMX和AGP。其它特性包括對FAT32文件系統的支持、多顯示器、Web TV的支持和整合到Windows圖形用戶界面的Internet Explorer,稱為活動桌面(Active Desktop)。Windows 98 SE(第二版)發行於1999年6月10日。它包括了一系列的改進,例如Internet Explorer 5、Windows Netmeeting 3、Internet Connection Sharing和對DVD-ROM的支持。Windows 98被人批評為沒有足夠的革新。即使這樣,它仍然是一個成功的產品。第二版被批評為不能在第一版的基礎上自由升級。

Windows 98的最低系統需求:486DX/66MHz或更高的處理器,16MB的內存,更多的內存將改善性能;如果使用FAT16文件系統, 典型安裝需250兆;因系統設置和選項不同, 所需空間范圍在225兆到310兆之間;如果使用FAT32文件系統, 典型安裝需245兆;因系統設置和選項不同, 所需空間范圍在200兆到270兆之間;CD-ROM或DVD-ROM驅動器和VGA或更高解析度的顯示器,微軟滑鼠或兼容的指向設備。

Windows ME是一個32點陣圖形操作系統,由微軟公司發行於2000年9月14日。這個系統是在Windows 95和Windows 98的基礎上開發的。它包括相關的小的改善,例如Internet Explorer 5.5。其中最主要的改善是用於與流行的媒體播放軟體RealPlayer競爭的Windows Media Player 7。但是Internet Explorer 5.5和Windows Media Player 7都可以在網上免費下載。Movie Maker是這個系統中的一個新的組件。這個程序提供了基本的對視頻的編輯和設計功能,對家庭用戶來說是簡單易學的。但是,最重要的修改是系統去除了DOS,而由系統恢復代替了。

在概念上,這是一個大的改進:擁護不再需要有神秘的DOS行命令的知識就可以維護和修復系統。實際上,去除了DOS功能對維護來說是一個障礙,而系統恢復功能也帶來一些麻煩:性能顯著的降低;它也被證明並不能有效的勝任一些通常的錯誤。由於系統每次都自動創建一個先前系統狀態的備份,使得非專業人員很難實行一些急需的修改,甚至是刪除一個不想要的程序或病毒。有觀點認為這個系統只是Windows 98的升級版本,不應該獨自成為一個版本。也有觀點認為這是微軟自3.0版以後最差的第一個沒有發行第二版的Windows。

Microsoft Windows 2000(起初稱為WinNT 5.0)是一個由微軟公司發行於2000年12月19日的32點陣圖形商業性質的操作系統。Windows 2000有四個版本:Professional、Server、Advanced Server和Datacenter Server。另外,微軟提供了Windows 2000 Advanced Server限定版,用於運行於英特爾Itanium 64位處理器上。所有版本的Windows 2000都有共同的一些新特徵:NTFS5,新的NTFS文件系統;EFS,允許對磁碟上的所有文件進行加密;WDM,增強對硬體的支持。

Microsoft Windows 2000的最低系統要求:133 MHZ或更高主頻的Pentium級兼容CPU,推薦最小內存為64MB,更多的內存通常可以改善系統響應性能[最多支持4GB內存],至少有1GB可用磁碟空間的2GB硬碟(如果通過網路進行安裝,可能需要更多的可用磁碟空間),Windows 2000 Professional支持單CPU和雙CPU系統。

Windows XP,或視窗XP是微軟公司最新發布的一款視窗操作系統。它發行於2001年10月25日,原來的名稱是Whistler。微軟最初發行了兩個版本,家庭版(Home)和專業版(Professional)。家庭版的消費對象是家庭用戶,專業版則在家庭版的基礎上添加了新的為面向商業的設計的網路認證、雙處理器等特性。字母XP表示英文單詞的「體驗」(experience)。

在XP之前,微軟有兩個相互獨立的操作系統系列,一個是以Windows 98和Windows ME為代表的面向桌面電腦的系列,另一個是以Windows 2000和Windows NT為代表的面向伺服器市場的系列。Windows XP是微軟把所有用戶要求合成一個操作系統的嘗試,而為此付出的代價是喪失了對基於DOS程序的支持。

Windows XP是基於Windows 2000代碼的產品,同時擁有一個新的用戶圖形界面(叫做月神Luna),它包括了一些細微的修改,其中一些看起來是從Linux的桌面環境(desktop environmen)諸如KDE中獲得的靈感。帶有用戶圖形的登陸界面就是一個例子。此外,Windows XP還引入了一個「基於人物」的用戶界面,使得工具條可以訪問任務的具體細節。然而,批評家認為這個基於任務的設計指示增加了視覺上的混亂,因為它除了提供比其它操作系統更簡單的工具欄以外並沒有添加新的特性。而額外進程的耗費又是可見的。

它包括了簡化了的Windows 2000的用戶安全特性,並整合了防火牆,以用來確保長期以來以著困擾微軟的安全問題。

由於微軟把很多以前是由第三方提供的軟體整合到操作系統中,XP受到了猛烈的批評。這些軟體包括防火牆、媒體播放器(Windows Media Player),即時通訊軟體(Windows Messenger),以及它與Microsoft Pasport網路服務的緊密結合,這都被很多計算機專家認為是安全風險以及對個人隱私的潛在威脅。這些特性的增加被認為是微軟繼續其傳統的反競爭行為的持續。

另外受到強烈批評的是它的產品激活技術。這使得主機的部件受到監聽,並在軟體可以永久使用前(每30天一個激活周期)在微軟的記錄上添加一個唯一的參考序列號(reference number)。在其它計算機上安裝系統,或只是簡單的更換一個硬體,例如網卡,都將產生一個新的與之前不同的參考序列號,造成用戶必須重新輸入安裝序列號來激活Windows XP的麻煩。

Windows XP的最低系統要求:推薦計算機使用時鍾頻率為 300 MHz 或更高的處理器;至少需要 233 MHz (單個或雙處理器系統);推薦使用Intel Pentium/Celeron 系列、AMD K6/Athlon/Duron 系列或兼容的處理器,推薦使用 128 MB RAM 或更高(最低支持64M,可能會影響性能和某些功能),1.5 GB可用硬碟空間,Super VGA (800x600) 或解析度更高的視頻適配器和監視器,CD-ROM或DVD驅動器,鍵盤和Microsoft 滑鼠或兼容的指針設備。

計算機操作系統發展現狀與存在的問題? 發展模式比較單一,越來越多的人先入為主,先接受了windows,其實它並沒有那麼好,導致越來越多的人依賴它。
16
操作系統課程設計報告
一. 簡介
Linux系統是從UNIX發展來的。UNIX是世界上最流行的操作系統之一,它是一種實時操作系統,可以運行於大型和小型計算機上的多任務系統。但由於它比較龐大,而且價格昂貴,所以不適合PC機用戶使用。而Linux正好彌補了這些缺點,同時還繼承了UNIX大多數優點。由於它基於PC機上運行的操作系統,並且內核源代碼是公開的,使得Linux成為時下最滸的操作系統。Linux是一種適用於PC機的計算機操作系統,它適合於多種平台,是目前唯一免費的非商品化操作系統。由於有結構清晰、功能強大等特點,它很快成為許多院校學生和科研機構的研究人員學習和研究的對象。在他們的熱心努力下,Linux漸漸成為一個穩定可靠、功能完善的操作系統。Linux是由UNIX發展來的,它不僅繼承了UNIX操作系統的特徵,而且許多方面還超過了UNIX系統。另外它還有許多UNIX所不具有的優點和特徵。它的源代碼是開放的,可運行於許多硬體平台 ,支持多達32種文件,支持大量的外部設備等。 Linux有廣泛的用處,它可用於:
個人UNIX工作站。
終端用戶和應用伺服器。
UNIX開發平台。
商業開發。
網路伺服器。
Internet伺服器。
終端伺服器、傳真伺服器、Modem伺服器。
二、Linux系統下C編程原理
1. Linux系統的主要優異性能
Linux系統是真正的爽用戶。多任務、多平台操作系統。
Linux系統提供提供具有內置安全措施的分層的文件系統,支持多達32種文件系統。
Linux系統提供命令解釋程序和編程語言。
Linux系統提供強大的管理功能。
Linux系統具有內枋的編程介面。
Linux系統具有圖形用戶介面。
Linux系統許多組成部分的源代碼是開放的,任何人都能修改和重新發布它。
Linux系統不公可以運行許多自由發布的應用軟體,還可以運行許多商業化的應用軟體。
2. Linux系統的主要構成
存儲管理
在Linux中,每一個進程都有一個比實際物理空間大得多的進程虛擬空間,每個進程還保留一張頁表,用於將本進程空間中的虛地址變換成物理地址,頁表還對物理頁的訪問許可權作了規定,從而達到存儲保護的目的。
進程管理
在Linux中,進程是資源分配的基本單位,所有資源都是以進程為對象進行分配的,在一個進程的生命周期中,會用到許多系統資源,Linux的設計可以准確描述進程的狀態和資源的使用情況,以確保不出現某些進程過度佔用系統資源而導致另一些進程無休止地等待的情況。
文件系統
Linux最重要的特徵之一就是支持多種不同的文件系統。在Linux中,一個分離的文件系統不是通過設備標志來訪問,而是把它合到一個單一的目錄樹結構中去,通過目錄訪問。Linux把一個新的文件系統安裝到系統單一目錄樹的某一目錄下,則該目錄下的所有內容被新安裝的文件系統所覆蓋,當文件系統被卸下後,安裝目錄下的文件將會被重新恢復。
進程間通信
Linux提供多種進程間的通信機制,管道和信號是其中最基本兩種,其他還有消息隊列、信號燈及共享內存。為支持不同機器之間的進程通信,Linux還引入了機制。
3. gcc編譯器的使用
在Linux開發環境下,gcc是進行程序開發不可或缺的編譯工具,是GUN C Compile的縮寫,它是在GUN系統下的標准C編譯器。gcc作為Linux平台下的標准C編譯器,功能強大。人們可以使用gcc編譯器編譯單一文件的最基本的命令,正是有了gcc編譯器人們才能使用它編譯C源程序。
gcc的完整格式是gcc [options] [filenames] ,編譯選項指定的操作對給定的文件進行編譯處理。在後面可以有多個編譯選項,同時進行多個編譯操作。
三、總體設計
下面介紹Linux系統中的文件以及與文件有關的操作。在C編程環境中,與文件有關的操作主要是I/O操作,即基於文件描述符的操作。此外,還將介紹其他一些與文件有關的操作。
在Linux系統中,有關的I/O操作可以分為兩類。它們是基於文件描述符的I/O操作和基於流I/O的操作。它們有各自不同的特點和優勢。基於文件描述符的I/O操作是通過文件描述符對一個文件執行I/O操作的。文件是一個十分重要的概念。通常保存在外存中的數據都是以文件的形式保存的。文件描述符則是用於描述被打開文件的索引值。通常情況下,都是通過文件描述符打開一個文件執行I/O操作。
文件和文件系統是重要而復雜的概念。文件是有名字的一組相關信息的集合。在Linux系統中,文件的准確定義是不包含有任何其他結構的字元流。通俗的說,就是文件中的字元與字元之間除了同屬於一個文件之外,不存在任何其他的關系。文件中字元的關系,是由使用文件的應用程序來建立各解釋的。每一個文件都具有特定的屬性。Linux系統的文件屬性比較復雜,主要包括文件類型和文件許可權兩個方面。
1.文件類型
Linux下的文件可以分為5種不同的類型 。它們是普通文件、目錄文件、鏈接文件、設備文件和管道文件。
(1)、普通文件
普通文件也稱正規文件,是最常見的一類文件,也是最常使用到的一類文件。其特點是不包含有文件系統的結構信息。通常所接觸到的文件,包括圖形文件、數據文件、文檔文件、等等都屬於普通文件。這種類型的文件按其內部結構又可細分為兩個文件類型:文本文件和二進制文件。
(2)、目錄文件
目錄文件是用於存放文件名及其相關信息的文件。是內核組織文件系統的基本節點。目錄文件可以包含下一級目錄文件或普通文件。
(3)、鏈接文件
鏈接文件是一種特殊的文件。它實際上是指向一個真實存在的文件的鏈接。根據鏈接對象的不同,鏈接文件又可以細分為硬鏈接文件和符號鏈接文件。
(4)、設備文件
設備文件是Linux中最特殊的文件。正是由於它的存在,使得Linux系統可以十分方便地訪問外部設備。Linux系統為外部設備提供一種標准介面,將外部設備視為一種特殊的文件。用戶可以像訪問普通文件一樣訪問外部設備。這就使Linux系統可以很方便的適應不斷發展的外部設備。
(5)、管道文件
管道文件也是一種很特殊的文件。主要用於不同進程間的信息傳遞。當兩個進程間需要進行數據或信息傳遞時,可以通過管道文件。一個進程將需傳遞的數據或信息寫入管道的一端,另一進程則從管道的另一端取得所需的數據或信息。
2.進程基本介紹
在Linux環境下,進程是一個十分重要的概念。按現在通行的認識,進程是具有一定功能的程序關於一個數據集合的一次執行過程。對一個特定程序來說,它的每一個正在運行中的副本都有自己的進程。就是說,如果用戶在一個進程的一次運行尚未結束時再次啟動該程序,則將有兩個進程在運行這一程序。多個進程可以同時運行,各個進程之間相互隔開,除非不同進程之間需要進行數據交換,否則互不影響。
一個進程的存在過程,可以分為進程的產生、進程的執行和進程的結束3個步驟。當一個程序被啟動時,就產生一個新的進程。進程在系統內核的管理下得到執行。當某個進程執行完畢後,該進程就消亡了。
Linux系統支持多個進程同時進行。所謂同時,其實是Linux系統在各個進程之間調度,輪流是每個進程佔用CPU 的一個時間片。由於每個時間片和宏觀的時間相比很小,而每個進程可以頻繁的得到時間片,於是就使用戶看到了多個進程「同時」運行的情況。在每個進程屬性的安全信息里都設有一個優先順序,系統根據它來決定各個進程從CPU獲得的時間片的大小。
用戶在執行一個程序以完成一定的功能時,為了提高程序執行的效率,可以把一個程序設計成由若干個部分組成,由若干個部分組成,由若干個進程同時執行。這就是所謂並發程序的概念。此外,不同進程之間可能會需要相互合作,即進程通信和進程同步。
當然,多個進程並不需要同上時間產生並都維持到整個程序運行結束。用戶可以根據需要動態地產生結束進程。也就是說,一個進程可以派生另一個進程,這就是所謂父進程和了進程的關系。
每個進程都有各自的屬性,其中包括了進程的詳細信息。
3.庫的使用
代碼的重用性是當代計算機編程語言中一個重要的概念,可以把編譯好的目標文件模塊統一放到一個庫中,使得程序員可以在不同的程序中共享這些代碼。
在操作系統中,最終鏈接生成可執行文件時,如果鏈接的是一般的文件,則
整個文件的內容都會被裝入可執行文件中;如果鏈接的是庫,則只是從庫存中找到程序中用到的變數和數,將它們裝入可執行文件中,那些放在庫中但是沒有被程序所引用的變數和數則不會被鏈接到最終的可執行文件。
所以,使用庫可以節省在大量的開發時間,在寫較大的程序時,最好把程序
模塊放在庫中。
對於任何典型的操作系統命令都由簡單命令、參數、輸入文件名、輸出文件名、I\O重定向文件名等組成。(關於以上術語的數據字典見下表)
以命令 gcc –ggdb3 –o moon sun.c 為例:
數據字典一:
術語 說明
簡單命令 一個Linux長命令可以有多個像gcc,more等這樣的純命令組成。其中每個純命令如gcc,more就是這里說的簡單命令
參數 範例命令中的-g,-o就是參數,它們是命令的擴展,可以根據用戶的不用需要提供相應的不同服務
輸入文件名 範例命令中的sun.c就是輸入文件名,它相當於一個源文件,在文件的連接和復制的命令中也常常用到這樣的文件
輸出文件名 範例命令中的moon就是輸出文件名,它相當與一個目標文件,在文件的連接和復制的命令中也常常用到這樣的文件
I\O重定向文件名 在Linux系統中所有的設備都被看作文件進行管理,I\O文件(設備)作為輸出的目標時是可以根據用戶的需要進行調整的,I\O重定向文件名就是用來指定I\O文件(設備)名的

模塊說明:

模塊名稱 功能說明
總控模塊
main() 該模塊調用其他模塊實現命令解釋功能,保證無論命令執行成功與否都在命令執行後返回命令提示符
命令初始化模塊
init_command() 使用singnal函數對進程進行處理,達到初始化命令的效果
命令行輸入
get_comln() 該模塊接受用戶鍵盤輸入的所有字元並存入相應的字元數組,供其他模塊使用
分析簡單命令個數
get_simcom() 該模塊對用戶鍵盤輸入的長命令進行分析並最終將長命令分割成數據字典一中的元素,存入相應的結構數組,供執行模塊執行
執行指令
execute() 對各種的數據字典一中的元素進行最後的處理,完成區分前後台程序,封鎖、開啟鍵盤等功能
分析簡單命令
get_simarg() 對簡單命令進行分割,為執行模塊提供最直接的信息
得到下一個標志符
get_word() 該過程用來記錄輸入文件名、輸出文件名、I\O重定向並存入相應的結構數組
查看字元串是否匹配
check() 用來區分長命令中各個數據字典一中的元素的標准,為分割長命令提供參考信息
執行簡單命令
run_com() 該模塊與操作系統底層聯系,使用系統調用完成各個簡單命令的最終執行
程序初始化
init_once() 對程序中用到的所有變數和數據結構進行初始化

7. 建立UT伺服器

UT2003伺服器架設指南

做伺服器前先到:
http://www.unrealtournament2003.com/...atedserver.php
下載伺服器版UT2003,(v2107, Windows: 265MB | Linux: 249MB)安裝需要780M硬碟空間。
http://ut2003master.epicgames.com/ut...rver/cdkey.php
申請伺服器專用CD-KEY

下載伺服器安裝文件後:
linux用戶:新建一個用戶帳號專門用來運行伺服器,用這個用戶登錄,運行ut2003lnxded.sh.bin文件。跟具屏幕提示繼續。
windows用戶:把zip文件解壓縮到硬碟中,沒有安裝程序,解開來就行了。

在配置伺服器前先下載最新升級補丁,給伺服器程序升級。
再下載evolutionpack2,它能幫你解決許多用web頁面管理上面的問題,和修正了一些bug。
http://unreal.cpgl.net/UT2003/patch/evolutionpack2.zip 20KB

安裝伺服器:

在你下載完並解壓縮所有需要的文件後:

A 如果你已經在機器上裝了零售版UT2003,那麼跳到第M條
B 如果你下載了免費的伺服器專用程序,且不需要再申請伺服器專用cdkey,那麼跳到第D條
C 如果你是使用零售版UT2003來運行伺服器的話,那先安裝游戲,游戲會自動添加註冊表中必要的信息。跳到第M條。
D 打開 http://ut2003master.epicgames.com/ut...rver/cdkey.php ,輸入一些需要的信息後,伺服器專用CDkey會通過email發給你。linux用戶需要把收到的cdkey文件復制到你的系統文件夾中
E 如果你已經知道怎麼在注冊表裡添加CDKEY就跳過這一步到J。
F 點擊開始--->運行。在窗口中輸入 regedit ,回車。
G 在注冊表管理器中,雙擊"HKEY_LOCALMACHINE"展開它,雙擊"software"展開它,在它下面找到"Unreal Technology"文件夾.如果這個文件夾已經存在,跳到J。
H 添加一個新的鍵值。單擊"software"文件夾,然後點編輯--->新建--->主鍵。一個新的文件夾就出現了,有一個高亮的區域讓你給它命名,輸入Unreal Technology 回車。
I 單擊剛才新建的文件夾,點編輯--->新建--->主鍵。一個新的文件夾出現啦,又有一個高亮的區域讓你命名,輸入 Install Apps 回車,跳到K。
J 在Unreal Technology Installed apps文件夾下找到"UT2003"文件夾,如果它存在,跳到L
K 單擊"Installed Apps"文件夾,點編輯--->新建--->主鍵。一個嶄新的文件夾誕生啦,有一個高亮的區域讓我們命名,輸入UT2003 回車。
L 單擊"UT2003"文件夾,點編輯--->新建--->建值。一個新的文件夾又出現啦,又有一個高亮的區域可以讓我們起名字啦。輸入 "CDKEY",回車。雙擊新建立的鍵值,你就可以編輯它的值。在裡面輸入你的cdkey序列號。點OK。關掉注冊表編輯器。
M 如果你知道怎麼用命令行命令進入你的虛幻安裝文件夾里的system文件夾,跳到步驟O
N 用命令行建立伺服器。我把我的文件安裝在UT2003server,我用這個舉例子,輸入cd ut2003server\system
O 輸入ucc server DM-Antalus.ut2

如果一切順利,一個專用伺服器就架設好了,游戲中的地圖是DM-Antalus。
默認下面,專用伺服器的配置是給internet游戲配置的。這意味著它他嘗試和國外的主伺服器聯系把它加入到主伺服器的資料庫里,這樣你的伺服器就可以出現在別人的伺服器搜索列表裡。目前有兩個不同的主伺服器在運行,Epic的和Gamespy的。

如果你在機器上已經安裝了零售版的UT2003,那就不必運行Epic mail給你的.reg文件了,否則你注冊表裡的CDKEY會被改成伺服器專用的,這樣你自己就不能用這台機器玩了。

如果你是在居域網里建立伺服器,並且想禁止UT2003和主伺服器聯系那就編輯UT2003.ini里修改下面的句子(如果找不到這部分,就在最後加後這幾行):
[IpDrv.MasterServerUplink]
DoUplink=False
UplinkToGamespy=False

配置伺服器
現在你應該知道最基本的架設伺服器的方法了,你需要把它配置成你需要的。下面的每個部分都有詳細的常見問題解答

System 文件夾里有最重要的三個文件:user.ini runserver.bat和ut2003.ini 。 user.ini保存了地圖循環列表。ut2003.ini保存了許多其他設置。runserver.bat 保存了啟動伺服器的設置。Linux用戶沒有runserver.bat文件,你要把每次都輸入一長串命令啟動伺服器,或者你必須用一個外殼腳本啟動伺服器。(linux上用腳本啟動UT2003伺服器的例子參見http://www.ina- community.com/forums/showthread.php?s=&threadid=231043)
如果你架設多個伺服器,通常你會使用一個共同的ut2003.ini文件,然後用不同的runserver.bat或者外殼腳本啟動不同的伺服器,下面是一個runserver.bat的例子:
ucc.exe server DM-Antalus?game=XGame.XDeathmatch?maxplayers=16?minplayers=4?timelimit=20?fraglimit=25

ucc.exe 是伺服器的執行文件,"server"告訴uccc下面要架設一個專用伺服器。後面的東西是一些參數,設置伺服器的游戲規則。第一條是伺服器初始游戲的地圖名字,這個例子中是DM-Antalus。跟著是游戲類型,例子中是死亡模式。不同的參數用問號分隔。不管你輸入多少參數,整個命令都必須在一行中,如果分開來就不管用了。
下面列出ucc後面可以使用的所有參數列表。注意下面有一些參數在運行伺服器是是感覺不出有什麼變化的,列出它們只是為了列表了完整性:

AccessControl 用來打開高級管理員系統。和UT2003.ini中[Engine.GameInfo]部分里的AccessConrolClass一行的參數相同。
AdminName=xxxx 網頁管理和控制台管理員的名字--參看下面的高級網頁管理員部分。
adminpassword=xx 管理員密碼。至少5位,否則無效。
bAutoNumBots=true/false 設置成true在人數小於地圖默認設定的最小數時,會自動加入電腦bot補足。設置成false則不會。
autoadjust=true/false 設置成true,電腦bot會跟具玩家水平自動調整自己的等級。false則不會。
bPlayerMustBeReady=true/false 設置成true打開比賽模式,每局開時前所有玩家要按下滑鼠確認後游戲才開始。false則不需要。
Balanceteams=true/false 自動分配玩家平衡隊伍。
BlueTeam= 設置藍隊的名字。但是,不要以為你可以改變隊伍的名字。However, don't get clever and decide you'll name the blue team Purple or something like that. Many classes in the game refer to this variable to perform team info logic這句話不太好翻自己看吧。總之最好不要加這個參數,加上它會有不良後果。
BlueTeamAI= 特別的參數用來控制藍隊電腦AI。給MOD製作者用來配置自己寫的AI給新的游戲模式用的。別碰它。
BlueTeamSymbol= 設置藍隊的隊標。最好別設它。
Character=X 玩家用的人物,架伺服器時無效。
Class 如果在架伺服器的時候使用,在伺服器玩的玩家只能用默認的人物皮膚。通常玩家都會用自己喜歡的人物皮膚。所以這個命令毫無用處。
difficulty=x 設置電腦登記,從1到7分別是novice到godlike。
FF=x 友隊傷害的百分比。0是關閉,1是100% 所以.25就是25%友隊傷害。
fraglimit=x 死亡模式最多殺人數。
game= 游戲類型,可以用:xDeathmatch, xCTFgame,xBombingRun,或者xDoubleDom
gamepassword= 做為客戶端加入游戲時需要的密碼。
GameRules 設置特別的GameRules類,GameRules是mutator在UT2003中增加的新類型。通常你不需要用它。幾乎所有的mod都會自己動配置它們自己的GameRules。
Gamespeed=x 設置游戲速度,默認是1。最大2
Gamestats=true/false 設置成true會打開統計功能(玩家的游戲資料,如命中率等會上傳到主伺服器資料庫進行統計並參加全世界排名),電腦數量必須設為0才能生效。
goalscore=x CTF,DOM和BR模式里的隊伍分數上限。
maxlivers=x last man standing模式,死x後玩家就出局,直到只剩最後一人游戲結束。
maxplayers=x 最大同時游戲人數。
maxspectators=x 最大同時觀戰者人數。
minplayers=x 最小游戲人數,小於此數用電腦bot補足。
mutator= 在游戲中添加mutator(具體看下面)
numbots=x 設置電腦bot數量。注意打死bot,游戲統計功能就無效了。
Password=xxxx 別的游戲者端加入游戲時需要的密碼。
PlayerMustbeready=true/false 在每局開始前等待其他的玩家。
QuickStart 允許游戲在沒有人的時候照常進行,當然有電腦bot在玩的時候有效。
RedTeam 參看BlueTeam
RedTeamAI 參看BlueTeamAI
RedTeamSymbol 參看BlueTeamSymbol
SaveGame 繼續一個保存過的單人游戲。架伺服器時沒用。
SpectatorOnly=True/False 客戶端選項,允許客戶端用命令行指定觀察者模式,架伺服器時沒用。
Team 客戶端選項,允許客戶端用命令行指定希望加入的隊伍。同樣架伺服器時沒用。
translocator=true/false 設置為true允許使用移位器,false相反。
timelimit=x 每局時間限制。
Tournament=true/false 設置成競技場模式
weaponstay=true/false 武器保留。

幾個例子:

ucc server DM-Antalus?game=XGame.XDeathmatch?minplayers=4 架設死亡模式伺服器,初始地圖DM-Antalus,最少4人,不足4人用電腦補足。

ucc server CTF-Citadel?game=XGame.xCTFGame?FF=0 架設奪旗模式伺服器,初始地圖CTF-Citadel,無友隊傷害。

ucc server DOM-SunTemple?game=xGame.xDoubleDom?mutator=UnrealGame.MutLowGrav 雙重據點模式伺服器,初始地圖DOM-SunTemple,低重力模式開啟。

ucc server BR-Anubis?game=XGame.xBombingRun?weaponstay=true 架設BR模式伺服器,初始地圖BR-Anubis,武器保留開啟。

ucc server DM-Curse3?game=XGame.xTeamGame?fraglimit=100 團隊死亡模式,初始地圖DM-Curse3,殺人數上限100.

關於和主伺服器的聯系
如果你不想你的伺服器顯示在游戲的伺服器搜索列表裡,或者你只是在居域網里的伺服器,你可以在UT2003.ini里把下面這些關掉
[IpDrv.MasterserverUplink]
DoUplink=true|false 控制你的伺服器是否與internet上的主伺服器聯系。
UplinkToGamespy=true|false 和DoUplink相似,是決定是否和gamespy伺服器建立聯系。
SendStats=true|false 是否發送統計信息到主伺服器
ServerBehindNAT=true|false 伺服器是否在網關後面。
DoLANBroadcast=true|false 設置伺服器是否可以在居域網中查找到。一般設true

地圖循環和個性化地圖列表
默認下游戲會地圖會循環出現。 循環順序在user.ini文件裡面控制。 每個游戲類型都有一個部分列出循環的地圖。你可以編輯它,去掉你不喜歡的,加上你喜歡的地圖。如

[XInterface.MapListDeathMatch]
MapNum=0
Maps=DM-Morbias-2k3
Maps=DM-Spacepir8
Maps=DM-KillingField
Maps=DM-Deck16]i[-BETA
Maps=DM-MoonTemple
Maps=DM-Reigncaster
Maps=DM-Golgatha
Maps=DM-Tooth-N-Claw
Maps=DM-Stage1
Maps=DM-Liandri2003_BETA2

如果你想玩更多的地圖,就去網上下載吧。把他們解壓縮後把ut2文件放到map文件夾里,utx放到texture文件夾里,以及其他相應文件都放到相應目錄里,你就能使用新地圖了。

在一個游戲伺服器上運行多個游戲類型
你可能會想在一個游戲伺服器上運行多個游戲類型,比如 CTF,DOM,BR。可以用以下方法切換地圖,舉例如下:
比如 我們先開始一個死亡模式游戲在DM-Asbestos地圖上。因為現在是死亡模式,游戲結束後UT會檢查user.ini中[XInterface.MapListDeathMatch]部分索取下一張地圖的名字。它找到了BR-Anubis地圖名字,然後就切換到BR模式讀取BR-Anubis地圖。一但BR-Anubis的游戲結束後,UT會檢查 [XInterface.MapListBombingRun]部分,因為已經是BR模式了。它又找到CTF-Citadel地圖,然後就換成CTF模式,繼續....

[XInterface.MapListCaptureTheFlag]
MapNum=0
Maps=DM-Asbestos?game=XGame.xDeathMatch

[XInterface.MapListDeathMatch]
MapNum=0
Maps=BR-Anubis?game=XGame.xBombingRun

[XInterface.MapListBombingRun]
MapNum=0
Maps=CTF-Citadel?game=XGame.xCTFGame

第三方地圖和重定向
如果你使用了不是游戲自帶的第三方地圖,別人連上伺服器就可能花很長時間下載地圖同時佔用別的游戲者的帶寬使游戲不流暢,解決方法可以是把地圖文件放到另一個網頁伺服器上然後告訴客戶端自動從那裡下載
用 UT2003compress(可以在http://www.drunksnipers.com下載)...?的ut2003.ini 下面的部分重定向下載伺服器:
IpDrv.HTTPDownload]
HTTPServer=http://server.domain.name/myUTmaps/
Proxyserver=
Proxyport=
UseCompression=True

記住httpserver=後面的地址最後一定要加上個"/" ,否則它不會工作。如果碰到問題的話,把域名改成網頁伺服器的IP地圖試試看(比如192.168.1.10)

Mutators
Mutators要和啟動命令加在同一行里。下面的例子是架設一個死亡模式的伺服器地圖是DM-Asbestor帶大頭的mutator和Instagib的mutator:
ucc.exe DM-Asbestos?Game=XGame.xDeathmatch?Mutator=UnrealGame.MutBigHead,XGame.MutInstaGib

默認mutator參數列表:
Arena - XWeapons.MutArena
Big Head - UnrealGame.MutBigHead
Float-Away Corpses - XGame.MutHeliumCorpses
InstaGib - XGame.MutInstaGib
Zoom InstaGib - XGame.ZoomInstaGib
LowGrav - UnrealGame.MutLowGrav
No Adrenaline - XGame.MutNoAdrenaline
No Super Weapons - XWeapons.MutNoSuperWeapon
Quad Jump - XGame.MutQuadJump
AutoHealing - XGame.MutRegen
Slow Motion Deaths - XGame.MutSlomoDeath
Species Specific Stats - XGame.MutSpeciesStats
Vampire - XGame.MutVampire
注意部分mutator參數的前綴的不同:XWeapons , UnrealGame 等。

給每張地圖不同的Mutator
你可以通過修改user.ini為每張地圖設置不同的mutator 。除非你換掉它們,這些mutator會在所有地圖中生效。你可以用"mutator="後面什麼也不要加來在下一張地圖中去掉mutator。下面的例子是在DM-Antalus地圖上的游戲帶有Slow-mo death和low-grav兩個mutator,然後在下一張DM-Golgotha時去掉它們。
Maps=DM-Reigncaster
Maps=DM-Antalus?game=XGame.xDeathMatch?mutator=XGame.MutSlomoDeath,unrealGame.MutLowGrav
Maps=DM-Golgatha?mutator=
Maps=DM-Asbestos

同樣的方法可以載入其他的命令在後面,比如你可能想在某一張地圖上有隊友傷害,然後在下一張地圖中去掉它:
Maps=CTF-Chrome?FF=0.75
Maps=CTF-Citadel?FF=0

頁面管理員和高級頁面管理
基本的頁面管理員通過在runserver.bat里指定管理員名字和密碼,並編輯ut2003.ini中[UWeb.WebServer]部分啟用。這將允許你通過web頁面完全控制伺服器,只需要一個管理員帳號。注意,這些都不需要通過IIS或者Apache就可以完成。UT伺服器提供了自己的web頁面伺服器。如果你的伺服器上運行了IIS或者Apache,你要把它們的監聽埠口改成80以外的。
[UWeb.WebServer]
bEnabled=True
Listenport=xxxx
高級網頁管理員允許多個不同控制許可權的管理員帳號。注意,那個evolutionpack目前發現在使用高級管理員下有潛在的嚴重安全漏洞。我強烈建議在互聯網遠程式控制制系統中不要使用它。
具體的高級管理員指南參見http://www.unrealadmin.org/moles.p...rticle&artid=7
你應該在你的runserver.bat里加上管理員名字和密碼參數,除非你不想使用高級網頁管理工具。

一台機器上架設多個伺服器
你可以有兩種方法在一台機器上架設多個伺服器:給每個伺服器不同的埠號,或者分配不同的IP地址給你的每個UT伺服器,
如果你用不同的埠號架設伺服器,你可能碰到他們在游戲的伺服器搜索列表裡顯示不出來的問題。
如果你有多個IP你可以用-multihome 參數在runserver.bat里給每個伺服器綁定不同IP。例如下面把IP地址192.168.0.1綁到伺服器上
ucc server DM-Antalus?game=XGame.xDeathMatch -multihome 192.168.0.1
在linux下面,你需要戀情multihome=ip的參數:
ucc server DM-Antalus?game=XGame.xDeathMatch -multihome=192.168.0.1

伺服器在網關,防火牆,路由器後面
如果你的伺服器在網關,防火牆,路由器後面你需要打開一些埠讓外面的客戶端連進來。默認的埠有7777,7778,7787,7788,28900,28902。我現在還不確定他們是TCP,UDP或者兩者都是。
你還要在UT2003.ini中找到[IpDrv.MasterServerUplink]部分,把ServerBehindNat設為true。
除非你改變了埠(如上面說的一台機器運行多個伺服器)那麼凡是你用到的埠都要打開。

硬體要求
Epic建議,兩個32人的專用伺服器在一台伺服器主機上需要一台1.7G的CPU。你至少需要128M內寸(最小級限了)。
最近改一些客戶端的項目,測試的時候需要使用windows,因為是windows的客戶軟體,所以不得不使用windows, 原來總是在我的debian上安裝vmware, 自從升級內核到2.6.17後,發現怎麼安裝vmware都有問題, 就比較煩,原來看到過華華說過qemu,0.8.1的時候安裝過一次,感覺不是太理想,尤其是sdl的屏幕造成滑鼠拖動很慢, 去主戰的forum里看了看,發現這個已經被patch掉了。
而且kqemu又到了pre9了。正好試一下。

說一下目的:
安裝qemu和kqemu, 配好網路。實現virtual machine 和 host 能夠互通,也就是不是使用默認的user模式。 而改使用tun/tap的模式。

這里有兩個要求:
第一:內核要支持network filter. 尤其要用到的是nat.
第二:內核要支持tun/tap模塊。

我的是debian,自己編譯的內核,所以在編譯的時候就已經弄好了,由於我從來不用官方的內核,所以我就不知道debian的管方內核是不是已經有了。
不過可以自己看一下。
iptables的支持是不用問的,一般都是內置的。
就是tun/tap設備的支持。 這一點,可以這樣看一下:
modprobe tun, lsmod 看一下有沒有tun 如果成功,就是支持的, 而且是被編譯成了模塊,如果沒有,可以看一下:/dev/net/,看看是不是存在tun這樣一個文件,如果存在就是內核內置的,沒有編譯成模塊,另外, 如果編譯成了模塊,也要注意是否有這個文件存在。不在的話,得自己建了。
mknode /dev/net/tun, 一般現在的發行版都會在你modprobe tun時自動幫你弄好,所以不用擔心這個。

好了。我們開工了。

從主站上下載回來qemu的源碼
tar zxvf qemu-0.8.2.tar.gz
cd qemu-0.8.2
gcc -v
這里看一下gcc的版本。
qemu目前只能用gcc3來編譯。如果你的是gcc4,
就su - 一下,到root, 然後到/usr/bin/
看一下有沒有gcc3
有的話,看看原來的gcc是鏈接還是一個文件。如果是一個文件,就備份一下,呆會恢復。 如果是鏈接就不用管它了。看它指向哪一個gcc, 記得呆會兒要恢復過來的。 鏈接的做法簡單了: ln -s gcc-3.3 gcc
就這樣的。 備份就更簡單了。mv gcc gcc.bak

回到我們剛才的目錄里。
運行:
./configure
make
make install
這樣就裝好了qmeu,

現在我們需要使用kqemu模塊來加速了。
下載回來kqemu-1.3.0pre9.tar.gz.
解開後。
tar zxvf kqemu-1.3.0pre9.tar.gz
然後進入到目錄里。這個時候有兩件事要注意:
1. 需要有你現在所用的內核的內核頭文件。
2. gcc的版本要和你的內核編譯的gcc版本一致。一搬來說就是你剛才改過的哪個了。恢復回來就好了。
好了。
./configure && make && make install
就好了。

我們已經就裝好了所有的軟體。
但是有時候我們需要一些設置才能工作。

1. modprobe kqemu
2. 看看/dev/kqemu 字元文件是否存在。
3. /dev/kqemu 文件的許可權要是0666的。

做好這些後就可以開始安裝你的虛擬機了,
安裝好,我們再設置你的網路

退出你的root, 然後
cd ~ 進入你的home directory
mkdir qemu
cd qemu
qemu-img create win2k.img 2G
建立一個硬碟文件。然後我們就可以在這個上面安裝win2000了。

可以使用iso文件, 也可以使用光碟。

我們這里使用光碟來安裝。
qemu -hda win2k.img -cdrom /dev/cdrom -boot d -localtime -m 256 -win2k-hack

這樣就可以開始安裝2000了。解釋一下這里的選項:
-hda 指定第一個硬碟。
-cdrom 指定你的cdrom 後面的文件可以是一個iso文件
-boot d 從光碟啟動,如果從你的硬碟啟動,就-boot c, -localtime使用本機的時間。 -m 就是設定內存的大小。默認是128, 注意可以設得大一點的內存,但是需要你的/dev/shm足夠大。
-win2k-hack, 在安裝2000的時候會有一個問題,它會提示你磁碟空間不夠,加上這個參數就可以了。

好了。
安裝完成了之後,就可以啟動來看一把了。
啟動如下:
qemu -hda win2k.img -boot c -localtime -m 256. 這樣就默認使用了kqemu

現在應該也可以上網了,但是注意虛擬機使用的是dhcp的方式來上網的。
而且不能ping通你的本機,我想這個可能是大多數人不想要的,所以下面我們來配置網路。 通過tun/tap, 有點象vmware里的host-only

要配置host-only(tun/tap)這樣的網路,我們上面已經講過了兩個要求,現在我們來做更多的事:

1、 建立一個文件 /etc/qemu-ifup
內容很簡單:
#!/bin/sh
sudo /sbin/ifconfig $1 192.168.0.1 netmask 255.255.255.0

然後chmod a+x /etc/qemu-ifup

注意這里的192.168.0.1是你的tun/tap網卡的地址,一定要注意:不能和你的實際的網卡在同一個網段。 也就是如果tun/tap是192.168.2.0.0/24, 那麼你的時間網卡就不能在這個網段。

然後寫一個小的腳本:
userinit 這個是文件名:
文件內容如下:

#!/bin/bash

case "$1" in
start)
[ ! -e /dev/kqemu ] && mknod -m 666 /dev/kqemu c 250 0
echo 1024 > /proc/sys/dev/rtc/max-user-freq
echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j MASQUERADE
;;
stop)
;;
esac

然後:chmod a+x userinit

再:mv userinit /etc/init.d/
再: update-rc.d userinit start 25 2 3 .

要注意的是這個操作是在debian 下面的做法。
如果是在其他發行版:比如Fedora, 你可以直接寫這樣的script在你的/etc/rc.local文件里

[ ! -e /dev/kqemu ] && mknod -m 666 /dev/kqemu c 250 0
echo 1024 > /proc/sys/dev/rtc/max-user-freq
echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j MASQUERADE

編輯你的/etc/moles. 加上: kqemu (如果你的tun被編譯成了模塊,也加上tun)

最後還有一點。大家一定注意到了一個問題: 就是qemu-ifup腳本哩使用了so, 所以如果想普通用戶能用,那麼就配一下sudoer.
這個好配極了。 編輯:/etc/sudoers
你的用戶名 ALL=(ALL):ALL NOPASSWD:ALL
這樣就可以不用輸入密碼了。

現在我們可以開始啟動你的虛擬機了。
要象這樣啟動:

qemu -hda win2k.img -boot c -localtime -m 256 -net nic,vlan=0 -net tap,vlan=0

如果嫌麻煩,
就乾脆寫一個一句話的腳本:
#!/bin/bash
qemu -hda win2k.img -boot c -localtime -m 256 -net nic,vlan=0 -net tap,vlan=0

存儲為win2k, 加上x的許可權,然後放置到/usr/bin, 或者是/usr/local/bin下
以後直接運行win2k, 就可以啟動2000了。
同理也可以安裝多個系統,寫多個腳本啟動。
這樣比較的酷

8. 如何搭建ftp伺服器

Ubuntu自帶的FTP伺服器是vsftpd
1、安裝vsftpd

sudo apt-get install vsftpd
安裝了之後會在/home/下建立一個ftp目錄。這時候你可以試著訪問下ftp://IP地 址。應該可以看到一個空白內容的ftp空間。
默認設置下匿名用戶可以下載,但不能寫入或是上傳
2、設置 vsftpd.conf文件
現在我們要讓匿名用戶無法訪問,並且得輸入linux上的用戶密碼後才能訪問到他們自己目錄里的內容。
首先找到設置vsftpd的文件,位置在/etc/vsftpd.conf
sudo gedit /etc/vsftpd.conf

伺服器的配置
1. 匿名伺服器的連接(獨立的伺服器)

在/etc/vsftpd/vsftpd.conf配置文件中添加如下幾項:
Anonymous_enable=yes (允許匿名登陸)

Dirmessage_enable=yes (切換目錄時,顯示目錄下.message的內容)
Local_umask=022 (FTP上本地的文件許可權,默認是077)
Connect_form_port_20=yes (啟用FTP數據埠的數據連接)*
Xferlog_enable=yes (激活上傳和下傳的日誌)

Xferlog_std_format=yes (使用標準的日誌格式)
Ftpd_banner=Moonlight Ftp Server (歡迎信息)
Pam_service_name=vsftpd (驗證方式)*
Listen=yes (獨立的VSFTPD伺服器)*

功能:只能連接FTP伺服器,不能上傳和下傳

註:其中所有和日誌歡迎信息相關連的都是可選項,打了星號的無論什麼帳戶都要添加,是屬於FTP的基本選項

2. 開啟匿名FTP伺服器上傳許可權

在配置文件中添加以下的信息即可:
Anon_upload_enable=yes (開放上傳許可權)
Anon_mkdir_write_enable=yes (可創建目錄的同時可以在此目錄中上傳文件)
Write_enable=yes (開放本地用戶寫的許可權)
Anon_other_write_enable=yes (匿名帳號可以有刪除的許可權)

3. 開啟匿名伺服器下傳的許可權
在配置文件中添加如下信息即可:
Anon_world_readable_only=no
註:要注意文件夾的屬性,匿名帳戶是其它(other)用戶要開啟它的讀寫執行的許可權
(R)讀-----下傳 (W)寫----上傳 (X)執行----如果不開FTP的目錄都進不去

4.普通用戶FTP伺服器的連接(獨立伺服器)
在配置文件中添加如下信息即可:
Local_enble=yes (本地帳戶能夠登陸)
Write_enable=no (本地帳戶登陸後無權刪除和修改文件)
功能:可以用本地帳戶登陸vsftpd伺服器,有下載上傳的許可權
註:在禁止匿名登陸的信息後匿名伺服器照樣可以登陸但不可以上傳下傳

5. 用戶登陸限制進其它的目錄,只能進它的主目錄
設置所有的本地用戶都執行chroot
Chroot_local_user=yes (本地所有帳戶都只能在自家目錄)
設置指定用戶執行chroot
Chroot_list_enable=yes (文件中的名單可以調用)
Chroot_list_file=/任意指定的路徑/vsftpd.chroot_list
注意:vsftpd.chroot_list 是沒有創建的需要自己添加,要想控制帳號就直接在文件中加帳號即可

6. 限制本地用戶訪問FTP

Userlist_enable=yes (用userlistlai 來限制用戶訪問)

Userlist_deny=no (名單中的人不允許訪問)

Userlist_file=/指定文件存放的路徑/ (文件放置的路徑)

註:開啟userlist_enable=yes匿名帳號不能登陸

7. 安全選項

Idle_session_timeout=600(秒) (用戶會話空閑後10分鍾)
Data_connection_timeout=120(秒) (將數據連接空閑2分鍾斷)
Accept_timeout=60(秒) (將客戶端空閑1分鍾後斷)
Connect_timeout=60(秒) (中斷1分鍾後又重新連接)
Local_max_rate=50000(bite) (本地用戶傳輸率50K)
Anon_max_rate=30000(bite) (匿名用戶傳輸率30K)
Pasv_min_port=50000 (將客戶端的數據連接埠改在
Pasv_max_port=60000 50000—60000之間)
Max_clients=200 (FTP的最大連接數)
Max_per_ip=4 (每IP的最大連接數)
Listen_port=5555 (從5555埠進行數據連接)

8. 查看誰登陸了FTP,並殺死它的進程

ps –xf |grep ftp
kill 進程號
最後重啟動服務
sudo /etc/init.d/vsftpd restart

9. con=DriverManager.getConnection("jdbc:odbc:moon","",""); stmt=con.createStatement();

getConnection("jdbc:odbc:moon","","")
這是一個url的典型寫法:
分別表示伺服器地址,埠,資料庫名
當然也可以把用戶名和密碼寫在一起。

createStatement = 創建用於執行靜態 SQL 語句並返回它所生成結果的對象。之後,就可以使用executeQuer()這個方法來執行SQL詞句

熱點內容
il腳本 發布:2025-02-08 03:08:49 瀏覽:315
我的世界介紹神奇寶貝伺服器 發布:2025-02-08 03:02:52 瀏覽:747
咪咕音樂linux 發布:2025-02-08 02:53:04 瀏覽:410
我的世界手機版大陸練習伺服器 發布:2025-02-08 02:50:43 瀏覽:213
php的特點與優勢 發布:2025-02-08 02:43:16 瀏覽:718
微信公眾號怎麼上傳pdf 發布:2025-02-08 02:42:41 瀏覽:348
安卓如何查看通話總時長 發布:2025-02-08 02:27:49 瀏覽:579
快速dct演算法 發布:2025-02-08 02:19:04 瀏覽:623
淘寶交易密碼如何改 發布:2025-02-08 02:17:32 瀏覽:775
php的進階 發布:2025-02-08 02:17:28 瀏覽:677