2013-10-28 14 views
10

Tôi đã cài đặt máy chủ os x (Mavericks) trên máy Mac của mình và muốn thêm bot. Đối với một số lý do repo từ xa của tôi nằm trên máy chủ bên ngoài khác và tôi có quyền truy cập vào nó bằng tên người dùng và mật khẩu trên cổng được chỉ định. Tôi đã thêm repo từ xa để os x máy chủ như thế này:Không thể tạo thư mục/var/teamsserver

ssh: //1.2.3.4: PORT/path/to/repo.git

... điền username và password.

Sau đó, tôi đã thêm bot trong Xcode nhưng khi tôi nhấn tích hợp nó không thành công với các bản ghi:

Nhân bản thành 'ssh_myusername_1_2_3_4_PORT_path_to_repo_git' ...

OpenSSH_6.2p2, OSSLShim 0.9.8r 08 tháng 12 2011 debug1: Đọc

dữ liệu cấu hình/etc/ssh_config debug1:/etc/ssh_config dòng 20:

tùy chọn Áp dụng cho * debug1: Đang kết nối đến 1.2.3.4 [1.2.3.4] cổng PO RT.

debug1: Đã thiết lập kết nối.

Không thể tạo thư mục '/var/teamsserver/.ssh'.

debug1: sắc loại tập tin /var/teamsserver/.ssh/id_rsa -1

debug1: sắc loại tập tin /var/teamsserver/.ssh/id_rsa-cert -1

debug1: file bản sắc loại /var/teamsserver/.ssh/id_dsa -1

debug1: sắc loại tập tin /var/teamsserver/.ssh/id_dsa-cert -1

debug1: Kích hoạt chế độ tương thích cho giao thức 2.0

debug1: Local chuỗi phiên bản SSH-2,0-OpenSSH_6.2

debug1: từ xa giao thức phiên bản 2.0, phiên bản phần mềm từ xa OpenSSH_6.0p1 Debian 3ubuntu1

debug1: trận đấu: OpenSSH_6.0p1 Debian 3ubuntu1 pat OpenSSH *

debug1: SSH2_MSG_KEXINIT gửi

debug1: SSH2_MSG_KEXINIT nhận

debug1: KEX: Server-> client AES128-ctr HMAC-MD5 không

debug1: KEX: khách hàng-> máy chủ AES128-ctr HMAC-MD5 không

debug1: SSH2_MSG_KEX_DH_GEX_REQUEST (1024 8192) gửi

debug1: mong SSH2_MSG_KEX_DH_GEX_GROUP

debug1: SSH2_MSG_KEX_DH_GEX_INIT gửi

debug1: mong SSH2_MSG_KEX_DH_GEX_REPLY

debug1: Server chủ chốt: RSA b6: b8: 0e: e4: 25: 63: 6d: 64: a3 : d6: 6d: 7f: 46: 85: 72: 0d

debug1: kiểm tra không có mã định danh cổng Không có khóa máy chủ RSA cho [1.2.3.4]: PORT và bạn đã yêu cầu kiểm tra nghiêm ngặt. Xác minh khóa máy chủ không thành công.

gây tử vong: Không thể đọc từ kho lưu trữ từ xa.

Hãy đảm bảo bạn có quyền truy cập chính xác và kho lưu trữ tồn tại.

SSH đường Hosts Được biết tập tin được đặt tại /Library/Server/Xcode/Config/ssh_known_hosts

