1. 程式人生 > >Linux下搭建BT伺服器

Linux下搭建BT伺服器

P2P(Peer to Peer 即對等網路)就是在這種背景下提出的一種網路技術,P2P可以簡單地定義為通過直接交換資訊,共享計算機資源和服務,對等計算機兼有客戶機和伺服器的功能。在這種網路中所有的節點是對等的(稱為對等點),各節點具有相同的責任與能力並協同完成任務,對等點之間通過直接互連實現資訊資源、處理器資源、儲存資源甚至快取記憶體資源等的全面共享,無需依賴集中式伺服器支援。

隨著寬頻網可使大家在網際網路上共享到平時用普通方式難以接觸到的各種各樣海量的資源。使用P2P軟體的每一臺PC 都是客戶機在下載資源,也是伺服器在上傳檔案,在索取的同時也給予。

BT相信大家都知道了。解釋一下BitTorrent是一個多點下載的開放原始碼的P2P軟體,使用的盛行,傳統的HTTP和FTP這種一點對多點的下載方式已經滿足不了大家的需求了。它會隨著下載人數增加而出現連線不上和速度驟減的現象。而P2P技術則打破常規格式,極大地節省了網路頻寬。可使你直接連線其他使用者的計算機,交換和搜尋檔案,而不用再通過網頁瀏覽與下載,最大限度地利用了網路頻寬。它非常方便。是一個多點下載的共享檔案軟體,由於在下載的同時,也可為其他使用者提供上傳,所以不會隨著使用者人數的增加而降低下載速度,因此,下載的人越多,速度便越快。現在不少大公司如RedHat,都有使用BT讓他們的客戶下載開發版本。



Linux下的P2P協議主要包括:BitTorrent、aMule、Gnutella等。本文以普遍使用的BitTorrent為例介紹使用P2P服務的方法。

1、搭建BitTorrent伺服器

BitTorrent使用Python語言編寫,是一個開放原始碼軟體,既可以在Windows下執行,也可以在Linux環境下執行,目前在Linux下的最新版本是6.1.2。

BitTorrent的官方網址:http://bitconjurer.org/BitTorrent/

安裝BitTorrent軟體

由於該軟體採用Python編寫,所以安裝BitTorrent前需要使用命令:#rpm -qa|grep Python


檢查是否配置了Python語言。否則需要到Python的官方網站http://www.python.org下載安裝,然後執行如下命令對BitTorrent軟體進行安裝:#rpm -ivh BitTorrent-6.1.2.Python2.4.noarch.rpm

安裝完成後所有BitTorrent命令和工具都安裝在/usr/bin目錄下。包括:btmaketorrent.py(製作種子工具)、bttest.py(測試種子工具)、bttrack.py(製作Tracker工具)、btdownloadheadless.py(製作共享源工具)、btlaunchmany.py(後臺啟動共享源工具)、btshowmetainfo.py(檢視下載情況工具)、btdownloadgui.py(圖形化製作共享源工具)、btmaketorrent.py(圖形化製作種子工具)。

配置和啟動BitTorrent


BitTorrent的核心是Tracker,BitTorrent服務不需要伺服器,但是BitTorrent服務中仍然有伺服器的概念,這裡稱作Tracker。準確地說,Tracker是指執行的伺服器上的一個程式,這個程式可以跟蹤多少人同時在下載同一個檔案。BT客戶端連線到Tracker時會產生一個下載人員名單,根據這個名單,BT客戶端會自動連線網路中其他節點進行下載。所以第一步要啟動一個Tracker:# ./bttrack.py --port 8760 --dfile dstate > /dev/null 2>&1 &

推薦使用普通使用者許可權來啟動這個服務,這樣更加安全。這個命令會在當前目錄生成一個dstate的檔案,並開啟8760埠。

製作種子(Seed)

