【Android SDK Manager】解决Android SDK Manager更新时的“https://dl-ssl.google.com refused”异常

本文介绍了解决Android SDK更新速度慢的方法,包括修改配置强制使用HTTP下载、添加hosts文件实现域名IP重定向以及使用镜像站点。同时提供了ADT版本不匹配的解决方案。

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

使用SDK Manager.exe更新Android SDK API时,速度超级缓慢,之后会出现“https://dl-ssl.google.com refused”错误:

Download interrupted: hostname in certificate didn't match: <dl-ssl.google.com> != <www.google.com>
Download interrupted: Connection to https://dl-ssl.google.com refused

Done. Nothing was installed.

解决办法:

将https://...修改为http://...,并将将“Force https://… sources to be fetched using http://…”勾选,如下图!



如果速度还是很慢并且还是出错,可以修改计算机的hosts文件(C:\Windows\System32\drivers\etc目录下面),添加以下文件,实现域名IP重定向:

203.208.46.146 www.google.com
203.208.46.146 dl.google.com 
203.208.46.146 dl-ssl.google.com

或者

74.125.237.1 dl-ssl.google.com


如果还是不行,使用镜像网站,参考链接:

android sdk 8-10M/S下载速度,有图有教程

推荐一个镜像网站:中科院开源协会镜像站,网站地址是:http://mirrors.opencas.cn/,端口:80,教程博客地址:https://forum.opencas.org/t/184


补充:SDK更新过高的话会发生ADT版本不匹配的情况:

This Android SDK requires Android Developer Toolkit version 23.0.0 or above

Eclipse报错如下:



解决办法如下:

找到adt-bundle-windows-x86_64-20140321\sdk\tools\lib目录下面的plugin.prop文件(可以NotePad++等工具打开),修改其中的版本号,与ADT版本号对应一致即可,如此处需要将23.0.0改为22.0.0 !



