`
duduheng
  • 浏览: 22752 次
  • 性别: Icon_minigender_1
  • 来自: 西安
文章分类
社区版块
存档分类
最新评论

Ubuntu下安装dropbox

 
阅读更多

今天想在ubuntu下重新安装一下dropbox,于是卸载旧的deb包,下载新包,安装,一切正常。然后启动,发现不行了。错误信息:

Trouble connecting to Dropbox servers. Maybe your internet connection is down, or you need to set your http_proxy environment variable.

 

开始还以为真是网络问题,多试几次之后来才意识到可能**了。幸亏前几天看过Dropbox客户端源码(可以在这里下载),立马就明白了是哪个地方撞墙。

 

在 卸载Dropbox之前使用是正常的,可以登陆、同步,但重装之后就不行了,那是因为Dropbox的linux客户端并没有包含完整的dropbox程 序,能够下载deb包到的只是Dropbox的一个壳,包括客户端源码也是。安装成功后第一次启动会下载一个Daemon,启动界面也说得很清楚:

 

In order to use Dropbox, you must download the proprietary daemon.

 

就是这个地方撞墙,官方网站没有提供这个daemon的下载地址,因此只能先连接国外**VPN,然后再下载,但对于没有VPN的同学来说可能就麻烦了。所以需要找到这个Daemon的下载地址。从Dropbox客户端源码可以找到这个地址。

 

先编译安装(./configure && make),然后在源码根目录下有个名为dropbox的Python程序,还好Python代码具有天然的易读性,很轻松就能找到下载地址,其中有一段:

 

class DownloadState(object):
def __init__(self):
try:
self.file = urllib.urlopen(“http://www.getdropbox.com/download?plat=%s” % plat())
except IOError:
FatalVisibleError(“Trouble connecting to Dropbox servers. Maybe your internet connection is down, or you need to set your http_proxy environment variable.”)
fcntl.fcntl(self.file, fcntl.F_SETFL, os.O_NONBLOCK)

 

还记得FatalVisibleError中的提示语吗,对,就是刚才安装过程中出现的错误提示。所以urllib.urlopen中的参数就是下载地址了。还有一个小问题就是plat()的值,这是一个函数,找到这个函数:

 

def plat():
if sys.platform.lower().startswith(‘linux’):
arch = platform.machine()
if (arch[0] == ‘i’ and arch[1].isdigit() and arch[2:4] == ‘86′):
plat = “x86″
elif arch == ‘x86_64′:
plat = arch
else:
FatalVisibleError(“Platform not supported”)
return “lnx.%s” % plat
else:
FatalVisibleError(“Platform not supported”)

 

如果还看不出来这个函数的返回值,可以单独拿出来运行一下,其返回值为lnx.x86,所以Daemon的下载地址就是:

 

http://www.getdropbox.com/download?plat=lnx.x86

如果是64位的系统,则改为

           

http://www.getdropbox.com/download?plat=lnx.x86_64

复制到浏览器中试试,很快链接被reset,但只要浏览器中有**代理就可以下载了。

 

但 还有一个问题,下载之后放哪儿?从源码也可以找出答案,我就不贴源码了,直接给出结果~/.dropbox-dist/,记住是将解压之后的结果放在这路 径下。从源码可知,第一次启动Dropbox时,他会在这个路径下查找~/.dropbox-dist/dropboxd程序,如果存在,则运行,不存 在,则下载tar包,并解压至此。

 

– end –

 

原文地址:http://freedomhui.com/?p=149

分享到:
评论

相关推荐

    64位Ubuntu安装DropBox所需文件

    标题中的“64位Ubuntu安装DropBox所需文件”意味着我们主要关注的是在64位版本的Ubuntu操作系统上安装Dropbox的过程。Dropbox是一款流行的云存储服务,它允许用户同步、备份和分享文件。在这个场景中,我们需要两个...

    ubuntu上安装dropbox所需文件

    在Ubuntu上安装Dropbox,你需要遵循特定的步骤,这里提供的文件是安装过程中的关键组件。让我们深入探讨一下如何使用这些文件来在Ubuntu上安装Dropbox。 首先,我们来看"nautilus-dropbox_0.6.3_i386.deb"这个文件...

    dropbox x86_64 for ubuntu

    《Dropbox在Ubuntu 64位系统上的安装与使用详解》 Dropbox是一款深受全球用户喜爱的云存储服务,它提供了高效便捷的文件同步、备份和分享功能。针对Ubuntu 64位系统的用户,我们来详细讲解如何安装并使用"dropbox ...

    ubuntu下安装和使用owncloud.docx

    首先,我们需要确保安装环境是Ubuntu 12.04桌面版,这是一个基于Linux的开源操作系统,适合用于搭建个人云存储服务。OwnCloud是一个开源的云存储平台,可以让你在自己的服务器上创建类似Dropbox的服务。 1. **网络...

    Ubuntu 14.04.3

    5. **云服务集成**:Ubuntu 14.04.3 集成了多种云服务,如 Dropbox、Google Drive 和 OneDrive,使得用户可以更方便地访问云端文件。 6. **服务器版本特性**:除了桌面版之外,Ubuntu 14.04.3 还提供了服务器版本,...

    pyDropboxPath 更改dropbox同步文件夹名和路径

    此软件可以更改dropbox的同步文件夹名称和路径,可以解决windows、mac、Ubuntu等多系统使用时dropbox默认路径名不同而重复同步文件夹的问题

    Ubuntu12.zip

    5. 云集成:Ubuntu 12.10引入了云集成,允许用户直接从Unity Dash中访问在线存储服务,如Ubuntu One或Dropbox,提高了文件同步的便利性。 6. 快速启动和暂停:这个版本优化了启动和恢复时间,使用户能够更快地使用...

    How to Do Everything Ubuntu

    13. **云服务与备份**: 整合Ubuntu与Dropbox、Google Drive等云服务,以及创建系统和数据备份策略。 14. **故障排查**: 学习如何识别和解决常见的Ubuntu问题,包括错误消息的解读和社区资源的利用。 15. **社区...

    nautilus-dropbox:Nautilus的Dropbox集成

    但是,Dropbox桌面应用程序仅正式支持Ubuntu 14.04或更高版本以及Fedora 21或更高版本。 如果您的设备不满足这些要求,您仍然可以使用Dropbox桌面应用程序。 但是,您的结果可能会有所不同。 有关更多详细信息,请...

    Python-dbxfs允许您将Dropbox文件夹挂载就像它是本地文件系统一样

    这会将Dropbox文件夹挂载到/mnt/dropbox路径下,你可以像操作本地文件一样操作Dropbox内的文件。 4. **文件操作** - **读取/写入文件**:一旦挂载成功,你可以直接使用标准的Python文件操作函数如`open()`, `read...

    dropbox-api-command:用于访问Dropbox API的命令行界面

    姓名 App :: dropboxapi-访问Dropbox API的...1-b)Ubuntu sudo apt-get install make gcc libssl-dev wget wget https://raw.github.com/miyagawa/cpanminus/master/cpanm sudo perl cpanm App::dropboxapi 1-c)Ce

    Ubuntu使用手册

    - **双系统安装**:如何在Windows或Mac电脑上与现有操作系统并存安装Ubuntu,确保数据安全。 - **U盘启动**:创建Ubuntu安装U盘,用于无光驱电脑的安装。 - **分区管理**:理解MBR与GPT分区表,以及如何合理分配...

    nautilus-mailru-cloud:文件管理器Nautilus的插件(默认为Ubuntu),以Dropbox的样式提供与Mail.Ru Cloud的集成(反映本地文件状态,管理公共链接等的图标)。

    总的来说,Nautilus-Mailru-Cloud插件是针对Mail.Ru Cloud用户的便利工具,通过将云服务与本地文件管理器无缝融合,提升了用户在Ubuntu环境下的文件管理体验。它的设计思路和功能特性展示了开源社区如何利用C++等...

    CentOS 7下的软件安装方法及策略

    软件安装方法及策略在 CentOS 7 下 软件安装是 Linux especially CentOS 用户经常会遇到的问题。由于官方源中的软件包版本太老,或者多个源的软件包存在版本冲突,或者手动编译软件会将不同文件放置在/usr/local下...

    datasync:用于滚动您自己的本地 Dropbox 替代方案的跨平台客户端安装程序

    相当于“本地 Dropbox”的客户端安装程序,使用 unison ( ) 来完成文件同步工作。 期望您有一台安装了 ssh 和 unison 的服务器( 在本例中是硬编码的;更改为您自己的 URL)。 当您想提供自己的云风格服务而不依赖...

    lemp-utils-scripts:适用于Ubuntu 18.04+的LEMP Bash Utils

    “ LEMP Ubuntu Utils脚本”是一个BASH脚本,可用于在Ubuntu 18.04和20.04服务器上快速安装LEMP堆栈,自动执行备份(文件和数据库),还原备份,安装PHP项目以及其他有用的任务。 为什么要重击? 表现。 预装在...

    vagrant-nextcloud:此存储库包含所有Vagrant配置,以获取安装了最新版本Nextcloud的Ubuntu VM

    在“vagrant-nextcloud”项目中,这个文件将指导Vagrant如何下载Ubuntu镜像,安装必要的依赖,并最终在虚拟机上安装Nextcloud。 接下来,我们关注Nextcloud。Nextcloud是一个开源的文件存储和同步平台,支持文件...

    dropbox-docker:在保管箱,泊坞窗,静态网站托管中进行实验

    为自己安装一台Ubuntu 14.04计算机,然后: # install docker apt-get -y install docker.io make # make image make # first-time setup; add container to your docker account make shell root@3951be1e6b1f: ~ ...

    java版bs公交服务网源码-ubuntu-configuration:ubuntu配置

    Dropbox 会同步该文件夹,使其看起来是同一个文件夹(具有相同的内容),无论使用哪种设备查看它) (数据库管理工具) (sFTP 客户端) (强大的跨平台媒体浏览器、查看器和转换器) (像终端一样地震) (终端HTTP...

    十二条提升Ubuntu桌面体验的技巧和应用

    本文将分享十二条提升Ubuntu桌面体验的技巧和应用,包括使用Pithos、Dropbox、Synapse、Parcelite、System Monitor applet、Jungle Disk、Synaptic、VLC、Skype Call Recorder、Y PPA Manager、Gufw和OpenDNS等应用...

Global site tag (gtag.js) - Google Analytics