Dropbox trên OpenBSD


10

Có ai có bất kỳ thành công nào khi cài đặt dropbox với dropboxd chạy đúng trên OpenBSD (FreeBSD cũng sẽ hoạt động với tôi không ..)? Tôi đã xây dựng từ nguồn và mọi thứ cài đặt đều ổn nhưng khi tôi cố gắng kích hoạt nó:


$ python /usr/bin/dropbox start                                                
Starting Dropbox...
The Dropbox daemon is not installed!
Run "dropbox start -i" to install the daemon

$ ssh root@localhost 
root@localhost's password: 

<snip>

# python /usr/bin/dropbox start -i                                                                    
Starting Dropbox...
Dropbox is the easiest way to share and store your files online. 
Want to learn more? Head to http://www.dropbox.com/

In order to use Dropbox, you must download the proprietary daemon. [y/n] y

Error: Platform not supported

Vì vậy, tôi đã kiểm tra các máy khách dòng lệnh và các công cụ chỉ văn bản từ http://wiki.dropbox.com/TipsAndTricks/TextBasingLinuxInstall nhưng tất nhiên đó là tiền biên dịch cho linux .. không có xúc xắc.

Bất cứ ai cũng cố gắng giải quyết vấn đề này và nhận được một cách giải quyết cho một kết hợp DropBox / BSD?


Tôi tiếp tục cắm đầu vào đây và cuối cùng chạy vào một trình chặn hiển thị: Không có giả lập linux trên amd64 cho openbsd. Trò chơi kết thúc. Xin lỗi để giết thời gian của mọi người.


Bạn có thể mở /usr/bin/dropboxmột trình soạn thảo văn bản, tìm kiếm Error: Platform not supportedtin nhắn và đăng dòng mã tương ứng ở đây không (một vài dòng trên và một vài dòng bên dưới nó)? Vì đó là tập lệnh Python, có thể thay đổi nó một chút nếu đó chỉ là kiểm tra các nền tảng được hỗ trợ chính thức.
Vitor Py

ừm Dropbox vẫn không hỗ trợ Mac OS X (sử dụng nhân biến thể BSD) cho các công cụ dòng lệnh - có nghĩa là vẫn không thể khởi động lại nó từ xa sau khi khởi động lại thông qua dòng lệnh!
Michael

Tôi có một vài ý tưởng: 1. Sử dụng API Dropbox để xây dựng một ứng dụng khách đơn giản: dropbox.com/developers/documentation/http/overview 2. Chạy Dropbox trong máy ảo Linux. Trong trường hợp đó, thư mục Dropbox trong VM có thể được cung cấp cho máy chủ (ví dụ: với Samba).
jsb

Câu trả lời:


3

Đây là mã vi phạm trên tập lệnh dropbox:

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")

Bạn có thể thử thay thế cái này cho một cái gì đó giống như:

def plat():
    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")

Tất nhiên, bạn có thể tìm thấy các vấn đề khác trên đường đi. Chúc may mắn.


Gợi ý tốt. Tôi sẽ cho cơn lốc đó và cho bạn biết nó đã đi như thế nào.
chújamil

@unclejamil Nếu bạn gặp phải các vấn đề khác khi cố gắng chạy nó, hãy cho tôi biết :) Tôi không hiểu tại sao mọi người lại đưa vào các loại kiểm tra nền tảng vô nghĩa đó. Nếu nó hoạt động, hãy để nó hoạt động!
Vitor Py

Trình cài đặt đã hoàn thành nhưng không may dropboxd vẫn chết. Không chắc vấn đề ở đâu nhưng tôi nghĩ tôi sẽ cập nhật cho bạn và cảm ơn bạn lần nữa vì đã gợi ý. Tôi sẽ tiếp tục rèn giũa điều này và xem liệu tôi có thể có được tình yêu nào không. Nếu tôi thực hiện bất kỳ tiến bộ, tôi sẽ cho bạn biết.
chújamil

1
@unclejamil Bạn có chắc chắn dropboxd đang được chạy chính xác bởi lớp mô phỏng linux? Bạn đã chạy sysctl kern.emul.linux=1trước khi chạy dropboxd? Ít nhất là trong hệ thống Fedora nơi tôi hiện tại dropboxd là một nhị phân tĩnh, điều này là đủ. Mặt khác ~/.dropbox-dist/dropboxlà một chương trình thực thi động và có một vài điều phải được thực hiện trước khi nó có thể chạy: kiểm tra compat_linuxtrang man.
Vitor Py

0

Kiểm tra tính tương thích của Linux. Kiểu:

sysctl -w kern.emul.linux=1

và chạy lại dropbox ....


1
Khả năng tương thích Linux đã bị loại bỏ trong OpenBSD 6.0 (năm 2016), vì không ai sử dụng nó và nó quá khó để duy trì.
Kusalananda

0

Lựa chọn 1:

Các Dropbox API cũng được ghi chép lại và cho phép bạn làm nhiều hơn những gì bạn có thể bạn muốn. Có vẻ như sẽ dễ dàng viết CLI cho các thao tác đơn giản, nhưng ai đó đã làm nhiều hơn thế: https://github.com/dropbox/dbxcli

Tôi chưa thử nghiệm dbxcli trên OpenBSD, nhưng nói chung với tôi, tuyến API sẽ là giải pháp dễ nhất.

Lựa chọn 2:

Thiết lập một máy ảo Linux và chạy Dropbox trong đó. Bạn có thể truy cập hệ thống tệp khách một cách thuận tiện trên máy chủ của mình thông qua một số phương thức (máy chủ tệp cục bộ hoặc gắn kết qua ssh)

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.