APT的源列表--sources.list

本文提供了Debian系统的软件源配置建议,通过优化sources.list文件,可以有效提升在中国大陆地区的软件包下载速度,并提供了多个镜像站点及非官方资源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

对于Debian来说,个人认为最好用的就是apt-get了,这是RH/Fedora所不能相比的,但apt-get到哪个服务器上去搜寻所需的DEB 包,哪里的服务速度比较快,哪里的服务器又有我们所需要的非官方包呢?本人参考了论坛上很多的帖子,列出自己的sources.list文件,以供大家参考。
sources.list

# Replace /etc/apt/sources.list with this file will change apt source to Debian Mirror on CN99

deb http://debian.cn99.com/debian/ woody main non-free contrib 
deb http://debian.cn99.com/debian-non-US/ woody/non-US main contrib non-free 
deb http://debian.cn99.com/debian/ sarge main non-free contrib 
deb http://debian.cn99.com/debian-non-US/ sarge/non-US main contrib non-free 
deb http://debian.cn99.com/debian/ testing-proposed-updates main contrib non-free 
deb http://debian.cn99.com/debian-non-US/ testing-proposed-updates/non-US main contrib non-free 
deb http://debian.cn99.com/debian/ sid main non-free contrib 
deb http://debian.cn99.com/debian-non-US/ sid/non-US main contrib non-free 

deb http://debian.cn99.com/debian-security/ sarge/updates main contrib non-free 

deb-src http://debian.cn99.com/debian/ sarge main non-free contrib 
deb-src http://debian.cn99.com/debian-non-US/ sarge/non-US main contrib non-free 
deb-src http://debian.cn99.com/debian/ testing-proposed-updates main contrib non-free 
deb-src http://debian.cn99.com/debian-non-US/ testing-proposed-updates/non-US main contrib non-free 
deb-src http://debian.cn99.com/debian/ sid main non-free contrib 
deb-src http://debian.cn99.com/debian-non-US/ sid/non-US main contrib non-free 

#----------------------------------------------Gnome----------------------------------------------
deb http://debian.cn99.com/debian/ ../project/experimental main 
deb-src http://debian.cn99.com/debian/ ../project/experimental main 

# deb http://pkg-gnome.alioth.debian.org/debian/ experimental main 
# deb-src http://pkg-gnome.alioth.debian.org/debian/ experimental main 

#--------------------------------------------j2re--------------------------------------------------
deb http://jopa.studentenweb.org/ debian/ 
deb http://z42.de/ debian/ 
deb http://www.landshut.org/members/db1ras/debian woody all

#-------------------------------------------mplayer------------------------------------------------
deb ftp://ftp.nerim.net/debian-marillat/ unstable main 

#----------------------------------------Chinese Fonts---------------------------------------------
deb http://211.100.7.181/~liling/debian/ttfonts/ ./ 
deb ftp://debian.linux.org.tw/pub/apt/ unstable main 

#-------------------------------------------php5---------------------------------------------------
deb http://packages.dotdeb.org/ ./ 
deb http://debian.theracingworld.com/ local main contrib non-free 

#-------------------------------------Other No-Offical Sites---------------------------------------

deb http://debian.okey.net/debian-uo/ sid firefly jrfonseca java marillat misc rareware ustc xorg



本文转自 firehare 51CTO博客,原文链接:http://blog.51cto.com/firehare/587191,如需转载请自行联系原作者

