2015-05-17 17 views
8

Đi qua một trong (rất ít có) tutorials on Anaconda, tôi đã cố gắng:Cloning với Anaconda

$ conda create -n rootclone --clone root 

này thất bại:

src_prefix: '/home/bir/conda' 
dst_prefix: '/home/bir/conda/envs/rootclone' 
Packages: 49 
Files: 471 
An unexpected error has occurred, please consider sending the 
following traceback to the conda GitHub issue tracker at: 

    https://github.com/conda/conda/issues 

Include the output of the command 'conda info' in your report. 


Traceback (most recent call last): 
    File "/home/bir/conda/bin/conda", line 5, in <module> 
    sys.exit(main()) 
    File "/home/bir/conda/lib/python2.7/site-packages/conda/cli/main.py", line 203, in main 
    args_func(args, p) 
    File "/home/bir/conda/lib/python2.7/site-packages/conda/cli/main.py", line 208, in args_func 
    args.func(args, p) 
    File "/home/bir/conda/lib/python2.7/site-packages/conda/cli/common.py", line 609, in inner 
    return func(args, parser) 
    File "/home/bir/conda/lib/python2.7/site-packages/conda/cli/main_create.py", line 50, in execute 
    install.install(args, parser, 'create') 
    File "/home/bir/conda/lib/python2.7/site-packages/conda/cli/install.py", line 170, in install 
    clone(args.clone, prefix, json=args.json, quiet=args.quiet) 
    File "/home/bir/conda/lib/python2.7/site-packages/conda/cli/install.py", line 91, in clone 
    quiet=quiet) 
    File "/home/bir/conda/lib/python2.7/site-packages/conda/misc.py", line 177, in clone_env 
    data = s.encode('utf-8') 
MemoryError 

Và tồi tệ. Môi trường được tạo ra:

$ conda info -e 
# conda environments: 
# 
oracle     /home/bir/conda/envs/oracle 
oracleclone    /home/bir/conda/envs/oracleclone 
rootclone    /home/bir/conda/envs/rootclone 
root     * /home/bir/conda 

Nhưng nó không làm việc ở tất cả:

$ . activate rootclone 
discarding /home/bir/conda/bin from PATH 
prepending /home/bir/conda/envs/rootclone/bin to PATH 
(rootclone)[email protected]:~/python$ which python 
/usr/bin/python # Should be in /home/bir/conda/envs/rootclone/bin 

Nhưng đây là một lỗi đúng, hoặc là conda create -n --clone chỉ không được thiết kế cho nhân bản môi trường gốc conda?

+0

Một tìm kiếm nhanh chóng trong những vấn đề GitHub cho thấy rằng có những người khác báo cáo những điều tương tự như lỗi và không được nói "không làm điều đó, giả", như [ # 1248] (https://github.com/conda/conda/issues/1248). – abarnert

+0

Trong khi đó, cho dù theo dõi vấn đề của họ hoặc trên StackOverflow, bạn có thể nhận được nhiều hơn/trợ giúp tốt hơn nếu bạn cho chúng tôi biết bạn đang sử dụng nền tảng nào, phiên bản Anaconda bạn có, cách bạn cài đặt, v.v. – abarnert

+0

Tôi không xem bất kỳ lý do nào bạn sẽ sao chép root. Root giữ các gói mặc định được sử dụng khi tạo env mới. Bạn chỉ có thể sao chép envs trong thư mục envs. Lưu ý rằng thư mục gốc không nằm trong thư mục envs. – alvits

Trả lời

1

MemoryError cho biết rằng quá trình ngắt hết bộ nhớ. Có lẽ bạn cần phân bổ bộ nhớ trao đổi nhiều hơn.

+0

Tôi nghĩ rằng các bản sao cố gắng sao chép gốc đệ quy do đó tạo envs/rootclone mà có được nhân bản như envs/rootclone/envs/rootclone. – alvits

+0

Nhân bản hoạt động tốt trên một mạng không phải gốc, vì vậy tôi nghĩ rằng vấn đề có thể giống như gợi ý của alvits ... – birone

+0

Vấn đề được nêu ra: https://github.com/conda/conda/issues/1339 – birone

0

Sử dụng lệnh sau để sao chép môi trường gốc mặc định của Anaconda, môi trường gốc được đặt tên làm cơ sở. Điều này làm việc cho tôi với Anaconda3-5.0.1

conda create --name <env_name> --clone base 
Các vấn đề liên quan