Computer >> Máy Tính >  >> Phần mềm >> Máy ảo

VirtualBox:chia sẻ tệp trên NAT mà không có thư mục dùng chung

Tôi có một vấn đề khá thú vị cho bạn. Nó cũng khá phức tạp. Giả sử bạn đang sử dụng VirtualBox làm công cụ ảo hóa ưa thích của mình. Giả sử bạn đang gặp sự cố với tính năng tăng tốc 3D - màn hình đen và tất cả vấn đề tương tự. Như bạn đã thấy trong hướng dẫn của tôi, cách khắc phục là sử dụng các bổ sung dành cho khách do repo cung cấp. Nhưng bộ repo này, do bản phân phối cung cấp, không giống như các phần bổ sung do ISO chính thức cung cấp, không chứa trình điều khiển thư mục dùng chung. Điều này có nghĩa là bạn không có sẵn chức năng này.

Để làm cho mọi thứ trở nên phức tạp hơn, hãy nói rằng bạn muốn chia sẻ nội dung. Chúng tôi đã nói về điều này trong một hướng dẫn khác, được đặt tên một cách thích hợp là mạng &chia sẻ, nhưng bạn đang sử dụng NAT chứ không phải mạng bắc cầu, vì vậy máy khách không thể truy cập được từ máy chủ của bạn bằng bất kỳ phương tiện thông thường nào. Và bạn không muốn sử dụng Samba hoặc tương tự, vì vậy toàn bộ tình huống thậm chí còn phức tạp hơn. Được rồi, vậy hãy để tôi chỉ cho bạn cách bạn có thể chuyển tệp từ máy chủ sang máy khách mà không cần chia sẻ thư mục trong khi sử dụng NAT. Không có trò đùa trên Internet. Chúng tôi đang làm tất cả tại địa phương. Theo tôi.

VirtualBox:chia sẻ tệp trên NAT mà không có thư mục dùng chung

Nêu vấn đề

Như bạn có thể thấy, chúng tôi gặp sự cố khi dường như chúng tôi cần làm cho máy của mình hiển thị rõ hơn bằng cách kết nối bộ điều hợp mạng, đây có thể không phải là điều bạn muốn, đặc biệt nếu bạn có một máy ảo 'ồn ào', ngoài ra, bạn có thể cần phải thiết lập máy chủ chia sẻ tệp và không có gì khác, tất cả đều chiếm nhiều công việc hơn tầm thường. Tùy chọn khác là sử dụng VirtualBox ISO, tắt tính năng tăng tốc 3D trong trường hợp cụ thể này - cho đến khi sự cố màn hình đen biến mất, nhưng hãy coi đó là sự cố tục ngữ dưới bất kỳ hình thức nào - và sau đó chúng ta có thể sử dụng tính năng thư mục dùng chung.

Về chủ đề đó, nếu bạn sử dụng các gói repo, thì bạn sẽ có hầu hết mọi thứ - tăng tốc đồ họa, tích hợp chuột, thay đổi kích thước màn hình, chia sẻ khay nhớ tạm, và sau đó là một số - nhưng không phải các thư mục. Nếu cố gắn thư mục dùng chung theo cách thủ công, bạn sẽ nhận được kết quả như sau:

mount -t vboxsf
mount:loại hệ thống tệp không xác định 'vboxsf'

Giải pháp:chuyển tiếp cổng

VirtualBox cho phép bạn định cấu hình các quy tắc mạng nâng cao cho các máy NAT-ed của mình. Về bản chất, điều này không khác với cách bộ định tuyến của bạn hoạt động khi dịch địa chỉ IP cục bộ sang địa chỉ công khai và ngược lại. Thật vậy, VirtualBox là bộ định tuyến của bạn ở đây. Chúng tôi cũng đã thấy điều này với Docker, nơi bạn có thể ánh xạ các cổng máy chủ tới các cổng của bộ chứa, để bạn truy cập hiệu quả vào hệ thống cục bộ của mình nhưng trên thực tế, bạn đang kết nối với một bộ chứa hoặc trong trường hợp này là một máy ảo.

