Chinaunix首页 | 论坛 | 博客
  • 博客访问: 279348
  • 博文数量: 43
  • 博客积分: 2515
  • 博客等级: 少校
  • 技术积分: 510
  • 用 户 组: 普通用户
  • 注册时间: 2006-05-10 16:15
文章存档

2009年(2)

2008年(12)

2007年(29)

我的朋友

分类: LINUX

2009-04-28 14:23:57

原文地址:%E4%B8%BAapt-get%E9%99%90%E9%80%9F

为apt-get限速

此页由Linux Wiki用户于2008年8月28日 (星期四) 10:12的最后更改。

出自Linux Wiki

如果与他人共享互联网,一个人下载速度过快可能会导致同网络的其它用户无法正常上网。尤其是教育网用户,找一个快速的apt-get源并不难,但下载时可能会影响他人使用网络(尤其是对实时性要求很高的局域网游戏)。

目录

[]

方法一:配置apt

一位朋友在邮件列表中发布了限速的文章:

创建文件/etc/apt/apt.conf.d/76download

Acquire
{
Queue-mode "access";
http
{
Dl-Limit "65";
};
};

Queue-mode使用access使apt-get只建立一个连接,而不是像默认的那样为每个服务器建立一个连接。以避免两个连接占满带宽。

apt软件包提供的方案稍有缺陷,下面给出几种间接的解决方法。

方法二:使用限速软件trickle

在Ubuntu Forum中,francesc给出了一个解决方案。该方法使用能限制带宽的软件实现了这一目标。

这一方法针对性强,有限速效果,但CPU占用率极高。

切换至root用户,执行下面的程序:

# 安装trickle
apt-get install trickle
# 备份apt-get的http下载程序
dpkg-divert --local --rename /usr/lib/apt/methods/http
# 生成限速脚本
echo '#!/bin/sh' > /usr/lib/apt/methods/http
echo '/usr/bin/trickle -s -d 25 /usr/lib/apt/methods/http.distrib' >> /usr/lib/apt/methods/http
#添加执行权限
chmod 755 /usr/lib/apt/methods/http

注意上面的-d 25表示限速为25Kb/s。可以根据实际需要做修改。类似地,也可以对ftp协议做修改。

# 备份apt-get的ftp下载程序
dpkg-divert --local --rename /usr/lib/apt/methods/ftp
# 生成限速脚本
echo '#!/bin/sh' > /usr/lib/apt/methods/ftp
echo '/usr/bin/trickle -s -d 25 /usr/lib/apt/methods/ftp.distrib' >> /usr/lib/apt/methods/ftp
#添加执行权限
chmod 755 /usr/lib/apt/methods/ftp

如果要恢复成原状:

rm /usr/lib/apt/methods/{http,ftp}
dpkg-divert --local --remove /usr/lib/apt/methods/http
dpkg-divert --local --remove /usr/lib/apt/methods/ftp

方法三:限制网络接口的速度

可以限制整个网络接口的速度

先安装wondershaper:

# apt-get install wondershaper

限制上、下行带宽(单位Kb):

# wondershaper eth0 2000 240

取消限制:

# wondershaper clear eth0 

更多的信息,详见的说明。

参考资料

取自""
阅读(1575) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~