BT伺服器的track服務並不提供下載服務,提供下載的是它的種子(seed),就是一個已經下載完成或正在下載的客戶端。因為一開始沒有這樣的種子,所以你得先自己生成一個,如果要為/home/cjh.avi製作種子,相關命令是:# ./btdownloadheadless.py --max_allow_in 200 --max_upload_rate 100 --minport 8888 --m

相關引數說明如下:

--max_allow 200:指明這個種子最多可以接受200個連線。
--max_upload_rate 100:指這個種子最大的可以接受下載的頻寬100 KB(byte)/s,這樣可以控制下載頻寬。
--minport 8888 --maxport 8888:設定最大最小監聽埠號碼,這樣寫就是說種子只監聽8888埠,這樣方便在防火牆上開埠。
mp3.vio.torrent:是製作的種子檔名稱。
設定Apache伺服器

配置Web伺服器讓種子(.torrent)檔案和application/x-bittorrent相關聯。不久Apache配置檔案:/etc/httpd.conf,加入一行:AddType application/x-bittorrent .torrent

然後,我們需要重新啟動Web伺服器,並且開啟防火牆6888埠:

相關推薦

Linux搭建BT伺服器

P2P(Peer to Peer 即對等網路)就是在這種背景下提出的一種網路技術,P2P可以簡單地定義為通過直接交換資訊,共享計算機資源和服務,對等計算機兼有客戶機和伺服器的功能。在這種網路中所有的節點是對等的(稱為對等點),各節點具有相同的責任與能力並協同完成任務,對等點之間通過直接互連實現資訊資源、處理

Linux搭建Git伺服器 Jenkins持續整合環境部署

1、安裝Git 見 Jenkins持續整合環境部署 第四節 2、建立Git使用者和使用者組 1 groupadd git 2 useradd git -g git 3、建立證書切換到git使用者建立證書 1 su git 2 cd /home/git 3 mkdir .ssh 4 c

Linux 搭建 Git 伺服器後如何新建專案和新增使用者