Dù sao, hãy chọn máy ảo của bạn> Cài đặt. Trong Mạng, đối với loại mạng NAT, hãy mở rộng phần Nâng cao về phía dưới cùng. Sau đó bấm vào Chuyển tiếp cổng. Thao tác này sẽ mở ra một bảng nơi bạn có thể nhập các chi tiết cần thiết. Host IP - địa chỉ IP của giao diện bạn muốn sử dụng; bạn có thể có nhiều hơn một, nhưng giải pháp đơn giản nhất là chỉ sử dụng máy chủ cục bộ (127.0.0.1), vì điều này sẽ hoạt động ngay cả khi các giao diện khác của bạn bị hỏng hoặc bạn không có kết nối bên ngoài máy chủ của mình. Cổng máy chủ - sẽ là địa chỉ 'ảo' mà bạn sẽ kết nối. Ví dụ đối với SSH, gợi ý gợi ý, chúng ta có thể ánh xạ cổng 2222 thành Cổng máy chủ. Điều này có nghĩa là nếu bạn kết nối với cổng này, bạn sẽ thực sự kết nối với IP Khách tại Cổng Khách có liên quan được chỉ định trong bảng. Thật vậy, hai trường còn lại dành cho thông tin máy ảo, giống như chúng ta đã làm với máy chủ của mình.

VirtualBox:chia sẻ tệp trên NAT mà không có thư mục dùng chung

VirtualBox:chia sẻ tệp trên NAT mà không có thư mục dùng chung

Kết nối với SSH

Vì vậy, bây giờ chúng tôi có kết nối thực tế. Bạn có thể nói chờ đã, SSH dành cho Linux! Có, bởi vì chúng tôi gặp sự cố trong Linux. Không có sự cố màn hình đen với Windows, do đó, tính năng tăng tốc 3D + bổ sung khách từ ISO sẽ hoạt động tốt. Vì vậy, Linux.

Bây giờ chúng tôi có thể kết nối từ Máy chủ của mình với khách bằng SSH (trên cổng 2222). Nhưng tất nhiên, bước đầu tiên là đảm bảo rằng openssh-server đã được cài đặt và chạy trong hệ điều hành khách. Chúng tôi cũng cần đảm bảo rằng khách không sử dụng tường lửa đang chặn các kết nối đến. Bây giờ chúng ta có thể kiểm tra những gì mang lại.

ssh -p 2222 roger@127.0.0.1
Không thể thiết lập tính xác thực của máy chủ '[127.0.0.1]:2222 ([127.0.0.1]:2222)'. Dấu vân tay khóa ECDSA là SHA256:Eq0ow03sffLb7G49e3KNMgMrpVV/8wFfN6uicdxPnEL.
Bạn có chắc chắn muốn tiếp tục kết nối (có/không)?

VirtualBox:chia sẻ tệp trên NAT mà không có thư mục dùng chung

Nhưng đây chỉ là để kiểm tra kết nối. Chúng tôi thực sự cần SCP để sao chép các tệp từ Máy chủ của chúng tôi vào máy khách. Bây giờ, ở đây chúng ta cũng cần chỉ định một cổng tùy chỉnh. Nhưng xin lưu ý:SSH sử dụng chữ thường -p để chỉ định cổng, trong khi SCP sử dụng cờ -P viết hoa cho số cổng. Đi hình. Vì vậy, toàn bộ điều này sẽ giống như:

scp -P 2222 "file" roger@127.0.0.1:/home/roger/"location"/
"file" 100% 8244KB 135,0 MB/giây 00:00

VirtualBox:chia sẻ tệp trên NAT mà không có thư mục dùng chung

Kết luận

Tôi thích những loại bài tập này, bởi vì chúng có thể sáng tạo và thú vị - giống như thủ thuật KVM &mạng bắc cầu của tôi. Thoạt nhìn, bạn có thể nghĩ rằng mình sẽ cần sử dụng kết nối mạng cầu nối, thiết lập Samba hoặc NFS hoặc các tệp email, điều này có thể rất tẻ nhạt. Thay vào đó, chúng tôi giải quyết vấn đề với chuyển tiếp cổng và SSH, cả hai đều đơn giản, không xâm phạm và rất dễ thiết lập hoặc vô hiệu hóa nếu không cần thiết.

Vậy thì, hôm nay chúng ta đã học được khá nhiều điều - về các tính năng còn thiếu trong phần bổ sung của khách repo, việc sử dụng các quy tắc mạng nâng cao và chuyển tiếp cổng, SSH và SCP cũng như sự khác biệt tinh tế trong cách chúng sử dụng số cổng và một vài khái niệm khác. Đó sẽ là tất cả. Hãy nhớ rằng, luôn có cách giải quyết vấn đề gọn gàng, nếu bạn sẵn sàng kiên nhẫn và có phương pháp. Hãy cẩn thận.

Chúc mừng.