SSH chủ nghiêm ngặt kiểm tra được kích hoạt (bạn có thể vô hiệu hóa này bằng cách chỉnh sửa phím SSHStrictHostKeyChecking

trong /Library/Server/Xcode/Config/xcsbuildd.plist

Untrusted HTTPS chứng chỉ bị vô hiệu hóa (bạn có thể bật này bằng cách chỉnh sửa

01.235.164 chìa khóa

TrustSelfSignedSSLCertificates trong /Library/Server/Xcode/Config/xcsbuildd.plist

tôi cho rằng có một vấn đề với các điều khoản nhưng trong tôi/var có một số thư mục với các điều khoản khác nhau và tất nhiên là có không có thư mục máy chủ nhóm ...

Vì vậy, tôi không biết cách thiết lập quyền thích hợp (mà không thay đổi quyền của các thư mục con khác của/var ...). Tôi có thể thử tự làm cho thư mục "đội máy chủ" nhưng không biết với những gì cho phép ...? Bạn có bất cứ ý tưởng?

EDIT: Đối với mục đích thử nghiệm tôi đã tạo thư mục teamsserver với 777 nhưng điều đó không giải quyết được vấn đề của tôi. Nhật ký trông giống như trước đó nhưng không CÓ dòng:

Không thể tạo thư mục '/var/teamsserver/.ssh'.

Bất kỳ ý tưởng nào?

Cảm ơn

Trả lời

7

Ok, tôi mất một thời gian nhưng con có một giải pháp .. Hai giải pháp thực sự. Xấu hổ khi thừa nhận nhưng đọc và hiểu các bản ghi là đủ để giải quyết vấn đề (một lần nữa: P).

FIRST ĐÁP:

My chính chủ máy chủ đã được thêm vào .ssh/known_hosts TRƯỚC KHI cài đặt OS X Server. Máy chủ không sử dụng đường dẫn của các máy chủ đã biết đó. Như log nói máy chủ sử dụng:

SSH đường Hosts Được biết tập tin được đặt tại /Library/Server/Xcode/Config/ssh_known_hosts

và tập tin đó hoàn toàn trống rỗng trong trường hợp của tôi. Vì vậy, để giải quyết vấn đề đó là đủ để sao chép known_hosts để ssh_known_hosts:

sudo cp ~/.ssh/known_hosts /Library/Server/Xcode/Config/ssh_known_hosts 

Thật đơn giản.

THỨ HAI ĐÁP:

theo công đăng nhập một lần nữa

SSH kiểm tra máy chủ nghiêm ngặt được kích hoạt (bạn có thể vô hiệu hóa này bằng cách chỉnh sửa phím SSHStrictHostKeyChecking trong/Library/Server/Xcode/Config/xcsbuildd. plist

Thay đổi SSHStrictHostKeyChecking false.

Thế là xong ag ain.

+1

Cả câu trả lời này và câu trả lời ở trên bởi user1132570 đã khắc phục sự cố này cho tôi. Vì vậy, hãy chắc chắn để kiểm tra rằng/var/teamsserver tồn tại nếu câu trả lời này không sửa chữa vấn đề cho bạn. –

+1

Điều này không hiệu quả đối với tôi. Đã làm cả hai, vẫn phàn nàn về việc không thể tạo thư mục tắt của/var/teamsserver. – Rob

+0

Bạn đã thử ctreate nó bằng tay? Cách đề xuất bởi user1132570 là đủ tốt để tạo ra nó với các đặc quyền thích hợp. – zioolek

8

Tôi đã trải qua một vấn đề tương tự với hành động kế hoạch xây dựng các kịch bản khi cố gắng chạy lệnh git chống lại một repo github bảo vệ bởi cặp khóa ssh.

Bots chạy các bản dựng bằng tài khoản hệ thống _teamsserver. Như bạn đã phát hiện, các tài khoản này không có thư mục chính theo mặc định. Để thiết lập được xây dựng để truy cập và sửa đổi thư mục chính của họ, tôi đã thành công với những điều sau đây (mileage của bạn có thể thay đổi):

sudo mkdir /var/teamsserver 
sudo chown -R _teamsserver:_teamsserver /var/teamsserver/ 
sudo chmod -R 770 /var/teamsserver/ 

HTH

+0

Cảm ơn bạn đã đề xuất của bạn, nhưng như tôi đã viết nó đã không giúp: /. Vẫn còn sự cố với các dòng sau: debug1: tệp nhận dạng /var/teamsserver/.ssh/id_rsa loại -1 debug1: tệp nhận dạng /var/teamsserver/.ssh/id_rsa-cert loại -1 debug1: tệp nhận dạng /var/teamsserver/.ssh/id_dsa loại -1 debug1: tập tin nhận dạng /var/teamsserver/.ssh/id_dsa-cert loại -1 Hơn nữa, tôi đã thêm id_rsa vào /var/teamsserver/.ssh nhưng nó chỉ giúp trong: debug1: tệp nhận dạng /var/teamsserver/.ssh/id_rsa loại 1 (không phải -1 như trước) ... vẫn đang tìm giải pháp ... – zioolek

+0

Cảm ơn @ user1132570. Các kịch bản trên đã xử lý vấn đề dir. –

0

Nếu bạn đã thử những điều trên và vẫn đang nhận được sự cho phép bị từ chối lỗi, có thể bạn không có quyền phù hợp với tệp/thư mục đó.

  • Bạn đang chạy với ai?$id
  • $ls -al thư mục mà máy chủ đang cố gắng đọc id_rsa từ (Có lẽ tương tự như con đường này: Library/Server/Xcode/Data/BotRuns/BotRun-a28db5fc-1932-47a0-a528-f52c75e421e2.b‌​undle/credentials/65885363-194e-454b-a3ce-56dcaaf5d3c9/id_rsa) sở hữu
  • thay đổi của tập tin đó ^^ ($sudo chown {#id} {#path})
0

tôi đã làm 3 điều cần cho phép tôi vượt qua này, mặc dù tôi không chắc chắn mà trong số họ giải quyết vấn đề:

  1. thay đổi tất cả các kho git trong dự án của tôi để sử dụng HTTPS thay vì SSH (git) phiên bản của url
  2. 0.123.
  3. Tắt SSHStrictHostKeyChecking theo hướng dẫn từ nhật ký kiểm soát nguồn từ bot.
  4. Bật TrustSelfSignedSSLChướng dẫn theo hướng dẫn tương tự từ nhật ký.

Ngoài ra, hãy kiểm tra https://discussions.apple.com/thread/5586872 trong trường hợp đây là vấn đề với bạn.

Tôi sẽ trả lại một số mục này và thử nghiệm khi có thêm thời gian.

Các vấn đề liên quan