關於如何在Linux 下搭建 Git 伺服器的問題,大家可以參考這篇文章(https://www.cnblogs.com/dee0912/p/5815267.html)。 我按照上面文章內容操作,確實搭建完成Git伺服器後,但是又出現了一個問題,如何新建專案,並且把參與開發人員加到該專案呢?下面

Linux搭建FTP伺服器(Ubuntu16.04)

搞了下FTP伺服器,基本上能遇到的問題都遇到了-。-! 先說步驟: 1.安裝vsftpd軟體包 sudo apt-get install vsftpd 2.開啟配置檔案 vim /etc/vsftpd.conf 3.修改引數 一些引數可以去掉註釋啟用,為了方便,

【git】搭建git伺服器Linux 搭建 Git 伺服器

在 Linux 下搭建 Git 伺服器 目錄 ① 安裝 Git ② 伺服器端建立 git 使用者,用來管理 Git 服務,併為 git 使用者設定密碼 ③ 伺服器端建立 Git 倉庫 ④ 客戶端 clone 遠端倉庫 ⑤ 客

linux搭建郵件伺服器(sendmail)

一、Sendmail概述 sendmail是最重要的郵件傳輸代理程式。理解電子郵件的工作模式是非常重要的。一般情況下,我們把電子郵件程式分解成使用者代理,傳輸代理和投遞代理。使用者代理用來接受使用者的指令,將使用者的信件傳送至信件傳輸代理,如:outlook express

linux搭建java伺服器環境

目錄 1.jdk安裝 2.tomcat安裝 3.redis安裝 4.nginx安裝 5.mysql安裝 一.jdk安裝: (1)去甲骨文官網下載對應版本的jdk這裡以1.8為例:jdk1.8 我這

linux搭建SVN伺服器完全手冊

系統環境        RHEL5.4最小化安裝(關iptables,關selinux) + ssh + yum一,安裝必須的軟體包.        yum install subversion (SVN伺服器)                    mysql-serve

linux搭建SVN伺服器以及遇到的常見問題解決

                server_group = server_pw                client_group = client_pw                test_group = test_pw        5,修改使用者訪問策略                /hom

linux搭建git伺服器

環境: 伺服器 CentOS6.6 + git(version 1.7.1) 客戶端 Windows10 + git(version 2.8.4.windows.1)  ① 安裝 Git Linux 做為伺服器端系統,Windows 作為客戶端系統,分別安裝 Git 伺服器端: ? 1

Redis學習筆記(二)— 在linux搭建redis伺服器

搭建環境:linux是centos7.4(請注意centos7以下版本的防火牆跟centos7以上的會有所區別,使用redis客戶端連線redis時會有區別,建議使用centos7以上版本)一、下載linux版本的redis二、安裝1、使用SecureCRT工具將redis壓

Ubuntu Linux搭建FTP伺服器圖解

1 首先用命令檢查是否安裝了vsftpd vsftpd -version 如果未安裝用一下命令安裝 apt-get install vsftpd 安裝完成後,再次輸入vsftpd -version命令檢視是否安裝成功 2 新建一個資料夾

嵌入式 Linux搭建nfs伺服器

搭建嵌入式nfs時,嵌入式開發板上的系統必須支援nfs客戶端。1. 在電腦伺服器端下載並安裝nfs$ sudo apt-get install nfs-kernel-server nfs-common portmap2.配置共享檔案   將伺服器端(電腦)上一個資料夾作為共享資料夾,以後客戶端(開發板)將通過

Linux 搭建 Git 伺服器

環境: 伺服器 CentOS6.6 + git(version 1.7.1) 客戶端 Windows10 + git(version 2.8.4.windows.1)① 安裝 GitLinux 做為伺服器端系統,Windows 作為客戶端系統,分別安裝 Git伺服器端:#yu

linux 搭建gitlab伺服器

1.開啟ssh軟體,登陸遠端linux伺服器 2.根據linux伺服器的版本,開始安裝gitlab伺服器 Install and configure the necessary dependencies sudo yum install c

Linux 搭建nfs伺服器

NFS 是Network File System的縮寫,即網路檔案系統。一種使用於分散式檔案系統的協定,由Sun公司開發,於1984年向外公佈。功能是通過網路讓不同的機器、不同的作業系統能夠彼此分享個別

linux搭建git伺服器 許可權管理

1、新增git使用者 useradd -m git 2、修改git使用者密碼(密碼為git) passwd git 3、解壓git-1.7.12.2.tar.gz並安裝git tar -x

資料夾許可權問題和linux搭建FTP伺服器

  資料夾許可權問題 Linux、Fedora、Ubuntu修改檔案、資料夾許可權的方法差不多。很多人開始接觸Linux時都很頭痛Linux的檔案許可權問題。這裡告訴大家如何修改Linux檔案-資料夾許可權。以主資料夾下的一個名為cc的資料夾為例。 下面一步一步介紹如何修改許可權: 1.開啟終端。輸入su(沒

linux搭建我的世界spongeforge 伺服器 (海綿端)

以下我用的都是1.10.2版本 且以下用的伺服器連線管理軟體有WinSCP、Xshell 5   首先,去下載一個MC1.10.2的純淨服務端,這個不會很難,百度一下! 比如我下的檔案就叫minecraft_server.1.10.2.jar 然後我們在自己linux系統下的root資料夾

Linux搭建DNS域名解析伺服器

一、技能目標 1、熟悉域名伺服器的各種角色2、學會構建主、從域名伺服器3、構建分離解析的域名伺服器 二、DNS服務簡介 1、DNS系統在網路中的作用就是一個維護著一個地址資料庫,其中記錄了各種主機的域名與IP地址的對應關係。2、DNS系統為客戶提供了正向或方向的地址查詢服務,及正向解析和方向解析,正向解