# Vietnamese translation for GNUnet. # Copyright © 2008 Christian Grothoff (msgids). # This file is distributed under the same license as the gnunet package. # # Phan Vinh Thinh , 2005. # Clytie Siddall , 2008. #: contrib/config-daemon.scm:584 msgid "" msgstr "" "Project-Id-Version: gnunet 0.7.3\n" "Report-Msgid-Bugs-To: gnunet-developers@mail.gnu.org\n" "POT-Creation-Date: 2007-12-22 17:30-0700\n" "PO-Revision-Date: 2008-05-01 23:42+0930\n" "Last-Translator: Clytie Siddall \n" "Language-Team: Vietnamese \n" "X-Bugs: Report translation errors to the Language-Team address.\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: LocFactoryEditor 1.7b3\n" #: src/transports/upnp/upnp.c:356 src/transports/upnp/upnp.c:541 #: src/transports/http.c:1321 src/transports/http.c:1414 #: src/transports/http.c:1589 src/transports/http.c:2015 #: src/transports/http.c:2076 src/applications/bootstrap_http/http.c:123 #: src/applications/bootstrap_http/http.c:257 #: src/applications/bootstrap_http/http.c:274 #: src/applications/bootstrap_http/http.c:306 #: src/applications/bootstrap_http/http.c:325 #: src/applications/bootstrap_http/http.c:338 #: src/applications/bootstrap_http/http.c:348 #: src/applications/bootstrap_http/http.c:358 #, c-format msgid "%s failed at %s:%d: `%s'\n" msgstr "%s bị lỗi tại %s:%d: « %s »\n" #: src/transports/upnp/upnp.c:431 #, c-format msgid "%s failed for url `%s' and post-data `%s' at %s:%d: `%s'\n" msgstr "%s bị lỗi đối với địa chỉ URL « %s » và dữ liệu cuối « %s » tại %s:%d: « %s »\n" #: src/transports/upnp/upnp.c:476 #, c-format msgid "upnp: NAT Returned IP: %s\n" msgstr "upnp: địa chỉ IP được NAT trả về: %s\n" #: src/transports/ip6.c:77 src/util/network/io.c:86 #, c-format msgid "Could not find IP of host `%s': %s\n" msgstr "Không tìm thấy địa chỉ IP của máy « %s »: %s\n" #: src/transports/ip6.c:110 src/util/network/ip.c:88 src/util/network/ip.c:153 #, c-format msgid "No interface specified in section `%s' under `%s'!\n" msgstr "Không có giao diện mạng được xác định trong cấu hình phần « %s » dưới « %s ».\n" #: src/transports/ip6.c:141 src/util/network/ip.c:119 #: src/util/network/ip.c:239 #, c-format msgid "Could not obtain IP for interface `%s' using `%s'.\n" msgstr "Không thể lấy địa chỉ IP cho giao diện « %s », dùng « %s ».\n" #: src/transports/ip6.c:175 #, c-format msgid "Could not resolve `%s': %s\n" msgstr "Không thể giải quyết « %s »: %s\n" #: src/transports/ip6.c:229 src/transports/ip.c:61 #, c-format msgid "Failed to obtain my (external) %s address!\n" msgstr "Lỗi lấy địa chỉ %s (bên ngoài) của mình.\n" #: src/transports/tcp6.c:249 msgid "Could not determine my public IPv6 address.\n" msgstr "Không thể quyết định địa chỉ IPv6 công của mình.\n" #: src/transports/tcp6.c:317 #, c-format msgid "`%s': unknown service: %s\n" msgstr "« %s »: không rõ dịch vụ : %s\n" #: src/transports/tcp6.c:420 src/transports/tcp.c:463 #, c-format msgid "Failed to start transport service on port %d.\n" msgstr "Lỗi khởi chạy dịch vụ truyền tải trên cổng %d.\n" #: src/transports/tcp6.c:531 msgid "# bytes received via TCP6" msgstr "# các byte đã nhận qua TCP6" #: src/transports/tcp6.c:532 msgid "# bytes sent via TCP6" msgstr "# các byte đã gửi qua TCP6" #: src/transports/tcp6.c:534 msgid "# bytes dropped by TCP6 (outgoing)" msgstr "# các byte loại đi bởi TCP6 (đi ra)" #: src/transports/udp6.c:131 src/transports/udp.c:135 #, c-format msgid "Failed to bind to UDP port %d.\n" msgstr "Lỗi đóng kết đến cổng UDP %d.\n" #: src/transports/udp6.c:277 msgid "UDP6: Could not determine my public IPv6 address.\n" msgstr "UDP6: không thể quyết định địa chỉ IPv6 công của mình.\n" #: src/transports/udp6.c:494 src/transports/udp.c:544 #, c-format msgid "MTU %llu for `%s' is probably too low!\n" msgstr "MTU %llu cho « %s » rất có thể quá thấp.\n" #: src/transports/udp6.c:500 msgid "# bytes received via UDP6" msgstr "# các byte đã nhận qua UDP6" #: src/transports/udp6.c:501 msgid "# bytes sent via UDP6" msgstr "# các byte đã gửi qua UDP6" #: src/transports/udp6.c:503 msgid "# bytes dropped by UDP6 (outgoing)" msgstr "# các byte loại bỏ bởi UDP6 (đi ra)" #: src/transports/udp6.c:505 msgid "# UDP6 connections (right now)" msgstr "# các kết nối UDP6 (lúc này)" #: src/transports/http.c:876 msgid "HTTP: Could not determine my public IP address.\n" msgstr "HTTP: không thể quyết định địa chỉ IP công của mình.\n" #: src/transports/http.c:2291 msgid "The UPnP service could not be loaded. To disable UPnP, set the configuration option \"UPNP\" in section \"HTTP\" to \"NO\"\n" msgstr "Dịch vụ UPnP không thể nạp được. Để tắt UPnP, đặt tùy chọn cấu hình « UPNP » trong phần « HTTP » thành « NO » (không).\n" #: src/transports/http.c:2300 msgid "# bytes received via HTTP" msgstr "# các byte đã nhận qua HTTP" #: src/transports/http.c:2301 msgid "# bytes sent via HTTP" msgstr "# các byte đã gửi qua HTTP" #: src/transports/http.c:2303 msgid "# bytes dropped by HTTP (outgoing)" msgstr "# các byte loại bỏ bởi HTTP (đi ra)" #: src/transports/smtp.c:367 msgid "Received malformed message via SMTP (size mismatch).\n" msgstr "Nhận được thông báo bị hỏng qua SMTP (kích cỡ không tương ứng).\n" #: src/transports/smtp.c:459 msgid "SMTP filter string to invalid, lacks ': '\n" msgstr "Chuỗi lọc vào SMTP không hợp lệ, còn thiếu « : »\n" #: src/transports/smtp.c:469 #, c-format msgid "SMTP filter string to long, capped to `%s'\n" msgstr "Chuỗi lọc vào SMTP quá dài, tối đa « %s »\n" #: src/transports/smtp.c:564 src/transports/smtp.c:575 #: src/transports/smtp.c:589 src/transports/smtp.c:609 #: src/transports/smtp.c:634 src/transports/smtp.c:643 #: src/transports/smtp.c:657 src/transports/smtp.c:669 #, c-format msgid "SMTP: `%s' failed: %s.\n" msgstr "SMTP: « %s » bị lỗi: %s\n" #: src/transports/smtp.c:814 msgid "No email-address specified, can not start SMTP transport.\n" msgstr "Chưa ghi rõ địa chỉ thư điện tử nên không tạo được truyền tải SMTP.\n" #: src/transports/smtp.c:831 msgid "# bytes received via SMTP" msgstr "# các byte đã nhận qua SMTP" #: src/transports/smtp.c:832 msgid "# bytes sent via SMTP" msgstr "# các byte đã gửi qua SMTP" #: src/transports/smtp.c:834 msgid "# bytes dropped by SMTP (outgoing)" msgstr "# các byte loại đi bởi SMTP (đi ra)" #: src/transports/tcp_helper.c:261 msgid "Received malformed message instead of welcome message. Closing.\n" msgstr "Nhận được thông báo bị hỏng thay cho thông báo chào mừng. Đang đóng.\n" #: src/transports/tcp_helper.c:281 msgid "Received malformed message from tcp-peer connection. Closing.\n" msgstr "Nhận được thông báo bị hỏng từ kết nối đồng đẳng. Đang đóng.\n" #: src/transports/tcp.c:297 msgid "TCP: Could not determine my public IP address.\n" msgstr "TCP: không thể quyết định địa chỉ IP công của mình.\n" #: src/transports/tcp.c:402 #, c-format msgid "Cannot connect to %u.%u.%u.%u:%u: %s\n" msgstr "Không thể kết nối tới %u.%u.%u.%u:%u: %s\n" #: src/transports/tcp.c:585 msgid "The UPnP service could not be loaded. To disable UPnP, set the configuration option \"UPNP\" in section \"TCP\" to \"NO\"\n" msgstr "Dịch vụ UPnP không thể nạp được. Để tắt UPnP, đặt tùy chọn cấu hình « UPNP » trong phần « TCP » thành « NO » (không).\n" #: src/transports/tcp.c:594 msgid "# bytes received via TCP" msgstr "# các byte đã nhận qua TCP" #: src/transports/tcp.c:595 msgid "# bytes sent via TCP" msgstr "# các byte đã gừi qua TCP" #: src/transports/tcp.c:597 msgid "# bytes dropped by TCP (outgoing)" msgstr "# các byte loại đi bởi TCP (đi ra)" #: src/transports/udp.c:302 msgid "UDP: Could not determine my public IP address.\n" msgstr "UDP: không thể quyết định địa chỉ IP công của mình.\n" #: src/transports/udp.c:401 #, c-format msgid "Failed to send message of size %d via UDP to %u.%u.%u.%u:%u: %s\n" msgstr "Lỗi gửi thông báo với kích cỡ %d qua UDP tới %u.%u.%u.%u:%u: %s\n" #: src/transports/udp.c:560 msgid "# bytes received via UDP" msgstr "# các byte đã nhận qua UDP" #: src/transports/udp.c:561 msgid "# bytes sent via UDP" msgstr "# các byte đã gửi qua UDP" #: src/transports/udp.c:563 msgid "# bytes dropped by UDP (outgoing)" msgstr "# các byte loại bỏ bởi UDP (đi ra)" #: src/transports/udp.c:565 msgid "# UDP connections (right now)" msgstr "# các kết nối UDP (lúc này)" #: src/transports/udp_helper.c:96 msgid "Received malformed message from udp-peer connection. Closing.\n" msgstr "Nhận được thông báo bị hỏng từ kết nối udp-peer. Đang đóng.\n" #: src/setup/ncurses/mconf.c:86 msgid "Exit" msgstr "Thoát" #: src/setup/ncurses/mconf.c:89 msgid "Up" msgstr "Lên" #: src/setup/ncurses/mconf.c:92 src/setup/gtk/gnunet-setup.glade:136 #: src/setup/gtk/gnunet-setup.glade:404 src/setup/gtk/gnunet-setup.glade:814 #: src/setup/gtk/gnunet-setup.glade:1147 src/setup/gtk/gnunet-setup.glade:1431 msgid "Cancel" msgstr "Thôi" #: src/setup/ncurses/mconf.c:183 src/setup/ncurses/mconf.c:288 #: src/setup/ncurses/mconf.c:371 src/setup/ncurses/mconf.c:471 #: src/setup/ncurses/wizard_curs.c:111 src/setup/ncurses/wizard_curs.c:176 #: src/setup/ncurses/wizard_curs.c:292 msgid "Internal error! (Choice invalid?)" msgstr "Lỗi nội bộ (sai chọn ?)" #: src/setup/ncurses/mconf.c:219 src/setup/ncurses/mconf.c:418 msgid "Internal error! (Value invalid?)" msgstr "Lỗi nội bộ (giá trị sai ?)" #: src/setup/ncurses/mconf.c:404 msgid "Invalid input, expecting floating point value." msgstr "Dữ liệu nhập sai, mong đợi giá trị chấm động." #: src/setup/ncurses/mconf.c:450 msgid "Invalid input, expecting integer." msgstr "Dữ liệu nhập sai, mong đợi số nguyên." #: src/setup/ncurses/mconf.c:458 msgid "Value is not in legal range." msgstr "Giá trị không nằm trong phạm vi được phép." #: src/setup/ncurses/mconf.c:515 src/setup/ncurses/wizard_curs.c:527 msgid "GNUnet Configuration" msgstr "Cấu hình GNUnet" #: src/setup/ncurses/mconf.c:527 src/setup/text/conf.c:569 #, c-format msgid "Configuration unchanged, no need to save.\n" msgstr "Cấu hình chưa thay đổi thì không cần lưu lại.\n" #: src/setup/ncurses/mconf.c:533 msgid "Do you wish to save your new configuration?" msgstr "Bạn có muốn lưu cấu hình mới không?" #: src/setup/ncurses/mconf.c:547 #, c-format msgid "" "\n" "End of configuration.\n" msgstr "" "\n" "Kết thúc cấu hình.\n" #: src/setup/ncurses/mconf.c:552 #, c-format msgid "" "\n" "Your configuration changes were NOT saved.\n" msgstr "" "\n" "CHƯA lưu các thay đổi trong cấu hình.\n" #: src/setup/ncurses/wizard_curs.c:65 src/setup/lib/wizard_util.c:141 #: src/setup/lib/wizard_util.c:196 msgid "Error" msgstr "Lỗi" #: src/setup/ncurses/wizard_curs.c:73 msgid "Help" msgstr "Trợ giúp" #: src/setup/ncurses/wizard_curs.c:80 msgid "Error!" msgstr "Lỗi !" #: src/setup/ncurses/wizard_curs.c:94 src/applications/vpn/vpn.c:1454 msgid "No" msgstr "Không" #: src/setup/ncurses/wizard_curs.c:95 src/applications/vpn/vpn.c:1454 msgid "Yes" msgstr "Có" #: src/setup/ncurses/wizard_curs.c:143 msgid "Abort" msgstr "Hủy" #: src/setup/ncurses/wizard_curs.c:144 msgid "Ok" msgstr "OK" #: src/setup/ncurses/wizard_curs.c:211 src/setup/ncurses/wizard_curs.c:277 #: src/setup/ncurses/wizard_curs.c:418 msgid "GNUnet configuration" msgstr "Cấu hình GNUnet" #: src/setup/ncurses/wizard_curs.c:213 msgid "" "Welcome to GNUnet!\n" "\n" "This assistant will ask you a few basic questions in order to configure GNUnet.\n" "\n" "Please visit our homepage at\n" "\thttp://gnunet.org/\n" "and join our community at\n" "\thttp://gnunet.org/drupal/\n" "\n" "Have a lot of fun,\n" "\n" "the GNUnet team" msgstr "" "Xin chào mừng tới GNUnet !\n" "\n" "Trình giúp đỡ này sẽ hỏi bạn vài câu cơ bản để cấu hình GNUnet.\n" "\n" "Xin hãy thăm trang chủ của chúng tôi tại\n" "\thttp://gnunet.org\n" "và tham gia cộng đồng tại\n" "\thttp://www.gnunet.org/drupal/\n" "\n" "Chúc có nhiều niềm vui,\n" "\n" "đội GNUnet" #: src/setup/ncurses/wizard_curs.c:279 msgid "Choose the network interface that connects your computer to the internet from the list below." msgstr "Chọn giao diện mạng kết nối máy tính tới Internet từ danh sách dưới đây." #: src/setup/ncurses/wizard_curs.c:297 src/setup/ncurses/wizard_curs.c:311 msgid "The \"Network interface\" is the device that connects your computer to the internet. This is usually a modem, an ISDN card or a network card in case you are using DSL." msgstr "« Giao diện mạng » là thiết bị kết nối máy tính với Internet. Đây thường là một bộ điều giải, một bo mạch ISDN hay một bo mạch mạng nếu dùng DSL." #: src/setup/ncurses/wizard_curs.c:308 msgid "Network configuration: interface" msgstr "Cấu hình mạng: giao diện" #: src/setup/ncurses/wizard_curs.c:310 msgid "What is the name of the network interface that connects your computer to the Internet?" msgstr "Máy tính này kết nối tới Internet qua giao diện mạng tên nào?" #: src/setup/ncurses/wizard_curs.c:321 msgid "Network configuration: IP" msgstr "Cấu hình mạng: IP" #: src/setup/ncurses/wizard_curs.c:323 msgid "What is this computer's public IP address or hostname?" msgstr "Địa chỉ IP công cộng hoặc tên của máy tính này là gì?" #: src/setup/ncurses/wizard_curs.c:324 msgid "" "If your provider always assigns the same IP-Address to you (a \"static\" IP-Address), enter it into the \"IP-Address\" field. If your IP-Address changes every now and then (\"dynamic\" IP-Address) but there's a hostname that always points to your actual IP-Address (\"Dynamic DNS\"), you can also enter it here.\n" "If left empty, GNUnet will try to automatically detect the IP.\n" "You can specify a hostname, GNUnet will then use DNS to resolve it.\n" "If in doubt, leave this empty." msgstr "" "Nếu nhà cung cấp luôn luôn gán cùng một địa chỉ IP (một địa chỉ IP « tĩnh »), thì hãy nhập địa chỉ đó vào vùng « Địa chỉ IP ». Nếu địa chỉ IP thay đổi sau mỗi lần kết nối (địa chỉ IP « động ») nhưng có một tên máy luôn luôn chỉ tới địa chỉ IP thực của bạn (« DNS động »), thì cũng có thể nhập nó ở đây.\n" "Nếu không biết phải làm gì, thì hãy để trống. GNUnet sẽ thử tự động phát hiện địa chỉ IP.\n" "Bạn cũng có thể ghi rõ tên máy. Vì thế GNUnet sẽ dùng dịch vụ DNS để giải quyết nó." #: src/setup/ncurses/wizard_curs.c:339 msgid "Bandwidth configuration: upload" msgstr "Cấu hình dải thông: tải lên" #: src/setup/ncurses/wizard_curs.c:341 msgid "How much upstream bandwidth (in bytes/s) may be used?" msgstr "Dòng ra có thể dùng bao nhiêu byte?" #: src/setup/ncurses/wizard_curs.c:342 msgid "" "You can limit GNUnet's resource usage here.\n" "\n" "The \"upstream\" is the data channel through which data is *sent* to the internet. The limit is the maximum amountwhich GNUnet is allowed to use. If you have a flatrate, you can set it to the maximum speed of your internet connection. You should not use a value that is higher than what your actual connection allows." msgstr "" "Có thể giới hạn sử dụng tài nguyên của GNUnet ở đây.\n" "\n" "« Dòng ra » là kênh dữ liệu qua đó _gửi_ dữ liệu tới Internet. Giới hạn là số tối đa được gán cho GNUnet. Nếu có tốc độ đều, thì có thể đặt thành tốc độ kết nối Internet lớn nhất. Không nên đặt giá trị lớn hơn số được gán cho kết nối Internet của bạn." #: src/setup/ncurses/wizard_curs.c:354 msgid "Bandwidth configuration: download" msgstr "Cấu hình dải thông: tải xuống" #: src/setup/ncurses/wizard_curs.c:356 msgid "How much downstream bandwidth (in bytes/s) may be used?" msgstr "Dòng vào có thể dùng bao nhiêu byte?" #: src/setup/ncurses/wizard_curs.c:357 msgid "" "You can limit GNUnet's resource usage here.\n" "\n" "The \"downstream\" is the data channel through which data is *received* from the internet. The limit is the maximum amountwhich GNUnet is allowed to use. If you have a flatrate, you can set it to the maximum speed of your internet connection. You should not use a value that is higher than what your actual connection allows." msgstr "" "Có thể giới hạn sử dụng tài nguyên của GNUnet ở đây.\n" "\n" "« Dòng vào » là kênh dữ liệu qua đó _nhận_ dữ liệu từ Internet. Giới hạn là số tối đa được gán cho GNUnet. Nếu có tốc độ đều, thì có thể đặt thành tốc độ kết nối Internet lớn nhất. Không nên đặt giá trị lớn hơn số được gán cho kết nối Internet của bạn." #: src/setup/ncurses/wizard_curs.c:369 msgid "Quota configuration" msgstr "Cấu hình hạn ngạch" #: src/setup/ncurses/wizard_curs.c:370 msgid "What is the maximum size of the datastore in MB?" msgstr "Kho dữ liệu có kích cỡ tối đa (theo MB)?" #: src/setup/ncurses/wizard_curs.c:371 msgid "The GNUnet datastore contains all content that GNUnet needs to store (indexed, inserted and migrated content)." msgstr "Kho dữ liệu GNUnet chứa tất cả các dữ liệu GNUnet cần cất giữ (dữ liệu chỉ mục, nội dung chèn và nhập vào)." #: src/setup/ncurses/wizard_curs.c:383 msgid "Daemon configuration: user account" msgstr "Cấu hình trình nền: tài khoản người dùng" #: src/setup/ncurses/wizard_curs.c:384 msgid "As which user should gnunetd be run?" msgstr "Trình nền gnunetd nên chạy với tư cách người dùng nào?" #: src/setup/ncurses/wizard_curs.c:386 msgid "" "For security reasons, it is a good idea to let this setup create a new user account under which the GNUnet service is started at system startup.\n" "\n" "However, GNUnet may not be able to access files other than its own. This includes files you want to publish in GNUnet. You'll have to grant read permissions to the user specified below.\n" "\n" "Leave the field empty to run GNUnet with system privileges.\n" msgstr "" "Vì lý do bảo mật, nên cho phép thiết lập này tạo một tài khoản người dùng mới sở hữu dịch vụ GNUnet chạy mỗi khi khởi động máy tính.\n" "\n" "Tuy nhiên, GNUnet có thể không truy cập được tới các tập tin mà nó không sở hữu, bao gồm các tập tin người dùng muốn đưa ra chia sẻ trong GNUnet. Sẽ cần cho phép người dùng chỉ ra dưới đây quyền đọc chúng.\n" "\n" "Để trống để chạy GNUnet với quyền hệ thống.\n" #: src/setup/ncurses/wizard_curs.c:403 msgid "Daemon configuration: group account" msgstr "Cấu hình trình nền: tài khoản nhóm" #: src/setup/ncurses/wizard_curs.c:404 msgid "As which group should gnunetd be run?" msgstr "gnunetd nên chạy như nhóm nào?" #: src/setup/ncurses/wizard_curs.c:406 msgid "" "For security reasons, it is a good idea to let this setup create a new group for the chosen user account.\n" "\n" "You can also specify a already existant group here.\n" "\n" "Only members of this group will be allowed to start and stop the the GNUnet server and have access to GNUnet server data.\n" msgstr "" "Vì lý do bảo mật, nên để thiết lập này tạo một nhóm mới cho tài khoản người dùng đã chọn\n" "\n" "Cũng có thể chỉ ra một nhóm đã có.\n" "\n" "Chỉ thành viên của nhóm này mới có quyền chạy và dừng trình phục vụ GNUnet và có truy cập tới dữ liệu của trình phục vụ GNUnet.\n" #: src/setup/ncurses/wizard_curs.c:420 msgid "Do you want to automatically launch GNUnet as a system service?" msgstr "Bạn có muốn tự động khởi chạy GNUnet như là dịch vụ hệ thống không?" #: src/setup/ncurses/wizard_curs.c:422 msgid "If you say \"yes\" here, the GNUnet background process will be automatically started when you turn on your computer. If you say \"no\" here, you have to launch GNUnet yourself each time you want to use it." msgstr "Bật tùy chọn này thì tiến trình GNUnet nền được tự động khởi chạy mỗi lần mở máy tính. Không thì bạn cần phải tự khởi chạy GNUnet mỗi lần để sử dụng nó." #: src/setup/ncurses/wizard_curs.c:445 src/setup/gtk/wizard_gtk.c:421 #, c-format msgid "Unable to save configuration file `%s':" msgstr "Không thể lưu tập tin cấu hình « %s »:" #: src/setup/ncurses/wizard_curs.c:464 msgid "Unable to create user account for daemon." msgstr "Không thể tạo tài khoản người dùng cho trình nền." #: src/setup/ncurses/wizard_curs.c:471 msgid "Unable to setup autostart for daemon." msgstr "Không thể thiết lập chức năng tự động khởi chạy cho trình nền." #: src/setup/ncurses/wizard_curs.c:486 msgid "Save configuration?" msgstr "Lưu cấu hình không?" #: src/setup/ncurses/wizard_curs.c:487 msgid "Save configuration now?" msgstr "Lưu cấu hình ngay bây giờ không?" #: src/setup/ncurses/wizard_curs.c:531 src/setup/gtk/gnunet-setup.glade:723 #: src/setup/gtk/gnunet-setup.glade:1056 src/setup/gtk/gnunet-setup.glade:1340 msgid "Back" msgstr "Lùi" #: src/setup/text/conf.c:79 msgid "yes" msgstr "có" #: src/setup/text/conf.c:80 msgid "no" msgstr "không" #: src/setup/text/conf.c:106 #, c-format msgid "\tEnter yes (%s), no (%s) or help (%s): " msgstr "\tNhập có (%s), không (%s) hoặc trợ giúp (%s): " #: src/setup/text/conf.c:115 msgid "\tPossible choices:\n" msgstr "\tLựa chọn có thể:\n" #: src/setup/text/conf.c:123 msgid "\tUse single space prefix to avoid conflicts with hotkeys!\n" msgstr "\tHãy dùng tiền tố một dấu cách để tránh xung đột với phím nóng.\n" #: src/setup/text/conf.c:125 #, c-format msgid "\tEnter string (type '%s' for default value `%s'): " msgstr "\tNhập chuỗi (gõ « %s » cho giá trị mặc định « %s »): " #: src/setup/text/conf.c:143 #, c-format msgid "\t Enter choice (default is %c): " msgstr "\t Nhập sự chọn (mặc định là %c):" #: src/setup/text/conf.c:147 #, c-format msgid "\tEnter floating point (type '%s' for default value %f): " msgstr "\tNhập chấm động (gõ « %s » cho giá trị mặc định %f): " #: src/setup/text/conf.c:153 #, c-format msgid "\tEnter unsigned integer in interval [%llu,%llu] (type '%s' for default value %llu): " msgstr "\tNhập số nguyên không có dấu trong khoảng [%llu,%llu] (gõ « %s » cho giá trị mặc định %llu): " #: src/setup/text/conf.c:187 #, c-format msgid "Yes\n" msgstr "Có\n" #: src/setup/text/conf.c:192 #, c-format msgid "No\n" msgstr "Không\n" #: src/setup/text/conf.c:195 src/setup/text/conf.c:236 #: src/setup/text/conf.c:266 src/setup/text/conf.c:329 #: src/setup/text/conf.c:387 #, c-format msgid "Help\n" msgstr "Trợ giúp\n" #: src/setup/text/conf.c:198 src/setup/text/conf.c:213 #: src/setup/text/conf.c:276 src/setup/text/conf.c:307 #: src/setup/text/conf.c:365 #, c-format msgid "Abort\n" msgstr "Hủy bỏ\n" #: src/setup/text/conf.c:354 src/setup/text/conf.c:416 #, c-format msgid "" "\n" "Invalid entry, try again (use '?' for help): " msgstr "" "\n" "Dữ liệu nhập sai. Hãy thử lại (dùng « ? » để xem trợ giúp): " #: src/setup/text/conf.c:422 #, c-format msgid "Unknown kind %x (internal error). Skipping option.\n" msgstr "Kiểu không rõ %x (lỗi nội bộ). Đang bỏ qua tùy chọn.\n" #: src/setup/text/conf.c:484 msgid "\tDescend? (y/n/?) " msgstr "\tGiảm dần ? (c/k?)" #: src/setup/text/conf.c:493 msgid "Aborted.\n" msgstr "Bị hủy bỏ.\n" #: src/setup/text/conf.c:506 msgid "Invalid entry.\n" msgstr "Dữ liệu nhập không hợp lệ.\n" #: src/setup/text/conf.c:524 #, c-format msgid "Unknown kind %x (internal error). Aborting.\n" msgstr "Kiểu không rõ %x (lỗi nội bộ). Đang hủy bỏ.\n" #: src/setup/text/conf.c:556 #, c-format msgid "You can always press ENTER to keep the current value.\n" msgstr "Lúc nào bạn cũng có thể bấm phím Enter để giữ lại giá trị hiện có.\n" #: src/setup/text/conf.c:557 #, c-format msgid "Use the '%s' key to abort.\n" msgstr "Dùng phím « %s » để hủy bỏ.\n" #: src/setup/text/conf.c:575 #, c-format msgid "Save configuration? Answer 'y' for yes, 'n' for no, 'r' to repeat configuration. " msgstr "" "Lưu lại cấu hình không?\n" " • y\t\tcó\n" " • n\t\tkhông\n" " • r\t\tlặp lại cấu hình." #: src/setup/text/conf.c:590 #, c-format msgid "Configuration was unchanged, no need to save.\n" msgstr "Cấu hình chưa thay đổi thì không cần lưu lại.\n" #: src/setup/text/conf.c:599 #, c-format msgid "Configuration file `%s' written.\n" msgstr "Tập tin cấu hình « %s » đã được ghi.\n" #: src/setup/gtk/wizard_gtk.c:141 msgid "(unknown connection)" msgstr "(không rõ kết nối)" #: src/setup/gtk/wizard_gtk.c:445 msgid "Do you want to save the new configuration?" msgstr "Bạn có muốn lưu cấu hình mới này không?" #: src/setup/gtk/wizard_gtk.c:477 msgid "Unable to create user account:" msgstr "Không thể tạo tài khoản người dùng:" #: src/setup/gtk/wizard_gtk.c:486 msgid "Unable to change startup process:" msgstr "Không thể thay đổi tiến trình khởi chạy:" #: src/setup/gtk/wizard_gtk.c:501 msgid "" "Running gnunet-update failed.\n" "This maybe due to insufficient permissions, please check your configuration.\n" "Finally, run gnunet-update manually." msgstr "" "Lỗi chạy tiến trình cập nhật gnunet-update.\n" "Đây có thể do không đủ quyền, hãy kiểm tra cấu hình.\n" "Cuối cùng, chạy gnunet-update thủ công." #: src/setup/gtk/ngconf.c:383 msgid "Configuration saved." msgstr "Cấu hình đã được lưu." #: src/setup/gtk/ngconf.c:393 msgid "Failed to save configuration." msgstr "Lỗi lưu cấu hình." #: src/setup/gtk/ngconf.c:418 msgid "Configuration changed. Save?" msgstr "Cấu hình bị thay đổi. Lưu ?" #: src/setup/gtk/ngconf.c:431 msgid "Error saving configuration." msgstr "Gặp lỗi khi lưu cấu hình." #: src/setup/lib/tree.c:191 #, c-format msgid "Internal error: entry `%s' in section `%s' not found for visibility change!\n" msgstr "Lỗi nội bộ : mục nhập « %s » trong phần « %s » không tìm thấy để thay đổi tình trạng hiển rõ.\n" #: src/setup/lib/gns.c:316 #, c-format msgid "Configuration does not satisfy constraints of configuration specification file `%s'!\n" msgstr "Cấu hình không thỏa mãn các ràng buộc của tập tin đặc tả cấu hình « %s ».\n" #: src/setup/lib/wizard_util.c:112 msgid "Can't open Service Control Manager" msgstr "Không thể mở Bộ Quản lý Điều khiển Dịch vụ" #: src/setup/lib/wizard_util.c:118 msgid "Can't create service" msgstr "Không thể tạo dịch vụ" #: src/setup/lib/wizard_util.c:122 msgid "Error changing the permissions of the GNUnet directory" msgstr "Gặp lỗi khi thay đổi quyền hạn của thư mục GNUnet" #: src/setup/lib/wizard_util.c:127 msgid "Cannot write to the regisitry" msgstr "Không thể ghi vào sổ đăng ký" #: src/setup/lib/wizard_util.c:130 msgid "Can't access the service" msgstr "Không thể truy cập đến dịch vụ" #: src/setup/lib/wizard_util.c:133 msgid "Can't delete the service" msgstr "Không thể xoá dịch vụ" #: src/setup/lib/wizard_util.c:136 msgid "Unknown error" msgstr "Lỗi không rõ" #: src/setup/lib/wizard_util.c:172 msgid "This version of Windows does not support multiple users." msgstr "Phiên bản Windows này không có hỗ trợ đa người dùng." #: src/setup/lib/wizard_util.c:176 msgid "Error creating user" msgstr "Gặp lỗi khi tạo người dùng" #: src/setup/lib/wizard_util.c:180 msgid "Error accessing local security policy" msgstr "Gặp lỗi khi truy cập đến chính sách bảo mật cục bộ" #: src/setup/lib/wizard_util.c:185 msgid "Error granting service right to user" msgstr "Gặp lỗi khi cấp quyền dịch vụ cho người dùng" #: src/setup/lib/wizard_util.c:190 msgid "Unknown error while creating a new user" msgstr "Gặp lỗi không rõ trong khi tạo một người dùng mới" #: src/setup/gnunet-setup.c:66 #, c-format msgid "Can only set one option per invocation.\n" msgstr "Chỉ có thể đặt một tùy chọn trong mỗi cuộc gọi.\n" #: src/setup/gnunet-setup.c:74 #, c-format msgid "Invalid synatx, argument to 'set' must have the format SECTION:OPTION=VALUE.\n" msgstr "" "Cú pháp sai, đối số tới « set » phải theo định dạng:\n" "PHẦN:TÙY_CHỌN­=GIÁ_TRỊ\n" #: src/setup/gnunet-setup.c:88 #, c-format msgid "Can only display one option per invocation.\n" msgstr "Chỉ có thể hiển thị một tùy chọn trong mỗi cuộc gọi.\n" #: src/setup/gnunet-setup.c:95 #, c-format msgid "Invalid synatx, argument to 'get' must have the format SECTION:OPTION.\n" msgstr "" "Cú pháp sai, đối số tới « get » phải theo định dạng:\n" "PHẦN:TÙY_CHỌN\n" #: src/setup/gnunet-setup.c:109 src/setup/qt/qtconfig.cc:24 msgid "generate configuration for gnunetd, the GNUnet daemon" msgstr "tạo ra cấu hình cho gnunetd, trình nền GNUnet" #: src/setup/gnunet-setup.c:112 src/server/gnunet-update.c:265 msgid "print a value from the configuration file to stdout" msgstr "in ra đầu ra tiêu chuẩn một giá trị từ tập tin cấu hình" #: src/setup/gnunet-setup.c:114 src/setup/qt/qtconfig.cc:26 msgid "Tool to setup GNUnet." msgstr "Công cụ để thiết lập GNUnet." #: src/setup/gnunet-setup.c:116 msgid "update a value in the configuration file" msgstr "cập nhật một giá trị trong tập tin cấu hình" #: src/setup/gnunet-setup.c:258 #, c-format msgid "Too many arguments.\n" msgstr "Quá nhiều đối số.\n" #: src/setup/gnunet-setup.c:264 msgid "No interface specified, using default\n" msgstr "Chưa xác định giao diện nên dùng mặc định\n" #: src/setup/gnunet-setup.c:343 #, c-format msgid "Undefined option.\n" msgstr "Tùy chọn không xác định.\n" #: src/setup/gnunet-setup.c:396 #, c-format msgid "`%s' is not available.\n" msgstr "« %s » không sẵn sàng.\n" #: src/setup/gnunet-setup.c:416 #, c-format msgid "Unknown operation `%s'\n" msgstr "Không rõ thao tác « %s »\n" #: src/setup/gnunet-setup.c:417 src/applications/testbed/gnunet-testbed.c:125 #: src/applications/testbed/gnunet-testbed.c:517 src/util/getopt/getopt.c:1072 #, c-format msgid "Use --help to get a list of options.\n" msgstr "Hãy sử dụng lệnh « --help » (trợ giúp) để xem một danh sách các tùy chọn.\n" #: src/setup/gnunet-win-tool.c:52 msgid "list all network adapters" msgstr "liệt kê mọi bộ tiếp hợp mạng" #: src/setup/gnunet-win-tool.c:55 msgid "install GNUnet as Windows service" msgstr "cài đặt GNUnet như là một dịch vụ Windows" #: src/setup/gnunet-win-tool.c:58 msgid "uninstall GNUnet service" msgstr "hủy cài đặt dịch vụ GNUnet" #: src/setup/gnunet-win-tool.c:61 msgid "increase the maximum number of TCP/IP connections" msgstr "tăng sổ tối đa các kết nối TCP/IP" #: src/setup/gnunet-win-tool.c:64 msgid "display a file's hash value" msgstr "hiển thị giá trị tổng kiểm của tập tin" #: src/setup/gnunet-win-tool.c:123 #, c-format msgid "GNUnet service installed successfully.\n" msgstr "Dịch vụ GNUnet đã được cài đặt.\n" #: src/setup/gnunet-win-tool.c:126 src/setup/gnunet-win-tool.c:154 #, c-format msgid "This version of Windows doesn't support services.\n" msgstr "Phiên bản Windows này không hỗ trợ dịch vụ.\n" #: src/setup/gnunet-win-tool.c:130 src/setup/gnunet-win-tool.c:158 #, c-format msgid "Error: can't open Service Control Manager: %s\n" msgstr "Lỗi: không thể mở Bộ Quản lý Điều khiển Dịch vụ : %s\n" #: src/setup/gnunet-win-tool.c:135 #, c-format msgid "Error: can't create service: %s\n" msgstr "Lỗi: không thể tạo dịch vụ : %s\n" #: src/setup/gnunet-win-tool.c:138 src/setup/gnunet-win-tool.c:170 #, c-format msgid "Unknown error.\n" msgstr "Lỗi không rõ.\n" #: src/setup/gnunet-win-tool.c:151 #, c-format msgid "Service deleted.\n" msgstr "Dịch vụ đã bị xoá.\n" #: src/setup/gnunet-win-tool.c:163 #, c-format msgid "Error: can't access service: %s\n" msgstr "Lỗi: không thể truy cập đến dịch vụ : %s\n" #: src/setup/gnunet-win-tool.c:167 #, c-format msgid "Error: can't delete service: %s\n" msgstr "Lỗi: không thể xoá dịch vụ : %s\n" #: src/applications/dht/tools/dhttest.c:51 #: src/applications/dht/tools/dhttest2.c:43 #: src/applications/dht/module/table.c:758 msgid "# dht connections" msgstr "# các kết nối dht" #: src/applications/dht/tools/dht-query.c:52 msgid "Query (get KEY, put KEY VALUE) DHT table." msgstr "Hỏi (nhận KHOÁ, gửi GIÁ_TRỊ_KHOÁ) bảng DHT." #: src/applications/dht/tools/dht-query.c:56 msgid "allow TIME ms to process a GET command" msgstr "cho phép THỜI_GIAN mili giây để xử lý mỗi câu lệnh GET (lấy)" #: src/applications/dht/tools/dht-query.c:95 #, c-format msgid "%s(%s) operation returned no results.\n" msgstr "Thao tác %s(%s) không trả lại kết quả.\n" #: src/applications/dht/tools/dht-query.c:112 #, c-format msgid "Issuing '%s(%s,%s)' command.\n" msgstr "Đang cấp câu lệnh « %s(%s,%s) ».\n" #: src/applications/dht/tools/dht-query.c:120 #, c-format msgid "'%s(%s,%s)' succeeded\n" msgstr "« %s(%s,%s) » đã thành công\n" #: src/applications/dht/tools/dht-query.c:124 #, c-format msgid "'%s(%s,%s)' failed.\n" msgstr "« %s(%s,%s) » bị lỗi.\n" #: src/applications/dht/tools/dht-query.c:148 #, c-format msgid "Failed to connect to gnunetd.\n" msgstr "Lỗi kết nối đến gnunetd.\n" #: src/applications/dht/tools/dht-query.c:161 #, c-format msgid "Command `%s' requires an argument (`%s').\n" msgstr "Câu lệnh « %s » cần đến một đối số (« %s »).\n" #: src/applications/dht/tools/dht-query.c:178 #, c-format msgid "Command `%s' requires two arguments (`%s' and `%s').\n" msgstr "Câu lệnh « %s » cần đến hai đối số (« %s » và « %s »).\n" #: src/applications/dht/tools/dht-query.c:189 #, c-format msgid "Unsupported command `%s'. Aborting.\n" msgstr "Lệnh không được hỗ trợ « %s ». Đang hủy bỏ.\n" #: src/applications/dht/module/cs.c:141 #, c-format msgid "`%s' failed. Terminating connection to client.\n" msgstr "« %s » bị lỗi. Đang chấm dứt kết nối tới máy khách.\n" #: src/applications/dht/module/cs.c:229 #, c-format msgid "`%s' registering client handlers: %d %d\n" msgstr "« %s » đang đăng ký các trình điều khiển máy khách: %d %d\n" #: src/applications/dht/module/cs.c:248 msgid "Enables efficient non-anonymous routing" msgstr "Hiệu lực định tuyến khác nặc danh hiệu dụng" #: src/applications/dht/module/routing.c:869 msgid "# dht replies routed" msgstr "# các đáp ứng dht được định tuyến" #: src/applications/dht/module/routing.c:871 msgid "# dht requests routed" msgstr "# các yêu cầu dht được định tuyến" #: src/applications/dht/module/routing.c:873 msgid "# dht get requests received" msgstr "# các yêu cầu get (lấy) dht được nhận" #: src/applications/dht/module/routing.c:875 msgid "# dht put requests received" msgstr "# các yêu cầu put (gửi) dht được nhận" #: src/applications/dht/module/routing.c:877 msgid "# dht results received" msgstr "# các kết quả dht được nhận" #: src/applications/dht/module/routing.c:882 #, c-format msgid "`%s' registering p2p handlers: %d %d %d\n" msgstr "« %s » đang đăng ký các trình điều khiển p2p: %d %d %d\n" #: src/applications/dht/module/table.c:760 msgid "# dht discovery messages received" msgstr "# các thông báo phát hiện dht được nhận" #: src/applications/dht/module/table.c:762 msgid "# dht route host lookups performed" msgstr "# các việc tra tìm đường tới máy dht được làm" #: src/applications/dht/module/table.c:764 msgid "# dht discovery messages sent" msgstr "# các thông báo phát hiện dht được gửi" #: src/applications/topology_default/topology.c:535 #, c-format msgid "Could not read friends list `%s'\n" msgstr "Không thể đọc danh sách bạn bè « %s »\n" #: src/applications/topology_default/topology.c:546 #, c-format msgid "Failed to read friends list from `%s'\n" msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n" #: src/applications/topology_default/topology.c:564 msgid "Syntax error in topology specification, skipping bytes.\n" msgstr "Lỗi cú pháp trong sự xác định địa hình học, đang bỏ qua các byte.\n" #: src/applications/topology_default/topology.c:579 #, c-format msgid "Syntax error in topology specification, skipping bytes `%s'.\n" msgstr "Lỗi cú pháp trong sự xác định địa hình học, đang bỏ qua các byte « %s ».\n" #: src/applications/topology_default/topology.c:591 msgid "Fewer friends specified than required by minimum friend count. Will only connect to friends.\n" msgstr "Xác định quá ít bạn bè (dưới số tối thiểu). Sẽ chỉ kết nối tới bạn bè.\n" #: src/applications/topology_default/topology.c:600 msgid "More friendly connections required than target total number of connections.\n" msgstr "Cần thiết nhiều kết nối bạn bè hơn tổng số kết nối đích.\n" #: src/applications/topology_default/topology.c:706 msgid "maintains GNUnet default mesh topology" msgstr "bảo quản định hình mắc lưới mặc định của GNUnet" #: src/applications/rpc/rpc.c:136 src/applications/rpc/rpc.c:181 #, c-format msgid "%s::%s - RPC %s:%p could not be registered: another callback is already using this name (%p)\n" msgstr "%s::%s - RPC %s:%p không đăng ký được: một gọi lại khác đã dùng tên này (%p)\n" #: src/applications/rpc/rpc.c:228 src/applications/rpc/rpc.c:281 #, c-format msgid "%s::%s - RPC %s:%p could not be unregistered: another callback registered under that name: %p\n" msgstr "%s::%s - RPC %s:%p không hủy đăng ký được: một gọi lại khác đã hủy đăng ký dưới tên đó (%p)\n" #: src/applications/rpc/rpc.c:250 #, c-format msgid "%s::%s - RPC %s:%p could not be unregistered: not found\n" msgstr "%s::%s - RPC %s:%p không hủy đăng ký được: không tìm thấy\n" #: src/applications/rpc/rpc.c:303 #, c-format msgid "%s::%s - async RPC %s:%p could not be unregistered: not found\n" msgstr "%s::%s - RPC không đồng bộ %s:%p không hủy đăng ký được: không tìm thấy\n" #: src/applications/rpc/rpc.c:945 src/applications/rpc/rpc.c:1084 #: src/applications/rpc/rpc.c:1174 #, c-format msgid "Invalid message of type %u received. Dropping.\n" msgstr "Nhận được thông báo sai kiểu %u. Đang bỏ đi.\n" #: src/applications/rpc/rpc.c:1015 #, c-format msgid "Dropping RPC request %u: message malformed.\n" msgstr "Đang bỏ đi yêu cầu RPC %u: thông báo bị hỏng.\n" #: src/applications/rpc/rpc.c:1363 #, c-format msgid "`%s' called with timeout above 1 hour (bug?)\n" msgstr "đã gọi « %s » với thời hạn lớn hơn 1 giờ (lỗi ?)\n" #: src/applications/rpc/rpc.c:1482 #, c-format msgid "RPC not unregistered: %s:%p\n" msgstr "RPC không được hủy đăng ký: %s:%p\n" #: src/applications/rpc/rpc.c:1511 #, c-format msgid "`%s' registering handlers %d %d %d\n" msgstr "« %s » đang đăng ký các trình điều khiển %d %d %d\n" #: src/applications/rpc/rpc.c:1529 #, c-format msgid "Failed to initialize `%s' service.\n" msgstr "Lỗi sơ khởi dịch vụ « %s ».\n" #: src/applications/rpc/rpc.c:1592 msgid "RPC async reply invalid.\n" msgstr "Sai đáp ứng RPC không đồng bộ.\n" #: src/applications/rpc/rpc.c:1663 msgid "async RPC reply not received.\n" msgstr "Không nhận được đáp ứng RPC không đồng bộ.\n" #: src/applications/datastore/datastore.c:170 #: src/applications/datastore/datastore.c:184 #, c-format msgid "Availability test failed for `%s' at %s:%d.\n" msgstr "Lỗi kiểm tra tình trạng sẵn sàng cho « %s » tại %s:%d.\n" #: src/applications/datastore/datastore.c:424 msgid "# requests filtered by bloom filter" msgstr "# các yêu cầu được lọc theo bộ lọc bloom" #: src/applications/datastore/datastore.c:426 msgid "# bloom filter false positives" msgstr "# các dương giả của bộ lọc bloom" #: src/applications/datastore/datastore.c:429 msgid "# bytes allowed in datastore" msgstr "# các byte được phép trong kho dữ liệu" #: src/applications/datastore/datastore.c:446 msgid "Failed to load state service. Trying to do without.\n" msgstr "Lỗi nạp dịch vụ tình trạng. Không có nhưng vẫn đang thử tiếp tục.\n" #: src/applications/datastore/datastore.c:587 msgid "Failed to load sqstore service. Check your configuration!\n" msgstr "Lỗi nạp dịch vụ sqstore. Hãy kiểm tra lại cấu hình.\n" #: src/applications/fragmentation/fragmentation.c:578 msgid "# messages defragmented" msgstr "# các thông báo được chắp liền" #: src/applications/fragmentation/fragmentation.c:580 msgid "# messages fragmented" msgstr "# các thông báo bị tế phân" #: src/applications/fragmentation/fragmentation.c:581 msgid "# fragments discarded" msgstr "# các mảnh bị loại bỏ" #: src/applications/fragmentation/fragmentation.c:592 #, c-format msgid "`%s' registering handler %d\n" msgstr "« %s » đang đăng ký trình điều khiển %d\n" #: src/applications/vpn/gnunet-vpn.c:51 #: src/applications/stats/gnunet-stats.c:83 msgid "Print statistics about GNUnet operations." msgstr "In ra thống kê về các thao tác GNUnet." #: src/applications/vpn/gnunet-vpn.c:55 msgid "Suppress display of asynchronous log messages" msgstr "Thu hồi hiển thị các thông điệp ghi sự kiện không đồng bộ" #: src/applications/vpn/gnunet-vpn.c:149 #: src/applications/stats/gnunet-stats.c:121 #: src/applications/tbench/gnunet-tbench.c:126 #: src/applications/tracekit/gnunet-tracekit.c:352 #: src/applications/template/gnunet-template.c:95 #, c-format msgid "Error establishing connection with gnunetd.\n" msgstr "Lỗi thiết lập kết nối đến gnunetd.\n" #: src/applications/vpn/vpn.c:368 #, c-format msgid "Not storing route to myself from peer %d\n" msgstr "Không phải lưu lại đường đến máy này từ đồng đẳng %d\n" #: src/applications/vpn/vpn.c:379 #, c-format msgid "Duplicate route to node from peer %d, choosing minimum hops" msgstr "Đường trùng đến nút từ đồng đẳng %d, đang chọn đường có ít bước nhảy hơn" #: src/applications/vpn/vpn.c:412 #, c-format msgid "Inserting route from peer %d in route table at location %d\n" msgstr "Đang chèn đường từ đồng đẳng %d vào bảng định tuyến tại vị trí %d\n" #: src/applications/vpn/vpn.c:468 #, c-format msgid "RFC4193 Frame length %d is too big for GNUnet!\n" msgstr "RFC4193 Chiều dài khung %d quá lớn cho GNUnet!\n" #: src/applications/vpn/vpn.c:475 #, c-format msgid "RFC4193 Frame length %d too small\n" msgstr "RFC4193 Chiều dài khung %d quá nhỏ\n" #: src/applications/vpn/vpn.c:491 #, c-format msgid "RFC4193 Ethertype %x and IP version %x do not match!\n" msgstr "RFC4193 Ethertype %x và phiên bản IP %x không tương ứng.\n" #: src/applications/vpn/vpn.c:563 #, c-format msgid "RFC4193 Going to try and make a tunnel in slot %d\n" msgstr "RFC4193 Sẽ thử tạo một đường hầm trong khoảng %d\n" #: src/applications/vpn/vpn.c:569 #, c-format msgid "Cannot open tunnel device because of %s" msgstr "Không thể mở thiết bị đường hầm do %s" #: src/applications/vpn/vpn.c:606 #, c-format msgid "RFC4193 Create skips gnu%d as we are already using it\n" msgstr "RFC4193 Chức năng tạo sẽ nỏ qua gnu%d vì chúng ta đang dùng nó\n" #: src/applications/vpn/vpn.c:621 #, c-format msgid "Cannot set tunnel name to %s because of %s\n" msgstr "không thể đặt tên đường hầm thành %s do %s\n" #: src/applications/vpn/vpn.c:631 #, c-format msgid "Configured tunnel name to %s\n" msgstr "Tên đường hầm đã được cấu hình thành %s\n" #: src/applications/vpn/vpn.c:673 #, c-format msgid "Cannot get socket flags for gnu%d because %s\n" msgstr "Không thể lấy các cờ ổ cắm cho gnu%d do %s\n" #: src/applications/vpn/vpn.c:683 #, c-format msgid "Cannot set socket flags for gnu%d because %s\n" msgstr "Không thể đặt các cờ ổ cắm cho gnu%d do %s\n" #: src/applications/vpn/vpn.c:693 #, c-format msgid "Cannot set MTU for gnu%d because %s\n" msgstr "Không thể đặt MTU cho gnu%d do %s\n" #: src/applications/vpn/vpn.c:701 #, c-format msgid "Cannot get interface index for gnu%d because %s\n" msgstr "Không thể lấy chủ mục giao diện cho gnu%d do %s\n" #: src/applications/vpn/vpn.c:715 #, c-format msgid "IPv6 ifaddr gnu%d - %x:%x:%x:%x:%x:%x:%x:%x/%d\n" msgstr "IPv6 ifaddr gnu%d - %x:%x:%x:%x:%x:%x:%x:%x/%d\n" #: src/applications/vpn/vpn.c:730 #, c-format msgid "Cannot set interface IPv6 address for gnu%d because %s\n" msgstr "Không thể đặt địa chỉ IPv6 của giao diện cho gnu%d do %s\n" #: src/applications/vpn/vpn.c:746 #, c-format msgid "IPv6 route gnu%d - destination %x:%x:%x:%x:%x:%x:%x:%x/%d\n" msgstr "Đường IPv6 gnu%d - đích đến %x:%x:%x:%x:%x:%x:%x:%x/%d\n" #: src/applications/vpn/vpn.c:760 #, c-format msgid "Cannot add route IPv6 address for gnu%s because %s\n" msgstr "Không thể thêm địa chỉ IPv6 của đường cho gnu%s do %s\n" #: src/applications/vpn/vpn.c:803 msgid "RFC4193 We have run out of memory and so I can't store a tunnel for this peer.\n" msgstr "RFC4193 Tràn bộ nhớ thì không thể cất giữ một đường hầm cho đồng đẳng này.\n" #: src/applications/vpn/vpn.c:853 #, c-format msgid "RFC4193 Thread running (frame %d tunnel %d f2f %d) ...\n" msgstr "RFC4193 Mạch đang chạy (khung %d đường hầm %d f2f %d) ...\n" #: src/applications/vpn/vpn.c:932 #, c-format msgid "VPN dropping connection %x\n" msgstr "VPN đang bỏ đi kết nối %x\n" #: src/applications/vpn/vpn.c:941 #, c-format msgid "VPN cannot drop connection %x\n" msgstr "VPN không thể bỏ đi kết nối %x\n" #: src/applications/vpn/vpn.c:961 msgid "RFC4193 Thread exiting\n" msgstr "RFC4193 Mạch đang thoát\n" #: src/applications/vpn/vpn.c:1010 msgid "VPN IP src not anonymous. drop..\n" msgstr "VPN Nguồn địa chỉ IP không phải nặc danh, bỏ đi.\n" #: src/applications/vpn/vpn.c:1018 msgid "VPN IP not anonymous, drop.\n" msgstr "VPN Địa chỉ IP không phải nặc danh, bỏ đi.\n" #: src/applications/vpn/vpn.c:1027 msgid "VPN Received, not anonymous, drop.\n" msgstr "VPN Nhận được, không phải nặc danh, bỏ đi.\n" #: src/applications/vpn/vpn.c:1032 #, c-format msgid "VPN Received unknown IP version %d...\n" msgstr "VPN Nhận được phiên bản IP không rõ %d...\n" #: src/applications/vpn/vpn.c:1043 #, c-format msgid "<- GNUnet(%d) : %s\n" msgstr "<- GNUnet(%d) : %s\n" #: src/applications/vpn/vpn.c:1071 msgid "Could not write the tunnelled IP to the OS... Did to setup a tunnel?\n" msgstr "Không thể ghi vào HĐH địa chỉ IP theo đường hầm... Đã làm để thiết lập một đường hầm ?\n" #: src/applications/vpn/vpn.c:1092 msgid "Receive route request\n" msgstr "Nhận yêu cầu định tuyến\n" #: src/applications/vpn/vpn.c:1099 #, c-format msgid "Prepare route announcement level %d\n" msgstr "Chuẩn bị thông cáo định tuyến cấp %d\n" #: src/applications/vpn/vpn.c:1117 #, c-format msgid "Send route announcement %d with route announce\n" msgstr "Gửi thông cáo định tuyến %d với đường đã báo\n" #: src/applications/vpn/vpn.c:1123 #, c-format msgid "Send outside table info %d\n" msgstr "Gửi thông tin bảng bên ngoài %d\n" #: src/applications/vpn/vpn.c:1140 msgid "Receive route announce.\n" msgstr "Nhận thông cáo định tuyến.\n" #: src/applications/vpn/vpn.c:1146 msgid "Going to try insert route into local table.\n" msgstr "Sẽ thử chèn đường vào bảng cục bộ.\n" #: src/applications/vpn/vpn.c:1152 #, c-format msgid "Inserting with hops %d\n" msgstr "Đang chèn với số bước nhảy %d\n" #: src/applications/vpn/vpn.c:1173 #, c-format msgid "Request level %d from peer %d\n" msgstr "Yêu cầu cấp %d từ đồng đẳng %d\n" #: src/applications/vpn/vpn.c:1191 #, c-format msgid "Receive table limit on peer reached %d\n" msgstr "Giới hạn bảng nhận trên đồng đẳng đã tới %d\n" #: src/applications/vpn/vpn.c:1223 msgid "realise alloc ram\n" msgstr "realise cấp phát bộ nhớ RAM\n" #: src/applications/vpn/vpn.c:1244 msgid "realise add routes\n" msgstr "realise thêm đường\n" #: src/applications/vpn/vpn.c:1296 msgid "realise pull routes\n" msgstr "realise bỏ đường\n" #: src/applications/vpn/vpn.c:1350 msgid "realise copy table\n" msgstr "realise chép bảng\n" #: src/applications/vpn/vpn.c:1383 msgid "Cannot store client info\n" msgstr "Không thể cất giữ thông tin về máy khách\n" #: src/applications/vpn/vpn.c:1723 #, c-format msgid "`%s' initialising RFC4913 module %d and %d\n" msgstr "« %s » đang sơ khởi mô-đun RFC4913 %d và %d\n" #: src/applications/vpn/vpn.c:1728 #, c-format msgid "RFC4193 my First 4 hex digits of host id are %x\n" msgstr "RFC4193 my 4 chữ số thập lúc đầu tiên của mã số máy là %x\n" #: src/applications/vpn/vpn.c:1817 msgid "enables IPv6 over GNUnet (incomplete)" msgstr "hiệu lực IPv6 qua GNUnet (chưa hoàn tất)" #: src/applications/vpn/vpn.c:1851 msgid "RFC4193 Waiting for tun thread to end\n" msgstr "RFC4193 Đang đợi kết thúc mạch tun\n" #: src/applications/vpn/vpn.c:1866 msgid "RFC4193 The tun thread has ended\n" msgstr "RFC4193 Mạch tun đã kết thúc\n" #: src/applications/vpn/vpn.c:1884 #, c-format msgid "RFC4193 Closing tunnel %d fd %d\n" msgstr "RFC4193 Đang đóng đường hầm %d fd %d\n" #: src/applications/gap/pid_table.c:177 msgid "# distinct interned peer IDs in pid table" msgstr "# các mã số đồng đẳng bị giam giữ riêng biệt trong bảng PID" #: src/applications/gap/pid_table.c:181 msgid "# total RC of interned peer IDs in pid table" msgstr "# tổng số RC của mã số đồng đẳng bị giam giữ trong bảng PID" #: src/applications/gap/gap.c:1722 #, c-format msgid "GAP received invalid content from `%s'\n" msgstr "GAP nhận được nội dung sai từ « %s »\n" #: src/applications/gap/gap.c:1723 msgid "myself" msgstr "mình" #: src/applications/gap/gap.c:1915 msgid "Cover traffic requested but traffic service not loaded. Rejecting request.\n" msgstr "Đã yêu cầu che truyền tải nhưng chưa nạp dịch vụ truyền tải. Đang từ chối yêu cầu.\n" #: src/applications/gap/gap.c:1926 src/applications/fs/module/anonymity.c:66 msgid "Failed to get traffic stats.\n" msgstr "Lỗi lấy thông kê về truyền tải.\n" #: src/applications/gap/gap.c:1937 src/applications/gap/gap.c:1946 #: src/applications/gap/gap.c:1958 msgid "Cannot satisfy desired level of anonymity, ignoring request.\n" msgstr "Không thể thỏa mãn mức độ giấu tên mong muốn, đang lờ đi yêu cầu.\n" #: src/applications/gap/gap.c:2230 msgid "# gap requests total received" msgstr "# tổng số yêu cầu lỗ hổng được nhận" #: src/applications/gap/gap.c:2233 msgid "# gap requests policy: immediate drop" msgstr "# chính sách yêu cầu lỗ hổng: bỏ đi ngay" #: src/applications/gap/gap.c:2235 msgid "# gap requests policy: not routed" msgstr "# chính sách yêu cầu lỗ hổng: không định tuyến" #: src/applications/gap/gap.c:2237 msgid "# gap requests policy: not answered" msgstr "# chính sách yêu cầu lỗ hổng: không đáp ứng" #: src/applications/gap/gap.c:2241 msgid "# gap requests processed: attempted add to RT" msgstr "# các yêu cầu lỗ hổng được xử lý: thử thêm vào RT" #: src/applications/gap/gap.c:2244 msgid "# gap requests processed: local result" msgstr "# các yêu cầu lỗ hổng được xử lý: kết quả cục bộ" #: src/applications/gap/gap.c:2246 msgid "# gap routing successes (total)" msgstr "# tổng số sự thành công định tuyến lỗ hổng" #: src/applications/gap/gap.c:2249 msgid "# gap requests dropped: collision in RT" msgstr "# các yêu cầu lỗ hổng bị bỏ : va chạm trong RT" #: src/applications/gap/gap.c:2253 msgid "# gap requests forwarded (counting each peer)" msgstr "# các yêu cầu lỗ hổng đã chuyển tiếp (đếm mỗi đồng đẳng" #: src/applications/gap/gap.c:2255 msgid "# gap duplicate requests (pending)" msgstr "# các yêu cầu lỗ hổng trùng (bị hoãn)" #: src/applications/gap/gap.c:2258 msgid "# gap duplicate requests that were re-tried" msgstr "# các yêu cầu lỗ hổng trùng đã được thử lại" #: src/applications/gap/gap.c:2261 msgid "# gap re-try ttl difference (cummulative)" msgstr "# khác biệt TTL thử lại lỗ hổng (lũy tích)" #: src/applications/gap/gap.c:2263 msgid "# gap reply duplicates" msgstr "# các đáp ứng lỗ hổng trùng" #: src/applications/gap/gap.c:2265 msgid "# gap spurious replies (dropped)" msgstr "# các đáp ứng lỗ hổng giả (bị bỏ)" #: src/applications/gap/gap.c:2267 msgid "# gap routing slots currently in use" msgstr "# các khoảng định tuyến lỗ hổng đang được dùng" #: src/applications/gap/gap.c:2270 msgid "# gap memory used for tracking seen content" msgstr "# bộ nhớ lỗ hổng được dùng để theo dõi nội dung đã xem" #: src/applications/gap/gap.c:2274 msgid "# gap memory used for tracking routing destinations" msgstr "# bộ nhớ lỗ hổng được dùng để theo dõi các đích định tuyến" #: src/applications/gap/gap.c:2276 msgid "# gap rewards pending" msgstr "# các sự thưởng lỗ hổng bị hoãn" #: src/applications/gap/gap.c:2278 msgid "# gap response weights" msgstr "# các độ nặng đáp ứng lỗ hổng" #: src/applications/gap/gap.c:2294 msgid "Traffic service failed to load; gap cannot ensure cover-traffic availability.\n" msgstr "Nạp dịch vụ truyền tải không thành công; lỗ hổng không thể chắc chắn khả năng truyền tải.\n" #: src/applications/gap/gap.c:2318 #, c-format msgid "`%s' registering handlers %d %d\n" msgstr "« %s » đang đăng ký các trình điều khiển %d %d\n" #: src/applications/fs/tools/gnunet-pseudonym.c:70 #: src/applications/fs/tools/gnunet-insert.c:268 #: src/applications/fs/tools/gnunet-search.c:136 #: src/applications/fs/tools/gnunet-download.c:69 msgid "set the desired LEVEL of sender-anonymity" msgstr "đặt CẤP mong muốn của tình trạng nặc danh của người gửi" #: src/applications/fs/tools/gnunet-pseudonym.c:73 msgid "automate creation of a namespace by starting a collection" msgstr "tự động tạo một không gian tên bằng cách bắt đầu một thu thập" #: src/applications/fs/tools/gnunet-pseudonym.c:77 msgid "create a new pseudonym under the given NICKNAME" msgstr "tạo một biệt hiệu mới dưới TÊN_HIỆU đưa ra" #: src/applications/fs/tools/gnunet-pseudonym.c:80 msgid "delete the pseudonym with the given NICKNAME" msgstr "xoá biệt hiệu có TÊN_HIỆU đã cho" #: src/applications/fs/tools/gnunet-pseudonym.c:83 msgid "end automated building of a namespace (ends collection)" msgstr "kết thúc việc tự động xây dựng một không gian tên (kết thúc thu thập)" #: src/applications/fs/tools/gnunet-pseudonym.c:85 msgid "Create new pseudonyms, delete pseudonyms or list existing pseudonyms." msgstr "Tạo biệt hiệu mới, xóa biệt hiệu hoặc liệt kê các biệt hiệu có." #: src/applications/fs/tools/gnunet-pseudonym.c:89 msgid "use the given keyword to advertise the namespace (use when creating a new pseudonym)" msgstr "sử dụng từ khóa đưa ra để quảng cáo không gian tên (dùng khi tạo một biệt hiệu mới)" #: src/applications/fs/tools/gnunet-pseudonym.c:92 msgid "specify metadata describing the namespace or collection" msgstr "ghi rõ siêu dữ liệu mô tả không gian tên (hoặc thu thập)" #: src/applications/fs/tools/gnunet-pseudonym.c:96 msgid "do not generate an advertisement for this namespace (use when creating a new pseudonym)" msgstr "đừng tạo ra một quảng cáo cho không gian tên này (dùng khi tạo một biệt hiệu mới)" #: src/applications/fs/tools/gnunet-pseudonym.c:99 msgid "do not list the pseudonyms from the pseudonym database" msgstr "không liệt kê các biệt hiệu từ cơ sở dữ liệu biệt hiệu" #: src/applications/fs/tools/gnunet-pseudonym.c:103 msgid "specify IDENTIFIER to be the address of the entrypoint to content in the namespace (use when creating a new pseudonym)" msgstr "ghi rõ BỘ_NHẬN_DIỆN là địa chỉ của điểm vào nội dung trong không gian tên (dùng khi tạo một biệt hiệu mới)" #: src/applications/fs/tools/gnunet-pseudonym.c:106 msgid "set the rating of a namespace" msgstr "đặt đánh giá của một không gian tên" #: src/applications/fs/tools/gnunet-pseudonym.c:139 #, c-format msgid "Namespace `%s' has rating %d.\n" msgstr "Không gian tên « %s » có đánh giá %d.\n" #: src/applications/fs/tools/gnunet-pseudonym.c:141 #, c-format msgid "Namespace `%s' (%s) has rating %d.\n" msgstr "Không gian tên « %s » (%s) có đánh giá %d.\n" #: src/applications/fs/tools/gnunet-pseudonym.c:170 #, c-format msgid "\tRating (after update): %d\n" msgstr "\tĐánh giá (sau khi cập nhật): %d\n" #: src/applications/fs/tools/gnunet-pseudonym.c:203 #, c-format msgid "Collection stopped.\n" msgstr "Thu thập bị dừng.\n" #: src/applications/fs/tools/gnunet-pseudonym.c:205 #, c-format msgid "Failed to stop collection (not active?).\n" msgstr "Lỗi dừng thu thập (không hoạt động ?).\n" #: src/applications/fs/tools/gnunet-pseudonym.c:213 #, c-format msgid "Pseudonym `%s' deleted.\n" msgstr "Biệt hiệu « %s » bị xoá.\n" #: src/applications/fs/tools/gnunet-pseudonym.c:218 #, c-format msgid "Error deleting pseudonym `%s' (does not exist?).\n" msgstr "Lỗ xoá biệt hiệu « %s » (không tồn tại ?).\n" #: src/applications/fs/tools/gnunet-pseudonym.c:233 #, c-format msgid "Started collection `%s'.\n" msgstr "Đã bắt đầu thu thập « %s ».\n" #: src/applications/fs/tools/gnunet-pseudonym.c:237 #, c-format msgid "Failed to start collection.\n" msgstr "Lỗi bắt đầu thu thập.\n" #: src/applications/fs/tools/gnunet-pseudonym.c:280 #, c-format msgid "Could not create namespace `%s' (exists?).\n" msgstr "Không thể tạo không gian « %s » (đã có ?).\n" #: src/applications/fs/tools/gnunet-pseudonym.c:287 #, c-format msgid "Namespace `%s' created (root: %s).\n" msgstr "Đã tạo không gian tên « %s » (gốc: %s).\n" #: src/applications/fs/tools/gnunet-pseudonym.c:302 #, c-format msgid "You must specify a name for the collection (`%s' option).\n" msgstr "Bạn phải ghi rõ một tên cho thu thập (tùy chọn « %s »).\n" #: src/applications/fs/tools/gnunet-pseudonym.c:310 #, c-format msgid "Could not access namespace information.\n" msgstr "Không thể truy cập đến thông tin về không gian tên.\n" #: src/applications/fs/tools/gnunet-directory.c:84 #, c-format msgid "==> Directory `%s':\n" msgstr "==> Thư mục « %s »:\n" #: src/applications/fs/tools/gnunet-directory.c:88 #, c-format msgid "=\tError reading directory.\n" msgstr "=\tLỗi đọc thư mục.\n" #: src/applications/fs/tools/gnunet-directory.c:118 #, c-format msgid "File format error (not a GNUnet directory?)\n" msgstr "Lỗi định dạng tập tin (không phải là thư mục GNUnet ?)\n" #: src/applications/fs/tools/gnunet-directory.c:120 #, c-format msgid "%d files found in directory.\n" msgstr "Tìm thấy %d tập tin trong thư mục.\n" #: src/applications/fs/tools/gnunet-directory.c:135 msgid "Perform directory related operations." msgstr "Thực hiện các thao tác liên quan đến thư mục." #: src/applications/fs/tools/gnunet-directory.c:138 msgid "remove all entries from the directory database and stop tracking URIs" msgstr "gỡ bỏ mọi mục nhập khỏi cơ sở dữ liệu thư mục, và dừng theo dõi các địa chỉ URI" #: src/applications/fs/tools/gnunet-directory.c:142 msgid "list entries from the directory database" msgstr "liệt kê các mục nhập từ cơ sở dữ liệu thư mục" #: src/applications/fs/tools/gnunet-directory.c:145 msgid "start tracking entries for the directory database" msgstr "bắt đầu theo dõi các mục nhập cho cơ sở dữ liệu thư mục" #: src/applications/fs/tools/gnunet-directory.c:168 #, c-format msgid "Listed %d matching entries.\n" msgstr "Đã liệt kê %d mục nhập tương ứng.\n" #: src/applications/fs/tools/gnunet-insert.c:132 #, c-format msgid "Created entry `%s' in namespace `%s'\n" msgstr "Đã tạo mục nhập « %s » trong không gian tên « %s »\n" #: src/applications/fs/tools/gnunet-insert.c:137 #, c-format msgid "Failed to add entry to namespace `%s' (does it exist?)\n" msgstr "Lỗi thêm mục nhập vào không gian tên « %s » (có chưa ?)\n" #: src/applications/fs/tools/gnunet-insert.c:157 #, c-format msgid "Keywords for file `%s':\n" msgstr "Từ khoá cho tập tin « %s »:\n" #: src/applications/fs/tools/gnunet-insert.c:165 msgid "filename" msgstr "tên tập tin" #: src/applications/fs/tools/gnunet-insert.c:167 msgid "mimetype" msgstr "kiểu MIME" #: src/applications/fs/tools/gnunet-insert.c:208 #, c-format msgid "%16llu of %16llu bytes inserted (estimating %6s to completion) - %s\n" msgstr "đã chèn %16llu trên %16llu byte (sẽ hoàn thành trong khoảng %6s giây) - %s\n" #: src/applications/fs/tools/gnunet-insert.c:220 #, c-format msgid "Upload of `%s' complete, %llu bytes took %llu seconds (%8.3f KiB/s).\n" msgstr "Hoàn thành tải lên « %s », %llu byte trong %llu giây (%8.3f KiB/giây).\n" #: src/applications/fs/tools/gnunet-insert.c:231 #, c-format msgid "File `%s' has URI: %s\n" msgstr "Tập tin « %s » có URI: %s\n" #: src/applications/fs/tools/gnunet-insert.c:242 #, c-format msgid "" "\n" "Upload aborted.\n" msgstr "" "\n" "Tải lên bị hủy bỏ.\n" #: src/applications/fs/tools/gnunet-insert.c:247 #, c-format msgid "" "\n" "Error uploading file: %s" msgstr "" "\n" "Gặp lỗi khi tải lên tập tin: %s" #: src/applications/fs/tools/gnunet-insert.c:256 #, c-format msgid "" "\n" "Unexpected event: %d\n" msgstr "" "\n" "Gặp sự kiện bất thường: %d\n" #: src/applications/fs/tools/gnunet-insert.c:272 msgid "even if gnunetd is running on the local machine, force the creation of a copy instead of making a link to the GNUnet share directory" msgstr "thậm chí nếu gnunetd đang chạy trên máy cục bộ, bắt buộc tạo một bản sao thay vì tạo một liên kết đến thư mục chia sẻ của GNUnet" #: src/applications/fs/tools/gnunet-insert.c:277 msgid "disable adding the creation time to the metadata of the uploaded file" msgstr "tắt thêm giờ tạo vào siêu dữ liệu của tập tin đã tải lên" #: src/applications/fs/tools/gnunet-insert.c:281 msgid "do not use libextractor to add additional references to directory entries and/or the published file" msgstr "đừng dùng libextractor để thêm các tham chiếu bổ sung vào mục nhập thư mục và/hay tập tin công bố" #: src/applications/fs/tools/gnunet-insert.c:285 msgid "print list of extracted keywords that would be used, but do not perform upload" msgstr "in ra danh sách các từ khóa đã giải phóng cần sử dụng, nhưng không thực hiện tải lên" #: src/applications/fs/tools/gnunet-insert.c:287 msgid "Make files available to GNUnet for sharing." msgstr "Làm cho các tập tin sẵn sàng qua GNUnet để chia sẻ." #: src/applications/fs/tools/gnunet-insert.c:290 msgid "set interval for availability of updates to SECONDS (for namespace insertions only)" msgstr "đặt khoảng thời gian cho cập nhật thành GIÂY (chỉ cho sự chèn không gian tên)" #: src/applications/fs/tools/gnunet-insert.c:295 msgid "add an additional keyword for the top-level file or directory (this option can be specified multiple times)" msgstr "thêm một từ khoá bổ sung cho tập tin hoặc thư mục ở cấp đầu (có thể chỉ ra tùy chọn này nhiều lần)" #: src/applications/fs/tools/gnunet-insert.c:299 msgid "add an additional keyword for all files and directories (this option can be specified multiple times)" msgstr "thêm một từ khóa bổ sung cho tất cả tập tin và thư mục (có thể chỉ ra tùy chọn này nhiều lần)" #: src/applications/fs/tools/gnunet-insert.c:304 msgid "set the meta-data for the given TYPE to the given VALUE" msgstr "đặt siêu dữ liệu cho KIỂU đưa ra thành GIÁ_TRỊ chỉ ra" #: src/applications/fs/tools/gnunet-insert.c:307 msgid "do not index, perform full insertion (stores entire file in encrypted form in GNUnet database)" msgstr "không đánh chỉ mục, thực hiện việc chèn đầy đủ (chứa toàn bộ tập tin ở dạng mã hóa trong cơ sở dữ liệu GNUnet)" #: src/applications/fs/tools/gnunet-insert.c:312 msgid "specify ID of an updated version to be published in the future (for namespace insertions only)" msgstr "chỉ ra mã số của một phiên bản đã cập nhật để công bố trong tương lai (chỉ cho sự chèn không gian tên)" #: src/applications/fs/tools/gnunet-insert.c:316 msgid "specify the priority of the content" msgstr "xác định mức ưu tiên của nội dung" #: src/applications/fs/tools/gnunet-insert.c:320 msgid "publish the files under the pseudonym NAME (place file into namespace)" msgstr "công bố các tập tin dưới biệt hiệu TÊN (đặt tập tin vào không gian tên)" #: src/applications/fs/tools/gnunet-insert.c:323 msgid "specifies this as an aperiodic but updated publication (for namespace insertions only)" msgstr "chỉ ra đồ này như là một sự công bố không theo chu kỳ nhưng đã cập nhật (chỉ cho chèn không gian tên)" #: src/applications/fs/tools/gnunet-insert.c:327 msgid "set the ID of this version of the publication (for namespace insertions only)" msgstr "đặt mã số của phiên bản này của sự công bố (chỉ cho chèn không gian tên)" #: src/applications/fs/tools/gnunet-insert.c:332 msgid "specify creation time for SBlock (see man-page for format)" msgstr "chỉ ra thời gian tạo SBlock (xem trang man để biết định dạng)" #: src/applications/fs/tools/gnunet-insert.c:335 msgid "ID of the previous version of the content (for namespace update only)" msgstr "Mã số của phiên bản nội dung trước (chỉ cho cập nhật không gian tên)" #: src/applications/fs/tools/gnunet-insert.c:371 #, c-format msgid "You must specify one and only one filename for insertion.\n" msgstr "Phải ghi rõ chỉ một tên tập tin để chèn.\n" #: src/applications/fs/tools/gnunet-insert.c:420 #, c-format msgid "Could not access namespace `%s' (does not exist?).\n" msgstr "Không thể truy cập đến không gian tên « %s » (không tồn tại ?).\n" #: src/applications/fs/tools/gnunet-insert.c:440 #, c-format msgid "Parsing time failed. Use `%s' format.\n" msgstr "Phân tích thời gian thất bại. Hãy dùng định dạng « %s ».\n" #: src/applications/fs/tools/gnunet-insert.c:451 #: src/applications/fs/tools/gnunet-insert.c:459 #: src/applications/fs/tools/gnunet-insert.c:467 #: src/applications/fs/tools/gnunet-insert.c:475 #: src/applications/fs/tools/gnunet-insert.c:483 #, c-format msgid "Option `%s' makes no sense without option `%s'.\n" msgstr "Tùy chọn « %s » không có nghĩa khi không có tùy chọn « %s ».\n" #: src/applications/fs/tools/gnunet-search.c:139 msgid "Search GNUnet for files." msgstr "Tìm tập tin trong GNUnet." #: src/applications/fs/tools/gnunet-search.c:143 msgid "exit after receiving LIMIT results" msgstr "thoát sau khi nhận được kết quả GIỚI_HẠN" #: src/applications/fs/tools/gnunet-search.c:146 msgid "write encountered (decrypted) search results to FILENAME" msgstr "ghi kết quả tìm kiếm tìm thấy (đã giải mã) vào tập tin TÊN_TẬP_TIN" #: src/applications/fs/tools/gnunet-search.c:149 msgid "wait DELAY seconds for search results before aborting" msgstr "chờ kết quả tìm kiếm THỜI_HẠN giây trước khi hủy bỏ" #: src/applications/fs/tools/gnunet-search.c:186 #, c-format msgid "Error converting arguments to URI!\n" msgstr "Gặp lỗi khi chuyển đổi các đối số sang URI.\n" #: src/applications/fs/tools/gnunet-download.c:74 msgid "download a GNUnet directory that has already been downloaded. Requires that a filename of an existing file is specified instead of the URI. The download will only download the top-level files in the directory unless the `-R' option is also specified." msgstr "tải xuống một thư mục GNUnet đã được tải về trước. Cần thiết ghi rõ tên tập tin của một tập tin đã có, thay cho địa chỉ URI. Việc tải về sẽ chỉ tải về các tập tin cấp đầu của thư mục, nếu không cũng đưa ra tùy chọn « -R »." #: src/applications/fs/tools/gnunet-download.c:76 msgid "Download files from GNUnet." msgstr "Tải tập tin xuống GNUnet." #: src/applications/fs/tools/gnunet-download.c:80 msgid "write the file to FILENAME" msgstr "ghi tập tin vào TÊN_TẬP_TIN" #: src/applications/fs/tools/gnunet-download.c:84 msgid "set the maximum number of parallel downloads that are allowed" msgstr "đặt số tối đa các việc tải xuống đồng thời được phép" #: src/applications/fs/tools/gnunet-download.c:87 msgid "download a GNUnet directory recursively" msgstr "tải xuống đệ quy một thư mục GNUnet" #: src/applications/fs/tools/gnunet-download.c:108 #, c-format msgid "Download of file `%s' at %16llu out of %16llu bytes (%8.3f KiB/s)\n" msgstr "Tải xuống tập tin « %s » tại %16llu trên %16llu byte (%8.3f KiB/giây)\n" #: src/applications/fs/tools/gnunet-download.c:122 #, c-format msgid "Download aborted.\n" msgstr "Tiến trình tải xuống bị hủy bỏ.\n" #: src/applications/fs/tools/gnunet-download.c:128 #, c-format msgid "Error downloading: %s\n" msgstr "Gặp lỗi khi tải xuống: %s\n" #: src/applications/fs/tools/gnunet-download.c:134 #, c-format msgid "Download of file `%s' complete. Speed was %8.3f KiB per second.\n" msgstr "Hoàn thành tải xuống tập tin « %s ». Tốc độ là %8.3f KiB một giây.\n" #: src/applications/fs/tools/gnunet-download.c:180 msgid "no name given" msgstr "chưa đưa ra tên" #: src/applications/fs/tools/gnunet-download.c:186 #, c-format msgid "Starting download `%s'\n" msgstr "Đang bắt đầu tài về « %s »\n" #: src/applications/fs/tools/gnunet-download.c:228 msgid "Not enough arguments. You must specify a GNUnet file URI\n" msgstr "Không đủ đối số. Phải ghi rõ một địa chỉ URI tập tin GNUnet\n" #: src/applications/fs/tools/gnunet-download.c:246 #, c-format msgid "URI `%s' invalid for gnunet-download.\n" msgstr "Sai URI « %s » cho gnunet-download.\n" #: src/applications/fs/tools/gnunet-download.c:289 #, c-format msgid "No filename specified, using `%s' instead (for now).\n" msgstr "Chưa ghi rõ tên tập tin, đang dùng « %s » để thay thế (lúc này).\n" #: src/applications/fs/tools/gnunet-download.c:331 #, c-format msgid "Could not access gnunet-directory file `%s'\n" msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n" #: src/applications/fs/tools/gnunet-download.c:351 #, c-format msgid "Downloading %d files from directory `%s'.\n" msgstr "Đang tải %d tập tin xuống thư mục « %s ».\n" #: src/applications/fs/tools/gnunet-download.c:354 #, c-format msgid "Did not find any files in directory `%s'\n" msgstr "Không tìm thấy tập tin nào trong thư mục « %s »\n" #: src/applications/fs/tools/gnunet-download.c:391 #, c-format msgid "File stored as `%s'.\n" msgstr "Tập tin được lưu dạng « %s ».\n" #: src/applications/fs/tools/gnunet-unindex.c:61 #, c-format msgid "%16llu of %16llu bytes unindexed (estimating %llu seconds to completion) " msgstr "Đã bỏ chỉ mục %16llu trên %16llu byte (sẽ hoàn thành sau khoảng %llu giây) " #: src/applications/fs/tools/gnunet-unindex.c:73 #, c-format msgid "" "\n" "Unindexing of `%s' complete, %llu bytes took %llu seconds (%8.3f KiB/s).\n" msgstr "" "\n" "Hoàn thành bỏ chỉ mục của « %s », %llu byte sau %llu giây (%8.3f KiB/giây).\n" #: src/applications/fs/tools/gnunet-unindex.c:88 #, c-format msgid "" "\n" "Error unindexing file: %s\n" msgstr "" "\n" "Gặp lỗi khi bỏ chỉ mục tập tin: %s\n" #: src/applications/fs/tools/gnunet-unindex.c:108 msgid "Unindex files." msgstr "Bỏ chỉ mục tập tin." #: src/applications/fs/tools/gnunet-unindex.c:145 msgid "Not enough arguments. You must specify a filename.\n" msgstr "Không đủ đối số. Phải xác định một tên tập tin.\n" #: src/applications/fs/tools/gnunet-unindex.c:163 #, c-format msgid "`%s' failed. Is `%s' a file?\n" msgstr "« %s » bị lỗi. « %s » là một tập tin phải không?\n" #: src/applications/fs/uritrack/file_info.c:134 msgid "Collecting file identifiers disabled.\n" msgstr "Chức năng thu thập các đồ nhận diện tập tin đã bị tắt.\n" #: src/applications/fs/uritrack/file_info.c:414 #, c-format msgid "Deleted corrupt URI database in `%s'." msgstr "Đã xoá cơ sở dữ liệu địa chỉ URI bị hỏng trong « %s »." #: src/applications/fs/module/dht_push.c:138 msgid "# blocks pushed into DHT" msgstr "# các khối được gửi vào DHT" #: src/applications/fs/module/querymanager.c:235 msgid "# FS currently tracked queries from clients" msgstr "# FS các truy vấn từ máy khách được theo dõi hiện thời" #: src/applications/fs/module/querymanager.c:237 msgid "# FS replies passed to clients" msgstr "# FS các đáp ứng được gửi cho máy khách" #: src/applications/fs/module/ondemand.c:343 #, c-format msgid "Indexed file disappeared, deleting block for query `%s'\n" msgstr "Tập tin đã đánh chỉ mục biến mất, đang xoá khối cho truy vấn « %s »\n" #: src/applications/fs/module/ondemand.c:478 #, c-format msgid "Because the file `%s' has been unavailable for 3 days it got removed from your share. Please unindex files before deleting them as the index now contains invalid references!\n" msgstr "Vì không có tập tin « %s » trong 3 ngày nên đã xóa nó khỏi chia sẻ của bạn. Xin hãy bỏ chỉ mục các tập tin trước khi xoá chúng vì chỉ mục hiện thời chứa các tham chiếu sai.\n" #: src/applications/fs/module/ondemand.c:504 #, c-format msgid "Configuration file must specify directory for storage of FS data in section `%s' under `%s'.\n" msgstr "Tập tin cấu hình phải chỉ ra thư mục để chứa dữ liệu FS trong phần « %s » dưới « %s ».\n" #: src/applications/fs/module/ondemand.c:561 msgid "Indexed content changed (does not match its hash).\n" msgstr "Nội dung đánh chỉ mục bị thay đổi (không tương ứng với tổng kiểm).\n" #: src/applications/fs/module/ondemand.c:752 #, c-format msgid "Unindexed ODB block `%s' from offset %llu already missing from datastore.\n" msgstr "Khối ODB đã bỏ chỉ mục « %s » từ khoảng bù %llu đã không có trong kho dữ liệu.\n" #: src/applications/fs/module/fs.c:1304 #, c-format msgid "You must specify a postive number for `%s' in the configuration in section `%s'.\n" msgstr "Phải ghi rõ một con số dương cho « %s » trong cấu hình phần « %s ».\n" #: src/applications/fs/module/fs.c:1319 msgid "# FS expired replies dropped" msgstr "# FS các đáp ứng đã hết hạn bị bỏ đi" #: src/applications/fs/module/fs.c:1321 msgid "# FS valid replies received" msgstr "# FS các đáp ứng hợp lệ được nhận" #: src/applications/fs/module/fs.c:1357 #, c-format msgid "`%s' registering client handlers %d %d %d %d %d %d %d %d %d\n" msgstr "« %s » đang đăng ký các trình điều khiển máy khách %d %d %d %d %d %d %d %d %d\n" #: src/applications/fs/module/fs.c:1417 msgid "enables (anonymous) file-sharing" msgstr "hiệu lực chia sẻ tập tin (nặc danh)" #: src/applications/fs/module/migration.c:383 msgid "# blocks migrated" msgstr "# các khối được chuyển vào" #: src/applications/fs/module/migration.c:385 msgid "# blocks fetched for migration" msgstr "# các khối được lấy để chuyển vào" #: src/applications/fs/module/migration.c:388 msgid "# on-demand block migration attempts" msgstr "# các sự thử chuyển khối vào theo yêu cầu" #: src/applications/fs/fsui/deserialize.c:772 #, c-format msgid "FSUI state file `%s' had syntax error at offset %u.\n" msgstr "Tập tin tình trạng FSUI « %s » có lỗi cú pháp tại khoảng bù %u.\n" #: src/applications/fs/fsui/searchtest.c:154 #: src/applications/fs/fsui/fsuitest.c:173 #: src/applications/fs/fsui/downloadtest.c:289 #: src/applications/fs/fsui/serializetest2.c:391 #: src/applications/fs/fsui/serializetest3.c:163 #: src/applications/fs/fsui/serializetest4.c:358 #: src/applications/fs/ecrs/helper.c:132 src/applications/fs/ecrs/helper.c:135 #: src/applications/fs/ecrs/helper.c:139 src/applications/fs/ecrs/helper.c:144 msgid "AND" msgstr "VÀ" #: src/applications/fs/fsui/search.c:241 msgid "Error running search (no reason given)." msgstr "Gặp lỗi khi thực hiện lệnh tìm kiếm (không đưa ra lý do)." #: src/applications/fs/fsui/download.c:311 msgid "Download failed (no reason given)" msgstr "Lỗi tải xuống (không đưa ra lý do)." #: src/applications/fs/fsui/unindex.c:114 msgid "Unindexing failed (no reason given)" msgstr "Lỗi bỏ chỉ mục (không đưa ra lý do)." #: src/applications/fs/fsui/upload.c:328 msgid "Failed to create temporary directory." msgstr "Lỗi tạo thư mục tạm thời." #: src/applications/fs/ecrs/search.c:168 msgid "CHK URI not allowed for search.\n" msgstr "Không cho phép địa chỉ URI CHK khi tìm kiếm.\n" #: src/applications/fs/ecrs/search.c:217 msgid "LOC URI not allowed for search.\n" msgstr "Không cho phép địa chỉ URI LOC khi tìm kiếm.\n" #: src/applications/fs/ecrs/download.c:132 #, c-format msgid "Could not unlink temporary file `%s': %s\n" msgstr "Không thể bỏ liên kết tập tin tạm thời « %s »: %s\n" #: src/applications/fs/ecrs/download.c:272 #, c-format msgid "Write(%d, %p, %d) failed: %s\n" msgstr "Ghi (%d, %p, %d) bị lỗi: %s\n" #: src/applications/fs/ecrs/download.c:1010 msgid "Decrypted content does not match key. This is either a bug or a maliciously inserted file. Download aborted.\n" msgstr "Nội dung đã giải mã không tương ứng chìa khóa. Đây là một lỗi hoặc một tập tin chèn vào với ý xấu. Tiến trình tải xuống bị hủy bỏ.\n" #: src/applications/fs/ecrs/download.c:1205 #, c-format msgid "Content `%s' seems to be not available on the network (tried %u times).\n" msgstr "Nội dung « %s » có vẻ không có trên mạng (đả thử %u lần).\n" #: src/applications/fs/ecrs/helper.c:75 msgid "No keywords specified!\n" msgstr "Chưa ghi rõ từ khoá.\n" #: src/applications/fs/ecrs/upload.c:156 #, c-format msgid "`%s' is not a file.\n" msgstr "« %s » không phải là một tập tin.\n" #: src/applications/fs/ecrs/upload.c:164 #, c-format msgid "Cannot get size of file `%s'" msgstr "Không thể lấy kích cỡ của tập tin « %s »" #: src/applications/fs/ecrs/upload.c:173 msgid "Failed to connect to gnunetd." msgstr "Không kết nối được đến trình nền gnunetd." #: src/applications/fs/ecrs/upload.c:185 #, c-format msgid "Cannot hash `%s'.\n" msgstr "Không thể tạo mẫu duy nhất đại diện cho « %s ».\n" #: src/applications/fs/ecrs/upload.c:204 #, c-format msgid "Initialization for indexing file `%s' failed.\n" msgstr "Lỗi sơ khởi tập tin đánh chỉ mục « %s ».\n" #: src/applications/fs/ecrs/upload.c:212 #, c-format msgid "Indexing file `%s' failed. Trying to insert file...\n" msgstr "Lỗi đánh chỉ mục tập tin « %s ». Đang thử chèn tập tin...\n" #: src/applications/fs/ecrs/upload.c:226 #, c-format msgid "Cannot open file `%s': `%s'" msgstr "Không thể mở tập tin « %s »: « %s »" #: src/applications/fs/ecrs/upload.c:309 #, c-format msgid "Indexing data failed at position %i.\n" msgstr "Đánh chỉ mục dữ liệu bị lỗi tại vị tri %i.\n" #: src/applications/fs/ecrs/meta.c:883 #, c-format msgid "Renaming of file `%s' to `%s' failed: %s\n" msgstr "Lỗi thay đổi tên của tập tin « %s » thành « %s »: %s\n" #: src/applications/fs/ecrs/meta.c:893 #, c-format msgid "Could not rename file `%s' to `%s': file exists\n" msgstr "Không thể thay đổi tên tập tin « %s » thành « %s »: tập tin đã có\n" #: src/applications/fs/ecrs/namespace.c:157 #, c-format msgid "Cannot create pseudonym `%s', file `%s' exists.\n" msgstr "Không thể tạo biệt hiệu « %s »: tập tin « %s » đã có.\n" #: src/applications/fs/ecrs/namespace.c:339 #: src/applications/fs/ecrs/namespace.c:420 #: src/applications/fs/ecrs/namespace.c:571 #, c-format msgid "File `%s' does not contain a pseudonym.\n" msgstr "Tập tin « %s » không chứa biệt hiệu.\n" #: src/applications/fs/ecrs/namespace.c:352 #: src/applications/fs/ecrs/namespace.c:432 #, c-format msgid "Format of pseudonym `%s' is invalid.\n" msgstr "Định dạng của biệt hiệu « %s » là không hợp lệ.\n" #: src/applications/fs/ecrs/namespace.c:583 #: src/applications/fs/ecrs/namespace.c:594 #, c-format msgid "Format of file `%s' is invalid.\n" msgstr "Định dạng của tập tin « %s » là không hợp lệ.\n" #: src/applications/fs/ecrs/parser.c:124 #, c-format msgid "Unknown metadata type in metadata option `%s'. Using metadata type `unknown' instead.\n" msgstr "Không rõ kiểu siêu dữ liệu trong tùy chọn siêu dữ liệu « %s ». Đang ùng kiểu siêu dữ liệu « không rõ » (unknown) để thay thế.\n" #: src/applications/fs/namespace/namespace_info.c:685 msgid "Publication interval for periodic publication changed." msgstr "Khoảng thời gian giữa hai lần công bố bị thay đổi cho chức năng công bố theo định kỳ." #: src/applications/fs/namespace/namespace_info.c:708 msgid "Publishing update for periodically updated content more than a week ahead of schedule.\n" msgstr "Đang công bố bản cập nhật cho nội dung cập nhật theo định kỳ nhiều hơn một tuần trước lịch.\n" #: src/applications/testing/testing.c:267 #, c-format msgid "Waiting for peers to connect" msgstr "Đang đợi các đồng đẳng kết nối" #: src/applications/kvstore_sqlite/kv_sqlite.c:44 #: src/applications/kvstore_sqlite/kv_sqlite.c:51 #: src/applications/sqstore_sqlite/sqlite.c:45 #: src/applications/sqstore_sqlite/sqlite.c:52 #: src/applications/sqstore_mysql/mysql.c:145 #: src/applications/sqstore_mysql/mysql.c:152 #: src/applications/sqstore_mysql/mysql.c:476 #: src/applications/sqstore_mysql/mysql.c:487 #: src/applications/sqstore_mysql/mysql.c:526 #: src/applications/sqstore_mysql/mysql.c:537 #: src/applications/sqstore_mysql/mysql.c:571 #: src/applications/sqstore_mysql/mysql.c:582 #: src/applications/sqstore_mysql/mysql.c:680 #: src/applications/sqstore_mysql/mysql.c:693 #: src/applications/sqstore_mysql/mysql.c:706 #: src/applications/sqstore_mysql/mysql.c:721 #: src/applications/sqstore_mysql/mysql.c:821 #: src/applications/sqstore_mysql/mysql.c:836 #: src/applications/sqstore_mysql/mysql.c:988 #: src/applications/sqstore_mysql/mysql.c:1000 #: src/applications/sqstore_mysql/mysql.c:1012 #: src/applications/sqstore_mysql/mysql.c:1260 #: src/applications/sqstore_mysql/mysql.c:1272 #: src/applications/sqstore_mysql/mysql.c:1284 #: src/applications/sqstore_mysql/mysql.c:1369 #: src/applications/dstore_mysql/dstore_mysql.c:107 #: src/applications/dstore_mysql/dstore_mysql.c:114 #: src/applications/dstore_mysql/dstore_mysql.c:286 #: src/applications/dstore_mysql/dstore_mysql.c:301 #: src/applications/dstore_mysql/dstore_mysql.c:315 #: src/applications/dstore_mysql/dstore_mysql.c:329 #: src/applications/dstore_mysql/dstore_mysql.c:342 #: src/applications/dstore_mysql/dstore_mysql.c:412 #: src/applications/dstore_mysql/dstore_mysql.c:434 #: src/applications/dstore_mysql/dstore_mysql.c:446 #: src/applications/dstore_mysql/dstore_mysql.c:521 #: src/applications/dstore_mysql/dstore_mysql.c:533 #: src/applications/dstore_mysql/dstore_mysql.c:554 #: src/applications/dstore_sqlite/dstore.c:91 #: src/applications/dstore_sqlite/dstore.c:98 #: src/applications/dstore_sqlite/dstore.c:194 #: src/applications/dstore_sqlite/dstore.c:236 #: src/applications/dstore_sqlite/dstore.c:257 #: src/applications/dstore_sqlite/dstore.c:313 #: src/applications/dstore_sqlite/dstore.c:331 #: src/applications/dstore_sqlite/dstore.c:343 #: src/applications/dstore_sqlite/dstore.c:375 #: src/applications/dstore_sqlite/dstore.c:467 #: src/util/crypto/hostkey_gcrypt.c:64 src/util/crypto/hostkey_gcrypt.c:71 #: src/util/crypto/symcipher_gcrypt.c:46 src/util/crypto/symcipher_gcrypt.c:53 #, c-format msgid "`%s' failed at %s:%d with error: %s\n" msgstr "« %s » bị lỗi tại %s:%d với lỗi: %s\n" #: src/applications/advertising/advertising_test.c:47 #: src/applications/session/sessiontest_http.c:40 #: src/applications/session/sessiontest.c:40 #: src/applications/session/sessiontest2.c:40 #: src/applications/stats/statistics.c:233 msgid "# of connected peers" msgstr "# của các đồng đẳng đã kết nối" #: src/applications/advertising/advertising.c:194 #, c-format msgid "HELLO message from `%s' has an invalid signature. Dropping.\n" msgstr "Thông báo HELLO từ « %s » có chữ ký sai. Đang bỏ đi.\n" #: src/applications/advertising/advertising.c:205 msgid "HELLO message has expiration too far in the future. Dropping.\n" msgstr "Thông báo HELLO hết hạn trong tương lai quá nhiều. Đang bỏ đi.\n" #: src/applications/advertising/advertising.c:407 msgid "Could not send HELLO+PING, ping buffer full.\n" msgstr "Không gửi được tín hiệu HELLO+PING, đầy bộ đệm ping.\n" #: src/applications/advertising/advertising.c:429 msgid "Failed to create an advertisement for this peer. Will not send PING.\n" msgstr "Không tạo được quảng cáo cho đồng đẳng này. Sẽ không gửi tín hiệu PING.\n" #: src/applications/advertising/advertising.c:602 #, c-format msgid "Advertising my transport %d to selected peers.\n" msgstr "Đang quảng cáo truyền tải %d của mình tới các đồng đẳng đã chọn.\n" #: src/applications/advertising/advertising.c:611 msgid "Announcing ourselves pointless: no other peers are known to us so far.\n" msgstr "Không có nghĩa khi tự thông báo : chưa biết đồng đẳng khác.\n" #: src/applications/advertising/advertising.c:888 msgid "# Peer advertisements received" msgstr "# Các quảng cáo đồng đẳng được nhận" #: src/applications/advertising/advertising.c:891 msgid "# Peer advertisements of type NAT received" msgstr "# Các quảng cáo đồng đẳng kiểu NAT được nhận" #: src/applications/advertising/advertising.c:894 msgid "# Peer advertisements confirmed via PONG" msgstr "# Các quảng cáo đồng đẳng được xác nhận qua PONG" #: src/applications/advertising/advertising.c:898 msgid "# Peer advertisements updating earlier HELLOs" msgstr "# Các quảng cáo đồng đẳng cập nhật tin hiệu HELLO trước" #: src/applications/advertising/advertising.c:901 msgid "# Peer advertisements discarded due to load" msgstr "# Các quảng cáo đồng đẳng bị hủy do trọng tải" #: src/applications/advertising/advertising.c:905 msgid "# Peer advertisements for unsupported transport" msgstr "# Các quảng cáo đồng đẳng cho truyền tải không được hỗ trợ" #: src/applications/advertising/advertising.c:909 msgid "# Peer advertisements not confirmed due to ping busy" msgstr "# Các quảng cáo đồng đẳng không được xác nhận do ping đang bận" #: src/applications/advertising/advertising.c:913 msgid "# Peer advertisements not confirmed due to lack of self ad" msgstr "# Các quảng cáo đồng đẳng không được xác nhận do không tự quảng cáo" #: src/applications/advertising/advertising.c:917 msgid "# Peer advertisements not confirmed due to send error" msgstr "# Các quảng cáo đồng đẳng không được xác nhận do lỗi gửi" #: src/applications/advertising/advertising.c:919 msgid "# Self advertisments transmitted" msgstr "# Các tự quảng cáo được truyền" #: src/applications/advertising/advertising.c:921 msgid "# Foreign advertisements forwarded" msgstr "# Các quảng cáo ngoại được chuyển tiếp" #: src/applications/advertising/advertising.c:923 #: src/applications/pingpong/pingpong.c:529 msgid "# plaintext PING messages sent" msgstr "# các thông báo PING nhập thô được gửi" #: src/applications/advertising/advertising.c:929 #: src/applications/session/connect.c:974 #, c-format msgid "`%s' registering handler %d (plaintext and ciphertext)\n" msgstr "« %s » đang đăng ký trình điều khiển %d (nhập thô và văn bản mã hóa)\n" #: src/applications/advertising/advertising.c:945 msgid "ensures that this peer is known by other peers and discovers other peers" msgstr "đảm bảo là đồng đẳng này được biết bởi và phát hiện các đồng đẳng khác" #: src/applications/chat/chat.c:91 msgid "Message received from peer is invalid.\n" msgstr "Nhận được thông báo sai từ đồng đẳng.\n" #: src/applications/chat/chat.c:140 msgid "Message received from client is invalid\n" msgstr "Nhận được thông báo sai từ máy khách.\n" #: src/applications/chat/chat.c:161 msgid "Maximum number of chat clients reached.\n" msgstr "Đã tới số tối đa các máy khách trò chuyện.\n" #: src/applications/chat/chat.c:167 #, c-format msgid "Now %d of %d chat clients at this node.\n" msgstr "Lúc này có %d trên %d máy khách trò chuyện tại nút này.\n" #: src/applications/chat/chat.c:211 #, c-format msgid "`%s' registering handlers %d and %d\n" msgstr "« %s » đang đăng ký các trình điều khiển %d và %d\n" #: src/applications/chat/chat.c:230 msgid "enables P2P-chat (incomplete)" msgstr "hiệu lực trò chuyện giữa các đồng đẳng (chưa hoàn tất)" #: src/applications/chat/gnunet-chat.c:45 msgid "Join a chat on GNUnet." msgstr "Vào phòng trò chuyện trên GNUnet." #: src/applications/chat/gnunet-chat.c:49 msgid "set the nickname to use (requred)" msgstr "đặt tên hiệu cần dùng (cần thiết)" #: src/applications/chat/gnunet-chat.c:52 msgid "set the chat room to join (requred)" msgstr "đặt phòng trò chuyện cần vào (cần thiết)" #: src/applications/chat/gnunet-chat.c:135 #, c-format msgid "You must specify a nickname\n" msgstr "Phải ghi rõ tên hiệu\n" #: src/applications/chat/gnunet-chat.c:145 #, c-format msgid "Failed to join the room\n" msgstr "Lỗi vào phòng\n" #: src/applications/chat/gnunet-chat.c:162 #, c-format msgid "Failed to send message.\n" msgstr "Lỗi gửi tin nhẳn.\n" #: src/applications/sqstore_sqlite/sqlite.c:223 #, c-format msgid "Unable to initialize SQLite: %s.\n" msgstr "Không thể sơ khởi SQLite: %s.\n" #: src/applications/sqstore_sqlite/sqlite.c:444 #, c-format msgid "Invalid data in %s (NCS). Trying to fix (by deletion).\n" msgstr "Dữ liệu sai trong %s (NCS). Đang thử sửa chữa (bằng cách xoá).\n" #: src/applications/sqstore_sqlite/sqlite.c:445 #: src/applications/sqstore_sqlite/sqlite.c:480 msgid "sqlite datastore" msgstr "kho dữ liệu sqlite" #: src/applications/sqstore_sqlite/sqlite.c:479 #, c-format msgid "Invalid data in %s. Trying to fix (by deletion).\n" msgstr "Dữ liệu sai trong %s. Đang thử sửa chữa (bằng cách xoá).\n" #: src/applications/sqstore_sqlite/sqlite.c:1399 #: src/applications/sqstore_mysql/mysql.c:1483 msgid "# bytes in datastore" msgstr "# các byte trong kho dữ liệu" #: src/applications/pingpong/pingpong.c:134 #: src/applications/pingpong/pingpong.c:206 #: src/applications/pingpong/pingpong.c:274 #: src/applications/pingpong/pingpong.c:346 #, c-format msgid "Received malformed `%s' message. Dropping.\n" msgstr "Nhận được thông báo « %s » bị hỏng. Đang bỏ đi.\n" #: src/applications/pingpong/pingpong.c:146 msgid "Received ping for another peer. Dropping.\n" msgstr "Nhận được tin hiệu ping cho đồng đẳng khác. Đang bỏ đi.\n" #: src/applications/pingpong/pingpong.c:217 msgid "Received PING not destined for us!\n" msgstr "Nhận được PING không dành cho chúng ta.\n" #: src/applications/pingpong/pingpong.c:316 #: src/applications/pingpong/pingpong.c:382 msgid "Could not match PONG against any PING. Try increasing MAX_PING_PONG constant.\n" msgstr "Không tương ứng được PONG đối với bất kỳ PING. Hãy thử tăng hằng số MAX_PING_PONG.\n" #: src/applications/pingpong/pingpong.c:426 msgid "Cannot create PING, table full. Try increasing MAX_PING_PONG.\n" msgstr "Không tạo được PING, bảng đầy. Hãy thử tăng MAX_PING_PONG.\n" #: src/applications/pingpong/pingpong.c:519 msgid "# encrypted PONG messages received" msgstr "# các thông báo PONG đã mật mã được nhận" #: src/applications/pingpong/pingpong.c:521 msgid "# plaintext PONG messages received" msgstr "# các thông báo PONG nhập thô được nhận" #: src/applications/pingpong/pingpong.c:523 msgid "# encrypted PING messages received" msgstr "# các thông báo PING đã mật mã được nhận" #: src/applications/pingpong/pingpong.c:525 msgid "# PING messages created" msgstr "# các thông báo PING được tạo" #: src/applications/pingpong/pingpong.c:527 #: src/applications/session/connect.c:968 msgid "# encrypted PONG messages sent" msgstr "# các thông báo PONG đã mật mã được gửi" #: src/applications/pingpong/pingpong.c:531 #: src/applications/session/connect.c:966 msgid "# encrypted PING messages sent" msgstr "# các thông báo PING đã mật mã được gửi" #: src/applications/pingpong/pingpong.c:533 msgid "# plaintext PONG messages sent" msgstr "# các thông báo PONG nhập thô được gửi" #: src/applications/pingpong/pingpong.c:537 msgid "# plaintext PONG transmissions failed" msgstr "# các sự truyền PONG bị lỗi" #: src/applications/pingpong/pingpong.c:547 #, c-format msgid "`%s' registering handlers %d %d (plaintext and ciphertext)\n" msgstr "« %s » đang đăng ký các trình điều khiển %d %d (nhập thô và văn bản mã hóa)\n" #: src/applications/session/connect.c:260 #: src/applications/session/connect.c:279 #, c-format msgid "Session key from peer `%s' could not be verified.\n" msgstr "Khoá phiên chạy từ đồng đẳng « %s » không thể được thẩm tra.\n" #: src/applications/session/connect.c:323 #, c-format msgid "Cannot encrypt sessionkey, peer `%s' not known!\n" msgstr "Không thể mã hoá khoá phiên chạy, không rõ đồng đẳng « %s ».\n" #: src/applications/session/connect.c:520 #, c-format msgid "Could not create any HELLO for myself (have transports `%s')!\n" msgstr "Không thể tạo tín hiệu HELLO nào cho mình (có truyền tải « %s »).\n" #: src/applications/session/connect.c:627 #, c-format msgid "Session key received from peer `%s' has invalid format (discarded).\n" msgstr "Khoá phiên chạy được nhận từ đồng đẳng « %s » có định dạng sai (bị hủy).\n" #: src/applications/session/connect.c:661 #, c-format msgid "Session key received from peer `%s' is for `%s' and not for me!\n" msgstr "Khoá phiên chạy được nhận từ đồng đẳng « %s » dành cho « %s », không phải cho tôi.\n" #: src/applications/session/connect.c:695 #, c-format msgid "Invalid `%s' message received from peer `%s'.\n" msgstr "Nhận được thông báo « %s » sai từ đồng đẳng « %s ».\n" #: src/applications/session/connect.c:706 #, c-format msgid "setkey `%s' from `%s' fails CRC check (have: %u, want %u).\n" msgstr "Kiểm tra CRC setkey « %s » từ « %s » không thành công (có %u, còn muốn %u).\n" #: src/applications/session/connect.c:776 #, c-format msgid "Error parsing encrypted session key from `%s', given message part size is invalid.\n" msgstr "Lỗi phân tích chìa khóa phiên chạy đã mã hóa từ « %s », kích cỡ của phần thông báo đưa ra là sai.\n" #: src/applications/session/connect.c:789 #, c-format msgid "Unknown type in embedded message from `%s': %u (size: %u)\n" msgstr "Gặp kiểu không rõ trong thông báo nhúng từ « %s »: %u (kích cỡ : %u)\n" #: src/applications/session/connect.c:958 msgid "# session keys sent" msgstr "# các khoá phiên chạy được gửi" #: src/applications/session/connect.c:960 msgid "# session keys rejected" msgstr "# các khoá phiên chạy bị từ chối" #: src/applications/session/connect.c:962 msgid "# session keys accepted" msgstr "# các khoá phiên chạy được chấp nhận" #: src/applications/session/connect.c:964 msgid "# sessions established" msgstr "# các phiên chạy được thiết lập" #: src/applications/sqstore_mysql/mysql.c:427 #: src/applications/dstore_mysql/dstore_mysql.c:220 #, c-format msgid "`%s' failed at %s:%d with error: %s" msgstr "« %s » bị lỗi tại %s:%d với lỗi: %s" #: src/applications/sqstore_mysql/mysql.c:1388 #, c-format msgid "`%s' failed at %s:%d with error `%s' after %llums\n" msgstr "« %s » bị lỗi tại %s:%d với lỗi:« %s » đẳng sau %llu miligiây\n" #: src/applications/sqstore_mysql/mysql.c:1508 #: src/applications/sqstore_mysql/mysql.c:1661 #: src/applications/dstore_mysql/dstore_mysql.c:627 #, c-format msgid "Trying to use file `%s' for MySQL configuration.\n" msgstr "Đang thử dùng tập tin « %s » cho cấu hình MySQL.\n" #: src/applications/sqstore_mysql/mysql.c:1535 #: src/applications/sqstore_mysql/mysql.c:1686 msgid "Failed to load MySQL database module. Check that MySQL is running and configured properly!\n" msgstr "Lỗi nạp mô-đun cơ sở dữ liệu MySQL. Hãy kiểm tra lại MySQL đang chạy và có cấu hình đúng.\n" #: src/applications/identity/hostkey.c:122 #, c-format msgid "Failed to access GNUnet home directory `%s'\n" msgstr "Lỗi truy cập đến thư mục nhà GNUnet « %s »\n" #: src/applications/identity/hostkey.c:155 #, c-format msgid "Existing hostkey in file `%s' failed format check, creating new hostkey.\n" msgstr "Kiểm tra định dạng của chìa khóa máy trong tập tin « %s » không thành công, đang tạo chìa khóa máy mới.\n" #: src/applications/identity/hostkey.c:164 msgid "Creating new hostkey (this may take a while).\n" msgstr "Đang tạo khoá máy mới (có thể hơi lâu).\n" #: src/applications/identity/hostkey.c:176 msgid "Done creating hostkey.\n" msgstr "Hoàn thành tạo khoá máy.\n" #: src/applications/identity/identity.c:352 #, c-format msgid "File `%s' in directory `%s' does not match naming convention. Removed.\n" msgstr "Tập tin « %s » trong thư mục « %s » không tùy theo quy ước đặt tên. Bị gỡ bỏ.\n" #: src/applications/identity/identity.c:366 #, c-format msgid "Directory `%s' in directory `%s' does not match naming convention. Removed.\n" msgstr "Thư mục « %s » trong thư mục « %s » không tùy theo quy ước đặt tên. Bị gỡ bỏ.\n" #: src/applications/identity/identity.c:402 #, c-format msgid "Still no peers found in `%s'!\n" msgstr "Vẫn còn không tìm thấy đồng đẳng trong « %s ».\n" #: src/applications/identity/identity.c:731 #: src/applications/identity/identity.c:757 #, c-format msgid "Removed file `%s' containing invalid HELLO data.\n" msgstr "Đã gỡ bỏ tập tin « %s » chứa dữ liệu HELLO sai.\n" #: src/applications/identity/identity.c:809 #, c-format msgid "Signature failed verification: peer `%s' not known.\n" msgstr "Không thẩm tra được chữ ký: không rõ đồng đẳng « %s ».\n" #: src/applications/identity/identity.c:819 msgid "Signature failed verification: signature invalid.\n" msgstr "Không thẩm tra được chữ ký: chữ ký sai.\n" #: src/applications/identity/identity.c:935 #: src/applications/identity/identity.c:1058 #, c-format msgid "Peer `%s' is currently strictly blacklisted (for another %llums).\n" msgstr "Đồng đẳng « %s » hiện thời bị cấm hoàn toàn (trong %llu miligiây sau).\n" #: src/applications/identity/identity.c:1061 #, c-format msgid "Peer `%s' is currently blacklisted (for another %llums).\n" msgstr "Đồng đẳng « %s » hiện thời bị cấm (trong %llu miligiây sau).\n" #: src/applications/testbed/commands.c:1177 #: src/applications/stats/gnunet-stats.c:61 #, c-format msgid "Supported peer-to-peer messages:\n" msgstr "Thông báo đồng đẳng được hỗ trợ :\n" #: src/applications/testbed/commands.c:1179 #: src/applications/stats/gnunet-stats.c:64 #, c-format msgid "Supported client-server messages:\n" msgstr "Thông báo máy khách-chủ được hỗ trợ :\n" #: src/applications/testbed/gnunet-testbed.c:118 msgid "Start GNUnet-testbed helper." msgstr "Khởi chạy chương trình trợ giúp GNUnet-testbed." #: src/applications/testbed/gnunet-testbed.c:176 #, c-format msgid "Cannot connect to LOOPBACK port %d: %s\n" msgstr "Không thể kết nối tới cổng VÒNG LẶP %d: %s\n" #: src/applications/testbed/gnunet-testbed.c:268 #, c-format msgid "Could not execute `%s': %s\n" msgstr "Không thể thực hiện « %s »: %s\n" #: src/applications/testbed/gnunet-testbed.c:314 msgid "No client service started. Trying again in 30 seconds.\n" msgstr "Chưa khởi chạy dịch vụ máy khách. Sẽ thử lại sau 30 giây.\n" #: src/applications/testbed/gnunet-testbed.c:329 #, c-format msgid "" "Error (%s) binding the TCP listener to port %d. No proxy service started.\n" "Trying again in %d seconds...\n" msgstr "" "Gặp lỗi (%s) khi đóng kết trình lắng nghe TCP với cổng %d. Chưa khởi chạy dịch vụ ủy nhiệm.\n" "Sẽ thử lại sau %d giây...\n" #: src/applications/testbed/gnunet-testbed.c:392 #, c-format msgid "Rejected unauthorized connection from %u.%u.%u.%u.\n" msgstr "Đã từ chối kết nối không được phép từ %u.%u.%u.%u.\n" #: src/applications/testbed/gnunet-testbed.c:406 #, c-format msgid "Protocol violation on socket. Expected command.\n" msgstr "Xâm phạm giao thức trên ổ cắm. Đã mong đợi câu lệnh.\n" #: src/applications/testbed/gnunet-testbed.c:446 #, c-format msgid "Command `%s' not found!\n" msgstr "Không tìm thấy câu lệnh « %s ».\n" #: src/applications/testbed/gnunet-testbed.c:510 msgid "Start GNUnet testbed controller." msgstr "Khởi chạy trình điều khiển GNUnet testbed." #: src/applications/testbed/gnunet-testbed.c:572 #, c-format msgid "Malformed entry in the configuration in section %s under %s: %s\n" msgstr "Gặp mục nhập dạng sai trong cấu hình phần %s dưới %s: %s\n" #: src/applications/testbed/testbed.c:53 msgid "Could not send acknowledgement back to client.\n" msgstr "Không thể gửi sự xác nhận về máy khách.\n" #: src/applications/testbed/testbed.c:64 #, c-format msgid "Received unknown testbed message of type %u.\n" msgstr "Nhận được thông điệp testbed không rõ kiểu %u.\n" #: src/applications/testbed/testbed.c:82 #: src/applications/testbed/testbed.c:845 #, c-format msgid "size of `%s' message is too short. Ignoring.\n" msgstr "kích cỡ của thông báo « %s » quá ngắn. Đang lờ đi.\n" #: src/applications/testbed/testbed.c:90 #, c-format msgid "size of `%s' message is wrong. Ignoring.\n" msgstr "kích cỡ của thông báo « %s » bị sai. Đang lờ đi.\n" #: src/applications/testbed/testbed.c:145 #, c-format msgid "TESTBED could not generate hello message for protocol %u\n" msgstr "TESTBED không tạo được thông báo HELLO cho giao thức %u\n" #: src/applications/testbed/testbed.c:223 #: src/applications/testbed/testbed.c:268 #: src/applications/testbed/testbed.c:381 #: src/applications/testbed/testbed.c:390 #: src/applications/testbed/testbed.c:434 #: src/applications/testbed/testbed.c:443 #, c-format msgid "received invalid `%s' message\n" msgstr "nhận được thông báo « %s » sai\n" #: src/applications/testbed/testbed.c:240 #: src/applications/testbed/testbed.c:284 #, c-format msgid "received invalid `%s' message (empty module name)\n" msgstr "nhận được thông báo « %s » sai (tên mô-đun rỗng)\n" #: src/applications/testbed/testbed.c:247 #, c-format msgid "loading module `%s' failed. Notifying client.\n" msgstr "lỗi nạp mô-đun « %s ». Đang cho máy khách biết.\n" #: src/applications/testbed/testbed.c:291 msgid "unloading module failed. Notifying client.\n" msgstr "lỗi hủy nạp mô-đun. Đang cho máy khách biết.\n" #: src/applications/testbed/testbed.c:576 #, c-format msgid "`%s' %s failed: %s\n" msgstr "« %s » %s bị lỗi: %s\n" #: src/applications/testbed/testbed.c:658 #, c-format msgid "received invalid `%s' message: %s.\n" msgstr "nhận được thông báo « %s » sai: %s.\n" #: src/applications/testbed/testbed.c:858 #, c-format msgid "'..' is not allowed in file name (%s).\n" msgstr "Không cho phép hai dấu chấm « .. » trong tên tập tin (%s).\n" #: src/applications/testbed/testbed.c:869 msgid "Empty filename for UPLOAD_FILE message is invalid!\n" msgstr "Tên tập tin rỗng cho thông báo UPLOAD_FILE (tải lên tập tin) là sai.\n" #: src/applications/testbed/testbed.c:878 msgid "Filename for UPLOAD_FILE message is not null-terminated (invalid!)\n" msgstr "Tên tập tin cho thông báo UPLOAD_FILE (tải lên tập tin) không phải được chấm dứt rỗng (sai)!\n" #: src/applications/testbed/testbed.c:886 msgid "Upload refused!" msgstr "Tải lên bị từ chối." #: src/applications/testbed/testbed.c:916 #, c-format msgid "Invalid message received at %s:%d." msgstr "Nhận được thông báo sai tại %s:%d." #: src/applications/testbed/testbed.c:1038 #, c-format msgid "received invalid testbed message of size %u\n" msgstr "nhận được thông báo testbed sai với kích cỡ %u\n" #: src/applications/testbed/testbed.c:1061 #, c-format msgid "Received testbed message of type %u but unexpected size %u, expected %u\n" msgstr "Nhận được thông báo testbed dạng %u nhưng kích cỡ không mong đợi %u, mong đợi %u\n" #: src/applications/testbed/testbed.c:1107 msgid "No testbed URL given, not registered.\n" msgstr "Chưa đưa ra địa chỉ URL tesbed, chưa đăng ký.\n" #: src/applications/testbed/testbed.c:1118 #, c-format msgid "Could not resolve name of HTTP proxy `%s'.\n" msgstr "Không thể giải quyết tên của máy ủy nhiệm HTTP « %s ».\n" #: src/applications/testbed/testbed.c:1148 #, c-format msgid "Invalid URL `%s' (must begin with `%s')\n" msgstr "Địa chỉ URL sai « %s » (phải bắt đầu với « %s »)\n" #: src/applications/testbed/testbed.c:1191 #, c-format msgid "Malformed http URL: `%s' at `%s'. Testbed-client not registered.\n" msgstr "Địa chỉ URL HTTP dạng sai: « %s » tại « %s ». Chưa đăng ký máy khách testbed.\n" #: src/applications/testbed/testbed.c:1226 #, c-format msgid "Could not register testbed, host `%s' unknown\n" msgstr "Không thể đăng ký testbed, máy « %s » không rõ\n" #: src/applications/testbed/testbed.c:1248 #, c-format msgid "Failed to send HTTP request to host `%s': %s\n" msgstr "Lỗi gửi yêu cầu HTTP cho máy « %s »: %s\n" #: src/applications/testbed/testbed.c:1286 #, c-format msgid "Failed so send HTTP request `%s' to host `%s': %s\n" msgstr "Lỗi gửi yêu cầu HTTP « %s » cho máy « %s »: %s\n" #: src/applications/testbed/testbed.c:1324 msgid "Exit register (error: no http response read).\n" msgstr "Thoát trình đăng ký (lỗi: không đọc được câu trả lời HTTP).\n" #: src/applications/testbed/testbed.c:1431 msgid "allows construction of a P2P-testbed (incomplete)" msgstr "cho phép cấu táo một testbed đồng đẳng (chưa hoàn tất)" #: src/applications/transport/transport.c:192 #, c-format msgid "Converting peer address to string failed, transport type %d not supported\n" msgstr "Lỗi chuyển đổi địa chỉ đồng đẳng sang chuỗi, kiểu truyền tải %d không được hỗ trợ\n" #: src/applications/transport/transport.c:247 #, c-format msgid "Transport connection attempt failed, transport type %d not supported\n" msgstr "Lỗi thử kết nối truyền tải, kiểu cơ chế truyền %d không được hỗ trợ\n" #: src/applications/transport/transport.c:300 #, c-format msgid "Transport failed to connect to peer `%s' (%u HELLOs known, none worked)\n" msgstr "Truyền tải không kết nối được tới đồng đẳng « %s » (đã biết %u tín hiệu HELLO, mà không có tín hiệu nào hoạt động được)\n" #: src/applications/transport/transport.c:377 #, c-format msgid "Transmission attempt failed, transport type %d unknown.\n" msgstr "Lỗi thử gửi, kiểu truyền tải %d không được hỗ trợ\n" #: src/applications/transport/transport.c:501 #, c-format msgid "No transport of type %d known.\n" msgstr "Không biết truyền tải nào kiểu %d.\n" #: src/applications/transport/transport.c:561 msgid "No transport succeeded in creating a hello!\n" msgstr "Không có truyền tải nào đã tạo được một tín hiệu HELLO.\n" #: src/applications/transport/transport.c:763 #, c-format msgid "Loading transports `%s'\n" msgstr "Đang nạp các truyền tải « %s »\n" #: src/applications/transport/transport.c:783 #, c-format msgid "Could not load transport plugin `%s'\n" msgstr "Không thể nạp phần bổ sung truyền tải « %s »\n" #: src/applications/transport/transport.c:797 #, c-format msgid "Transport library `%s' did not provide required function '%s%s'.\n" msgstr "Thư viện truyền tải « %s » không cung cấp chức năng yêu cầu « %s%s ».\n" #: src/applications/transport/transport.c:826 #, c-format msgid "Loaded transport `%s'\n" msgstr "Đã nạp truyền tải « %s »\n" #: src/applications/transport/transport.c:838 #, c-format msgid "I am peer `%s'.\n" msgstr "Tôi là đồng đẳng « %s ».\n" #: src/applications/stats/sqstats.c:152 msgid "# Any-Blocks" msgstr "# Khối bất kỳ" #: src/applications/stats/sqstats.c:153 msgid "# DBlocks" msgstr "# Khối D" #: src/applications/stats/sqstats.c:154 msgid "# SBlocks" msgstr "# Khối S" #: src/applications/stats/sqstats.c:155 msgid "# KBlocks" msgstr "# Khối K" #: src/applications/stats/sqstats.c:156 msgid "# NBlocks" msgstr "# Khối N" #: src/applications/stats/sqstats.c:157 msgid "# KNBlocks" msgstr "# Khối KN" #: src/applications/stats/sqstats.c:158 msgid "# OnDemand-Blocks" msgstr "# Khối theo yêu cầu" #: src/applications/stats/sqstats.c:159 msgid "# Unknown-Blocks" msgstr "# Khối không rõ" #: src/applications/stats/sqstats.c:160 msgid "# expired" msgstr "# đã hết hạn" #: src/applications/stats/sqstats.c:161 msgid "# expire in 1h" msgstr "# hết hạn trong 1 giờ" #: src/applications/stats/sqstats.c:162 msgid "# expire in 24h" msgstr "# hết hạn trong 24 giờ" #: src/applications/stats/sqstats.c:163 msgid "# expire in 1 week" msgstr "# hết hạn trong 1 tuần" #: src/applications/stats/sqstats.c:164 msgid "# expire in 1 month" msgstr "# hết hạn trong 1 tháng" #: src/applications/stats/sqstats.c:165 msgid "# zero priority" msgstr "# ưu tiên 0" #: src/applications/stats/sqstats.c:166 msgid "# priority one" msgstr "# ưu tiên 1" #: src/applications/stats/sqstats.c:167 msgid "# priority larger than one" msgstr "# ưu tiên >1" #: src/applications/stats/sqstats.c:168 msgid "# no anonymity" msgstr "# nặc danh 0" #: src/applications/stats/sqstats.c:169 msgid "# anonymity one" msgstr "# nặc danh 1" #: src/applications/stats/sqstats.c:170 msgid "# anonymity larger than one" msgstr "# nặc danh >1" #: src/applications/stats/clientapi.c:333 msgid "Uptime (seconds)" msgstr "Thời gian chạy (giây)" #: src/applications/stats/statistics.c:228 msgid "% of allowed network load (up)" msgstr "% trọng tải mạng được phép (chạy)" #: src/applications/stats/statistics.c:230 msgid "% of allowed network load (down)" msgstr "% trọng tải mạng được phép (không chạy)" #: src/applications/stats/statistics.c:231 msgid "% of allowed cpu load" msgstr "% trọng tải CPU được phép" #: src/applications/stats/statistics.c:232 msgid "% of allowed io load" msgstr "% trọng tải V/R được phép" #: src/applications/stats/statistics.c:235 msgid "# bytes of noise received" msgstr "# các byte nhiễu được nhận" #: src/applications/stats/statistics.c:237 msgid "# plibc handles" msgstr "# các bộ xử lý plibc" #: src/applications/stats/statistics.c:421 #, c-format msgid "`%s' registering client handlers %d %d %d and p2p handler %d\n" msgstr "« %s » đang đăng ký các trình điều khiển máy khách %d %d %d và trình điều khiển đồng đẳng %d\n" #: src/applications/stats/statistics.c:444 msgid "keeps statistics about gnunetd's operation" msgstr "tính thống kê về thao tác gnunetd" #: src/applications/stats/gnunet-stats.c:87 msgid "prints supported protocol messages" msgstr "in ra các thông báo giao thức được hỗ trợ" #: src/applications/stats/gnunet-stats.c:136 #, c-format msgid "Error reading information from gnunetd.\n" msgstr "Gặp lỗi khi đọc thông tin từ gnunetd.\n" #: src/applications/tbench/gnunet-tbench.c:63 #: src/applications/tracekit/gnunet-tracekit.c:302 msgid "Start GNUnet transport benchmarking tool." msgstr "Khởi chạy công cụ kiểm chuẩn truyền tải của GNUnet." #: src/applications/tbench/gnunet-tbench.c:65 msgid "output in gnuplot format" msgstr "kết xuất theo định dạng gnuplot" #: src/applications/tbench/gnunet-tbench.c:69 msgid "number of iterations" msgstr "số lần lặp lại" #: src/applications/tbench/gnunet-tbench.c:73 msgid "number of messages to use per iteration" msgstr "số tin nhắn cần dùng mỗi lần lặp" #: src/applications/tbench/gnunet-tbench.c:76 msgid "receiver host identifier (ENC file name)" msgstr "đồ nhận diện máy nhận (tên tập tin mã hoá)" #: src/applications/tbench/gnunet-tbench.c:79 msgid "message size" msgstr "kích cỡ tin nhắn" #: src/applications/tbench/gnunet-tbench.c:82 msgid "sleep for SPACE ms after each a message block" msgstr "ngủ KHOẢNG miligiây sau mỗi khối tin nhắn" #: src/applications/tbench/gnunet-tbench.c:85 msgid "time to wait for the completion of an iteration (in ms)" msgstr "thời gian chờ sự hoàn thành của một lần lặp (theo miligiây)" #: src/applications/tbench/gnunet-tbench.c:90 msgid "number of messages in a message block" msgstr "số tin nhắn trong một khối tin nhắn" #: src/applications/tbench/gnunet-tbench.c:142 #, c-format msgid "You must specify a receiver!\n" msgstr "Phải ghi rõ một máy nhận.\n" #: src/applications/tbench/gnunet-tbench.c:152 #, c-format msgid "Invalid receiver peer ID specified (`%s' is not valid name).\n" msgstr "Chỉ ra mã số đồng đẳng nhận sai (« %s » không phải là một tên đúng).\n" #: src/applications/tbench/gnunet-tbench.c:189 #, c-format msgid "Time:\n" msgstr "Thời gian:\n" #: src/applications/tbench/gnunet-tbench.c:190 #, c-format msgid "\tmax %llums\n" msgstr "\tđại %llu mg\n" #: src/applications/tbench/gnunet-tbench.c:191 #, c-format msgid "\tmin %llums\n" msgstr "\ttiểu %llu mg\n" #: src/applications/tbench/gnunet-tbench.c:192 #, c-format msgid "\tmean %8.4fms\n" msgstr "\ttrung bình %8.4f mg\n" #: src/applications/tbench/gnunet-tbench.c:193 #, c-format msgid "\tvariance %8.4fms\n" msgstr "\tphương sai %8.4f mg\n" #: src/applications/tbench/gnunet-tbench.c:195 #, c-format msgid "Loss:\n" msgstr "Mất:\n" #: src/applications/tbench/gnunet-tbench.c:196 #, c-format msgid "\tmax %u\n" msgstr "\tđại %u\n" #: src/applications/tbench/gnunet-tbench.c:197 #, c-format msgid "\tmin %u\n" msgstr "\ttiểu %u\n" #: src/applications/tbench/gnunet-tbench.c:198 #, c-format msgid "\tmean %8.4f\n" msgstr "\tt.bình %8.4f\n" #: src/applications/tbench/gnunet-tbench.c:199 #, c-format msgid "\tvariance %8.4f\n" msgstr "\tph.sai %8.4f\n" #: src/applications/tbench/gnunet-tbench.c:205 #, c-format msgid "Output format not known, this should not happen.\n" msgstr "Định dạng kết xuất không rõ, điều này không nên xảy ra.\n" #: src/applications/tbench/gnunet-tbench.c:211 #, c-format msgid "" "\n" "Did not receive the message from gnunetd. Is gnunetd running?\n" msgstr "" "\n" "Không nhận được thông báo từ gnunetd. Trình nền gnunetd đang chạy không?\n" #: src/applications/tbench/tbench.c:420 msgid "allows profiling of direct peer-to-peer connections" msgstr "cho phép đo hiệu năng sử dụng của kết nối đồng đẳng trực tiếp" #: src/applications/tbench/tbenchtest.c:53 #, c-format msgid "Using %u messages of size %u for %u times.\n" msgstr "Sử dụng %u thông báo với kích cỡ %u trong %u lần.\n" #: src/applications/tbench/tbenchtest.c:85 #, c-format msgid "Times: max %16llu min %16llu mean %12.3f variance %12.3f\n" msgstr "Thời gian: đại %16llu tiểu %16llu t.bình %12.3f ph.sai %12.3f\n" #: src/applications/tbench/tbenchtest.c:89 #, c-format msgid "Loss: max %16u min %16u mean %12.3f variance %12.3f\n" msgstr "Mất: đại %16u tiểu %16u t.bình %12.3f ph.sai %12.3f\n" #: src/applications/tbench/tbenchtest.c:95 #, c-format msgid "" "\n" "Failed to receive reply from gnunetd.\n" msgstr "" "\n" "Không nhận được đáp ứng từ gnunetd.\n" #: src/applications/tbench/tbenchtest.c:151 #, c-format msgid "Running benchmark...\n" msgstr "Đang chạy tiến trình kiểm chuẩn...\n" #: src/applications/tracekit/gnunet-tracekit.c:104 #, c-format msgid "`%s' connected to `%s'.\n" msgstr "« %s » được kết nối tới « %s ».\n" #: src/applications/tracekit/gnunet-tracekit.c:110 #, c-format msgid "`%s' is not connected to any peer.\n" msgstr "« %s » không phải được kết nối tới đồng đẳng nào.\n" #: src/applications/tracekit/gnunet-tracekit.c:295 msgid "probe network to the given DEPTH" msgstr "dò mạng tới độ sâu SÂU đưa ra" #: src/applications/tracekit/gnunet-tracekit.c:299 msgid "specify output format; 0 for human readable output, 1 for dot, 2 for vcg" msgstr "" "chỉ ra định dạng kết quả;\n" " • 0\t\tkết xuất cho người đọc được\n" " • 1\t\tdấu chấm\n" " • 2\t\tvcg" #: src/applications/tracekit/gnunet-tracekit.c:306 msgid "use PRIORITY for the priority of the trace request" msgstr "dùng ƯU_TIÊN làm ưu tiên của yêu cầu tìm đường" #: src/applications/tracekit/gnunet-tracekit.c:310 msgid "wait DELAY seconds for replies" msgstr "đợi đáp ứng TRỄ giây" #: src/applications/tracekit/gnunet-tracekit.c:344 #, c-format msgid "Format specification invalid. Use 0 for user-readable, 1 for dot, 2 for vcg.\n" msgstr "" "Đặt tả định dạng sai. Dùng:\n" " • 0\t\tkết xuất cho người đọc được\n" " • 1\t\tdấu chấm\n" " • 2\t\tvcg\n" #: src/applications/tracekit/tracekit.c:434 msgid "allows mapping of the network topology" msgstr "cho phép ánh xạ địa hình của mạng" #: src/applications/getoption/getoption.c:78 #, c-format msgid "`%s' registering client handler %d\n" msgstr "« %s » đang đăng ký trình điều khiển máy khách %d\n" #: src/applications/getoption/getoption.c:88 msgid "allows clients to determine gnunetd's configuration" msgstr "cho phép máy khách quyết định cấu hình của trình nền gnunetd." #: src/applications/template/gnunet-template.c:42 msgid "Template description." msgstr "Mô tả mẫu." #: src/applications/template/template.c:70 #, c-format msgid "`%s' registering client handler %d and %d\n" msgstr "« %s » đang đăng ký trình điều khiển máy khách %d và %d\n" #: src/applications/bootstrap_http/http.c:110 #, c-format msgid "Bootstrap data obtained from `%s' is invalid.\n" msgstr "Sai dữ liệu nạp và khởi động được lấy từ « %s ».\n" #: src/applications/bootstrap_http/http.c:178 msgid "No hostlist URL specified in configuration, will not bootstrap.\n" msgstr "Chưa ghi rõ địa chỉ URL của danh sách các máy nên không nạp và khởi động.\n" #: src/applications/bootstrap_http/http.c:219 #, c-format msgid "Bootstrapping using `%s'.\n" msgstr "Đang nạp và khởi động dùng « %s ».\n" #: src/applications/bootstrap_http/http.c:234 #, c-format msgid "Trying to download hostlist from `%s'\n" msgstr "Đang thử tải danh sách các máy xuống « %s »\n" #: src/applications/bootstrap_http/http.c:364 #, c-format msgid "Downloaded %llu bytes from `%s'.\n" msgstr "Đã tải %llu byte xuống « %s ».\n" #: src/applications/bootstrap_http/http.c:397 msgid "# HELLOs downloaded via http" msgstr "# các HELLO tải xuống qua HTTP" #: src/applications/traffic/traffic.c:454 #, c-format msgid "# bytes transmitted of type %d" msgstr "# các byte kiểu %d được gửi " #: src/applications/traffic/traffic.c:470 #, c-format msgid "# bytes received of type %d" msgstr "# các byte kiểu %d được nhận" #: src/applications/traffic/traffic.c:489 #, c-format msgid "# bytes received in plaintext of type %d" msgstr "# các byte nhập thô kiểu %d được nhận" #: src/applications/traffic/traffic.c:650 msgid "tracks bandwidth utilization by gnunetd" msgstr "theo dõi gnunetd sử dụng dải thông" #: src/applications/dstore_mysql/dstore_mysql.c:636 msgid "Failed to initialize MySQL database connection for dstore.\n" msgstr "Lỗi sơ khởi kết nối cơ sở dữ liệu MySQL cho kho dữ liệu.\n" #: src/applications/dstore_mysql/dstore_mysql.c:661 #: src/applications/dstore_sqlite/dstore.c:535 msgid "# bytes in dstore" msgstr "# các byte trong kho dữ liệu" #: src/server/connection.c:1214 #, c-format msgid "`%s' selected %d out of %d messages (MTU: %d).\n" msgstr "« %s » đã chọn %d trên %d thông báo (MTU: %d).\n" #: src/server/connection.c:1224 #, c-format msgid "Message details: %u: length %d, priority: %d\n" msgstr "Chi tiết về thông báo: %u: dài %d, ưu tiên: %d\n" #: src/server/connection.c:2991 #, c-format msgid "Message from `%s' discarded: invalid format.\n" msgstr "Thông báo từ « %s » bị hủy: định dạng sai.\n" #: src/server/connection.c:3080 #, c-format msgid "Invalid sequence number %u <= %u, dropping message.\n" msgstr "Sai số thứ tự dãy trong thông báo %u ≤ %u, đang loại bỏ thông báo.\n" #: src/server/connection.c:3102 msgid "Message received more than one day old. Dropped.\n" msgstr "Thông báo nhận được cũ hơn một ngày. Đã loại bỏ.\n" #: src/server/connection.c:3624 msgid "# outgoing messages dropped" msgstr "# các thông báo gửi đi bị loại bỏ" #: src/server/connection.c:3627 msgid "# bytes of outgoing messages dropped" msgstr "# các byte thông báo gửi đi bị loại bỏ" #: src/server/connection.c:3629 msgid "# connections closed (HANGUP sent)" msgstr "# các kết nối bị đóng (gửi tín hiệu ngừng nói HANGUP)" #: src/server/connection.c:3633 msgid "# connections closed (transport issue)" msgstr "# các kết nối bị đóng (vấn đề truyền tải)" #: src/server/connection.c:3636 msgid "# bytes encrypted" msgstr "# các byte đã mã hoá" #: src/server/connection.c:3640 msgid "# bytes transmitted" msgstr "# các byte được gửi" #: src/server/connection.c:3644 msgid "# bytes received" msgstr "# các byte được nhận" #: src/server/connection.c:3646 msgid "# bytes decrypted" msgstr "# các byte đã giải mã" #: src/server/connection.c:3647 msgid "# bytes noise sent" msgstr "# các byte nhiễu được gửi" #: src/server/connection.c:3650 msgid "# total bytes per second send limit" msgstr "# giới hạn tổng số byte mỗi giây" #: src/server/connection.c:3653 msgid "# total bytes per second receive limit" msgstr "# giới hạn nhận tổng số byte mỗi giây" #: src/server/connection.c:3656 msgid "# total number of messages in send buffers" msgstr "# tổng số thông báo trong bộ đệm gửi" #: src/server/connection.c:3660 msgid "# total number of bytes we were allowed to sent but did not" msgstr "# tổng số byte được phép gửi mà chưa" #: src/server/connection.c:3664 msgid "# total number of bytes we were allowed to sent" msgstr "# tổng số byte được phép gửi" #: src/server/connection.c:3668 msgid "# total number of bytes we are currently allowed to send" msgstr "# tổng số byte hiện thời được phép gửi" #: src/server/connection.c:3671 msgid "# transports switched to stream transport" msgstr "# các truyền tải được chuyển sang truyền tải luồng" #: src/server/startup.c:215 #, c-format msgid "Unable to obtain filesystem information for `%s': %u\n" msgstr "Không thể đại được thông tin về hệ thống tập tin cho « %s »: %u\n" #: src/server/startup.c:233 #, c-format msgid "Filesystem `%s' of partition `%s' is unknown. Please contact gnunet-developers@gnu.org!" msgstr "Hệ thống tập tin « %s » của phân vùng « %s » không rõ. Hãy liên lạc với các nhà phát triển gnunet ở địa chỉ « gnunet-developers@gnu.org »." #: src/server/startup.c:248 #, c-format msgid "Limiting datastore size to %llu GB, because the `%s' filesystem does not support larger files. Please consider storing the database on a NTFS partition!\n" msgstr "Đang hạn chế kích cỡ kho dữ liệu thành %llu GB, vì hệ thống tập tin « %s » không hỗ trợ tập tin lớn hơn đó. Khuyên bạn cất giữ cơ sở dữ liệu trong một phiên bản kiểu NTFS.\n" #: src/server/startup.c:287 #, c-format msgid "Insufficient access permissions for `%s': %s\n" msgstr "Không đủ quyền truy cập cho « %s »: %s\n" #: src/server/gnunetd.c:83 #, c-format msgid "`%s' startup complete.\n" msgstr "Hoàn thành khởi chạy « %s ».\n" #: src/server/gnunetd.c:87 #, c-format msgid "`%s' is shutting down.\n" msgstr "« %s » đang tắt.\n" #: src/server/gnunetd.c:121 src/server/gnunet-update.c:222 msgid "Core initialization failed.\n" msgstr "Lỗi sơ khởi lõi.\n" #: src/server/gnunetd.c:176 msgid "run in debug mode; gnunetd will not daemonize and error messages will be written to stderr instead of a logfile" msgstr "chạy trong chế độ tìm sửa lỗi; gnunetd sẽ không trở thành trình nền và sẽ ghi thông báo lỗi ra đầu lỗi tiêu chuẩn thay vì vào một tập tin ghi sự kiện." #: src/server/gnunetd.c:180 msgid "Starts the gnunetd daemon." msgstr "Khởi chạy trình nền gnunetd." #: src/server/gnunetd.c:183 msgid "disable padding with random data (experimental)" msgstr "tắt đệm lót với dữ liệu ngẫu nhiên (vẫn thực nghiệm !)" #: src/server/gnunetd.c:187 msgid "print all log messages to the console (only works together with -d)" msgstr "in mọi thông điệp ghi sự kiện ra bàn giao tiếp (chỉ hoạt động tổ hợp với « -d »)" #: src/server/gnunetd.c:191 msgid "specify username as which gnunetd should run" msgstr "chỉ ra tên người dùng dưới đó cần chạy gnunetd" #: src/server/gnunetd.c:272 #, c-format msgid "Configuration or GNUnet version changed. You need to run `%s'!\n" msgstr "Cấu hình hoặc phiên bản GNUnet bị thay đổi. Người dùng cần chạy « %s ».\n" #: src/server/gnunet-transport-check.c:121 #, c-format msgid "`%s': Could not create hello.\n" msgstr "« %s »: Không tạo được tín hiệu xin chào (hello).\n" #: src/server/gnunet-transport-check.c:128 #, c-format msgid "`%s': Could not connect.\n" msgstr "« %s »: Không thể kết nối.\n" #: src/server/gnunet-transport-check.c:162 #, c-format msgid "`%s': Could not send.\n" msgstr "« %s »: Không thể gửi.\n" #: src/server/gnunet-transport-check.c:177 #, c-format msgid "`%s': Did not receive message within %llu ms.\n" msgstr "« %s »: Chưa nhận thông báo sau %llu miligiây.\n" #: src/server/gnunet-transport-check.c:190 #, c-format msgid "`%s': Could not disconnect.\n" msgstr "« %s »: Không thể ngắt kết nối.\n" #: src/server/gnunet-transport-check.c:197 #, c-format msgid "`%s' transport OK. It took %ums to transmit %llu messages of %llu bytes each.\n" msgstr "« %s » truyền tải OK. Cần %u miligiây để truyền đi %llu thông báo với %llu byte mỗi cái.\n" #: src/server/gnunet-transport-check.c:228 #, c-format msgid " Transport %d is not being tested\n" msgstr " Truyền tải %d không đang thử\n" #: src/server/gnunet-transport-check.c:258 #, c-format msgid "" "\n" "Contacting `%s'." msgstr "" "\n" "Đang liên lạc với « %s »." #: src/server/gnunet-transport-check.c:283 #, c-format msgid " Connection failed\n" msgstr " Lỗi kết nối\n" #: src/server/gnunet-transport-check.c:289 #, c-format msgid " Connection failed (bug?)\n" msgstr " Không kết nối được (lỗi ?)\n" #: src/server/gnunet-transport-check.c:327 #, c-format msgid "Timeout after %llums.\n" msgstr "Quá hạn sau %llu miligiây.\n" #: src/server/gnunet-transport-check.c:329 #, c-format msgid "OK!\n" msgstr "OK!\n" #: src/server/gnunet-transport-check.c:354 msgid "Tool to test if GNUnet transport services are operational." msgstr "Công cụ để thử nghiệm xem dịch vụ truyền tải GNUnet có hoạt động không." #: src/server/gnunet-transport-check.c:358 msgid "ping peers from HOSTLISTURL that match transports" msgstr "gửi tín hiệu ping cho các đồng đẳng từ HOSTLISTURL (danh sách máy theo URL) tương ứng với truyền tải" #: src/server/gnunet-transport-check.c:361 msgid "send COUNT messages" msgstr "gửi ĐẾM thông báo" #: src/server/gnunet-transport-check.c:364 msgid "send messages with SIZE bytes payload" msgstr "gửi thông báo có KÍCH_CỠ byte tải trọng" #: src/server/gnunet-transport-check.c:367 msgid "specifies which TRANSPORT should be tested" msgstr "chỉ ra TRUYỀN_TẢI nào cần được thử nghiệm" #: src/server/gnunet-transport-check.c:370 msgid "specifies after how many MS to time-out" msgstr "chỉ ra hết thời gian chờ sau bao nhiêu miligiay" #: src/server/gnunet-transport-check.c:373 src/server/gnunet-update.c:271 msgid "run as user LOGIN" msgstr "chạy dưới người dùng ĐĂNG_NHẬP" #: src/server/gnunet-transport-check.c:378 msgid "repeat each test X times" msgstr "lặp lại mỗi hàm thử X lần" #: src/server/gnunet-transport-check.c:443 #, c-format msgid "Testing transport(s) %s\n" msgstr "Đang thử nghiệm (các) truyền tải %s\n" #: src/server/gnunet-transport-check.c:445 #, c-format msgid "Available transport(s): %s\n" msgstr "Các truyền tải sẵn sàng: %s\n" #: src/server/gnunet-transport-check.c:493 #, c-format msgid "" "\n" "%d out of %d peers contacted successfully (%d times transport unavailable).\n" msgstr "" "\n" "Đã liên lạc thành công với %d trên %d đồng đẳng (truyền tải không sẵn sàng %d lần).\n" #: src/server/tcpserver.c:111 #, c-format msgid "The `%s' request received from client is malformed.\n" msgstr "Nhận được yêu cầu « %s » dạng sai từ máy khách.\n" #: src/server/tcpserver.c:337 #, c-format msgid "`%s' failed for port %d. Is gnunetd already running?\n" msgstr "« %s » bị lỗi cho cổng %d. Trình gnunetd có chạy chưa?\n" #: src/server/tcpserver.c:414 #, c-format msgid "Malformed network specification in the configuration in section `%s' for entry `%s': %s\n" msgstr "Đặc tả mạng dạng sai trong cấu hình phần « %s » cho mục nhập « %s »: %s\n" #: src/server/tcpserver.c:472 #, c-format msgid "%s failed, message type %d already in use.\n" msgstr "%s bị lỗi, thông báo kiểu %d đang được dùng.\n" #: src/server/handler.c:437 #, c-format msgid "Received corrupt message from peer `%s'in %s:%d.\n" msgstr "Nhận được thông báo bị hỏng từ đồng đẳng « %s » trong %s:%d.\n" #: src/server/gnunet-update.c:146 #, c-format msgid "Updating data for module `%s'\n" msgstr "Đang cập nhật dữ liệu cho mô-đun « %s »\n" #: src/server/gnunet-update.c:151 #, c-format msgid "Failed to update data for module `%s'\n" msgstr "Lỗi cập nhật dữ liệu cho mô-đun « %s »\n" #: src/server/gnunet-update.c:267 msgid "Updates GNUnet datastructures after version change." msgstr "Cập nhật cấu trúc dữ liệu GNUnet sau khi thay đổi phiên bản." #: src/server/gnunet-update.c:275 msgid "run in client mode (for getting client configuration values)" msgstr "chạy trong chế độ khách (để lấy các giá trị cấu hình của máy khách)" #: src/server/gnunet-peer-info.c:51 msgid "Print information about GNUnet peers." msgstr "In ra thông tin về các đồng đẳng GNUnet." #: src/server/gnunet-peer-info.c:55 msgid "don't resolve host names" msgstr "không quyết định các tên máy" #: src/server/gnunet-peer-info.c:120 src/server/gnunet-peer-info.c:153 #, c-format msgid "Could not get address of peer `%s'.\n" msgstr "Không thể lấy địa chỉ của đồng đẳng « %s ».\n" #: src/server/gnunet-peer-info.c:133 msgid "hello message invalid (signature invalid).\n" msgstr "Thông báo xin chào (hello) không hợp lệ (chữ ký sai).\n" #: src/server/gnunet-peer-info.c:154 #, c-format msgid "Peer `%s' with trust %8u\n" msgstr "Đồng đẳng « %s » có mức tin cậy %8u\n" #: src/server/gnunet-peer-info.c:158 #, c-format msgid "Peer `%s' with trust %8u and address `%s'\n" msgstr "Đồng đẳng « %s » có mức tin cậy %8u và địa chỉ « %s »\n" #: src/server/version.c:143 msgid "Failed to determine filename used to store GNUnet version information!\n" msgstr "Lỗi quyết định tên tập tin được dùng để chứa thông tin về phiên bản GNUnet.\n" #: src/server/core.c:129 #, c-format msgid "Application module `%s' already initialized!\n" msgstr "Mô-đun ứng dụng « %s » đã được sở khởi.\n" #: src/server/core.c:183 #, c-format msgid "Failed to load plugin `%s' at %s:%d. Unloading plugin.\n" msgstr "Lỗi nạp phần bổ sung « %s » tại %s:%d. Đang hủy nạp phần bổ sung.\n" #: src/server/core.c:233 #, c-format msgid "Could not shutdown `%s': application not loaded\n" msgstr "Không thể tắt « %s »: chưa nạp ứng dụng\n" #: src/server/core.c:244 #, c-format msgid "Could not shutdown application `%s': not initialized\n" msgstr "Không thể tắt ứng dụng « %s »: chưa được sơ khởi\n" #: src/server/core.c:254 #, c-format msgid "Could not find '%s%s' method in library `%s'.\n" msgstr "Không tìm thấy phương pháp « %s%s » trong thư viện « %s ».\n" #: src/server/core.c:400 #, c-format msgid "Could not release %p: service not loaded\n" msgstr "Không thể giải phóng %p: chưa nạp dịch vụ\n" #: src/server/core.c:509 #, c-format msgid "Could not properly shutdown application `%s'.\n" msgstr "Không thể tắt đúng ứng dụng « %s ».\n" #: src/server/core.c:650 #, c-format msgid "Could not properly unload service `%s'!\n" msgstr "Không thể hủy nạp đúng dịch vụ « %s ».\n" #: src/util/crypto/hostkey_gcrypt.c:907 #, c-format msgid "RSA signature verification failed at %s:%d: %s\n" msgstr "Lỗi thẩm tra chữ ký RSA tại %s:%d: %s\n" #: src/util/crypto/locking_gcrypt.c:80 #, c-format msgid "libgcrypt has not the expected version (version %s is required).\n" msgstr "libgcrypt không có phiên bản mong đợi (yêu cầu phiên bản %s).\n" #: src/util/os/statuscalls.c:197 src/util/os/statuscalls.c:342 #, c-format msgid "Failed to parse interface data from `%s'.\n" msgstr "Lỗi phân tích dữ liệu giao diện từ « %s ».\n" #: src/util/os/statuscalls.c:388 src/util/os/statuscalls.c:398 #, c-format msgid "No network interfaces defined in configuration section `%s' under `%s'!\n" msgstr "Không có giao diện mạng được xác định trong cấu hình phần « %s » dưới « %s ».\n" #: src/util/os/osconfig.c:128 msgid "Setting open descriptor limit not supported.\n" msgstr "Không hỗ trợ chức năng đặt giới hạn bộ mô tả còn mở.\n" #: src/util/os/osconfig.c:403 #, c-format msgid "Command `%s' failed with error code %u\n" msgstr "Câu lệnh « %s » đã thất bại với mã lỗi %u\n" #: src/util/os/user.c:136 src/util/os/user.c:181 #, c-format msgid "Cannot obtain information about user `%s': %s\n" msgstr "Không thể lấy thông tin về người dùng « %s »: %s\n" #: src/util/os/user.c:137 msgid "No such user" msgstr "Không có người dùng như vậy" #: src/util/os/user.c:152 #, c-format msgid "Cannot change user/group to `%s': %s\n" msgstr "Không thể thay đổi người dùng/nhóm thành « %s »: %s\n" #: src/util/os/priority.c:78 #, c-format msgid "Invalid process priority `%s'\n" msgstr "Mức ưu tiên tiến trình không hợp lê « %s ».\n" #: src/util/os/semaphore.c:223 #, c-format msgid "Can't create semaphore: %i" msgstr "Không thể tạo cờ hiệu : %i" #: src/util/os/dso.c:59 #, c-format msgid "Initialization of plugin mechanism failed: %s!\n" msgstr "Lỗi sơ khởi cơ chế phần bổ sung: %s\n" #: src/util/os/dso.c:120 #, c-format msgid "`%s' failed for library `%s' with error: %s\n" msgstr "« %s » thất bại cho thư viện « %s » với lỗi: %s\n" #: src/util/os/dso.c:162 #, c-format msgid "`%s' failed to resolve method '%s' with error: %s\n" msgstr "« %s » không giải quyết được phương pháp « %s », với lỗi: %s\n" #: src/util/os/cpustatus.c:466 msgid "Cannot query the CPU usage (Windows NT).\n" msgstr "Không hỏi được sự sử dụng CPU (Windows NT).\n" #: src/util/os/cpustatus.c:489 msgid "Cannot query the CPU usage (Win 9x)\n" msgstr "Không hỏi được sự sử dụng CPU (Windows 9x).\n" #: src/util/network_client/tcpio.c:98 src/util/network_client/tcpio.c:144 msgid "Could not find valid value for HOST in section NETWORK." msgstr "Không tìm thấy giá trị đúng cho MÁY trong phần MẠNG." #: src/util/network_client/tcpio.c:113 #, c-format msgid "Syntax error in configuration entry HOST in section NETWORK: `%s'" msgstr "Gặp lỗi cú pháp trong mục nhập cấu hình MÁY trong phần MẠNG: « %s »" #: src/util/network_client/tcpio.c:302 #, c-format msgid "Cannot connect to %s:%u: %s\n" msgstr "Không thể kết nối tới %s:%u: %s\n" #: src/util/network_client/tcpio.c:340 #, c-format msgid "Error connecting to %s:%u\n" msgstr "Gặp lỗi khi kết nối tới %s:%u\n" #: src/util/network_client/tcpio.c:351 #, c-format msgid "Failed to connect to %s:%u in %ds\n" msgstr "Lỗi kết nối tới %s:%u trong %ds\n" #: src/util/network_client/tcpio.c:516 #, c-format msgid "`%s' failed, reply invalid!\n" msgstr "« %s » không thành công, đáp ứng không hợp lệ.\n" #: src/util/network/select.c:310 msgid "Received malformed message (too small) from connection. Closing.\n" msgstr "Nhận được thông báo bị hỏng (quá nhỏ) từ kết nối. Đang đóng.\n" #: src/util/network/select.c:483 #, c-format msgid "select listen socket for `%s' not valid!\n" msgstr "sai chọn ổ cắm lắng nghe cho « %s »\n" #: src/util/network/ipcheck.c:106 src/util/network/ipcheck.c:136 #: src/util/network/ipcheck.c:186 src/util/network/ipcheck.c:211 #: src/util/network/ipcheck.c:219 #, c-format msgid "Invalid format for IP: `%s'\n" msgstr "Địa chỉ IP định dạng sai: %s\n" #: src/util/network/ipcheck.c:167 #, c-format msgid "Invalid network notation ('/%d' is not legal in IPv4 CIDR)." msgstr "Ký hiệu mạng sai (« /%d » không hợp lệ trong CIDR IPv4)." #: src/util/network/ipcheck.c:267 #, c-format msgid "Invalid network notation (does not end with ';': `%s')\n" msgstr "Ký hiệu mạng sai (không kết thúc với « ; »: « %s »)\n" #: src/util/network/ipcheck.c:300 #, c-format msgid "Wrong format `%s' for netmask: %s\n" msgstr "Mặt nạ mạng có định dạng sai « %s »: %s\n" #: src/util/network/ipcheck.c:314 #, c-format msgid "Wrong format `%s' for network: %s\n" msgstr "Mạng có định dạng sai « %s »: %s\n" #: src/util/network/ip.c:209 #, c-format msgid "Could not find interface `%s' using `%s', trying to find another interface.\n" msgstr "Không tìm thấy giao diện « %s » trong « %s », đang thử tìm giao diện khác.\n" #: src/util/network/ip.c:287 #, c-format msgid "Could not find an IP address for interface `%s'.\n" msgstr "Không tìm thấy một địa chỉ IP cho giao diện « %s ».\n" #: src/util/network/ip.c:297 #, c-format msgid "" "There is more than one IP address specified for interface `%s'.\n" "GNUnet will use %u.%u.%u.%u.\n" msgstr "" "Có vài địa chỉ IP chỉ ra cho giao diện « %s ».\n" "GNUnet sẽ dùng %u.%u.%u.%u.\n" #: src/util/network/ip.c:319 #, c-format msgid "Could not resolve `%s' to determine our IP address: %s\n" msgstr "Không thể giải quyết « %s » để quyết định địa chỉ IP của chúng ta: %s\n" #: src/util/network/ip.c:352 #, c-format msgid "GNUnet now uses the IP address %u.%u.%u.%u.\n" msgstr "GNUnet bây giờ sử dụng địa chỉ IP %u.%u.%u.%u.\n" #: src/util/error/error.c:117 #, c-format msgid "" "\n" "Press any key to continue\n" msgstr "" "\n" "Hãy bấm bất cứ phím nào để tiếp tục.\n" #: src/util/error/error.c:190 src/util/error/error.c:225 msgid "DEBUG" msgstr "GỠ LỖI" #: src/util/error/error.c:192 src/util/error/error.c:227 msgid "STATUS" msgstr "TRẠNG THÁI" #: src/util/error/error.c:194 src/util/error/error.c:231 msgid "WARNING" msgstr "CẢNH BÁO" #: src/util/error/error.c:196 src/util/error/error.c:233 msgid "ERROR" msgstr "LỖI" #: src/util/error/error.c:198 src/util/error/error.c:235 msgid "FATAL" msgstr "NGHIÊM TRỌNG" #: src/util/error/error.c:200 src/util/error/error.c:237 msgid "USER" msgstr "NGƯỜI DÙNG" #: src/util/error/error.c:202 src/util/error/error.c:239 msgid "ADMIN" msgstr "QUẢN TRỊ" #: src/util/error/error.c:204 src/util/error/error.c:241 msgid "DEVELOPER" msgstr "NHÀ PHÁT TRIỂN" #: src/util/error/error.c:206 src/util/error/error.c:243 msgid "REQUEST" msgstr "YÊU CẦU" #: src/util/error/error.c:208 src/util/error/error.c:245 msgid "BULK" msgstr "HÀNG LOẠT" #: src/util/error/error.c:210 src/util/error/error.c:247 msgid "IMMEDIATE" msgstr "NGAY" #: src/util/error/error.c:212 msgid "ALL" msgstr "TẤT CẢ" #: src/util/error/error.c:229 msgid "INFO" msgstr "TIN" #: src/util/error/error.c:248 msgid "NOTHING" msgstr "KHÔNG GÌ" #: src/util/disk/storage.c:203 #, c-format msgid "`%s' failed for drive `%s': %u\n" msgstr "« %s » thất bại cho ổ đĩa « %s »: %u\n" #: src/util/disk/storage.c:543 #, c-format msgid "Expected `%s' to be a directory!\n" msgstr "Mong đợi « %s » là một thư mục.\n" #: src/util/threads/mutex.c:146 src/util/threads/semaphore.c:168 #: src/util/threads/pthread.c:157 #, c-format msgid "Real-time delay violation (%llu ms) at %s:%u\n" msgstr "Xâm phạm khoảng đợi thời gian thực (%llu miligiây) tại %s:%u\n" #: src/util/threads/mutex.c:155 src/util/threads/mutex.c:201 #, c-format msgid "Invalid argument for `%s'.\n" msgstr "Đối số không hợp lệ cho « %s ».\n" #: src/util/threads/mutex.c:160 #, c-format msgid "Deadlock due to `%s'.\n" msgstr "Bế tắc do « %s ».\n" #: src/util/threads/mutex.c:187 #, c-format msgid "Lock aquired for too long (%llu ms) at %s:%u\n" msgstr "Khoá đặt được quá lâu (%llu miligiây) tại %s:%u\n" #: src/util/threads/mutex.c:207 #, c-format msgid "Permission denied for `%s'.\n" msgstr "Không đủ quyền cho « %s ».\n" #: src/util/threads/pthread.c:169 src/util/threads/pthread.c:176 #: src/util/threads/pthread.c:182 src/util/threads/pthread.c:276 #, c-format msgid "`%s' failed with error code %s: %s\n" msgstr "« %s » thất bại với mã lỗi %s: %s\n" #: src/util/threads/pthread.c:188 src/util/threads/pthread.c:286 #, c-format msgid "`%s' failed with error code %d: %s\n" msgstr "« %s » thất bại với mã lỗi %d: %s\n" #: src/util/loggers/file.c:236 #, c-format msgid "Failed to open log-file `%s': %s\n" msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n" #: src/util/loggers/file.c:257 msgid "GNUnet error log" msgstr "Bản ghi lỗi GNUnet" #: src/util/loggers/file.c:278 src/util/loggers/file.c:296 #: src/include/gnunet_util_error.h:252 src/include/gnunet_util_error.h:259 #: src/include/gnunet_util_error.h:266 src/include/gnunet_util_error.h:273 #, c-format msgid "`%s' failed at %s:%d in %s with error: %s\n" msgstr "« %s » thất bại tại %s:%d trong %s với lỗi: %s\n" #: src/util/loggers/memory.c:72 msgid "Out of memory (for logging)" msgstr "Tràn bộ nhớ (để ghi sự kiện)" #: src/util/getopt/getopt.c:684 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: tùy chọn « %s » là mơ hồ\n" #: src/util/getopt/getopt.c:710 #, c-format msgid "%s: option `--%s' does not allow an argument\n" msgstr "%s: tùy chọn « --%s » không cho phép đối số\n" #: src/util/getopt/getopt.c:716 #, c-format msgid "%s: option `%c%s' does not allow an argument\n" msgstr "%s: tùy chọn « %c%s » không cho phép đối số\n" #: src/util/getopt/getopt.c:737 src/util/getopt/getopt.c:909 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: tùy chọn « %s » cần thiết đối số\n" #: src/util/getopt/getopt.c:767 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: không nhận ra tùy chọn « --%s »\n" #: src/util/getopt/getopt.c:771 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: không nhận ra tùy chọn « %c%s »\n" #: src/util/getopt/getopt.c:797 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: tùy chọn không được phép -- %c\n" #: src/util/getopt/getopt.c:799 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: tùy chọn không hợp lệ -- %c\n" #: src/util/getopt/getopt.c:828 src/util/getopt/getopt.c:958 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: tùy chọn cần thiết đối số -- %c\n" #: src/util/getopt/getopt.c:876 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: tùy chọn « -W %s » là mơ hồ\n" #: src/util/getopt/getopt.c:894 #, c-format msgid "%s: option `-W %s' does not allow an argument\n" msgstr "%s: tùy chọn « -W %s » không cho phép đối số\n" #: src/util/getopt/setoption.c:59 #, c-format msgid "Setting option `%s' in section `%s' to `%s' when processing command line option `%s' was denied.\n" msgstr "Bị từ chối đặt tùy chọn « %s » trong phần « %s » thành « %s » khi xử lý tùy chọn dòng lệnh « %s ».\n" #: src/util/getopt/setoption.c:138 src/util/getopt/setoption.c:155 #, c-format msgid "You must pass a number to the `%s' option.\n" msgstr "Phải gửi một con số cho tùy chọn « %s ».\n" #: src/util/getopt/printhelp.c:49 #, c-format msgid "Arguments mandatory for long options are also mandatory for short options.\n" msgstr "Mọi đối số bắt buộc phải sử dụng với tùy chọn dài cũng bắt buộc với tùy chọn ngắn.\n" #: src/util/boot/startup.c:255 #, c-format msgid "Failed to run %s: %s %d\n" msgstr "Lỗi chạy %s: %s %d\n" #: src/util/config/config.c:295 #, c-format msgid "Syntax error in configuration file `%s' at line %d.\n" msgstr "Gặp lỗi cú pháp trong tập tin cấu hình « %s » tại dòng %d.\n" #: src/util/config/config.c:544 #, c-format msgid "Setting option `%s' in section `%s' to value `%s' was refused.\n" msgstr "Bị từ chối đặt tùy chọn « %s » trong phần « %s » thành « %s ».\n" #: src/util/config/config.c:592 #, c-format msgid "Configuration value '%llu' for '%s' in section '%s' is out of legal bounds [%llu,%llu]\n" msgstr "Giá tri cấu hình « %llu » cho « %s » trong phần « %s » ở ngoại phạm vi được phép [%llu,%llu]\n" #: src/util/config/config.c:602 #, c-format msgid "Configuration value '%s' for '%s' in section '%s' should be a number\n" msgstr "Giá trị cấu hình « %s » cho « %s » trong phần « %s » nên là con số\n" #: src/util/config/config.c:688 #, c-format msgid "Configuration value '%s' for '%s' in section '%s' is not in set of legal choices\n" msgstr "Giá trị cấu hình « %s » cho « %s » trong phần « %s » không phải nằm trong tập hợp các sự chọn được phép\n" #: src/util/string/string.c:55 msgid "ms" msgstr "mg" #: src/util/string/string.c:61 msgid "s" msgstr "g" #: src/util/string/string.c:65 msgid "m" msgstr "p" #: src/util/string/string.c:69 msgid "h" msgstr "g" #: src/util/string/string.c:73 msgid " days" msgstr " ngày" #: src/util/string/string.c:89 msgid "b" msgstr "b" #: src/util/string/string.c:95 msgid "KiB" msgstr "KiB" #: src/util/string/string.c:99 msgid "MiB" msgstr "MiB" #: src/util/string/string.c:103 msgid "GiB" msgstr "GiB" #: src/util/string/string.c:107 msgid "TiB" msgstr "TiB" #: src/util/string/string.c:226 msgid "Failed to expand `$HOME': environment variable `HOME' not set" msgstr "Lỗi mở rộng biến môi trường « $HOME »: chưa đặt biến môi trường « HOME »" #: src/include/gnunet_util_getopt.h:154 msgid "print this help" msgstr "hiển thị trợ giúp này" #: src/include/gnunet_util_getopt.h:163 msgid "print the version number" msgstr "hiển thị số thứ tự phiên bản" #: src/include/gnunet_util_getopt.h:169 msgid "configure logging to use LOGLEVEL" msgstr "cấu hình chức năng ghi sự kiện để dùng CẤP_GHI_LƯU" #: src/include/gnunet_util_getopt.h:175 msgid "be verbose" msgstr "xuất chi tiết" #: src/include/gnunet_util_getopt.h:181 msgid "use configuration file FILENAME" msgstr "dùng tập tin cấu hình TÊN_TẬP_TIN" #: src/include/gnunet_util_getopt.h:187 msgid "specify host on which gnunetd is running" msgstr "ghi rõ máy trên đó chạy trình nền gnunetd" #: src/include/gnunet_util_error.h:221 src/include/gnunet_util_error.h:223 #: src/include/gnunet_util_error.h:229 src/include/gnunet_util_error.h:245 #, c-format msgid "Internal error: assertion failed at %s:%d in %s.\n" msgstr "Lỗi nội bộ : khẳng định không thành công tại %s:%d trong %s.\n" #: src/include/gnunet_util_error.h:239 #, c-format msgid "External protocol violation: assertion failed at %s:%d in %s (no need to panic, we can handle this).\n" msgstr "Xâm phạm giao thức bên ngoài: khẳng định không thành công tại %s:%d trong %s (đừng lo, chúng ta có thể sửa chữa).\n" #: src/include/gnunet_util_error.h:280 src/include/gnunet_util_error.h:287 #, c-format msgid "`%s' failed on file `%s' at %s:%d in %s with error: %s\n" msgstr "« %s » thất bại ở tập tin « %s » tại %s:%d trong %s với lỗi: %s\n" #: contrib/config-daemon.scm:39 contrib/config-client.scm:44 msgid "No help available." msgstr "Không có trợ giúp." #: contrib/config-daemon.scm:52 contrib/config-client.scm:57 msgid "Prompt for development and/or incomplete code" msgstr "Nhắc cho mã còn phát triển hoặc mã chưa hoàn tất" #: contrib/config-daemon.scm:54 contrib/config-client.scm:59 msgid "" "If EXPERIMENTAL is set to NO, options for experimental code are not shown. If in doubt, use NO.\n" "\n" "Some options apply to experimental code that maybe in a state of development where the functionality, stability, or the level of testing is not yet high enough for general use. These features are said to be of \"alpha\" quality. If a feature is currently in alpha, uninformed use is discouraged (since the developers then do not fancy \"Why doesn't this work?\" type messages).\n" "\n" "However, active testing and qualified feedback of these features is always welcome. Users should just be aware that alpha features may not meet the normal level of reliability or it may fail to work in some special cases. Bug reports are usually welcomed by the developers, but please read the documents and and use for how to report problems." msgstr "" "Nếu EXPERIMENTAL (thực nghiệm) được đắt thành NO (không), thì không hiển thị các tùy chọn về mã còn thực nghiệm. Chưa chắc thì dùng NO.\n" "\n" "Một số tùy chọn nào đó có áp dụng cho mã còn thực nghiệm mà có thể ở một tình trạng phát triển chưa có chức năng, tính ổn định hoặc mức thử đủ cao cho người dùng chung. Những tính này này được diễn tả như mức chất lượng « alpha ». Nếu một tính năng hiện thời alpha, chúng tôi can ngăn người không am hiểu dùng nó (vì các nhà phát triển không muốn nhận thông điệp kiểu « Tại sao tính năng này không hoạt động được? »).\n" "\n" "Tuy nhiên, chúng tôi mời người am hiểu thử và phản hồi về tính năng alpha. Chỉ ghi chú rằng tính năng alpha có thể không đáng tin cây hoặc không hoạt động được trong một số trường hợp đặc biệt. Cũng mời bạn gửi báo cáo lỗi, miễn là bạn cũng đọc tài liệu Đọc Đi và Hỏi Đáp (tiếng Anh) , và xem để tìm biết thông báo vấn đề như thế nào." #: contrib/config-daemon.scm:69 contrib/config-client.scm:74 msgid "Show options for advanced users" msgstr "Hiển thị các tùy chọn cho người dùng cấp cao" #: contrib/config-daemon.scm:71 contrib/config-client.scm:76 msgid "These are options that maybe difficult to understand for the beginner. These options typically refer to features that allow tweaking of the installation. If in a hurry, say NO." msgstr "Các tùy chọn này có thể khó hiểu cho người bắt đầu. Chúng thường tham chiếu đến tính năng cho phép điều chỉnh bản cài đặt. Chưa chắc hoặc chưa quan tâm đến phần mềm này thì nói NO (không)." #: contrib/config-daemon.scm:82 contrib/config-client.scm:87 msgid "Show rarely used options" msgstr "Hiển thị các tùy chọn ít dùng" #: contrib/config-daemon.scm:84 contrib/config-client.scm:89 msgid "These are options that hardly anyone actually needs. If you plan on doing development on GNUnet, you may want to look into these. If in doubt or in a hurry, say NO." msgstr "Các tùy chọn này thường không có ích cho người dùng, trừ khi họ định phát triển qua GNUnet. Chưa chắc thì nói NO (không)." #: contrib/config-daemon.scm:95 contrib/config-client.scm:100 msgid "Meta-configuration" msgstr "Siêu cấu hình" #: contrib/config-daemon.scm:96 contrib/config-client.scm:101 msgid "Which level of configuration should be available" msgstr "Cấp cấu hình nào nên sẵn sàng" #: contrib/config-daemon.scm:113 msgid "Full pathname of GNUnet HOME directory" msgstr "Tên đường dẫn đầy đủ đến thư mục HOME GNUnet" #: contrib/config-daemon.scm:115 msgid "This gives the root-directory of the GNUnet installation. Make sure there is some space left in that directory. :-) Users inserting or indexing files will be able to store data in this directory up to the (global) quota specified below. Having a few gigabytes of free space is recommended." msgstr "" "GIá trị này đưa ra thư mục gốc của bản cài đặt GNUnet. Hãy kiểm tra xem có sức chứa còn lại trong thư mục đó. :-)\n" "Những người dùng chèn hoặc đánh chỉ mục các tập tin thì có thể cất giữ dữ liệu trong thư mục này đến hạn ngạch (toàn cục) được ghi rõ bên dưới. Vì thế khuyên cung cấp vài GB sức chứa trống." #: contrib/config-daemon.scm:128 msgid "Full pathname of GNUnet directory for file-sharing data" msgstr "Tên đường dẫn đầy đủ đến thư mục GNUnet chứa dữ liệu chia sẻ tập tin" #: contrib/config-daemon.scm:140 msgid "Full pathname to the directory with the key-value database" msgstr "Đường dẫn đầy đủ đến thư mục chứa cơ sở dữ liệu giá trị khoá (key-value)" #: contrib/config-daemon.scm:141 msgid "Note that the kvstore is currently not used." msgstr "Ghi chú rằng kvstore hiện thời không dùng." #: contrib/config-daemon.scm:152 msgid "Full pathname of GNUnet directory for indexed files symbolic links" msgstr "Tên đường dẫn đầy đủ đến thư mục GNUnet chứa các liên kết tượng trưng tới tập tin đánh chỉ mục" #: contrib/config-daemon.scm:164 msgid "How many minutes should peer advertisements last?" msgstr "Quảng cáo đồng đẳng nên chạy trong bao nhiêu phút?" #: contrib/config-daemon.scm:166 msgid "How many minutes is the current IP valid? (GNUnet will sign HELLO messages with this expiration timeline. If you are on dialup, 60 (for 1 hour) is suggested. If you are having a static IP address, you may want to set this to a large value (say 14400). The default is 1440 (1 day). If your IP changes periodically, you will want to choose the expiration to be smaller than the frequency with which your IP changes." msgstr "" "Địa chỉ IP hiện thời còn hợp lệ trong bao nhiêu phút?\n" "(GNUnet sẽ ký các thông báo xin chào HELLO bằng thời biểu hết hạn này.\n" "Nếu bạn có kết nối kiểu quay số, đề nghị giá trị 60 (1 giờ).\n" "Bạn có địa chỉ IP tĩnh thì một giá trị lớn hơn (v.d. 14400) có thể tốt hơn.\n" "Mặc định là 1440 (1 ngày).\n" "Nếu bạn có một địa chỉ IP thay đổi theo định kỳ, khoảng đến khi hết hạn\n" "nên nhỏ hơn khoảng giữa hai lần thay đổi địa chỉ IP." #: contrib/config-daemon.scm:177 msgid "Where can GNUnet find an initial list of peers?" msgstr "GNUnet có thể tìm một danh sách đầu tiên các đồng đẳng ở đâu?" #: contrib/config-daemon.scm:179 msgid "" "GNUnet can automatically update the hostlist from the web. While GNUnet internally communicates which hosts are online, it is typically a good idea to get a fresh hostlist whenever gnunetd starts from the WEB. By setting this option, you can specify from which server gnunetd should try to download the hostlist. The default should be fine for now.\n" "\t\t\n" "The general format is a list of space-separated URLs. Each URL must have the format http://HOSTNAME/FILENAME\n" "\t\t\n" "If you want to setup an alternate hostlist server, you must run a permanent node and \"cat data/hosts/* > hostlist\" every few minutes to keep the list up-to-date.\n" "\t\t\n" "If you do not specify a HOSTLISTURL, you must copy valid hostkeys to data/hosts manually." msgstr "" "GNUnet có khả năng tự động cập nhật danh sách các máy từ Web. Dù GNUnet thông báo nội bộ những máy nào đang trực tuyến, thường có ích khi lấy từ Web một danh sách máy mới khi nào trình nền gnunetd khởi chạy. Bật tùy chọn này thì bạn cũng có thể ghi rõ gnunetd nên tải danh sách máy xuống máy phục vụ nào. Không thì giá trị mặc định nên thích hợp.\n" "\n" "Định dạng chung là một danh sách các địa chỉ URL định giới bằng dấu cách. Mỗi URL phải có dạng: http://tên_máy/tên_tập_tin\n" "\n" "Muốn thiết lập một máy phục vụ khác để chứa danh sách máy thì bạn cần phải chạy một nút bền bỉ và chạy câu lệnh « cat data/hosts/* > hostlist » mỗi vài phút để cập nhật danh sách đó.\n" "\n" "Không ghi rõ một địa chỉ HOSTLISTURL (danh sách các máy theo URL) thì bạn cần phải tự sao chép vào « data/hosts » các khoá máy (hostkeys) hợp lệ." #: contrib/config-daemon.scm:196 msgid "HTTP Proxy Server" msgstr "Máy phục vụ ủy nhiệm HTTP" #: contrib/config-daemon.scm:198 msgid "If you have to use a proxy for outbound HTTP connections, specify the proxy configuration here. Default is no proxy." msgstr "Nếu bạn cần phải sử dụng một máy phục vụ ủy nhiệm cho kết nối HTTP gửi đi, hãy ghi rõ ở đây cấu hình ủy nhiệm. Giá trị mặc định là không dùng ủy nhiệm." #: contrib/config-daemon.scm:210 msgid "Name of the directory where gnunetd should store contact information about peers" msgstr "Tên của thư mục vào đó trình nền gnunetd nên lưu thông tin liên lạc về các đồng đẳng" #: contrib/config-daemon.scm:212 msgid "Unless you want to share the directory directly using a webserver, the default is most likely just fine." msgstr "Nếu bạn không muốn chia sẻ thư mục này một cách trực tiếp qua máy phục vụ Web, giá trị mặc định thường là đúng." #: contrib/config-daemon.scm:238 contrib/config-client.scm:144 msgid "How long should logs be kept?" msgstr "Có nên giữ bản ghi bao lâu?" #: contrib/config-daemon.scm:240 contrib/config-client.scm:146 msgid "How long should logs be kept? If you specify a value greater than zero, a log is created each day with the date appended to its filename. These logs are deleted after $KEEPLOG days.\tTo keep logs forever, set this value to 0." msgstr "Bản ghi nên được giữ bao lâu? Nếu bạn ghi rõ một giá trị hơn số không, một bản ghi sẽ được tạo hàng ngày, với tên tập tin phụ thêm ngày. Các bản ghi này bị xoá sau $KEEPLOG ngày. Để giữ hoài các bản ghi, đặt giá trị này thành 0." #: contrib/config-daemon.scm:251 msgid "What maximum number of open file descriptors should be requested from the OS?" msgstr "Số tối đa nào các bộ mô tả tập tin còn mở nên được yêu cầu từ hệ điều hành?" #: contrib/config-daemon.scm:253 msgid "The default of 1024 should be fine for most systems. If your system can support more, increasing the number might help support additional clients on machines with plenty of bandwidth. For embedded systems, a smaller number might be acceptable. A value of 0 will leave the descriptor limit untouched. This option is mostly for OS X systems where the default is too low. Note that if gnunetd cannot obtain the desired number of file descriptors from the operating system, it will print a warning and try to run with what it is given." msgstr "Giá trị mặc định 1024 nên thích hợp với phần lớn hệ thống. Nếu hệ thống của bạn có khả năng quản lý một số lớn hơn, tăng dải thông có thể giúp hỗ trợ thêm trình khách trên máy có đủ dải thông. Đối với hệ thống nhúng, một số nhỏ hơn có thể thích hợp. Giá trị 0 sẽ không sửa đổi giới hạn bộ mô tả. Tùy chọn này thường dành cho hệ điều hành Mac OSX, mà có giá trị mặc định quá nhỏ. Ghi chú rằng nếu gnunetd không thể lấy từ hệ điều hành số bộ mô tả đã muốn, nó sẽ in ra một cảnh báo, và thử chạy với số đã lấy được." #: contrib/config-daemon.scm:264 msgid "Where should gnunetd write the logs?" msgstr "gnunetd nên ghi các bản ghi vào đâu?" #: contrib/config-daemon.scm:276 msgid "Enable for extra-verbose logging." msgstr "Bật để ghi lưu rất chi tiết." #: contrib/config-daemon.scm:288 contrib/config-client.scm:169 msgid "Logging" msgstr "Ghi lưu" #: contrib/config-daemon.scm:289 contrib/config-client.scm:170 msgid "Specify which system messages should be logged how" msgstr "Ghi rõ những thông báo hệ thống nào nên được ghi lưu như thế nào" #: contrib/config-daemon.scm:294 contrib/config-client.scm:174 msgid "Logging of events for users" msgstr "Ghi lưu sự kiện cho người dùng" #: contrib/config-daemon.scm:295 contrib/config-client.scm:175 msgid "Logging of events for the system administrator" msgstr "Ghi lưu sự kiện cho quản trị hệ thống" #: contrib/config-daemon.scm:307 msgid "Where should gnunetd write the PID?" msgstr "gnunetd nên ghi mã số tiến trình (PID) vào đâu?" #: contrib/config-daemon.scm:308 msgid "The default is no longer /var/run/gnunetd.pid since we could not delete the file on shutdown at that location." msgstr "Giá trị mặc định không còn là tập tin « /var/run/gnunetd.pid » lại vì ở vị trí đó không thể xoá tập tin vào lúc tắt máy." #: contrib/config-daemon.scm:320 msgid "As which user should gnunetd run?" msgstr "gnunetd nên chạy với tư cách người dùng nào?" #: contrib/config-daemon.scm:322 msgid "Empty means \"current user\". On computer startup, it is root/SYSTEM. Under Windows, this setting affects the creation of a new system service only." msgstr "Bỏ trống có nghĩa là « người dùng hiện thời ». Vào lúc mở máy, nó là « root/SYSTEM ». Dưới Windows, thiết lập này chỉ ảnh hưởng đến việc tạo dịch vụ hệ thống mới." #: contrib/config-daemon.scm:335 msgid "Should gnunetd be automatically started when the system boots?" msgstr "Có nên tự động khởi chạy gnunetd khi hệ thống khởi động không?" #: contrib/config-daemon.scm:336 msgid "Set to YES if gnunetd should be automatically started on boot. If this option is set, gnunet-setup will install a script to start the daemon upon completion. This option may not work on all systems." msgstr "Đặt thành YES (có) nếu trình nền gnunetd nên được tự động khởi chạy khi khởi động hệ thống. Bật tùy chọn này thì tiến trình thiết lập gnunet-setup, một khi hoàn tất, sẽ cài đặt một văn lệnh để khởi chạy trình nền. Tùy chọn này có lẽ không hoạt động được trên mọi hệ thống." #: contrib/config-daemon.scm:348 msgid "Which transport mechanisms should GNUnet use?" msgstr "GNUnet nên dùng những cơ chế truyền tải nào?" #: contrib/config-daemon.scm:350 msgid "" "Use space-separated list of the modules, e.g. \"udp smtp tcp\". The available transports are udp, tcp, http, smtp, tcp6, udp6 and nat.\n" "\t\t\n" "Loading the 'nat' and 'tcp' modules is required for peers behind NAT boxes that cannot directly be reached from the outside. Peers that are NOT behind a NAT box and that want to *allow* peers that ARE behind a NAT box to connect must ALSO load the 'nat' module. Note that the actual transfer will always be via tcp initiated by the peer behind the NAT box. The nat transport requires the use of tcp, http, smtp and/or tcp6 in addition to nat itself." msgstr "" "Hãy dùng một danh sách các mô-đun định giới bằng dấu cách, v.d. « udp smtp tcp ». Các truyền tải sẵn sàng là: udp, tcp, http, smtp, tcp6, udp6, nat.\n" "\n" "Đồng đẳng nằm sau bộ định tuyến NAT (thì không thể được tới trực tiếp từ bên ngoài) cũng cần thiết hai mô-đun « nat » và « tcp » được nạp sẵn.\n" "Đồng đẳng không phải nằm sau NAT mà muốn cho phép kết nối từ đồng đẳng nằm sau NAT thì cũng phải nạp sẵn mô-đun « nat ».\n" "\n" "Ghi chú rằng tiến trình truyền thật luôn luôn chạy qua TCP và được khởi chạy bởi đồng đẳng nằm sau NAT. Truyền tải nat cần thiết dùng các mô-đun tcp, http, smtp và/hay tcp6, thêm vào chính nó." #: contrib/config-daemon.scm:364 msgid "Which applications should gnunetd support?" msgstr "gnunetd nên hỗ trợ những ứng dụng nào?" #: contrib/config-daemon.scm:366 msgid "" "Whenever this option is changed, you MUST run gnunet-update. Currently, the available applications are:\n" "\n" "advertising: advertises your peer to other peers. Without it, your peer will not participate in informing peers about other peers. You should always load this module.\n" "\n" "getoption: allows clients to query gnunetd about the values of various configuration options. Many tools need this. You should always load this module.\n" "\n" "stats: allows tools like gnunet-stats and gnunet-gtk to query gnunetd about various statistics. This information is usually quite useful to diagnose errors, hence it is recommended that you load this module.\n" "\n" "traffic: keeps track of how many messages were recently received and transmitted. This information can then be used to establish how much cover traffic is currently available. The amount of cover traffic becomes important if you want to make anonymous requests with an anonymity level that is greater than one. It is recommended that you load this module.\n" "\n" "fs: needed for anonymous file sharing. You should always load this module.\n" "\n" "chat: broadcast chat (demo-application, ALPHA quality).\tRequired for gnunet-chat. Note that the current implementation of chat is not considered to be secure.\n" "\n" "tbench: benchmark transport performance. Required for gnunet-tbench. Note that tbench allows other users to abuse your resources.\n" "\n" "tracekit: topology visualization toolkit. Required for gnunet-tracekit. Note that loading tracekit will make it slightly easier for an adversary to compromise your anonymity." msgstr "" "Khi nào tùy chọn thay đổi, bạn CẦN PHẢI chạy tiến trình cập nhật gnunet-update. Hiện thời có sẵn những mô-đun này:\n" "\n" " • advertising\t\tQuảng cáo đồng đẳng của bạn cho các đồng đẳng khác. Không có mô-đun này thì đồng đẳng của bạn sẽ không cho đồng đẳng này biết về đồng đẳng khác. Lúc nào bạn cũng nên nạp mô-đun này.\n" "\n" " • getoption\t\tCho phép trình khách hỏi trình nền gnunetd về giá trị của các tùy chọn cấu hình khác nhau. Nhiều công cụ yêu cầu mô-đun này: lúc nào bạn cũng nên nạp nó.\n" "\n" " • stats\t\t\tCho phép công cụ (như gnunet-stats và gnunet-gtk) hỏi trình nền gnunetd về các thống kê khác nhau. Thông tin này thường hơi hữu ích để chẩn đoán lỗi, vì vậy khuyên bạn nạp mô-đun này.\n" "\n" " • traffic\t\t\tTheo dõi bao nhiêu tin nhắn vừa được nhận và gửi. Thông tin này có thể được dùng để tính bao nhiêu trọng tải che hiện thời sẵn sàng. Số lượng trọng tải che trở thành quan trọng nếu bạn muốn làm yêu cầu nặc danh ở mức nặc danh hơn một. Khuyên bạn nạp mô-đun này.\n" "\n" " • fs\t\t\t\tCần thiết để chia sẻ tập tin một cách nặc danh. Lúc nào bạn cũng nên nạp mô-đun này.\n" "\n" " • chat\t\t\tTruyền cuộc trò chuyện (mô-đun minh hoạ, vấn chất lượn ALPHA). Cần thiết cho tiến trình trò chuyện gnunet-chat. Ghi chú rằng bản thực hiện hiện thời của mô-đun này chưa an toàn.\n" "\n" " • tbench\t\t\tKiểm chuẩn hiệu suất truyền tải. Cần thiết cho tiến trình kiểm chuẩn gnunet-tbench. Ghi chú rằng mô-đun này cho phép người khác lạm dụng các tài nguyên của bạn.\n" "\n" " • tracekit\t\tBộ công cụ hiển thị địa hình. Cần thiết cho bộ công cụ tìm đường gnunet-tracekit. Ghi chú rằng mô-đun này cho người khác xâm nhập sự nặc danh của bạn một cách dễ hơn một ít." #: contrib/config-daemon.scm:395 msgid "Disable client-server connections" msgstr "Tắt các kết nối máy khách-phục vụ" #: contrib/config-daemon.scm:396 msgid "This option can be used to tell gnunetd not to open the client port. When run like this, gnunetd will participate as a peer in the network but not support any user interfaces. This maybe useful for headless systems that are never expected to have end-user interactions. Note that this will also prevent you from running diagnostic tools like gnunet-stats!" msgstr "Tùy chọn này có thể được dùng để bảo trình nền gnunetd không mở cổng khách. Khi chạy như thế, gnunetd sẽ tham gia với tư cách đồng đẳng trong mạng, mà không hỗ trợ giao diện người dùng. Có thể hữu ích cho hệ thống không cần màn hình mà không bao giờ yêu cầu tương tác với người dùng cuối. Ghi chú rằng tùy chọn này sẽ cũng ngăn cản bạn chạy công cụ chẩn đoán (v.d. công cụ thống kê gnunet-stats)." #: contrib/config-daemon.scm:408 msgid "Disable peer discovery" msgstr "Tắt phát hiện đồng đẳng" #: contrib/config-daemon.scm:409 msgid "The option 'PRIVATE-NETWORK' can be used to limit the connections of this peer to peers of which the hostkey has been copied by hand to data/hosts; if this option is given, GNUnet will not accept advertisements of peers that the local node does not already know about. Note that in order for this option to work, HOSTLISTURL should either not be set at all or be set to a trusted peer that only advertises the private network. Also, the option does NOT work at the moment if the NAT transport is loaded; for that, a couple of lines above would need some minor editing :-)." msgstr "Tùy chọn « PRIVATE-NETWORK » (mạng riêng) có thể được dùng để hạn chế các kết nối của đồng đẳng này thành những đồng đẳng có khoá máy đã được sao chép bằng tay vào « data/hosts ». Bật tùy chọn này thì GNUnet sẽ không chấp nhận quảng cáo của đồng đẳng không phải được nút cục bộ biết. Ghi chú rằng tùy chọn này sẽ hoạt động được chỉ nếu không đặt HOSTLISTURL (danh sách các máy theo địa chỉ URL) hoặc nếu đặt nó thành một đồng đẳng đáng tin cậy mà chỉ quảng cáo mạng riêng. Hơn nữa, tùy chọn này hiện thời không hoạt động nếu truyền tải NAT được nạp (một hai dòng bên trên yêu cầu chỉnh sửa :-) )." #: contrib/config-daemon.scm:420 msgid "Disable advertising this peer to other peers" msgstr "Tắt quảng cáo đồng đẳng này cho các đồng đẳng khác" #: contrib/config-daemon.scm:432 msgid "Disable automatic establishment of connections" msgstr "Tắt tự động thiết lập kết nối" #: contrib/config-daemon.scm:433 msgid "If this option is enabled, GNUnet will not automatically establish connections to other peers, but instead wait for applications to specifically request connections to other peers (or for other peers to connect to us)." msgstr "Bật tùy chọn này thì GNUnet sẽ không tự động thiết lập kết nối tới đồng đẳng khác, để thay thế nó đợi ứng dụng yêu cầu dứt khoát kết nối tới đồng đẳng khác (hoặc đợi đồng đẳng khác kết nối đến máy này)." #: contrib/config-daemon.scm:444 msgid "Enable advertising of other peers by this peer" msgstr "Bật quảng cáo các đồng đẳng khác cho đồng đẳng này" #: contrib/config-daemon.scm:445 msgid "This option maybe useful during testing, but turning it off is dangerous! If in any doubt, set it to YES (which is the default)." msgstr "Tùy chọn có thể chỉ hữu ích khi thử, nhưng tắt nó là nguy hiểm. Chưa chắc thì đặt nó thành YES (có), giá trị mặc định. " #: contrib/config-daemon.scm:456 msgid "Port for communication with GNUnet user interfaces" msgstr "Cổng để liên lạc với giao diện người dùng GNUnet" #: contrib/config-daemon.scm:457 msgid "Which is the client-server port that is used between gnunetd and the clients (TCP only). You may firewall this port for non-local machines (but you do not have to since GNUnet will perform access control and only allow connections from machines that are listed under TRUSTED)." msgstr "Trình nền gnunetd và các trình khách giao thông qua cổng khách-phục vụ nào (chỉ TCP)? Bạn có thể đặt cổng này đằng sau bức tường lửa để bảo vệ nó khỏi các máy bên ngoài (nhưng không cần thiết vì GNUnet sẽ điều khiển truy cập và chỉ cho phép kết nối từ những máy được liệt kê dưới TRUSTED (đáng tin cậy)." #: contrib/config-daemon.scm:468 msgid "IPs allowed to use gnunetd server" msgstr "Các địa chỉ IP có quyền dùng máy có chạy gnunetd" #: contrib/config-daemon.scm:469 msgid "This option specifies which hosts are trusted enough to connect as clients (to the TCP port). This is useful if you run gnunetd on one host of your network and want to allow all other hosts to use this node as their server. By default, this is set to 'loopback only'. The format is IP/NETMASK where the IP is specified in dotted-decimal and the netmask either in CIDR notation (/16) or in dotted decimal (255.255.0.0). Several entries must be separated by a semicolon, spaces are not allowed." msgstr "Tùy chọn này ghi rõ những máy đủ đáng tin để kết nối như máy khách (đến cổng TCP). Có ích nếu bạn chạy trình nền gnunetd trên một máy nào đó của mạng, và muốn cho phép các máy khác dùng nút này làm máy phục vụ. Mặc định là tùy chọn này được đặt thành « chỉ vòng lặp ». Định dạng là « IP/mặt_nạ_mạng », mà địa chỉ IP được ghi rõ theo dạng thập phân đánh chấm (v.d. 255.255.0.0) và mặt nạ mạng hoặc theo dạng CIDR (/16) hoặc theo dạng thập phân đánh chấm. Nhiều mục phải định giới bằng dấu chấm phẩy; không cho phép dùng dấu cách." #: contrib/config-daemon.scm:481 msgid "Limit connections to the specfied set of peers." msgstr "Hạn chế kết nối thành nhóm đồng đẳng đã ghi rõ." #: contrib/config-daemon.scm:482 msgid "If this option is not set, any peer is allowed to connect. If it is set, only the specified peers are allowed. Specify the list of peer IDs (not IPs!)" msgstr "Không bật tùy chọn này thì cho phép bất kỳ đồng đẳng nào kết nối. Bật thì chỉ cho phép những đồng đẳng đã ghi rõ. Hãy xác định danh sách các mã số đồng đẳng (không phải địa chỉ IP)." #: contrib/config-daemon.scm:493 msgid "Run gnunetd as this group." msgstr "Chạy gnunetd dưới nhóm này." #: contrib/config-daemon.scm:494 msgid "When started as root, gnunetd will change permissions to the given group." msgstr "Khi chạy dưới người chủ, trình nền gnunetd sẽ chuyển đổi quyền hạn sang nhóm đã cho." #: contrib/config-daemon.scm:505 msgid "Prevent the specfied set of peers from connecting." msgstr "Ngăn cản kết nối từ nhóm đồng đẳng đã ghi rõ" #: contrib/config-daemon.scm:506 msgid "If this option is not set, any peer is allowed to connect. If the ID of a peer is listed here, connections from that peer will be refused. Specify the list of peer IDs (not IPs!)" msgstr "Không bật tùy chọn này thì cho phép bất kỳ đồng đẳng nào kết nối. Nếu bạn đặt vào đây mã số của một đồng đẳng nào đó, kết nối từ máy đó sẽ bị từ chối. Hãy xác định danh sách các mã số đồng đẳng (không phải địa chỉ IP)." #: contrib/config-daemon.scm:517 msgid "Topology Maintenance" msgstr "Bảo trì Địa hình" #: contrib/config-daemon.scm:518 msgid "Rarely used settings for peer advertisements and connections" msgstr "Thiết lập ít dùng cho quảng cáo và kết nối của đồng đẳng" #: contrib/config-daemon.scm:538 msgid "General settings" msgstr "Thiết lập chung" #: contrib/config-daemon.scm:539 msgid "Settings that change the behavior of GNUnet in general" msgstr "Thiết lập thay đổi ứng xử chung của GNUnet" #: contrib/config-daemon.scm:564 msgid "Modules" msgstr "Mô-đun" #: contrib/config-daemon.scm:565 msgid "Settings that select specific implementations for GNUnet modules" msgstr "Thiết lập ghi rõ sự thi hành của mô-đun GNUnet" #: contrib/config-daemon.scm:583 msgid "Fundamentals" msgstr "Cơ bản" #: contrib/config-daemon.scm:603 msgid "Which database should be used?" msgstr "Có nên dùng cơ sở dữ liệu nào?" #: contrib/config-daemon.scm:605 msgid "" "Which database should be used? The options are \"sqstore_sqlite\" and \"sqstore_mysql\". You must run gnunet-update after changing this value!\n" "\t\t\t\n" "In order to use sqstore_mysql, you must configure the mysql database, which is relatively simple. Read the file doc/README.mysql for how to setup mysql." msgstr "" "Có nên dùng cơ sở dữ liệu nào? Hai tùy chọn là « sqstore_sqlite » và « sqstore_mysql ». Tay đổi giá trị này thì bạn cũng cần phải chạy tiến trình cập nhật gnunet-update.\n" "\n" "Để sử dụng « sqstore_mysql », bạn cần phải cấu hình cơ sở dữ liệu MySQL, một thủ tục hơi đơn giản. Xem tập tin Đọc Đi « doc/README.mysql » để tìm biết nên thiết lập MySQL như thế nào." #: contrib/config-daemon.scm:618 contrib/config-daemon.scm:631 msgid "Which topology should be used?" msgstr "Có nên dùng địa hình nào?" #: contrib/config-daemon.scm:619 msgid "Which database should be used for the temporary datastore of the DHT?" msgstr "Cơ sở dữ liệu nào nên được dùng làm kho dữ liệu tạm thời của DHT?" #: contrib/config-daemon.scm:633 msgid "Which topology should be used? The only option at the moment is \"topology_default\"" msgstr "Có nên dùng địa hình nào? Tùy chọn duy nhất hiện thời là « topology_default »." #: contrib/config-daemon.scm:647 msgid "Minimum number of connected friends before this peer is allowed to connect to peers that are not listed as friends" msgstr "Số tối thiểu các bạn bè đã kết nối trước khi đồng đẳng này được phép kết nối tới đồng đẳng không phải được liệt kê là bạn bè." #: contrib/config-daemon.scm:648 msgid "Note that this option does not guarantee that the peer will be able to connect to the specified number of friends. Also, if the peer had connected to a sufficient number of friends and then established non-friend connections, some of the friends may drop out of the network, temporarily resulting in having fewer than the specified number of friends connected while being connected to non-friends. However, it is guaranteed that the peer itself will never choose to drop a friend's connection if this would result in dropping below the specified number of friends (unless that number is higher than the overall connection target)." msgstr "Ghi chú rằng tùy chọn này không đảm bảo rằng đồng đẳng sẽ có khả năng kết nối được tới số bạn bè đã ghi rõ. Hơn nữa, nếu đồng đẳng đã kết nối tới số bạn bè đã ghi rõ, rồi thiết lập kết nối không phải tới bạn bè, một số bạn bè có thể rời mạng đi, thì tạm thời giảm số bạn bè dưới hạn ngạch khi cũng kết nối tới máy không phải bạn bè. Tuy nhiên, có phải đảm bảo rằng máy này sẽ không ngắt kết nối tới bạn bè nếu việc đó sẽ giảm số bạn bè dưới hạn ngạch (nếu số này không phải lớn hơn mục tiêu kết nối toàn thể)." #: contrib/config-daemon.scm:659 msgid "If set to YES, the peer is only allowed to connect to other peers that are explicitly specified as friends" msgstr "Đặt thành YES (có) thì máy này chỉ có quyền kết nối tới đồng đẳng khác được xác định là bạn bè." #: contrib/config-daemon.scm:660 msgid "Use YES only if you have (trustworthy) friends that use GNUnet and are afraid of establishing (direct) connections to unknown peers" msgstr "Hãy dùng YES (có) chỉ nếu bạn có bạn bè đáng tin cũng dùng GNUnet và không muốn thiết lập kết nối trực tiếp tới đồng đẳng lạ." #: contrib/config-daemon.scm:671 msgid "List of friends for friend-to-friend topology" msgstr "Danh sách bạn bè cho địa hình bạn-đến-bạn" #: contrib/config-daemon.scm:672 msgid "Specifies the name of a file which contains a list of GNUnet peer IDs that are friends. If used with the friend-to-friend topology, this will ensure that GNUnet only connects to these peers (via any available transport)." msgstr "Ghi rõ tên của một tập tin chứa danh sách các mã số đồng đẳng GNUnet cũng là bạn bè. Khi tổ hợp với địa hình bạn-đến-bạn, thiết lập này sẽ đảm bảo rằng GNUnet chỉ kết nối tới những đồng đẳng đó (qua bất kỳ truyền tải sẵn sàng)." #: contrib/config-daemon.scm:683 msgid "Friend-to-Friend Topology Specification" msgstr "Đặc tả Địa hình Bạn-đến-Bạn" #: contrib/config-daemon.scm:684 msgid "Settings for restricting connections to friends" msgstr "Thiết lập để hạn chế kết nối tới bạn bè" #: contrib/config-daemon.scm:701 msgid "Name of the MySQL database GNUnet should use" msgstr "Tên cơ sở dữ liệu MySQL mà GNUnet nên dùng" #: contrib/config-daemon.scm:713 msgid "Configuration file that specifies the MySQL username and password" msgstr "Tập tin cấu hình mà ghi rõ tên người dùng và mật khẩu cho MySQL" #: contrib/config-daemon.scm:725 msgid "Configuration of the MySQL database" msgstr "Cấu hình của cơ sở dữ liệu MySQL" #: contrib/config-daemon.scm:744 msgid "MB of diskspace GNUnet can use for anonymous file sharing" msgstr "Sức chứa trên đĩa (theo MB) cho GNUnet dùng để chia sẻ tập tin nặc danh" #: contrib/config-daemon.scm:746 msgid "" "How much disk space (MB) is GNUnet allowed to use for anonymous file sharing? This does not take indexed files into account, only the space directly used by GNUnet is accounted for. GNUnet will gather content from the network if the current space-consumption is below the number given here (and if content migration is allowed below).\n" "\n" "Note that if you change the quota, you need to run gnunet-update afterwards." msgstr "" "Bao nhiêu sức chứa trên đĩa (theo MB) được gán cho GNUnet dùng để chia sẻ tập tin nặc danh? Số này không tính tập tin đánh chỉ mục, chỉ tính sức chứa được GNUnet dùng trực tiếp. GNUnet sẽ lượm nội dung từ mạng nếu sức chứa được chiếm hiện thời nằm dưới số được ghi rõ ở đây (và nếu quyền chuyển nội dung được cấp bên dưới).\n" "\n" "Ghi chú : thay đổi hạn ngạch này thì cũng cần phải chạy tiến trình cập nhật gnunet-update." #: contrib/config-daemon.scm:760 msgid "Size of the routing table for anonymous routing." msgstr "Kích cỡ của bảng định tuyến để định tuyến nạc danh." #: contrib/config-daemon.scm:772 msgid "Size of the routing table for DHT routing." msgstr "Kích cỡ của bảng định tuyến để định tuyến DHT." #: contrib/config-daemon.scm:785 msgid "Allow migrating content to this peer." msgstr "Cho phép chuyển nội dung sang máy này." #: contrib/config-daemon.scm:787 msgid "" "If you say yes here, GNUnet will migrate content to your server, and you will not be able to control what data is stored on your machine. \n" "\t\t\t\n" "If you activate it, you can claim for *all* the non-indexed (-n to gnunet-insert) content that you did not know what it was even if an adversary takes control of your machine. If you do not activate it, it is obvious that you have knowledge of all the content that is hosted on your machine and thus can be considered liable for it." msgstr "" "Bật tùy chọn này thì GNUnet sẽ chuyển nội dung sang máy phục vụ của bạn, va bạn sẽ không có khả năng điều khiển dữ liệu nào được chứa trên máy này.\n" "\n" "Vì thế bật tùy chọn này cho phép bạn cho là không biết về bất kỳ nội dung không đánh chỉ mục (« -n » tới gnunet-insert), thậm chí nếu người khác nắm quyền điều khiển máy của bạn. Không bật thì rõ ràng là bạn biết về mọi nội dung nằm trên máy của mình, do đó có trách nhiệm về nó." #: contrib/config-daemon.scm:801 msgid "MB of diskspace GNUnet can use for caching DHT index data (the data will be stored in /tmp)" msgstr "Sức chứa trên đĩa (theo MB) cho GNUnet dùng để nhớ tạm dữ liệu chỉ mục DHT (dữ liệu sẽ được chứa trong « /tmp »)" #: contrib/config-daemon.scm:802 msgid "" "DHT index data is inherently small and expires comparatively quickly. It is deleted whenever gnunetd is shut down.\n" "\n" "The size of the DSTORE QUOTA is specified in MB." msgstr "" "Dữ liệu chỉ mục DHT vốn là nhỏ, và hết hạn dùng một cách hơi nhanh. Nó bị xoá khi nào trình nền gnunetd bị tắt.\n" "\n" "Kích cỡ của DSTORE QUOTA (hạn ngạch của kho dữ liệu) được ghi rõ theo MB." #: contrib/config-daemon.scm:816 msgid "Options for anonymous file sharing" msgstr "Tùy chọn để chia sẻ tập tin nặc danh" #: contrib/config-daemon.scm:835 msgid "Applications" msgstr "Ứng dụng" #: contrib/config-daemon.scm:851 msgid "Is this machine unreachable behind a NAT?" msgstr "Máy này không thể tới được do NAT không?" #: contrib/config-daemon.scm:852 msgid "Set to YES if this machine is behind a NAT that limits connections from the outside to the GNUnet port and that cannot be traversed using UPnP. Note that if you have configured your NAT box to allow direct connections from other machines to the GNUnet ports or if GNUnet can open ports using UPnP, you should set the option to NO. Set this only to YES if other peers cannot contact you directly. You can use 'make check' in src/transports/upnp/ to find out if your NAT supports UPnP. You can also use gnunet-transport-check with the '-p' option in order to determine which setting results in more connections. Use YES only if you get no connections otherwise. Set to AUTO to use YES if the local IP is belongs to a private IP network and NO otherwise." msgstr "Đặt thành YES (có) nếu máy này nằm sau một NAT mà hạn chế kết nối từ bên ngoài đến cổng GNUnet và không thể đi qua được dùng UPnP. Ghi chú rằng nếu bạn đã cấu hình máy NAT để cho phép kết nối trực tiếp từ máy khác đến các cổng GNUnet, hoặc nếu GNUnet có khả năng mở cổng dùng UPnP, thì bạn nên đặt tùy chọn này thành NO (không). Chỉ đặt nó thành YES (có) nếu đồng đằng khác không thể liên lạc trực tiếp cho bạn. Bạn có thể dùng câu lệnh kiểm tra « make check » trong thư mục « src/transports/upnp/ » để tìm biết nếu máy NAT đó hỗ trợ UPnP không. Cũng có thể dùng tiến trình kiểm tra truyền tải gnunet-transport-check với tùy chọn « -p » để quyết định thiết lập nào cho phép nhiều kết nối hơn. Dùng YES (có) chỉ nếu bạn không nhận kết nối bằng cách khác. Đặt sẽ AUTO (tự động) chọn YES (có) nếu địa chỉ IP cục bộ thuộc về một mạng IP riêng; không thì NO (không)." #: contrib/config-daemon.scm:863 msgid "Which port should be used by the TCP IPv4 transport?" msgstr "Truyền tải IPv4 TCP nên dùng cổng nào?" #: contrib/config-daemon.scm:875 contrib/config-daemon.scm:941 #: contrib/config-daemon.scm:1091 msgid "Should we try to determine our external IP using UPnP?" msgstr "Có nên thử quyết định địa chỉ IP bên ngoài của máy này dùng UPnP không?" #: contrib/config-daemon.scm:876 msgid "You can use 'make check' in src/transports/upnp/ to find out if your NAT supports UPnP. You should disable this option if you are sure that you are not behind a NAT. If your NAT box does not support UPnP, having this on will not do much harm (only cost a small amount of resources)." msgstr "Bạn có thể dùng câu lệnh kiểm tra « make check » trong thư mục « src/transports/upnp/ » để tìm biết nếu máy NAT đó hỗ trợ UPnP không. Chắc chắn không nằm sau NAT thì nên tắt tùy chọn này. Nếu máy NAT không hỗ trợ UPnP, bật tùy chọn này sẽ không làm hạn nhiều (chỉ chiếm một ít tài nguyên)." #: contrib/config-daemon.scm:887 contrib/config-daemon.scm:1115 #: contrib/config-daemon.scm:1170 contrib/config-daemon.scm:1235 msgid "Which IPs are not allowed to connect?" msgstr "Những IP nào không có quyền kết nối?" #: contrib/config-daemon.scm:899 msgid "Which IPs are allowed to connect? Leave empty to use the IP of your primary network interface." msgstr "Những IP nào có quyền kết nối? Bỏ trống để dùng địa chỉ IP của giao diện mạng chính của máy này." #: contrib/config-daemon.scm:911 msgid "TCP transport" msgstr "Truyền tải TCP" #: contrib/config-daemon.scm:929 msgid "Which port should be used by the HTTP transport?" msgstr "Truyền tải HTTP nên dùng cổng nào?" #: contrib/config-daemon.scm:942 contrib/config-daemon.scm:1092 msgid "You can use 'make check' in src/transports/upnp/ to find out if your NAT supports UPnP. You should disable this option if you are sure that you are not behind a NAT. If your NAT box does not support UPnP, having this on will not do much harm (only cost a small amount of resources)." msgstr "Bạn có thể dùng câu lệnh kiểm tra « make check » trong thư mục « src/transports/upnp/ » để tìm biết nếu máy NAT đó hỗ trợ UPnP không. Chắc chắn không nằm sau NAT thì nên tắt tùy chọn này. Nếu máy NAT không hỗ trợ UPnP, bật tùy chọn này sẽ không làm hạn nhiều (chỉ chiếm một ít tài nguyên)." #: contrib/config-daemon.scm:953 msgid "Which is the external port of the HTTP transport?" msgstr "Truyền tải HTTP dùng cổng bên ngoài nào?" #: contrib/config-daemon.scm:954 msgid "Use this option if your firewall maps say port 80 to your real HTTP port. This can be useful in making the HTTP messages appear even more legit (without the need for running gnunetd as root due to the use of a priviledged port)." msgstr "Bật tùy chọn này nếu sơ đồ bức tường lửa ánh xạ (v.d.) cổng 80 tới cổng HTTP thật. Có thể hữu ích để làm cho các thông báo HTTP hình như ngay cả hợp lệ hơn (không cần chạy gnunetd dưới người chủ do dùng cổng có quyền đặc biệt)." #: contrib/config-daemon.scm:965 msgid "HTTP transport" msgstr "Truyền tải HTTP" #: contrib/config-daemon.scm:984 msgid "What is the maximum transfer unit for SMTP?" msgstr "Đơn vị truyền tối đa cho SMTP là gì?" #: contrib/config-daemon.scm:996 msgid "What is the maximum number of e-mails that gnunetd would be allowed to send per hour?" msgstr "Trình nền gnunetd có quyền gửi trong một giờ số tối đa các thư điện tử nào?" #: contrib/config-daemon.scm:997 msgid "Use 0 for unlimited" msgstr "0 là vô hạn" #: contrib/config-daemon.scm:1008 msgid "Which e-mail address should be used to send e-mail to this peer?" msgstr "Để gửi thư cho đồng đẳng này, có nên dùng địa chỉ thư điện tử nào?" #: contrib/config-daemon.scm:1009 msgid "You must make sure that e-mail received at this address is forwarded to the PIPE which is read by gnunetd. Use the FILTER option to filter e-mail with procmail and the PIPE option to set the name of the pipe." msgstr "Bạn cần phải kiểm tra lại các thư được nhận ở địa chỉ này được chuyển tiếp tới PIPE (ống dẫn) được gnunetd đọc. Hãy dùng tùy chọn FILTER (lọc) để lọc thư bằng procmail, và tùy chọn PIPE (ống dẫn) để đặt tên của ống dẫn đó." #: contrib/config-daemon.scm:1020 msgid "Which header line should other peers include in e-mails to enable filtering?" msgstr "Để cho phép lọc, đồng đẳng khác nên thêm vào thư dòng đầu nào?" #: contrib/config-daemon.scm:1021 msgid "You can specify a header line here which can then be used by procmail to filter GNUnet e-mail from your inbox and forward it to gnunetd." msgstr "Ở đây thì bạn có thể ghi rõ một dòng đầu có thể được procmail dùng để lọc các thư GNUnet từ hộp Thư Đến của bạn rồi chuyển tiếp tới trình nền gnunetd." #: contrib/config-daemon.scm:1032 msgid "What is the filename of the pipe where gnunetd can read its e-mail?" msgstr "gnunetd có thể đọc thư qua ống dẫn có tên tập tin nào?" #: contrib/config-daemon.scm:1033 msgid "Have a look at contrib/dot-procmailrc for an example .procmailrc file." msgstr "Xem « contrib/dot-procmailrc » để tìm một tập tin .procmailrc ví dụ." #: contrib/config-daemon.scm:1044 msgid "What is the name and port of the server for outgoing e-mail?" msgstr "Thư gửi đi dùng máy phục vụ có tên và cổng nào?" #: contrib/config-daemon.scm:1045 msgid "The basic format is HOSTNAME:PORT." msgstr "Định dạng cơ bản là « TÊN_MÁY:CỔNG »." #: contrib/config-daemon.scm:1056 msgid "SMTP transport" msgstr "Truyền tải SMTP" #: contrib/config-daemon.scm:1079 msgid "Which port should be used by the UDP IPv4 transport?" msgstr "Truyền tải IPv4 UDP nên dùng cổng nào?" #: contrib/config-daemon.scm:1103 msgid "What is the maximum transfer unit for UDP?" msgstr "Đơn vị truyền tối đa cho UDP là gì?" #: contrib/config-daemon.scm:1127 msgid "Which IPs are allowed to connect? Leave empty to allow connections from any IP." msgstr "Những địa chỉ IP nào có quyền kết nối? Bỏ trống để cho phép kết nối từ bất kỳ địa chỉ IP nào." #: contrib/config-daemon.scm:1139 msgid "UDP transport" msgstr "Truyền tải UDP" #: contrib/config-daemon.scm:1158 msgid "Which port should be used by the TCP IPv6 transport?" msgstr "Truyền tải IPv6 TCP nên dùng cổng nào?" #: contrib/config-daemon.scm:1182 contrib/config-daemon.scm:1247 msgid "Which IPs are allowed to connect? Leave empty to allow any IP to connect." msgstr "Những địa chỉ IP nào có quyền kết nối? Bỏ trống để cho phép kết nối từ bất kỳ địa chỉ IP nào." #: contrib/config-daemon.scm:1194 msgid "TCP6 transport" msgstr "Truyền tải TCP6" #: contrib/config-daemon.scm:1211 msgid "Which port should be used by the UDP IPv6 transport?" msgstr "Truyền tải IPv6 UDP nên dùng cổng nào?" #: contrib/config-daemon.scm:1223 msgid "What is the maximum transfer unit for UDP 6?" msgstr "Đơn vị truyền tối đa cho UDP 6 là gì?" #: contrib/config-daemon.scm:1259 msgid "UDP6 transport" msgstr "Truyền tải UDP6" #: contrib/config-daemon.scm:1277 msgid "Network interface" msgstr "Giao diện mạng" #: contrib/config-daemon.scm:1289 msgid "External IP address (leave empty to try auto-detection)" msgstr "Địa chỉ IP bên ngoài (bỏ trống để thử tự động phát hiện)" #: contrib/config-daemon.scm:1301 msgid "External IPv6 address (leave empty to try auto-detection)" msgstr "Địa chỉ IPv6 bên ngoài (bỏ trống để thử tự động phát hiện)" #: contrib/config-daemon.scm:1313 msgid "Transports" msgstr "Truyền tải" #: contrib/config-daemon.scm:1337 msgid "What is the maximum number of bytes per second that we may receive?" msgstr "Có thể nhận trong một giây bao nhiêu byte (tối đa)?" #: contrib/config-daemon.scm:1349 msgid "What is the maximum number of bytes per second that we may send?" msgstr "Có thể gửi trong một giây bao nhiêu byte (tối đa)?" #: contrib/config-daemon.scm:1361 msgid "What is the maximum CPU load (percentage)?" msgstr "Trọng tải CPU tối đa (theo phần trăm) là gì?" #: contrib/config-daemon.scm:1363 msgid "Which CPU load can be tolerated. Load here always refers to the total system load, that is it includes CPU utilization by other processes. A value of 50 means that once your 1 minute-load average goes over 50% non-idle, GNUnet will try to reduce CPU consumption until the load goes under the threshold. Reasonable values are typically between 50 and 100. Multiprocessors may use values above 100." msgstr "Trọng tải CPU lớn nhất có thể chịu được. Trọng tải trong ngữ cảnh này luôn luôn tham chiếu đến trọng tải hệ thống hoàn toàn, tức là nó bao gồm sự sử dụng CPU bởi các tiến trình khác. Giá trị 50 có nghĩa là một khi trọng tải trung bình mỗi phút vượt quá 50% mà không nghỉ, GNUnet sẽ thử giảm tiêu thụ CPU đến khi trọng tải nằm dưới ngưỡng. Giá trị hợp lý thường nằm giữa 50 và 100. Máy đa bộ xử lý có thể dùng giá trị trên 100." #: contrib/config-daemon.scm:1374 msgid "What is the maximum IO load (permille)?" msgstr "Trọng tải V/R tối đa (phần nghìn) là gì?" #: contrib/config-daemon.scm:1376 msgid "Which IO load can be tolerated. Load here refers to the percentage of CPU cycles wasted waiting for IO for the entire system, that is it includes disk utilization by other processes. A value of 10 means that once the average number of cycles wasted waiting for IO is more than 10% non-idle, GNUnet will try to reduce IO until the load goes under the threshold. Reasonable values are typically between 10 and 75." msgstr "Trọng tải V/R lớn nhất có thể chịu được. Trọng tải trong ngữ cảnh này tham chiếu đến phần trăm các chu kỳ CPU bị phí khi đợi V/R cho toàn hệ thống, tức là nó bao gồm sự sử dụng đĩa cho các tiến trình khác. Giá trị 10 có nghĩa là một khi số trung bình các chu kỳ bị phí khi đợi V/R vượt quá 10% mà không nghỉ, GNUnet sẽ thử giảm V/R đến khi trọng tải nằm dưới ngưỡng. Giá trị hợp lý thường nằm giữa 10 và 75." #: contrib/config-daemon.scm:1387 msgid "What is the maximum CPU load (hard limit)?" msgstr "Trọng tải CPU tối đa (giới hạn cứng) là gì?" #: contrib/config-daemon.scm:1388 msgid "Which CPU load can be tolerated. This is the hard limit, so once it is reached, gnunetd will start to massively drop data to reduce the load. Use with caution." msgstr "Trọng tải CPU lớn nhất có thể chịu được. Đây là giới hạn cứng, do đó một khi tới nó, trình nền gnunetd sẽ bắt đầu bỏ rất nhiều dữ liệu để giảm trọng tải. Hãy dùng cẩn thận." #: contrib/config-daemon.scm:1399 msgid "What is the maximum upstream bandwidth (hard limit)?" msgstr "Dải thông dòng ra tối đa (giới hạn cứng) là gì?" #: contrib/config-daemon.scm:1400 msgid "The limit is given as a percentage of the MAXNETUPBPS limit. Use 100 to have MAXNETUPBPS be the hard limit. Use zero for no limit." msgstr "Giới hạn được ghi rõ theo phần trăm của giới hạn MAXNETUPBPS. Giá tị 100 đặt MAXNETUPBPS là giới hạn cứng. 0 là vô hạn." #: contrib/config-daemon.scm:1411 msgid "Should we disable random padding (experimental option)?" msgstr "Có nên tắt đệm lót ngẫu nhiên (tùy chọn còn thực nghiệm) không?" #: contrib/config-daemon.scm:1423 msgid "Use basic bandwidth limitation? (YES/NO). If in doubt, say YES." msgstr "Dùng giới hạn dải thông cơ bản không? (YES/NO). Chưa chắc thì chọn YES (có)." #: contrib/config-daemon.scm:1425 msgid "" "Basic bandwidth limitation (YES) means simply that the bandwidth limits specified apply to GNUnet and only to GNUnet. If set to YES, you simply specify the maximum bandwidth (upstream and downstream) that GNUnet is allowed to use and GNUnet will stick to those limitations. This is useful if your overall bandwidth is so large that the limit is mostly used to ensure that enough capacity is left for other applications. Even if you want to dedicate your entire connection to GNUnet you should not set the limits to values higher than what you have since GNUnet uses those limits to determine for example the number of connections to establish (and it would be inefficient if that computation yields a number that is far too high). \n" "\n" "While basic bandwidth limitation is simple and always works, there are some situations where it is not perfect. Suppose you are running another application which performs a larger download. During that particular time, it would be nice if GNUnet would throttle its bandwidth consumption (automatically) and resume using more bandwidth after the download is complete. This is obviously advanced magic since GNUnet will have to monitor the behavior of other applications. Another scenario is a monthly cap on bandwidth imposed by your ISP, which you would want to ensure is obeyed. Here, you may want GNUnet to monitor the traffic from other applications to ensure that the combined long-term traffic is within the pre-set bounds. Note that you should probably not set the bounds tightly since GNUnet may observe that the bounds are about to be broken but would be unable to stop other applications from continuing to use bandwidth.\n" "\n" "If either of these two scenarios applies, set BASICLIMITING to NO. Then set the bandwidth limits to the COMBINED amount of traffic that is accepable for both GNUnet and other applications. GNUnet will then immediately throttle bandwidth consumption if the short-term average is above the limit, and it will also try to ensure that the long-term average is below the limit. Note however that using NO can have the effect of GNUnet (almost) ceasing operations after other applications perform high-volume downloads that are beyond the defined limits. GNUnet would reduce consumption until the long-term limits are again within bounds.\n" "\n" "NO only works on platforms where GNUnet can monitor the amount of traffic that the local host puts out on the network. This is only implemented for Linux and Win32. In order for the code to work, GNUnet needs to know the specific network interface that is used for the external connection (after all, the amount of traffic on loopback or on the LAN should never be counted since it is irrelevant)." msgstr "" "Giới hạn dải thông cơ bản (YES) có nghĩa đơn giản là các giới hạn dải thông được ghi rõ sẽ chỉ áp dụng cho GNUnet. Đặt thành YES (có) thì bạn đơn giản ghi rõ dải thông tối đa (dòng ra và dòng vào) cho phép GNUnet dùng, và GNUnet sẽ tùy theo giới hạn đó. Có ích nếu máy có dải thông toàn thể lớn quá đến mức mà giới hạn thường dùng để đảm bảo có đủ khả năng còn lại cho các ứng dụng khác. Thậm chí nếu bạn muốn gán toàn bộ kết nối cho GNUnet, bạn không nên đặt giới hạn này thành giá trị lớn hơn dải thông sẵn sàng, vì GNUnet dùng giới hạn này để quyết định, chẳng hạn, số kết nối nên thiết lập (không hiệu quả nếu phép tính đó trả lại một số quá cao).\n" "\n" "Mặc dù sự hạn chế dải thông cơ bản là đơn giản và luôn luôn hữu hiệu, có một số trường hợp nào đó chưa hoàn toàn. Giả sử bạn đang chạy một ứng dụng khác mà thực hiện một tiến trình tải xuống lớn hơn. Trong khoảng thời gian đó, có ích nếu GNUnet tự động giảm tiêu thụ dải thông, rồi tăng lại sau khi tiến trình tải xuống đó đã chạy xong. Rõ ràng là ma thuật cấp cao, vì GNUnet sẽ cần phải theo dõi ứng xử của ứng dụng khác. Một kịch bản khác là khi nhà cung cấp dịch vụ Internet (ISP) đánh lừa mà tống ấn một ngưỡng dải thông hàng tháng, mà bạn muốn đảm bảo tuân theo nó. Ở đây, có lẽ bạn muốn đặt GNUnet theo dõi trọng tải đến từ các ứng dụng khác, để đảm bảo tổng số trọng tải lâu dài nằm trong phạm vi định sẵn. Rất có thể là bạn không nên đặt giới hạn quá chặt chẽ, vì GNUnet có thể thấy rằng giới hạn sắp bị vượt quá, nhưng không có khả năng ngăn cản ứng dụng khác cứ chiếm dải thông.\n" "\n" "Nếu bạn gặp trường hợp như trên, hãy đặt BASICLIMITING (giới hạn cơ bản) thành NO (không). Sau đó thì đặt các giới hạn dải thông thành TỔNG SỐ trọng tải thích hợp với cả hai GNUnet và các ứng dụng khác. Do đó GNUnet sẽ giảm ngay lập tức tiêu thụ dải thông nếu số trung bình ngắn kỳ vượt quá giới hạn, và nó sẽ cũng thử đảm bảo rằng số trung bình lâu dài nằm dưới giới hạn. Tuy nhiên, ghi chú rằng đặt NO (không) có thể làm kết quả là GNUnet (gần) ngừng chạy sau khi ứng dụng khác chạy tiến trình tải xuống truyền rất nhiều dữ liệu mà vượt quá giới hạn đã xác định. GNUnet sẽ giảm tiêu thụ đến khi các giới hạn lâu dài lại nằm trong phạm vi.\n" "\n" "Giá trị NO (không) chỉ thích hợp trên nền tảng cho phép GNUnet theo dõi số lượng trọng tải mà máy cục bộ gửi cho mạng. Chức năng này chỉ được thi hành cho hệ điều hành Linux và Win32 (Windows 32-bit). Để mã này chạy được, GNUnet cần biết giao diện mạng riêng nào được dùng cho kết nối bên ngoài (cuối cùng, số lượng trọng tải trên vòng lặp hoặc trên mạng cục bộ LAN không bao giờ nên được tính vì nó không thích hợp)." #: contrib/config-daemon.scm:1442 msgid "Network interface to monitor" msgstr "Giao diện mạng cần theo dõi" #: contrib/config-daemon.scm:1443 msgid "For which interfaces should we do accounting? GNUnet will evaluate the total traffic (not only the GNUnet related traffic) and adjust its bandwidth usage accordingly. You can currently only specify a single interface. GNUnet will also use this interface to determine the IP to use. Typical values are eth0, ppp0, eth1, wlan0, etc. 'ifconfig' will tell you what you have. Never use 'lo', that just won't work. Under Windows, specify the index number reported by 'gnunet-win-tool -n'." msgstr "" "Có nên tính toán về những giao diện nào? GNUnet sẽ tính tổng số trọng tải (không phải chỉ trọng tải liên quan đến GNUnet), và điều chỉnh tiêu thụ dải thông của nó cho phù hợp. Hiện thời bạn chỉ có thể ghi rõ một giao diện riêng lẻ. GNUnet sẽ cũng dùng giao diện này để quyết định địa chỉ IP nào cần dùng. Các giá trị thường dùng là\n" " • eth0\n" " • ppp0\n" " • eth1\n" " • wlan0\n" "v.v. Công cụ « ifconfig » sẽ báo bạn biết về những giao diện sẵn sàng. Không bao giờ nên dùng « lo »: nó sẽ không có hiệu quả. Dưới Windows, hãy ghi rõ số chỉ mục được thông báo bởi câu lệnh « gnunet-win-tool -n »." #: contrib/config-daemon.scm:1454 msgid "Load management" msgstr "Quản lý trọng tải" #: contrib/config-daemon.scm:1479 contrib/config-client.scm:379 msgid "Root node" msgstr "Nút gốc" #: contrib/config-client.scm:157 msgid "Where should gnunet-clients write their logs?" msgstr "Các trình khách gnunet-clients nên ghi lưu vào đâu?" #: contrib/config-client.scm:189 msgid "On which machine and port is gnunetd running (for clients)?" msgstr "Trình nền gnunetd đang chạy (cho trình khách) trên máy và cổng nào?" #: contrib/config-client.scm:190 msgid "This is equivalent to the -H option. The format is IP:PORT." msgstr "Đây tương đương với tùy chọn « -H ». Định dạng là « IP:CỔNG »." #: contrib/config-client.scm:201 msgid "What is the path to the configuration file for gnunetd?" msgstr "Đối với gnunetd, cần theo đường dẫn nào đến tập tin cấu hình?" #: contrib/config-client.scm:202 msgid "This option is used when clients need to start gnunetd." msgstr "Tùy chọn này được dùng khi trình khách cần phải khởi chạy trình nền gnunetd." #: contrib/config-client.scm:214 msgid "General options" msgstr "Tùy chọn chung" #: contrib/config-client.scm:231 msgid "Do not add metadata listing the creation time for inserted content" msgstr "Đừng thêm siêu dữ liệu mà ghi giờ tạo cho nội dung đã chèn" #: contrib/config-client.scm:243 msgid "Which non-default extractors should GNUnet use for keyword extractors" msgstr "Để giải phóng từ khoá, GNUnet nên ùng những bộ giải phóng không mặc định nào?" #: contrib/config-client.scm:244 msgid "" "Specify which additional extractor libraries should be used. gnunet-insert uses libextractor to extract keywords from files. libextractor can be dynamically extended to handle additional file formats. If you want to use more than the default set of extractors, specify additional extractor libraries here. The format is [[-]LIBRARYNAME[:[-]LIBRARYNAME]*].\n" "\n" "The default is to use filenames and to break larger words at spaces (and underscores, etc.). This should be just fine for most people. The '-' before a library name indicates that this should be executed last and makes only sense for the split-library." msgstr "" "Hãy ghi rõ những thư viện giải phóng thêm cần dùng. Tiến trình chèn gnunet-insert dùng libextractor để giải phóng từ khoá khỏi tập tin. libextractor có thể được mở rộng động để quản lý các định dạng tập tin bổ sung. Muốn dùng bộ giải phóng thêm vào nhóm mặc định thì ghi rõ những thư viện giải phóng thêm ở đây. Định dạng là:\n" "[[-]tên_thư_viện[:[-]tên_thư_viện]*]\n" "\n" "Mặc định là dùng tên tập tin và ngắt từ lớn tại dấu cách (và dấu gạch dưới, v.v.). Đây nên là đúng cho phần lớn người dùng. Dấu trừ « - » đằng trước tên thư viện ngụ ý nó nên được thực hiện cuối cùng, và có nghĩa chỉ cho thư viện tách (split-library)." #: contrib/config-client.scm:257 msgid "How many entries should the URI DB table have?" msgstr "Bảng DB URI nên chứa bao nhiêu mục nhập?" #: contrib/config-client.scm:258 msgid "GNUnet uses two bytes per entry on the disk. This database is used to keep track of how a particular URI has been used in the past. For example, GNUnet may remember that a particular URI has been found in a search previously or corresponds to a file uploaded by the user. This information can then be used by user-interfaces to filter URI lists, such as search results. If the database is full, older entries will be discarded. The default value should be sufficient without causing undue disk utilization." msgstr "GNUnet dùng hai byte cho mỗi mục nhập trên đĩa. Cơ sở dữ liệu này được dùng để theo dõi một địa chỉ URI nào đó đã được dùng như thế nào. Chẳng hạn, GNUnet có thễ nhớ được rằng một địa chỉ URI nào đó đã được tìm trong một tiến trình tìm kiếm trước, hoặc tương ứng với một tập tin được người dùng tải lên. Thông tin này thì có thể được dùng bởi giao diện người dùng để lọc danh sách các URI, v.d. kết quả tìm kiếm. Nếu cơ sở dữ liệu đầy, các mục nhập cũ sẽ bị bỏ đi. Giá trị mặc định nên thích hợp mà không gây ra đĩa được tiêu thụ quá nhiều." #: contrib/config-client.scm:269 msgid "File-Sharing options" msgstr "Tùy chọn chia sẻ tập tin" #: contrib/config-client.scm:285 msgid "Which plugins should be loaded by gnunet-gtk?" msgstr "gnunet-gtk nên nạp những phần bổ sung nào?" #: contrib/config-client.scm:286 msgid "Load the about plugin for the about dialog. The daemon plugin allows starting and stopping of gnunetd and displays information about gnunetd. The fs plugin provides the file-sharing functionality. The stats plugin displays various statistics about gnunetd." msgstr "" "Phần bổ sung \t\tChức năng\n" " about\t\t\tcung cấp hộp thoại giới thiệu.\n" " daemon\t\t\tcho phép khởi/dừng chạy trình nền gnunetd,\n" "\t\t\t\tvà hiển thị thông tin về nó.\n" " fs\t\t\t\tcung cấp chức năng chia sẻ tập tin\n" " stats\t\t\thiển thị các thống kê khác nhau về gnunetd." #: contrib/config-client.scm:297 msgid "How frequently (in milli-seconds) should the statistics update?" msgstr "Bao lâu (theo mili-giây) giữa hai lần cập nhật thống kê?" #: contrib/config-client.scm:298 msgid "Each pixel in the stats dialog corresponds to the time interval specified here." msgstr "Mỗi điểm ảnh trong hộp thoại thống kê tương ứng với khoảng thời gian được ghi rõ ở đây." #: contrib/config-client.scm:310 msgid "Do not show thumbnail previews from meta-data in search results" msgstr "Không hiển thị ảnh mẫu xem thử từ siêu dữ liệu trong kết quả tìm kiếm" #: contrib/config-client.scm:311 msgid "This option is useful for people who maybe offended by some previews or use gnunet-gtk at work and would like to avoid bad surprises." msgstr "Tùy chọn này có ích cho người dùng không muốn thấy ảnh không mong đợi." #: contrib/config-client.scm:322 msgid "Do not show search results for files that were uploaded by us" msgstr "Không hiển thị kết quả tìm kiếm cho tập tin được chúng ta tải lên" #: contrib/config-client.scm:323 msgid "This option is useful to eliminate files that the user already has from the search. Naturally, enabling this option maybe confusing because some obviously expected search results would no longer show up. This option only works if the URI_DB_SIZE option under FS is not zero (since the URI DB is used to determine which files the user is sharing)" msgstr "Tùy chọn này có ích để loại trừ khỏi tìm kiếm các tập tin đã thuộc về người dùng. Tự nhiên, bật tùy chọn này có thể gây bối rối, vì một số kết quả tìm kiếm mong đợi rõ ràng sẽ không còn hiển thị lại. Tùy chọn này chỉ hoạt động được nếu tùy chọn URI_DB_SIZE (kích cỡ cơ sở dữ liệu địa chỉ URI) dưới FS không phải số không (vì cơ sở dữ liệu này được dùng để quyết định những tập tin nào đang được chia sẻ bởi người dùng)." #: contrib/config-client.scm:335 msgid "To which directory should gnunet-gtk save downloads to?" msgstr "gnunet-gtk nên lưu tập tin đã tải về vào thư mục nào?" #: contrib/config-client.scm:347 msgid "Options related to gnunet-gtk" msgstr "Tùy chọn liên quan đến gnunet-gtk" #: contrib/config-client.scm:367 msgid "Full pathname of GNUnet client HOME directory" msgstr "Tên đường dẫn đầy đủ của thư mục HOME khách của GNUnet" #: contrib/config-client.scm:368 msgid "The directory for GNUnet files that belong to the user." msgstr "Thư mục chứa các tập tin GNUnet thuộc về người dùng." #: src/setup/gtk/gnunet-setup.glade:9 src/setup/gtk/gnunet-setup.glade:167 #: src/setup/gtk/gnunet-setup.glade:435 src/setup/gtk/gnunet-setup.glade:845 #: src/setup/gtk/gnunet-setup.glade:1178 msgid "GNUnet configuration assistant" msgstr "Trợ lý cấu hình GNUnet" #: src/setup/gtk/gnunet-setup.glade:34 msgid "" "Welcome to GNUnet!\n" "\n" "This assistant will ask you a few basic questions in order to configure GNUnet.\n" "\n" "Please visit our homepage at\n" "\thttp://gnunet.org\n" "and join our community at\n" "\thttps://gnunet.org/drupal/\n" "\n" "Have a lot of fun,\n" "\n" "The GNUnet team" msgstr "" "Xin chào mừng tới GNUnet!\n" "\n" "Trình giúp đỡ này sẽ hỏi bạn vài câu cơ bản để cấu hình GNUnet.\n" "\n" "Xin hãy thăm trang chủ của chúng tôi tại\n" "\thttp://gnunet.org\n" "và tham gia cộng đồng tại\n" "\thttp://gnunet.org/drupal/\n" "\n" "Chúc có nhiều niềm vui,\n" "\n" "Đội GNUnet" #: src/setup/gtk/gnunet-setup.glade:92 src/setup/gtk/gnunet-setup.glade:360 #: src/setup/gtk/gnunet-setup.glade:767 src/setup/gtk/gnunet-setup.glade:1384 msgid "Next" msgstr "Kế" #: src/setup/gtk/gnunet-setup.glade:194 msgid "" "Enter information about your network connection here.\n" "\n" "The \"Network interface\" is the device that connects your computer to the internet. This is usually a modem, an ISDN card or a network card in case you are using DSL.\n" "\n" "If your provider always assigns the same IP-Address to you (a \"static\" IP-Address), enter it into the \"IP-Address\" field. If your IP-Address changes every now and then (\"dynamic\" IP-Address) but there's a hostname that always points to your actual IP-Address (\"Dynamic DNS\"), you can also enter it here.\n" "If in doubt, leave the field empty. GNUnet will then try to determine your IP-Address.\n" "\n" "If you are connected to the internet through another computer doing SNAT, a router or a \"hardware firewall\" and other computers on the internet cannot connect to this computer, check the last option on this page. Leave it unchecked on direct connections through modems, ISDN cards and DNAT (also known as \"port forwarding\")." msgstr "" "Nhập thông tin về kết nối mạng tại đây.\n" "\n" "« Giao diện mạng » là thiết bị kết nối máy tính với Internet. Đây thường là một bộ điều giải, một bo mạch ISDN hay một bo mạch mạng nếu dùng DSL.\n" "\n" "Nếu nhà cung cấp luôn luôn gán cùng một địa chỉ IP (một địa chỉ IP « tĩnh »), thì hãy nhập địa chỉ đó vào vùng « IP-Address ». Nếu địa chỉ IP thay đổi sau mỗi lần kết nối (địa chỉ IP « động ») nhưng có một tên máy luôn luôn chỉ tới địa chỉ IP thực của bạn (« DNS động »), thì cũng có thể nhập nó ở đây.\n" "Nếu không biết phải làm gì, thì hãy để trống. GNUnet sẽ thử để nhận ra địa chỉ IP.\n" "\n" "Nếu kết nối Internet qua một máy khác thực hiện SNAT, một bộ định tuyến hay một « bức tường lửa kiểu phần cứng » và các máy khác trong Internet không thể kết nối tới máy này, thì hãy bật tùy chọn cuối cùng trên trang này. Bỏ chọn nếu nó kết nối trực tiếp qua bộ điều giải, bo mạch ISDN và DNAT (cũng được gọi như là « chuyển tiếp cổng »)." #: src/setup/gtk/gnunet-setup.glade:250 msgid "Computer cannot receive inbound connections (SNAT/Firewall)" msgstr "Máy không thể nhận được kết nối đi vào (SNAT/bức tường lửa)" #: src/setup/gtk/gnunet-setup.glade:283 msgid "IP-Address/Hostname:" msgstr "Địa chỉ IP/Tên máy:" #: src/setup/gtk/gnunet-setup.glade:296 msgid "Network interface:" msgstr "Giao diện mạng:" #: src/setup/gtk/gnunet-setup.glade:319 msgid "Network connection" msgstr "Kết nối mạng" #: src/setup/gtk/gnunet-setup.glade:462 msgid "" "You can limit GNUnet's ressource usage here.\n" "\n" "\"Bandwidth limitation\" is how much data may be sent per second. If you have a flatrate you can set it to the maximum speed of your internet connection.\n" "\n" "The \"Max. CPU usage\" is the percentage of processor time GNUnet is allowed to use." msgstr "" "Có thể giới hạn sử dụng tài nguyên của GNUnet ở đây.\n" "\n" "« Giới hạn dải thông » cho biết bao nhiêu dữ liệu có thể gửi mỗi giây. Nếu có một tốc độ đều thì có thể đặt thành tốc độ lớn nhất của kết nối Internet.\n" "\n" "« Sử dụng CPU lớn nhất » là phần trăm thời gian của bộ xử lý cho phép GNUnet sử dụng." #: src/setup/gtk/gnunet-setup.glade:520 msgid "Downstream (Bytes/s):" msgstr "Dòng vào (byte/giây):" #: src/setup/gtk/gnunet-setup.glade:547 msgid "Upstream (Bytes/s):" msgstr "Dòng ra (byte/giây):" #: src/setup/gtk/gnunet-setup.glade:561 msgid "Bandwidth limitation" msgstr "Giới hạn dải thông" #: src/setup/gtk/gnunet-setup.glade:580 msgid "Use denoted bandwidth for GNUnet" msgstr "Sử dụng dải thông chỉ ra cho GNUnet" #: src/setup/gtk/gnunet-setup.glade:596 msgid "Share denoted bandwidth with other applications" msgstr "Chia sẻ dải thông đã xác định với các ứng dụng khác" #: src/setup/gtk/gnunet-setup.glade:614 msgid "Bandwidth sharing" msgstr "Chia sẻ dải thông" #: src/setup/gtk/gnunet-setup.glade:636 msgid "Max. CPU usage (%):" msgstr "Tiêu thụ CPU tối đa (%):" #: src/setup/gtk/gnunet-setup.glade:659 msgid "CPU usage" msgstr "Tiêu thụ CPU" #: src/setup/gtk/gnunet-setup.glade:682 msgid "Load limitation" msgstr "Giới hạn trọng tải" #: src/setup/gtk/gnunet-setup.glade:872 msgid "" "GNUnet is able to store data from other peers in your datastore. This is useful if an adversary has access to your inserted content and you need to deny that the content is yours. With \"content migration\" on, the content could have \"migrated\" over the internet to your node without your knowledge.\n" "It also helps to spread popular content over different peers to enhance availability.\n" "\n" "The GNUnet datastore contains all data that GNUnet generates (index data, inserted and migrated content). Its maximum size can be specified below.\n" "\n" "If you are an experienced user, you may want to tweak your GNUnet installation using the enhanced configurator.\n" "\n" "After changing the configuration and/or updating GNUnet, it is sometimes required to run gnunet-update to update internal data structures. Depending on the changes made, this may take some time." msgstr "" "GNUnet có thể chứa ghi nhớ dữ liệu từ các đồng đẳng khác trong kho dữ liệu. Tính năng này có ích nếu một đối tượng xấu truy cập tới nội dung đã chèn và người dùng cần loại bỏ nội dung đó. Khi « chuyển nội dung » bật dùng, nội dung có thể « chuyển » qua Internet tới nút của người dùng mà người dùng không biết.\n" "Nó đồng thời giúp chia sẻ nội dung phổ biến qua các đồng đẳng khác nhau để dễ dàng truy cập.\n" "\n" "Kho dữ liệu GNUnet chứa mọi dữ liệu GNUnet tạo ra (dữ liệu chỉ mục, nội dung chèn và chuyển vào). Có thể chỉ ra kích cỡ lớn nhất ở dưới.\n" "\n" "Nếu là một người dùng có kinh nghiệm, bạn có thể chỉnh sửa cài đặt GNUnet của mình bằng trình cấu hình nâng cấp.\n" "\n" "Sau khi thay đổi cấu hình và/hoặc cập nhật GNUnet, đôi khi cũng cần phải chạy tiến trình cập nhật gnunet-update để cập nhật cấu trúc dữ liệu nội bộ. Phụ thuộc vào các thay đổi làm, tiến trình này có thể hơi lâu." #: src/setup/gtk/gnunet-setup.glade:905 msgid "Store migrated content" msgstr "Chứa nội dung đã chuyển vào" #: src/setup/gtk/gnunet-setup.glade:923 msgid "Maximum datastore size (MB):" msgstr "Kích cỡ kho dữ liệu tối đa (MB):" #: src/setup/gtk/gnunet-setup.glade:952 msgid "Start the GNUnet background process on computer startup" msgstr "Khởi chạy tiến trình nền GNUnet sau khi khởi động máy tính" #: src/setup/gtk/gnunet-setup.glade:969 msgid "Open the enhanced configurator" msgstr "Mở công cụ cấu hình cấp cao" #: src/setup/gtk/gnunet-setup.glade:986 msgid "Run gnunet-update" msgstr "Chạy gnunet-update (cập nhật)" #: src/setup/gtk/gnunet-setup.glade:1015 src/setup/gtk/gnunet-setup.glade:1299 msgid "Other settings" msgstr "Thiết lập khác" #: src/setup/gtk/gnunet-setup.glade:1100 msgid "Finish" msgstr "Kết thúc" #: src/setup/gtk/gnunet-setup.glade:1205 msgid "" "Define the user and the group owning the GNUnet service here.\n" "\n" "For security reasons, it is a good idea to let this setup create a new user account and a new group under which the GNUnet service is started at system startup.\n" "\n" "However, GNUnet may not be able to access files other than its own. This includes files you want to publish in GNUnet. You'll have to grant read permissions to the user specified below.\n" "\n" "Leave the fields empty to run GNUnet with system privileges." msgstr "" "Xác định người dùng và nhóm sở hữu dịch vụ GNUnet ở đây.\n" "\n" "Vì lý do bảo mật, nên cho phép tạo một tài khoản người dùng và một nhóm mới sở hữu dịch vụ GNUnet chạy mỗi khi khởi động máy tính.\n" "\n" "Tuy nhiên, GNUnet chỉ có thể truy cập tới các tập tin mà nó sở hữu, bao gồm các tập tin người dùng muốn đưa ra chia sẻ trong GNUnet. Sẽ cần cho phép người dùng chỉ ra dưới đây quyền đọc chúng.\n" "\n" "Để trống để chạy GNUnet với quyền hệ thống." #: src/setup/gtk/gnunet-setup.glade:1239 msgid "User account:" msgstr "Tài khoản người dùng:" #: src/setup/gtk/gnunet-setup.glade:1279 msgid "Group:" msgstr "Nhóm:" #: src/setup/gtk/gnunet-setup.glade:1462 msgid "gnunet-setup" msgstr "gnunet-setup" #: src/setup/gtk/gnunet-setup.glade:1481 msgid "Save configuration" msgstr "Lưu lại cấu hình" #: src/setup/gtk/gnunet-setup.glade:1493 msgid "Show copyright information for gnunet-setup." msgstr "Hiển thị thông tin tác quyền đối với gnunet-setup." #: src/setup/gtk/gnunet-setup.glade:1526 msgid "About gnunet-setup" msgstr "Giới thiệu gnunet-setup" #: src/setup/gtk/gnunet-setup.glade:1531 msgid "(C) 2001-2007 Christian Grothoff (and other contributing authors)" msgstr "© năm 2001-2007 của Christian Grothoff (và các nhà cộng tác khác)" #: src/setup/gtk/gnunet-setup.glade:1532 msgid "This is the configuration tool for GNUnet." msgstr "Đây là công cụ cấu hình cho GNUnet." #: src/setup/gtk/gnunet-setup.glade:1535 msgid "" "\t\t GNU GENERAL PUBLIC LICENSE\n" "\t\t Version 2, June 1991\n" "\n" " Copyright (C) 1989, 1991 Free Software Foundation, Inc.\n" " 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\n" " Everyone is permitted to copy and distribute verbatim copies\n" " of this license document, but changing it is not allowed.\n" "\n" "\t\t\t Preamble\n" "\n" " The licenses for most software are designed to take away your\n" "freedom to share and change it. By contrast, the GNU General Public\n" "License is intended to guarantee your freedom to share and change free\n" "software--to make sure the software is free for all its users. This\n" "General Public License applies to most of the Free Software\n" "Foundation's software and to any other program whose authors commit to\n" "using it. (Some other Free Software Foundation software is covered by\n" "the GNU Library General Public License instead.) You can apply it to\n" "your programs, too.\n" "\n" " When we speak of free software, we are referring to freedom, not\n" "price. Our General Public Licenses are designed to make sure that you\n" "have the freedom to distribute copies of free software (and charge for\n" "this service if you wish), that you receive source code or can get it\n" "if you want it, that you can change the software or use pieces of it\n" "in new free programs; and that you know you can do these things.\n" "\n" " To protect your rights, we need to make restrictions that forbid\n" "anyone to deny you these rights or to ask you to surrender the rights.\n" "These restrictions translate to certain responsibilities for you if you\n" "distribute copies of the software, or if you modify it.\n" "\n" " For example, if you distribute copies of such a program, whether\n" "gratis or for a fee, you must give the recipients all the rights that\n" "you have. You must make sure that they, too, receive or can get the\n" "source code. And you must show them these terms so they know their\n" "rights.\n" "\n" " We protect your rights with two steps: (1) copyright the software, and\n" "(2) offer you this license which gives you legal permission to copy,\n" "distribute and/or modify the software.\n" "\n" " Also, for each author's protection and ours, we want to make certain\n" "that everyone understands that there is no warranty for this free\n" "software. If the software is modified by someone else and passed on, we\n" "want its recipients to know that what they have is not the original, so\n" "that any problems introduced by others will not reflect on the original\n" "authors' reputations.\n" "\n" " Finally, any free program is threatened constantly by software\n" "patents. We wish to avoid the danger that redistributors of a free\n" "program will individually obtain patent licenses, in effect making the\n" "program proprietary. To prevent this, we have made it clear that any\n" "patent must be licensed for everyone's free use or not licensed at all.\n" "\n" " The precise terms and conditions for copying, distribution and\n" "modification follow.\n" "\n" "\t\t GNU GENERAL PUBLIC LICENSE\n" " TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\n" "\n" " 0. This License applies to any program or other work which contains\n" "a notice placed by the copyright holder saying it may be distributed\n" "under the terms of this General Public License. The \"Program\", below,\n" "refers to any such program or work, and a \"work based on the Program\"\n" "means either the Program or any derivative work under copyright law:\n" "that is to say, a work containing the Program or a portion of it,\n" "either verbatim or with modifications and/or translated into another\n" "language. (Hereinafter, translation is included without limitation in\n" "the term \"modification\".) Each licensee is addressed as \"you\".\n" "\n" "Activities other than copying, distribution and modification are not\n" "covered by this License; they are outside its scope. The act of\n" "running the Program is not restricted, and the output from the Program\n" "is covered only if its contents constitute a work based on the\n" "Program (independent of having been made by running the Program).\n" "Whether that is true depends on what the Program does.\n" "\n" " 1. You may copy and distribute verbatim copies of the Program's\n" "source code as you receive it, in any medium, provided that you\n" "conspicuously and appropriately publish on each copy an appropriate\n" "copyright notice and disclaimer of warranty; keep intact all the\n" "notices that refer to this License and to the absence of any warranty;\n" "and give any other recipients of the Program a copy of this License\n" "along with the Program.\n" "\n" "You may charge a fee for the physical act of transferring a copy, and\n" "you may at your option offer warranty protection in exchange for a fee.\n" "\n" " 2. You may modify your copy or copies of the Program or any portion\n" "of it, thus forming a work based on the Program, and copy and\n" "distribute such modifications or work under the terms of Section 1\n" "above, provided that you also meet all of these conditions:\n" "\n" " a) You must cause the modified files to carry prominent notices\n" " stating that you changed the files and the date of any change.\n" "\n" " b) You must cause any work that you distribute or publish, that in\n" " whole or in part contains or is derived from the Program or any\n" " part thereof, to be licensed as a whole at no charge to all third\n" " parties under the terms of this License.\n" "\n" " c) If the modified program normally reads commands interactively\n" " when run, you must cause it, when started running for such\n" " interactive use in the most ordinary way, to print or display an\n" " announcement including an appropriate copyright notice and a\n" " notice that there is no warranty (or else, saying that you provide\n" " a warranty) and that users may redistribute the program under\n" " these conditions, and telling the user how to view a copy of this\n" " License. (Exception: if the Program itself is interactive but\n" " does not normally print such an announcement, your work based on\n" " the Program is not required to print an announcement.)\n" "\n" "These requirements apply to the modified work as a whole. If\n" "identifiable sections of that work are not derived from the Program,\n" "and can be reasonably considered independent and separate works in\n" "themselves, then this License, and its terms, do not apply to those\n" "sections when you distribute them as separate works. But when you\n" "distribute the same sections as part of a whole which is a work based\n" "on the Program, the distribution of the whole must be on the terms of\n" "this License, whose permissions for other licensees extend to the\n" "entire whole, and thus to each and every part regardless of who wrote it.\n" "\n" "Thus, it is not the intent of this section to claim rights or contest\n" "your rights to work written entirely by you; rather, the intent is to\n" "exercise the right to control the distribution of derivative or\n" "collective works based on the Program.\n" "\n" "In addition, mere aggregation of another work not based on the Program\n" "with the Program (or with a work based on the Program) on a volume of\n" "a storage or distribution medium does not bring the other work under\n" "the scope of this License.\n" "\n" " 3. You may copy and distribute the Program (or a work based on it,\n" "under Section 2) in object code or executable form under the terms of\n" "Sections 1 and 2 above provided that you also do one of the following:\n" "\n" " a) Accompany it with the complete corresponding machine-readable\n" " source code, which must be distributed under the terms of Sections\n" " 1 and 2 above on a medium customarily used for software interchange; or,\n" "\n" " b) Accompany it with a written offer, valid for at least three\n" " years, to give any third party, for a charge no more than your\n" " cost of physically performing source distribution, a complete\n" " machine-readable copy of the corresponding source code, to be\n" " distributed under the terms of Sections 1 and 2 above on a medium\n" " customarily used for software interchange; or,\n" "\n" " c) Accompany it with the information you received as to the offer\n" " to distribute corresponding source code. (This alternative is\n" " allowed only for noncommercial distribution and only if you\n" " received the program in object code or executable form with such\n" " an offer, in accord with Subsection b above.)\n" "\n" "The source code for a work means the preferred form of the work for\n" "making modifications to it. For an executable work, complete source\n" "code means all the source code for all modules it contains, plus any\n" "associated interface definition files, plus the scripts used to\n" "control compilation and installation of the executable. However, as a\n" "special exception, the source code distributed need not include\n" "anything that is normally distributed (in either source or binary\n" "form) with the major components (compiler, kernel, and so on) of the\n" "operating system on which the executable runs, unless that component\n" "itself accompanies the executable.\n" "\n" "If distribution of executable or object code is made by offering\n" "access to copy from a designated place, then offering equivalent\n" "access to copy the source code from the same place counts as\n" "distribution of the source code, even though third parties are not\n" "compelled to copy the source along with the object code.\n" "\n" " 4. You may not copy, modify, sublicense, or distribute the Program\n" "except as expressly provided under this License. Any attempt\n" "otherwise to copy, modify, sublicense or distribute the Program is\n" "void, and will automatically terminate your rights under this License.\n" "However, parties who have received copies, or rights, from you under\n" "this License will not have their licenses terminated so long as such\n" "parties remain in full compliance.\n" "\n" " 5. You are not required to accept this License, since you have not\n" "signed it. However, nothing else grants you permission to modify or\n" "distribute the Program or its derivative works. These actions are\n" "prohibited by law if you do not accept this License. Therefore, by\n" "modifying or distributing the Program (or any work based on the\n" "Program), you indicate your acceptance of this License to do so, and\n" "all its terms and conditions for copying, distributing or modifying\n" "the Program or works based on it.\n" "\n" " 6. Each time you redistribute the Program (or any work based on the\n" "Program), the recipient automatically receives a license from the\n" "original licensor to copy, distribute or modify the Program subject to\n" "these terms and conditions. You may not impose any further\n" "restrictions on the recipients' exercise of the rights granted herein.\n" "You are not responsible for enforcing compliance by third parties to\n" "this License.\n" "\n" " 7. If, as a consequence of a court judgment or allegation of patent\n" "infringement or for any other reason (not limited to patent issues),\n" "conditions are imposed on you (whether by court order, agreement or\n" "otherwise) that contradict the conditions of this License, they do not\n" "excuse you from the conditions of this License. If you cannot\n" "distribute so as to satisfy simultaneously your obligations under this\n" "License and any other pertinent obligations, then as a consequence you\n" "may not distribute the Program at all. For example, if a patent\n" "license would not permit royalty-free redistribution of the Program by\n" "all those who receive copies directly or indirectly through you, then\n" "the only way you could satisfy both it and this License would be to\n" "refrain entirely from distribution of the Program.\n" "\n" "If any portion of this section is held invalid or unenforceable under\n" "any particular circumstance, the balance of the section is intended to\n" "apply and the section as a whole is intended to apply in other\n" "circumstances.\n" "\n" "It is not the purpose of this section to induce you to infringe any\n" "patents or other property right claims or to contest validity of any\n" "such claims; this section has the sole purpose of protecting the\n" "integrity of the free software distribution system, which is\n" "implemented by public license practices. Many people have made\n" "generous contributions to the wide range of software distributed\n" "through that system in reliance on consistent application of that\n" "system; it is up to the author/donor to decide if he or she is willing\n" "to distribute software through any other system and a licensee cannot\n" "impose that choice.\n" "\n" "This section is intended to make thoroughly clear what is believed to\n" "be a consequence of the rest of this License.\n" "\n" " 8. If the distribution and/or use of the Program is restricted in\n" "certain countries either by patents or by copyrighted interfaces, the\n" "original copyright holder who places the Program under this License\n" "may add an explicit geographical distribution limitation excluding\n" "those countries, so that distribution is permitted only in or among\n" "countries not thus excluded. In such case, this License incorporates\n" "the limitation as if written in the body of this License.\n" "\n" " 9. The Free Software Foundation may publish revised and/or new versions\n" "of the General Public License from time to time. Such new versions will\n" "be similar in spirit to the present version, but may differ in detail to\n" "address new problems or concerns.\n" "\n" "Each version is given a distinguishing version number. If the Program\n" "specifies a version number of this License which applies to it and \"any\n" "later version\", you have the option of following the terms and conditions\n" "either of that version or of any later version published by the Free\n" "Software Foundation. If the Program does not specify a version number of\n" "this License, you may choose any version ever published by the Free Software\n" "Foundation.\n" "\n" " 10. If you wish to incorporate parts of the Program into other free\n" "programs whose distribution conditions are different, write to the author\n" "to ask for permission. For software which is copyrighted by the Free\n" "Software Foundation, write to the Free Software Foundation; we sometimes\n" "make exceptions for this. Our decision will be guided by the two goals\n" "of preserving the free status of all derivatives of our free software and\n" "of promoting the sharing and reuse of software generally.\n" "\n" "\t\t\t NO WARRANTY\n" "\n" " 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY\n" "FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN\n" "OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES\n" "PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED\n" "OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\n" "MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS\n" "TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE\n" "PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,\n" "REPAIR OR CORRECTION.\n" "\n" " 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\n" "WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR\n" "REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,\n" "INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING\n" "OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED\n" "TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY\n" "YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER\n" "PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE\n" "POSSIBILITY OF SUCH DAMAGES.\n" "\n" "\t\t END OF TERMS AND CONDITIONS\n" "\n" "\t How to Apply These Terms to Your New Programs\n" "\n" " If you develop a new program, and you want it to be of the greatest\n" "possible use to the public, the best way to achieve this is to make it\n" "free software which everyone can redistribute and change under these terms.\n" "\n" " To do so, attach the following notices to the program. It is safest\n" "to attach them to the start of each source file to most effectively\n" "convey the exclusion of warranty; and each file should have at least\n" "the \"copyright\" line and a pointer to where the full notice is found.\n" "\n" " \n" " Copyright (C) \n" "\n" " This program is free software; you can redistribute it and/or modify\n" " it under the terms of the GNU General Public License as published by\n" " the Free Software Foundation; either version 2 of the License, or\n" " (at your option) any later version.\n" "\n" " This program is distributed in the hope that it will be useful,\n" " but WITHOUT ANY WARRANTY; without even the implied warranty of\n" " MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" " GNU General Public License for more details.\n" "\n" " You should have received a copy of the GNU General Public License\n" " along with this program; if not, write to the Free Software\n" " Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA\n" "\n" "\n" "Also add information on how to contact you by electronic and paper mail.\n" "\n" "If the program is interactive, make it output a short notice like this\n" "when it starts in an interactive mode:\n" "\n" " Gnomovision version 69, Copyright (C) year name of author\n" " Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.\n" " This is free software, and you are welcome to redistribute it\n" " under certain conditions; type `show c' for details.\n" "\n" "The hypothetical commands `show w' and `show c' should show the appropriate\n" "parts of the General Public License. Of course, the commands you use may\n" "be called something other than `show w' and `show c'; they could even be\n" "mouse-clicks or menu items--whatever suits your program.\n" "\n" "You should also get your employer (if you work as a programmer) or your\n" "school, if any, to sign a \"copyright disclaimer\" for the program, if\n" "necessary. Here is a sample; alter the names:\n" "\n" " Yoyodyne, Inc., hereby disclaims all copyright interest in the program\n" " `Gnomovision' (which makes passes at compilers) written by James Hacker.\n" "\n" " , 1 April 1989\n" " Ty Coon, President of Vice\n" "\n" "This General Public License does not permit incorporating your program into\n" "proprietary programs. If your program is a subroutine library, you may\n" "consider it more useful to permit linking proprietary applications with the\n" "library. If this is what you want to do, use the GNU Library General\n" "Public License instead of this License.\n" msgstr "" "[Xem http://vi.wikisource.org/wiki/GPL]\n" "\n" "Giấy phép Công cộng GNU\n" "\n" "Phiên bản 2, Tháng 6/1991\n" "\n" "Translated/Dịch: 2006-07-10\n" "\n" "Translator/Dịch giả: Clytie Siddall \n" "\n" "Reviewer/Biên tập viên: Trần Thế Trung \n" "\n" "This is an unofficial translation of the GNU General Public License into Vietnamese. It was not published by the Free Software Foundation, and does not legally state the distribution terms for software that uses the GNU GPL--only the original English text of the GNU GPL does that. However, we hope that this translation will help Vietnamese speakers understand the GNU GPL better.\n" "\n" "Đây là một bản dịch tiếng Việt không chính thức của Giấy phép Công cộng GNU (GPL). Nó không được xuất bản bởi Tổ Chức Phần Mềm Tự Do, và không tuyên bố một cách hợp pháp các điều kiện phát hành phần mềm sử dụng GPL — chỉ có bản tiếng Anh gốc của GPL là hợp pháp. Tuy nhiên, chúng tôi mong muốn bản dịch này sẽ giúp đỡ người nói tiếng Việt hiểu khá hơn GPL.\n" "\n" "Bản quyền © năm 1989, 1991 của Tổ chức Phần mềm Tự do. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA (Mỹ)\n" "\n" "Mọi người đều đuợc quyền sao chép và phân phối nguyên văn tài liệu giấy phép này, nhưng không được phép thay đổi nó.\n" "\n" "Lời mở đầu\n" "\n" "Giấy phép sử dụng của hầu hết các phần mềm được thiết kế để bạn không được tự do chia sẻ và thay đổi phần mềm đó. Trái lại, Giấy phép Công cộng GNU dự định đảm bảo cho bạn được tự do chia sẻ và thay đổi phần mềm một cách tự do, và đảm bảo phần mềm tự do cho mọi người sử dụng. Giấy phép Công cộng GNU này áp dụng cho hầu hết những phần mềm của Tổ chức Phần mềm Tự do, và cho bất kỳ chương trình máy tính nào khác mà tác giả của nó cam kết sử dụng nó. (Một số phần mềm khác của Tổ chức Phần mềm Tự do dùng Giấy phép Thư viện Công cộng GNU thay thế.) Bạn cũng có thể áp dụng giấy phép này cho các chương trình do bạn làm ra.\n" "\n" "Khi chúng tôi nói về phần mềm tự do, chúng tôi đề cập đến sự tự do sử dụng, chứ không phải là giá cả. Giấy phép Công cộng GNU của chúng tôi được thiết kế để đảm bảo bạn có quyền tự do phát hành bản sao của phần mềm tự do (và thu tiền dịch vụ này nếu muốn), nhận mã nguồn hoặc có khả năng lấy nó nếu bạn muốn, bạn có thể thay đổi phần mềm hay sử dụng bất kỳ đoạn nào của nó trong chương trình tự do mới; và để giúp bạn biết rõ là bạn có thể làm những điều này.\n" "\n" "Để bảo vệ quyền lợi của bạn, chúng tôi cần đưa ra những hạn chế để cấm bất cứ ai phủ nhận bạn có những quyền này hay đòi hỏi bạn từ bỏ nó. Những sự hạn chế này được hiểu là một số trách nhiệm nhất thiết của bạn nếu bạn phát hành bản sao của phần mềm hoặc sửa đổi nó.\n" "\n" "Chẳng hạn, nếu bạn phát hành bản sao của chương trình như vậy, dù là cho không hay thu tiền, bạn phải trao cho người nhận tất cả những quyền bạn có. Bạn phải chắc chắn là họ cũng nhận được hay có thể lấy mã nguồn. Và bạn cũng phải cho họ biết những điều kiện này, để họ biết những quyền của họ.\n" "\n" "Chúng tôi bảo vệ các quyền của bạn qua hai bước: (1) bản quyền tác giả của phần mềm và (2) trao cho bạn giấy phép này để bạn có quyền hợp pháp sao chép, phát hành và/hay sửa đổi phần mềm.\n" "\n" "Hơn nữa, để bảo vệ tác giả và chính chúng tôi, chúng tôi muốn chắc chắn là mọi người hiểu rằng phần mềm tự do này không có bảo hành. Nếu phần mềm bị sửa đổi bởi người khác và được phân phát tiếp, chúng tôi muốn người nhận biết rằng cái mà họ có đó không phải là bản gốc, vì vậy, bất kỳ lỗi nào do người khác gây ra sẽ không làm mang tiếng đến tác giả gốc.\n" "\n" "Cuối cùng, chương trình tự do nào cũng luôn bị đe dọa bởi bằng sáng chế phần mềm. Chúng tôi muốn tránh nguy cơ việc những người phát hành lại chương trình tự do sẽ giành bằng sáng chế riêng, sở hữu chương trình đó. Để ngăn ngừa điều này, chúng tôi đã làm rõ rằng bằng sáng chế phải cấp cho mọi người sử dụng tự do, hoặc không cấp cho bất kỳ ai hết.\n" "\n" "Sau đây là những điều kiện và điều khoản chính xác đối với việc sao chép, phát hành và sửa đổi.\n" "\n" "GIẤY PHÉP CÔNG CỘNG GNU ĐIỀU KIỆN SAO CHÉP, PHÁT HÀNH VÀ SỬA ĐỔI\n" "\n" "Phần 0.\n" "\n" "Giấy phép này áp dụng cho bất kỳ chương trình nào hay sản phẩm nào khác có thông báo được chèn vào bởi người giữ tác quyền nói rằng nó có thể được phát hành theo các điều khoản của GPL này. Cụm từ « Chương trình » dưới đây có nghĩa là bất kỳ chương trình máy tính hay sản phẩm như vậy, và « sản phẩm dựa trên Chương trình » có nghĩa là Chương trình hay bất kỳ sản phẩm nào bắt nguồn từ nó dưới luật bản quyền: tức là, sản phẩm chứa Chương trình đó hay một phần của nó, hoặc đúng nguyên văn hoặc với sự sửa đổi và/hoặc được dịch sang một ngôn ngữ khác. (Kể từ câu này, việc dịch ngôn ngữ được bao gồm vô hạn trong thuật ngữ « sự sửa đổi ».) Người được cấp Giấy phép được gọi là « bạn ».\n" "\n" "Những hoạt động khác ngoài sự sao chép, phát hành và sửa đổi không được kiểm soát bởi Giấy phép này; nó ở ngoài phạm vi của giấy phép này. Hành động chạy Chương trình không bị hạn chế, và dữ liệu xuất từ Chương trình chỉ bị khống chế nếu nội dung của nó tạo thành một sản phẩm dựa vào Chương trình (không phụ thuộc vào việc vận hành Chương trình). Điều đó đúng hay không phụ thuộc vào điều mà Chương trình tạo ra.\n" "\n" "Phần 1.\n" "\n" "Bạn có quyền sao chép và phát hành bản sao đúng nguyên văn của mã nguồn của Chương trình như bạn đã nhận nó, bằng bất kỳ cách nào, miễn là bạn công bố rõ ràng và thích đáng trên mỗi bản sao một thông báo tác quyền thích hợp và miễn trừ bảo hành; giữ nguyên vẹn mọi thông báo liên quan đến Giấy phép này và miễn trừ bảo hành; và đưa cho những người nhận Chương trình khác một bản sao của Giấy phép cùng với Chương trình.\n" "\n" "Bạn có thể thu phí cho việc gởi bản sao, và bạn có thể tùy ý đề nghị cung cấp dịch vụ bảo hành có thu phí.\n" "\n" "Phần 2.\n" "\n" "Bạn có quyền sửa đổi bản sao của mình hay của Chương trình hoặc đoạn nào của nó để tạo một sản phẩm dựa vào Chương trình, và sao chép và phát hành sự sửa đổi hay sản phẩm như vậy theo điều khoản của phần 1 nêu trên, miễn là bạn cũng tuân theo tất cả các điều kiện sau:\n" "\n" "a) Bạn phải làm cho mỗi tập tin đã sửa đổi chứa thông báo dễ thấy nói rằng bạn đã thay đổi tập tin đó và hiển thị ngày tháng của sự thay đổi nào.\n" "\n" "b) Bạn phải làm cho sản phẩm mà bạn phát hành hay xuất bản, toàn bộ hay một phần có chứa hay bắt nguồn từ Chương trình hay các phần của nó, được cấp toàn bộ miễn phí cho người khác với điều kiện của Giấy phép này.\n" "\n" "c) Nếu chương trình bị sửa đổi có đọc tương tác lệnh khi chạy, bạn phải làm nó, khi được khởi chạy bằng cách thông thường nhất qua tương tác như vậy, in ra hay hiển thị một lời loan báo gồm có thông báo quyền tác giả thích hợp và thông báo không có bảo hành (nếu không, nói rằng bạn cung cấp việc bảo hành) và rằng người dùng có quyền phát hành lại chương trình đó với những điều kiện này, và thông tin cho người dùng biết cách xem một bản sao của Giấy phép này. (Ngoại lệ: nếu Chương trình chính nó là tương tác nhưng vốn không in ra lời loan báo như vậy, sản phẩm của bạn đựa vào Chương trình không bắt buộc phải in ra lời loan báo như vậy).\n" "\n" "Những điều kiện này áp dụng cho toàn bộ sản phẩm bị sửa đổi. Nếu có thể nhận ra phần riêng của sản phẩm đó không bắt nguồn từ Chương trình, và các phần này có thể được xem một cách hợp lý là sản phẩm riêng và không phụ thuộc, thì Giấy phép này, và các điều kiện của nó, không áp dụng cho những phần riêng đó khi bạn phát hành chúng là sản phẩm riêng. Tuy nhiên, khi bạn phát hành những phần đó cùng với toàn bộ sản phẩm dựa vào Chương trình, sự phát hành toàn bộ này phải tuân theo điều kiện của Giấy phép này, cung cấp cho mọi người có quyền bao trùm toàn bộ sản phẩm, bao quát tất cả mọi phần của nó, bất kể ai đã tạo nó.\n" "\n" "Như thế thì phần này không đự định yêu cầu quyền hay không thừa nhận quyền của bạn về sản phẩm mà toàn bộ là do bạn tạo ra; mà phần này định nói về quyền hạn trong điều khiển sự phát hành sản phẩm bắt nguồn từ hay sản phẩm hợp tác tập thể dựa vào Chương trình.\n" "\n" "Hơn nữa, việc chứa các sản phẩm khác không dựa vào Chương trình cùng với Chương trình (hay với sản phẩm dựa vào Chương trình) trên thiết bị lưu trữ hay vật phát hành không nằm trong phạm vi của Giấy phép này.\n" "\n" "Phần 3.\n" "\n" "Bạn có quyền sao chép và phát hành Chương trình (hoặc sản phẩm dựa vào nó, dưới Phần 2) trong dạng thức mã đối tượng hay tập tin chạy được với điều kiện của Phần 1 và 2 bên trên, miễn là bạn cũng làm một trong số những việc sau đây:\n" "\n" "a) Kèm theo toàn bộ mã nguồn tương ứng mà máy có thể đọc được, được phát hành với điều kiện của Phần 1 và 2 bên trên, trên thiết bị lưu trữ thường dùng để trao đổi phần mềm; hay\n" "\n" "b) Kèm theo lời mời ghi trên giấy, hợp lệ trong ít nhất ba năm sau, cung cấp cho bất cứ người khác nào, với giá không lớn hơn giá cần thiết để phân phát các mã nguồn đó, một bản sao, mà máy có thể đọc được, của toàn bộ mã nguồn tương ứng, để được phát hành với điều kiện của Phần 1 và 2 bên trên, trên thiết bị lưu trữ thường dùng để trao đổi phần mềm; hay\n" "\n" "c) Kèm theo các thông tin bạn đã nhận về lời mời phát hành mã nguồn tương ứng. (Tùy chọn này chỉ được phép khi phát hành không thương mại, và chỉ khi bạn đã nhận chương trình trong dạng thức mã đối tượng hay tập tin chạy được cùng với lời mời như vậy, tùy theo Phần phụ (b) trên).\n" "\n" "Mã nguồn của sản phẩm có nghĩa là dạng thức sản phẩm được ưa thích khi sửa đổi nó. Đối với sản phẩm là tập tin chạy được, toàn bộ mã nguồn có nghĩa là tất cả các mã nguồn cho mọi mô-đun đã chứa, cộng với bất cứ tập tin xác định giao diện tương ứng, cộng với các tập lệnh được dùng để điều khiển tiến trình biên dịch và cài đặt tập tin chạy được. Tuy nhiên, ngoại lệ đặc biệt là mã nguồn được phát hành không cần phải bao gồm những gì được phát hành bình thường (trong dạng thức hoặc nguồn hoặc nhị phân) với các thành phần chính (bộ biên dịch, hạt nhân v.v.) của hệ điều hành nơi tập tin chạy được hoạt động, trừ khi thành phần kèm theo cần thiết để chạy tập tin.\n" "\n" "Nếu việc phát hành mã chạy được hay mã đối tượng được làm bằng cách trao truy cập sao chép từ một nơi đã xác định, thì việc trao các truy cập sao chép tương đương đến mã nguồn đó từ cùng nơi đó được tính là sự phát hành mã nguồn, mặc dù người khác không bắt buộc phải sao chép mã nguồn cùng với mã đối tượng.\n" "\n" "Phần 4.\n" "\n" "Không cho phép bạn sao chép, sửa đổi, cấp giấy phép phụ hay phát hành Chương trình, trừ với điều kiện được diễn tả dứt khoát trong Giấy phép này. Bất kỳ sự cố gắng nào trong việc sao chép, sửa đổi, cấp giấy phép phụ hay phát hành Chương trình bằng cách khác bị bãi bỏ, và sẽ kết thúc các quyền của bạn dưới Giấy phép này. Tuy nhiên, người khác đã nhận bản sao hay quyền từ bạn dưới Giấy phép này sẽ không bị ảnh hưởng, miễn là họ tiếp tục tuân theo hoàn toàn.\n" "\n" "Phần 5.\n" "\n" "Bạn không bắt buộc phải chấp nhận Giấy phép này, vì bạn chưa ký tên vào nó. Tuy nhiên, không có gì khác cho phép bạn sửa đổi hay phát hành Chương trình hay sản phẩm bắt nguồn từ nó. Các hành động này bị pháp luật cấm nếu bạn không chấp nhận Giấy phép này. Vì vậy, bằng cách sửa đổi hay phát hành Chương trình (hay sản phẩm dựa vào nó), bạn ngụ ý sự chấp nhận Giấy phép này để làm như thế, gồm mọi điều kiện sao chép, phát hành hay sửa đổi Chương trình hay sản phẩm dựa vào nó.\n" "\n" "Phần 6.\n" "\n" "Mỗi lần bạn phát hành lại Chương trình (hay sản phẩm dựa vào nó), người nhận có thể nhận tự động một giấy phép từ người cấp gốc, để sao chép, phát hành hay sửa đổi Chương trình với điều kiện này. Không cho phép bạn hạn chế thêm cách người dùng sử dụng các quyền đã được cấp trong Giấy phép này. Bạn cũng không phải chịu trách nhiệm về việc ép buộc người khác tuân theo điều kiện của Giấy phép này.\n" "\n" "Phần 7.\n" "\n" "Nếu, do kết quả của quyết định của toà án hay các cáo buộc vi phạm bằng sáng chế hay vì bất cứ lý do nào (không bị giới hạn trong vấn đề bằng sáng chế), bạn bị ép buộc chấp nhận điều kiện (hoặc vì quyết định của toà án, sự thoả thuận hoặc cách khác nào) mà mâu thuẫn điều kiện của Giấy phép này, trường hợp này không miễn cho bạn không phải thỏa mãn điều kiện của Giấy phép này. Nếu bạn không thể phát hành bằng cách thỏa mãn đồng thời các giao ước của bạn dưới Giấy phép này và bất kỳ giao ước thích hợp khác, thì kết quả là không cho phép bạn phát hành Chương trình bằng cách nào cả. Lấy thí dụ, nếu một bằng sáng chế nào đó không cho phép sự phát hành lại Chương trình một cách miễn tiền bản quyền phát minh cho mọi người nhận bản sao từ bạn một cách trực tiếp hay gián tiếp, thì cách duy nhất bạn có thể thỏa cả bằng đó và Giấy phép này là hoàn toàn không phát hành Chương trình.\n" "\n" "Nếu đoạn nào trong phần này được quyết định là không hợp lệ hay không thể được ép buộc trong bất kỳ trường hợp riêng nào, đoạn còn lại dự định áp dụng được, và toàn bộ phần dự định áp dụng trong các trường hợp khác.\n" "\n" "Không phải là mục đích của phần này để xúi giục bạn vi phạm bằng sáng chế nào hay lời yêu sách quyền tài sản khác, hoặc để không thừa nhận sự hợp lệ của lời yêu sách như vậy; phần này có mục đích duy nhất là bảo vệ tình trạng nguyên vẹn của hệ thống phát hành phần mềm tự do, mà được thực thi bởi các áp dụng giấy phép công cộng. Nhiều người đã đóng góp rộng lượng cho một phạm vị rộng của các phần mềm được phát hành qua hệ thống đó, nhờ sự thực thi nền bỉ hệ thống đó: tùy tác giả / người tặng quyết định nếu họ muốn phát hành phần mềm qua hệ thống khác nào, và người được cấp Giấy phép không thể điều khiển cách quyết định đó.\n" "\n" "Phần này dự định diễn tả rõ ràng hoàn toàn kết quả được hiểu của phần còn lại của Giấy phép này.\n" "\n" "Phần 8.\n" "\n" "Nếu sự phát hành và/hay cách sử dụng Chương trình bị hạn chế trong một số quốc gia nào đó, hoặc bởi bằng sáng chế hoặc bởi giao diện có bản quyền tác giả, người giữ tác quyền gốc đã đặt Chương trình dưới Giấy phép này có khả năng thêm sự hạn chế phát hành địa lý riêng loại trừ những quốc gia đó, để cho phép phát hành chỉ trong hay giữa các quốc gia không bị loại trừ như thế. Trong trường hợp như vậy, Giấy phép này hợp nhất sự hạn chế đó như là nó được ghi trong thân của Giấy phép này.\n" "\n" "Phần 9.\n" "\n" "Tổ chức Phần mềm Tự do có thể xuất bản phiên bản đã sửa đổi và/hay mới của Giấy phép Công cộng GNU. Phiên bản mới như vậy sẽ có tinh thần tương tự với phiên bản hiện thời, nhưng có thể khác biệt trong chi tiết để giải quyết vấn đề mới. Mỗi phiên bản được gán một số hiệu phân biệt phiên bản đó. Nếu Chương trình xác định số phiên bản riêng của Giấy phép này áp dụng cho nó, « và bất kỳ phiên bản sau nào », bạn có tùy chọn thỏa điều kiện hoặc của phiên bản đó, hoặc của bất kỳ phiên bản sau nào được xuất bản bởi Tổ chức Phần mềm Tự do. Nếu Chương trình không xác định số phiên bản riêng của Giấy phép này, bạn có khả năng chọn bất kỳ phiên bản nào của Giấy phép này đã được xuất bản bởi Tổ chức Phần mềm Tự do.\n" "\n" "Phần 10.\n" "\n" "Nếu bạn muốn hợp nhất phần nào của Chương trình vào chương trình tự do khác có điều kiện phát hành khác GPL, hãy xin phép tác giả. Đối với phần mềm có bản quyền tác giả của Tổ chức Phần mềm Tự do, hãy viết thư cho Tổ chức Phần mềm Tự do : thỉng thoảng chúng tôi cho phép ngoại lệ trong trường hợp này. Quyết định của chúng tôi sẽ được hướng dẫn bởi hai mục đích là sự bảo tồn trạng thái tự do của mọi điều bắt nguồn từ phần mềm tự do của chúng tôi, và sự đẩy mạnh sự chia sẻ và sử dụng lại phần mềm một cách chung.\n" "\n" "KHÔNG BẢO HÀNH\n" "\n" "Phần 11.\n" "\n" "VÌ CHƯƠNG TRÌNH ĐÃ ĐƯỢC CẤP PHÉP MIỄN PHÍ, KHÔNG CÓ BẢO HÀNH ĐỐI VỚI CHƯƠNG TRÌNH NÀY, VỚI ĐIỀU KIỆN ĐƯỢC PHÁP LUẬT CHO PHÉP. TRỪ KHI XÁC ĐỊNH KHÁC BẰNG TÀI LIỆU GIẤY TỜ, CÁC NGƯỜI GIỮ BẢN QUYỀN TÁC GIẢ VÀ/HAY NGƯỜI KHÁC CUNG CẤP CHƯƠNG TRÌNH NÀY « NHƯ THẾ », KHÔNG CÓ BẢO HÀNH GÌ CẢ, KHÔNG PHÁT BIỂU NÓ, CŨNG KHÔNG NGỤ Ý NÓ, GỒM, NHƯNG KHÔNG BỊ HẠN CHẾ BỞI, SỰ BẢO ĐẢM ĐÃ NGỤ Ý TÌNH TRẠNG CÓ THỂ BÁN ĐƯỢC VÀ SỰ THÍCH HỢP VỚI MỘT MỤC ĐÍCH DỨT KHOÁT. MỌI RỦI RO VỀ CHẤT LƯỢNG, ĐỘ CHÍNH XÁC VÀ HIỆU SUẤT CỦA CHƯƠNG TRÌNH NÀY BẠN SẼ TỰ CHỊU. NẾU CHƯƠNG TRÌNH NÀY GÂY RA HƯ HỎNG, BẠN GÁNH VÁC HOÀN TOÀN TRÁCH NGHIỆM TRẢ TIỀN DỊCH VỤ GIÚP ĐỠ HAY SỪA CHỮA.\n" "\n" "\n" "Phần 12.\n" "\n" "KHÔNG CÓ TRƯỜNG HỢP NÀO (TRỪ KHI PHÁP LUẬT YÊU CẦU HAY KHI ĐƯỢC THỎA THUẬN BẰNG TÀI LIỆU GIẤY TỜ) MÀ BẤT KỲ NGƯỜI GIỮ BẢN QUYỀN TÁC GIẢ NÀO, HAY BẤT KỲ NGƯỜI KHÁC NÀO CÓ THỂ SỬA ĐỔI VÀ/HAY PHÁT HÀNH LẠI CHƯƠNG TRÌNH NHƯ ĐƯỢC PHÉP BÊN TRÊN, SẼ CÓ TRÁCH NHIỆM VỀ PHÁP LÝ BỒI THƯỜNG, GỒM BẤT KỲ BỒI THƯỜNG KIỂU TỔNG QUÁT, ĐẶC BIỆT, NGẪU NHIÊN HAY DO HẬU QUẢ DO SỬ DỤNG HAY SỰ KHÔNG CÓ KHẢ NĂNG SỬ DỤNG CHƯƠNG TRÌNH NÀY (GỒM NHƯNG KHÔNG PHẢI BỊ HẠN THẾ BỞI SỰ MẤT DỮ LIỆU HAY DỮ LIỆU BỊ LÀM CHO KHÔNG CHÍNH XÁC HAY CÁC MẤT MÁT CỦA BẠN HAY NGƯỜI KHÁC HAY SỰ KHÔNG HOẠT ĐỘNG ĐƯỢC CHƯƠNG TRÌNH NÀY VỚI CHƯƠNG TRÌNH KHÁC), THẬM CHÍ NẾU BẠN HAY NGƯỜI KHÁC ĐÃ ĐƯỢC BÁO BIẾT CÓ KHẢ NĂNG THIỆT HẠI NHƯ VẬY.\n" "\n" "KẾT THÚC CỦA ĐIỀU KIỆN\n" "\n" "Cách áp dụng điều kiện này cho các chương trình mới của bạn\n" "\n" "Nếu bạn phát triển chương trình mới, và muốn làm cho nó có ích nhiều nhất cho mọi người, phương pháp tốt nhất đạt được mục đích này là làm cho nó là phần mềm tự do mà mọi người có thể phát hành lại và sửa đổi với điều kiện này.\n" "\n" "Để làm như thế, hãy đính các thông báo theo đây kèm chương trình. Cách an toàn nhất là đính chúng vào đầu của mỗi tập tin mã nguồn, để thể hiện cách thông báo không có bảo hành một cách hữu hiệu nhất; và mỗi tập tin nên chứa ít nhất đoạn « Tác quyền » và thông tin chỉ tới nơi tìm được thông báo đầy đủ.\n" "\n" "——————————————mẫu tiếng Anh bắt đầu\n" "\n" "{một đoạn ghi tên chương trình và mô tả ngắn.} Copyright © {năm tên của tác giả}\n" "\n" "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License along with this program; if not, write to the:\n" " Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\n" "\n" "——————————————mẫu tiếng Anh kết thúc\n" "\n" "[Bản dịch: {một đoạn ghi tên chương trình và mô tả ngắn.} Tác quyền © {năm tên của tác giả}\n" "\n" "{một đoạn ghi tên chương trình và mô tả ngắn.} Tác quyền © {năm tên của tác giả}\n" "\n" "Chương trình này là phần mềm tự do; bạn có thể phát hành lại nó và/hoặc sửa đổi nó với điều kiện của Giấy phép Công cộng GNU như được xuất bản bởi Tổ chức Phần mềm Tự do; hoặc phiên bản 2 của Giấy phép này, hoặc (tùy chọn) bất kỳ phiên bản sau nào.\n" "\n" "Chương trình này được phát hành vì mong muốn nó có ích, nhưng KHÔNG CÓ BẢO HÀNH GÌ CẢ, THẬM CHÍ KHÔNG CÓ BẢO ĐẢM ĐƯỢC NGỤ Ý KHẢ NĂNG BÁN HAY KHẢ NĂNG LÀM ĐƯỢC VIỆC DỨT KHOÁT. Xem Giấy phép Công cộng GNU để biết thêm chi tiết.\n" "\n" "Bạn đã nhận một bản sao của Giấy phép Công cộng GNU cùng với chương trình này; nếu không, hãy viết thư cho Tổ chức Phần mềm Tự do, số 51 Đường Franklin, Tầng thứ năm, Thành Phố Boston, Tỉnh MA số bưu điện 02110-1301 Mỹ. ]\n" "\n" "Bạn cũng nên thêm thông tin về cách liên lạc với bạn bằng cả thư bưu điện lẫn thư điện tử.\n" "\n" "Nếu chương trình có khả năng tương tác, hãy làm cho nó xuất thông báo ngắn như sau khi nó khởi chạy trong chế độ tương tác (hãy thay thế mỗi đoạn nằm trong {dấu ngoặc móc}):\n" "\n" "_________________________mẫu tiếng Anh bắt đầu\n" "\n" "{Tên chương trình phiên bản SỐ}, Copyright © {năm tên của tác giả} {Tên chương trình} comes with absolutely no warranty; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details.\n" "\n" "————————————-mẫu tiếng Anh kết thúc\n" "\n" "[Bản dịch: {Tên chương trình phiên bản SỐ}, Tác quyền © {năm tên của tác giả} {Tên chương trình} không có bảo hành gì cả; để xem chi tiết, hãy gõ lệnh « show w ». Đây là phần mềm tự do, và bạn có quyền phát hành lại nó với một số điều kiện; hãy gõ « show c » để xem chi tiết. ]\n" "\n" "Hai lệnh `show w' và `show c' nên hiển thị các phần thích hợp của Giấy phép Công cộng GNU. Tất nhiên, bạn có thể chọn lệnh khác thích hợp với chương trình của mình, ví dụ lệnh trong bàn điều khiển, cú nhắp con chuột hay mục trình đơn.\n" "\n" "Bạn cũng nên yêu cầu người chủ của bạn (nếu bạn làm việc lập trình viên trong một công ty) hay trường học của bạn, nếu có, ký tên vào « đơn từ chối trách nhiệm tác quyền » về chương trình này, nếu cần. Đây là một mẫu ví dụ : {hãy thay thế đoạn nằm trong dấu ngoặc móc}\n" "\n" "_________________________mẫu tiếng Anh bắt đầu\n" "\n" "{Tên công ty hay trường}, hereby disclaims all copyright interest in the program `{Tên chương trình}' (which {chức năng của chương trình}) written by {tên tác giả}.\n" "\n" "———————---------mẫu tiếng Anh kết thúc\n" "\n" "[Bản dịch: {Tên công ty/trường} bằng cách này từ chối bất kỳ sự sở hữu chương trình `{Tên chương trình}' ({kiểu chương trình}) được tạo bởi {Tên lập trình viên}.\n" "\n" "{chữ ký của chủ}, {ngày tháng} {tên và chức vụ của chủ} ]\n" "\n" "Giấy phép Công cộng GNU này không cho phép ai hợp nhất chương trình của bạn vào chương trình đã sở hữu. Nếu chương trình của bạn là thư viện trình con, có lẽ bạn muốn cho phép ứng dụng sở hữu liên kết với thư viện này. Nếu có, bạn hãy sử dụng Giấy phép Công cộng GNU Phụ (LGPL) thay vào Giấy phép này.\n" "\n" "\n" "\n" "Verbatim copying and distribution of this translation of the GNU GPL is permitted in any medium without royalty provided this notice is preserved.\n" "\n" "Mọi người đều đuợc quyền sao chép và phân phối nguyên văn bản dịch giấy phép này, thông qua bất cứ phương tiện nào, miễn tiền bản quyền phát minh, miễn là thông báo này được bảo tồn.\n" #: src/setup/gtk/gnunet-setup.glade:1917 msgid "Not for English ;-)" msgstr "Không phải cho tiếng Anh :-)"