README-VN.md 9.6 KB

RustDesk - Your remote desktop
ServerBuildDockerStructureSnapshot
[English] | [Українська] | [česky] | [中文] | [Magyar] | [Español] | [فارسی] | [Français] | [Deutsch] | [Polski] | [Indonesian] | [Suomi] | [മലയാളം] | [日本語] | [Nederlands] | [Italiano] | [Русский] | [Português (Brasil)] | [Esperanto] | [한국어] | [العربي] | [Ελληνικά]
Chúng tôi rất hoan nghênh sự hỗ trợ của bạn trong việc dịch trang README, trang giao diện người dùng của RustDesk - RustDesk UI và trang tài liệu của RustDesk - RustDesk Doc sang Tiếng Việt

Hãy trao đổi với chúng tôi qua: Discord | Twitter | Reddit

ko-fi

RustDesk là một phần mềm điểu khiển máy tính từ xa mã nguồn mở, được viết bằng Rust. Nó hoạt động ngay sau khi cài đặt, không yêu cầu cấu hình phức tạp. Bạn có toàn quyền kiểm soát với dữ liệu của mình mà không cần phải lo lắng về vấn đề bảo mật. Bạn có thể sử dụng máy chủ rendezvous/relay của chúng tôi hoặc tự cài đặt máy chủ của riêng mình hay thậm chí tự tạo máy chủ rendezvous/relay cho riêng bạn.

image

RustDesk luôn hoan nghênh mọi đóng góp từ mọi người. Hãy xem tệp docs/CONTRIBUTING.md để bắt đầu.

FAQ BINARY DOWNLOAD NIGHTLY BUILD

[<img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png"

alt="Get it on F-Droid"
height="80">](https://f-droid.org/en/packages/com.carriez.flutter_hbb)

Dependencies

Phiên bản máy tính sử dụng Flutter hoặc Sciter (đã lỗi thời) cho giao diện người dùng (GUI). Hướng dẫn này chỉ áp dụng cho phiên bản Sciter, vì nó thân thiện và dễ bắt đầu hơn. Hãy kiểm tra CI của chúng tôi để xây dựng phiên bản Flutter.

Vui lòng tự tải thư viện Sciter về máy theo hướng dẫn cho từng hệ điều hành.

Windows | Linux | MacOS

Các bước build cơ bản

  • Chuẩn bị môi trường phát triển Rust và môi trường biên dịch C++

  • Tải và cài đặt vcpkg, và thiết lập biến môi trường VCPKG_ROOT.

    • Windows: vcpkg install libvpx:x64-windows-static libyuv:x64-windows-static opus:x64-windows-static aom:x64-windows-static
    • Linux/MacOS: vcpkg install libvpx libyuv opus aom
  • Chạy lệnh cargo run

Build

Cách build cho Linux

Ubuntu 18 (Debian 10)

sudo apt install -y g++ gcc git curl wget nasm yasm libgtk-3-dev clang libxcb-randr0-dev libxdo-dev libxfixes-dev libxcb-shape0-dev libxcb-xfixes0-dev libasound2-dev libpulse-dev cmake

Fedora 28 (CentOS 8)

sudo yum -y install gcc-c++ git curl wget nasm yasm gcc gtk3-devel clang libxcb-devel libxdo-devel libXfixes-devel pulseaudio-libs-devel cmake alsa-lib-devel

Arch (Manjaro)

sudo pacman -Syu --needed unzip git cmake gcc curl wget yasm nasm zip make pkg-config clang gtk3 xdotool libxcb libxfixes alsa-lib pipewire

Cách cài đặt vcpkg

git clone https://github.com/microsoft/vcpkg
cd vcpkg
git checkout 2023.04.15
cd ..
vcpkg/bootstrap-vcpkg.sh
export VCPKG_ROOT=$HOME/vcpkg
vcpkg/vcpkg install libvpx libyuv opus aom

Cách sửa lỗi libvpx (Dành cho hệ điều hành Fedora)

cd vcpkg/buildtrees/libvpx/src
cd *
./configure
sed -i 's/CFLAGS+=-I/CFLAGS+=-fPIC -I/g' Makefile
sed -i 's/CXXFLAGS+=-I/CXXFLAGS+=-fPIC -I/g' Makefile
make
cp libvpx.a $HOME/vcpkg/installed/x64-linux/lib/
cd

Build

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env
git clone https://github.com/rustdesk/rustdesk
cd rustdesk
mkdir -p target/debug
wget https://raw.githubusercontent.com/c-smile/sciter-sdk/master/bin.lnx/x64/libsciter-gtk.so
mv libsciter-gtk.so target/debug
VCPKG_ROOT=$HOME/vcpkg cargo run

Cách build bằng Docker

Bắt đầu bằng cách sao chép repo này về máy tính của bạn và tạo Docker container:

git clone https://github.com/rustdesk/rustdesk
cd rustdesk
docker build -t "rustdesk-builder" .

Sau đó, mỗi khi bạn chạy ứng dụng, thì hãy chạy dòng lệnh sau:

docker run --rm -it -v $PWD:/home/user/rustdesk -v rustdesk-git-cache:/home/user/.cargo/git -v rustdesk-registry-cache:/home/user/.cargo/registry -e PUID="$(id -u)" -e PGID="$(id -g)" rustdesk-builder

Lưu ý rằng lần build đầu tiên có thể mất thời gian hơn trước khi các dependencies được lưu vào bộ nhớ cache, nhưng các lần build sau sẽ nhanh hơn. Ngoài ra, nếu bạn cần chỉ định các đối số khác cho lệnh build, bạn có thể thêm chúng vào cuối lệnh ở phần <OPTIONAL-ARGS>. Ví dụ, nếu bạn muốn build phiên bản tối ưu hóa, bạn sẽ chạy lệnh trên với tùy chọn --release. Kết quả biên dịch sẽ được lưu trong thư mục target trên máy tính của bạn, và có thể chạy với lệnh:

target/debug/rustdesk

Nếu bạn đang chạy bản build được tối ưu hóa, thì bạn có thể chạy với lệnh:

target/release/rustdesk

Hãy đảm bảo rằng bạn đang chạy các lệnh này từ gốc của thư mục RustDesk, nếu không, ứng dụng có thể không thể tìm thấy các tệp tài nguyên cần thiết. Hãy lưu ý rằng các câu lệnh con khác của cargo như install hoặc run hiện không được hỗ trợ qua phương pháp này, vì chúng sẽ cài đặt hoặc chạy chương trình bên trong container thay vì trên máy tính của bạn.

Cấu trúc tệp tin

  • libs/hbb_common: video codec, cấu hình, tcp/udp wrapper, protobuf, fs functions để truyền file, và một số hàm tiện ích khác
  • libs/scrap: ghi lại màn hình
  • libs/enigo: điều khiển máy tính/chuột trên các nền tảng khác nhau
  • src/ui: giao diện người dùng
  • src/server: các dịch vụ âm thanh, clipboard, đầu vào, video và các kết nối mạng
  • src/client.rs: bắt đầu kết nối với một peer
  • src/rendezvous_mediator.rs: giao tiếp với rustdesk-server, đợi kết nối trực tiếp (TCP hole punching) hoặc kết nối được chuyển tiếp.
  • src/platform: mã nguồn riêng cho mỗi nền tảng
  • flutter: Mã Flutter dành máy tính và điện thoại
  • flutter/web/js: Mã JavaScript dành cho giao diện trên web bằng Flutter

Snapshot

image

image

image

image