<think>首先,用户的问题是关于解决错误:"connect() failed (111: Connection refused) while logging to syslog, server: unix:/tmp/bt-monitor.sock"。这似乎是系统日志相关的问题,涉及到一个Unix套接字文件。 从系统级指令来看: - 所有行内数学表达式必须用$...$,但在这个问题中,没有数学内容,所以可能不需要。 - 独立公式用$$...$$,但同样,这里没有公式。 - LaTeX语法正确:确保如果使用数学,要正确。 - 使用中文回答:整个响应要用中文。 - 生成相关问题:在回答后,添加相关问题。 - 引用段落末尾添加引用标识:如[^1],但用户提供了引用[1]和[^2],这些是关于Kubernetes和Docker的安装,似乎不直接相关。用户说"上述引用仅供参考",所以我需要基于问题本身来解决,而不是依赖这些引用。 用户真正的需求是解决连接日志服务器的连接被拒绝错误。错误信息是:"connect() failed (111: Connection refused) while logging to syslog, server: unix:/tmp/bt-monitor.sock"。这表示尝试连接到Unix套接字文件/tmp/bt-monitor.sock被拒绝。 关键点: - 错误111: Connection refused通常意味着目标服务没有在监听,或者套接字文件不存在。 - 服务器是unix:/tmp/bt-monitor.sock,表明这是一个Unix域套接字。 解决步骤: 1. **检查套接字文件是否存在**:在服务器上,检查/tmp/bt-monitor.sock是否被创建。 2. **确认服务是否运行**:确保bt-monitor服务正在运行,并且在监听该套接字。 3. **权限问题**:检查套接字文件的权限,确保运行日志服务的进程有权限访问它。 4. **网络配置**:由于是Unix套接字,不是网络套接字,所以不涉及IP或端口,但需要确保服务配置正确。 5. **日志和调试**:查看相关服务的日志以获取更多信息。 用户提到的引用[1]是关于Kubernetes kubelet服务启动失败的,引用[2]是关于Docker安装的,但这些似乎不直接相关。用户说"我想用户试图解决连接日志服务器发生的连接被拒绝错误",所以我应该忽略这些引用,除非有直接联系。 结构化回答: - 解释错误原因。 - 提供逐步解决方案。 - 确保回答真实可靠,基于常见系统管理知识。 - 最后,生成相关问题。 回答结构: 1. **引言**:简述错误含义。 2. **原因分析**:解释为什么会出现这个错误。 3. **解决步骤**:逐步指导如何修复。 4. **相关问题**:生成相关的问题。 用中文回答。 相关问题生成: - 基于这个错误,相关问题可能包括: 1. 如何检查Unix套接字是否被监听? 2. 如何启动或重启bt-monitor服务? 3. 如何配置syslog以使用Unix套接字? 4. 常见日志服务故障排除方法。 确保回答清晰、逐步。</think>### 解决错误:connect() failed (111: Connection refused) while logging to syslog, server: unix:/tmp/bt-monitor.sock 这个错误表示您的系统在尝试通过 Unix 域套接字 `unix:/tmp/bt-monitor.sock` 连接到日志服务器被拒绝。错误代码 `111: Connection refused` 通常意味着目标服务未运行、套接字文件不存在,或权限不足。以下是逐步解决方案,基于常见系统管理实践。 #### 错误原因分析 - **服务未运行**:`bt-monitor` 服务(或相关日志服务)未启动,导致套接字文件未被创建。 - **套接字文件问题**:`/tmp/bt-monitor.sock` 文件可能被删除、权限错误或路径错误。 - **配置错误**:syslog 配置(如 rsyslog 或 syslog-ng)可能指向了错误的套接字。 - **权限问题**:运行日志服务的用户(如 `syslog` 或 `root`)无权访问套接字文件[^1]。 #### 解决步骤 请按顺序执行以下步骤,并在每一步后验证错误是否消失(例如,通过重启日志服务或检查日志)。 1. **检查服务状态** 确保 `bt-monitor` 服务正在运行。如果服务未安装或未启动,套接字文件不会被创建。 ```bash # 检查服务状态(服务名可能因系统而异,如 bt-monitor、syslog 或 rsyslog) systemctl status bt-monitor # 如果服务不存在,尝试 systemctl status rsyslog ``` - 如果服务未运行,启动它: ```bash systemctl start bt-monitor # 或 systemctl start rsyslog systemctl enable bt-monitor # 设置开机自启 ``` 2. **验证套接字文件是否存在** 检查 `/tmp/bt-monitor.sock` 文件是否被创建。服务启动后,该文件应自动生成。 ```bash ls -l /tmp/bt-monitor.sock ``` - 如果文件不存在: - 重启服务:`systemctl restart bt-monitor` - 检查服务日志:`journalctl -u bt-monitor -f`(查看错误详情)。 - 如果文件存在但权限错误: ```bash # 修改文件权限(确保服务用户可访问) chmod 666 /tmp/bt-monitor.sock # 或 chown syslog:syslog /tmp/bt-monitor.sock ``` 3. **检查 syslog 配置** 确认 syslog 配置正确指向套接字。编辑配置文件(通常为 `/etc/rsyslog.conf` 或 `/etc/syslog-ng/syslog-ng.conf`): ```bash # 例如,在 rsyslog 中添加或检查以下行 echo '*.* action(type="omfwd" target="/tmp/bt-monitor.sock" socket="unix")' | sudo tee -a /etc/rsyslog.conf sudo systemctl restart rsyslog ``` - 确保配置中无语法错误:`sudo rsyslogd -N1`(测试配置)。 4. **检查防火墙和 SELinux** 如果系统启用了 SELinux 或防火墙,可能阻止套接字访问。 ```bash # 临禁用 SELinux(测试用) setenforce 0 # 或添加套接字上下文 semanage fcontext -a -t syslogd_var_run_t '/tmp/bt-monitor.sock' restorecon -v /tmp/bt-monitor.sock ``` 5. **调试网络连接** 使用 `nc` 或 `socat` 测试套接字是否可访问: ```bash # 安装 socat(如未安装) sudo apt-get install socat # Debian/Ubuntu sudo yum install socat # CentOS/RHEL # 测试连接 echo "test" | socat - UNIX-CONNECT:/tmp/bt-monitor.sock ``` - 如果连接失败,检查服务是否监听:`sudo netstat -ap | grep /tmp/bt-monitor.sock`。 6. **检查系统日志** 查看系统日志以获取更多线索: ```bash journalctl -xe | grep "bt-monitor" # 或 grep "syslog" tail -f /var/log/syslog ``` #### 常见修复场景 - **如果 `bt-monitor` 服务不存在**:可能需安装相关软件包(如 `bt-monitor` 或自定义日志工具)。 - **如果 /tmp 目录被清理**:Linux 定期清理 `/tmp`,考虑将套接字移至 `/var/run`(例如:`unix:/var/run/bt-monitor.sock`)。 - **权限问题**:确保运行服务的用户(如 `syslog`)有权限读写 `/tmp`:`sudo chmod a+w /tmp`(临解决)。 完成以上步骤后,错误应被解决。如果问题持续,请提供 `journalctl -u bt-monitor` 的输出以进一步分析[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值