<think>好的,用户遇到了APT软件的问题,需要帮助解决。首先,我需要仔细看看用户提供的命令和错误信息。 用户执行了一系列操作,括备份sources.list.d目录,然后尝试将.sources文件转换为.list文件,删除.save文件,但最后运行sudo apt update时出现了错误,提示third-party.sources和ubuntu.sources的第1行格式错误,类型不对。 首先,我需要理解用户的操作意图。用户可能是在尝试将旧的.sources文件转换为.list格式,但可能转换过程中出了问题。因为从APT 1.1版本开始,引入了.sources文件格式,使用deb822风格,而传统的.list文件是单行格式。如果用户错误地将.sources文件重命名为.list,但内容还是deb822格式,就会导致解析错误。 接下来,用户执行的find命令中,检查文件是否含"^deb ",如果存在,就将.sources重命名为.list。但问题在于,.sources文件可能使用的是deb822格式,即多段式结构,而不是以deb开头的单行格式。因此,grep "^deb "可能无法正确识别这类文件,导致误判,进而错误地重命名文件,而内容还是deb822格式,导致APT无法解析。 另外,用户删除.save文件可能没有直接关联错误,但需要确认是否残留了不正确文件。错误信息显示third-party.sources和ubuntu.sources的第1行类型错误,说明这些文件仍然存在,并且APT尝试读取它们时发现格式不正确。可能是因为在重命名过程中,有些.sources文件没有被正确转换,或者被遗漏了。 解决方案应该是恢复被错误重命名的文件,确保.sources文件保持原格式,或者正确转换它们的格式。用户可能需要撤销之前的重命名操作,将.list文件改回.sources,或者将内容转换为单行格式。 另外,用户可能混淆了两种不同的文件格式。需要指导用户检查这些.sources文件的内容,如果是deb822格式,应该保持为.sources扩展名,或者正确转换为.list的单行格式。如果用户确实想使用.list格式,那么需要将内容改为每行一个deb或deb-src条目,而不是多行的块结构。 最后,建议用户恢复备份,然后逐步处理,或者手动修正这些文件的内容,确保格式正确。同时,检查是否有残留的.sources文件未被处理,导致APT解析错误。</think>以下是您遇到的APT配置问题的详细分析和解决方案: **一、错误原因分析** 1. **文件格式冲突**:`.sources`文件是APT 1.1+版本支持的**deb822格式**(多行结构化格式),与传统的`.list`文件(单行格式)不兼容 2. **误操作痕迹**: - 您执行的`find`命令尝试将含`deb `的`.sources`文件转换为`.list`格式 - 但转换后文件内容仍保持deb822格式,导致格式验证失败 - 错误示例: ```text # 错误格式(deb822内容保存为.list文件) Types: deb URIs: https://example.com/ubuntu Suites: jammy Components: main ``` **二、解决方案** ```bash # 1. 恢复被错误改名的文件 sudo find /etc/apt/sources.list.d -name "*.list" -exec sh -c ' for file; do if file "$file" | grep -q "ASCII text"; then sudo mv "$file" "${file%.list}.sources" fi done ' sh {} + # 2. 清理残留文件 sudo rm -f /etc/apt/sources.list.d/*.save* # 3. 强制更新缓存(跳过验证) sudo apt -o APT::Get::AllowUnauthenticated=true update --fix-missing ``` **三、格式转换规范** | 文件类型 | 扩展名 | 格式特征 | 适用场景 | |---------------|------------|----------------------------|---------------------| | 传统格式 | .list | 单行`deb http://...` | 简单配置 | | 现代格式 | .sources | 多行结构化(deb822) | 复杂配置/多架构支持 | **四、推荐操作流程** 1. **检查文件内容**: ```bash # 查看冲突文件内容 bat /etc/apt/sources.list.d/third-party.sources bat /etc/apt/sources.list.d/ubuntu.sources ``` 2. **选择性转换(如需)**: ```bash # 将deb822格式转为传统格式(示例) sudo sh -c 'sed -n "/^deb /p" /etc/apt/sources.list.d/third-party.sources > /etc/apt/sources.list.d/third-party.list' sudo rm /etc/apt/sources.list.d/third-party.sources ``` 3. **验证配置有效性**: ```bash sudo apt-get check sudo apt update --dry-run ``` **五、典型修复案例** ```bash # 修复ubuntu.sources文件(deb822格式示范) sudo tee /etc/apt/sources.list.d/ubuntu.sources <<-'EOF' Types: deb URIs: https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ Suites: jammy jammy-updates jammy-backports jammy-security Components: main restricted universe multiverse Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg EOF ``` **附加建议**: 1. 使用`apt-add-repository`命令管理软件更安全: ```bash sudo apt install software-properties-common sudo add-apt-repository ppa:example/ppa ``` 2. 推荐优先使用国内镜像的`.sources`预置文件: ```bash wget https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/sources.jammy -O /etc/apt/sources.list.d/tuna.sources ``` 通过上述操作后,执行`sudo apt update`应该能正常更新软件源列表。如果仍有问题,建议提供具体文件内容以便进一步分析。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值