From 5a25198da384d272d4f48f541b74bf89233a4ff9 Mon Sep 17 00:00:00 2001 From: paniy Date: Thu, 6 Feb 2025 22:11:37 +0800 Subject: [PATCH] Optimize translations --- .github/workflows/i18n.yml | 5 +- fail2ban_manager.sh | 2 +- install.sh | 4 +- languages/English/LC_MESSAGES/version | 1 + languages/Korean/LC_MESSAGES/version | 1 + languages/Persian/LC_MESSAGES/version | 1 + languages/Russian/LC_MESSAGES/version | 1 + languages/en/LC_MESSAGES/xray_install.mo | Bin 35435 -> 35035 bytes languages/fa/LC_MESSAGES/xray_install.mo | Bin 44842 -> 45453 bytes languages/ko/LC_MESSAGES/xray_install.mo | Bin 38346 -> 38541 bytes languages/ru/LC_MESSAGES/xray_install.mo | Bin 49675 -> 48932 bytes languages/zh_CN/LC_MESSAGES/xray_install.mo | Bin 380 -> 380 bytes po/cache_English.json | 446 ++++++++++ po/cache_Korean.json | 445 ++++++++++ po/cache_Persian.json | 446 ++++++++++ po/cache_Russian.json | 446 ++++++++++ po/en.po | 669 ++++++++------- po/fa.po | 854 ++++++++++---------- po/ko.po | 808 +++++++++--------- po/ru.po | 798 +++++++++--------- po/xray_install.pot | 32 +- po/zh_CN.po | 34 +- translate.py | 47 +- 23 files changed, 3391 insertions(+), 1649 deletions(-) create mode 100644 languages/English/LC_MESSAGES/version create mode 100644 languages/Korean/LC_MESSAGES/version create mode 100644 languages/Persian/LC_MESSAGES/version create mode 100644 languages/Russian/LC_MESSAGES/version create mode 100644 po/cache_English.json create mode 100644 po/cache_Korean.json create mode 100644 po/cache_Persian.json create mode 100644 po/cache_Russian.json diff --git a/.github/workflows/i18n.yml b/.github/workflows/i18n.yml index b77bc38..7ab5954 100644 --- a/.github/workflows/i18n.yml +++ b/.github/workflows/i18n.yml @@ -89,7 +89,10 @@ jobs: - name: Compile MO files run: | for lang in zh_CN en fa ru ko; do - msgfmt --check -v --statistics -o languages/${lang}/LC_MESSAGES/xray_install.mo po/${lang}.po + if ! msgfmt --check -v --statistics -o languages/${lang}/LC_MESSAGES/xray_install.mo po/${lang}.po; then + echo "Error in ${lang}.po file:" + cat po/${lang}.po + fi done - name: Run i18nspector checks on PO files diff --git a/fail2ban_manager.sh b/fail2ban_manager.sh index 6416630..9c90104 100644 --- a/fail2ban_manager.sh +++ b/fail2ban_manager.sh @@ -186,7 +186,7 @@ mf_restart_fail2ban() { systemctl daemon-reload systemctl restart fail2ban judge "Fail2ban $(gettext "重启")" - timeout "$(gettext "清空屏幕!")" + timeout "$(gettext "清空屏幕")!" clear } diff --git a/install.sh b/install.sh index e1c1e3f..ae9f458 100644 --- a/install.sh +++ b/install.sh @@ -2491,7 +2491,7 @@ tls_type() { local choose_tls read_optimize "$(gettext "请输入"): " "choose_tls" 2 1 2 "$(gettext "请输入有效的数字")" if [[ ${choose_tls} == 1 ]]; then - log_echo "${Error} ${RedBG} $(gettext "从 2.2.1 版本起, 由于启用 h3 仅支持 TLS1.3, 请选择 TLS1.3 only (安全模式)")! ${Font}" + log_echo "${Error} ${RedBG} $(gettext "由于 h3 仅支持 TLS1.3, 只支持 TLS1.3 only (安全模式)")! ${Font}" tls_type else sed -i "s/^\( *\)ssl_protocols\( *\).*/\1ssl_protocols\2TLSv1.3;/" $nginx_conf @@ -2952,7 +2952,7 @@ timeout() { fi printf "${Warning} ${GreenBG} %d%s%s ${Font} \033[%d;%dm%-s\033[0m \033[%dm%d\033[0m \r" \ "$timeout_index" \ - "$(gettext "秒后将")" \ + " $(gettext "秒后") " \ "$1" \ "$timeout_color" \ "$timeout_bg" \ diff --git a/languages/English/LC_MESSAGES/version b/languages/English/LC_MESSAGES/version new file mode 100644 index 0000000..1b7612b --- /dev/null +++ b/languages/English/LC_MESSAGES/version @@ -0,0 +1 @@ +1738864884 \ No newline at end of file diff --git a/languages/Korean/LC_MESSAGES/version b/languages/Korean/LC_MESSAGES/version new file mode 100644 index 0000000..1b7612b --- /dev/null +++ b/languages/Korean/LC_MESSAGES/version @@ -0,0 +1 @@ +1738864884 \ No newline at end of file diff --git a/languages/Persian/LC_MESSAGES/version b/languages/Persian/LC_MESSAGES/version new file mode 100644 index 0000000..1b7612b --- /dev/null +++ b/languages/Persian/LC_MESSAGES/version @@ -0,0 +1 @@ +1738864884 \ No newline at end of file diff --git a/languages/Russian/LC_MESSAGES/version b/languages/Russian/LC_MESSAGES/version new file mode 100644 index 0000000..1b7612b --- /dev/null +++ b/languages/Russian/LC_MESSAGES/version @@ -0,0 +1 @@ +1738864884 \ No newline at end of file diff --git a/languages/en/LC_MESSAGES/xray_install.mo b/languages/en/LC_MESSAGES/xray_install.mo index a34f4df2084e37055e077531f104607b584914c2..b0e3c4ee428f3fd9cbe9e059d67bc54c6e99ce43 100644 GIT binary patch literal 35035 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

va0)fPOU+B@<=Q%dG?Q+T1F z8F6HmuvOK}vL$<_NB7Yvx$5CW32EJd_q@XGodns!B}eFixzTc@R|t}0j6}iAWqs_& ziVua{CM&h;L=(J-_OHzvXK21P!|9&Ho?ff`9n zSl??&R(tDMc13GaE%rSqC!YC2k|#XKiS+tfY#8aEn7;!OhC8(6LriS1X5Zs?Gc zGR#b_VhLhl=uQuNhq-0m5Zv3|%$pbS5$9hX7PX8L2h(m~EIjbEqAOd}w@!0BX~?k( z+%q-4)bXpwz>DEFi<3EKt?spSMi0*_f*34ulWV?%;315X#6IOpnw#bCjND1{Q)QGb zC>}BAU6x6L+l_JZ!XWsh>^dXLaVTIc&F&ouZ-(@b{XG(!TP7q7SLAXc6?f?aj8L+* zecVWR!`2%X;yFfxDx!Jzjvjwx9l&yt>->;t+(~?PKHaLCU--GB$?+|@Yz_V&Q)2=;5 zv1{_wq6*u-r;aw^HUKA#^9}$G}mA9OEY3Ljb}f{BTMZJ5^;uv%~dMc@a4!HQEur|)+ol+ zVtCl(jqUF?#k2JWVsuF-NX|gq=Ap{6PlW)SeC7!-F9SK%iQ<(qERNVk8vb+LXVBL-^O)EpP6Uk_~=QSWZ)96Ep<5) zsGjc1M1lII%eJeXrzg$LI@PLi7vcNur^nTA!!qypcr&hHF5*kHi(S@c2h$*-G6ElkB<*D01y$Ym9{p970-!NwzNmNVUc49aj)a`bj&7#1uqA>lr;%K-x3J-*h&+DeW zyB?&ap|Sqjt^UZbIgGdAfMp^ua6108-mk%uGhm;2$%(T$QS{?-W07sKBoZDy^KZGb z2ocO!J*5l_4uud|dLtuKln0==jWFbsV@w~F%}WF`1%as96?s77#A{*bTUi|-w$T<^BT`MpyoHGY|T(~An|H!Xl>Sp5gZmQ7` ztPd>gPG3*twMh&ofN0($UuTp)8n<(td=tGV!lIdgP3qacYK-aJ(^n}7T0al=E41-9 zfc$f2f4zind{WRi!}%W8OzQ2h_0*EuP-8tt63Qlj8xr=J>&zfEv;yXc;#BXH&vuej zq!0dbkiw&Rz0*g*?8%Skv3NdoDDR`7>pr$SZh`b5^cFq$9C9CRVx8KbzVs|B0~+ZP z1XCaN0tI?8OYgDtEa#V7UNAW;yRHaICD|B_{y1(&_ye2t))x(w@s3AfBWKT;;X65r zaEkYbS^mfbUsd`g%U?zx7hPPRMzpIp3<>`xgGrLd>!Fm`0=gtOd#;RC1zn`0G%vGc z>5eJ#7#9thYRjlxM77Bm>zA|gLYg}*J=oYa0>rOKrP~onqY8iPgo&7)ccWq7kkjCD zlBY^menaK7DYQ|z?1qaQ3iwesOtNP^TPbJJ6E#;0a~%pel=Q3v|e-Q~QRq>9F+ z(n-z6TK3mh`fGzy-aHDSu>L5DgAj`r&TR>bXLWGFg8+@qwOGpQM3-1o9;@3=o=`vg z(iZo#dYGg?OyRFnMq&h}c1~EGDA*eIFAw0$!GV`9b6@jL3B3O!X_RnlG)g?d5d3iJ zgsI;m1q$IZ!ydDXs_a7+FRlBD@Y*)4Uh?vmmtM&y`V4>Fy_}YP1H^VB4#$F|?*9h> Cw9VWA literal 35435 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

gC5#m z-~D>`>xXj-p7zw8BTkm^(cZdE`(Q8XS~WV+vG`k^)7xoPv!pT&RdxZKDT9f;F6xMc zWqlMqgzG#M+H&K`>rg6x&21qs5aRnlV5#RR@L&h$Pj?J853Xmni~7@?6S!H{#JoN7 zR(}x7D4BjqiK?FJXfs31$LMFvj_KW}Hz|HjH=*QMkh&OkeulrG4dpZY*iQUHB3*5d zaf7%$^}=byH4l;H&0A>2H3hFEn$wES?_Bk=b?g!{D3_9dVb$PZD@PFXY`DKQk-4;i zlH3GMl>+PwrX&}a+Oh?{W3U^T& zacz5g!s4}i?Qa&8ViX2$HY(P+Pp#5dP2c01VXt##EQg5F(9joqA#m&mQ-Gb_XI_r6 j?2Q>sa|V}t-&6_^^E5r>y$SyyfjGRsAb%Oh&i(%n8v(i; literal 38346 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 G>Hh;4euoGE literal 49675 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

?QO9FP>9e+T|~z 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 J8*@EM{y*CHsOplease wait", + "该域名不支持": "이 도메인 이름은 지원되지 않습니다", + "该域名发生了跳转": "해당 도메인 이름이 리다이렉트되었습니다", + "该域名可能不满足所有要求": "해당 도메인 이름이 모든 요구 사항을 충족하지 않을 수 있습니다", + "是否仍要设置此域名": "여전히 이 도메인을 설정하시겠습니까", + "域名": "도메인 이름", + "满足所有要求": "모든 요구 사항을 충족", + "域名的": "도메인 이름의", + "默认为": "기본값은", + "域名本身": "도메인 이름 자체", + "如不清楚具体用途, 请勿继续": "불명확한 용도의 경우 계속 진행하지 마십시오", + "是否变更": "변경하시겠습니까", + "负载均衡": "로드 밸런싱", + "请选择协议为 ws 或 gRPC": "프로토콜을 ws 또는 grpc로 선택하세요", + "返回": "돌아가기", + "请重新输入正确的数字": "잘못된 숫자를 다시 입력해주세요", + "本地文件 file_manager.sh 不存在, 正在下载": "지역 파일 file_manager.sh이 존재하지 않으므로 다운로드 중입니다", + "下载失败, 请手动下载并安装新版本": "다운로드에 실패했습니다, 수동으로 새 버전을 다운로드하고 설치하세요", + "无效选项 请重试": "잘못된 옵션입니다 재시도해주세요", + "当前模式不支持此操作": "현재 모드에서는 이 작업을 지원하지 않습니다", + "配置用途可以参考文章": "사용 용도는 문서를 참조할 수 있습니다", + "敬请期待": "기대해주세요", + "修改": "수정", + "端口号": "포트 번호", + "不支持": "비지원", + "用户名修改": "사용자 이름 수정", + "请先删除多余的用户": "먼저 불필요한 사용자를 삭제해주세요", + "配置修改": "구성 변경", + "检测到 Xray 的权限控制, 启动修改程序": "xray의 권한 제어가 감지되었습니다, 수정 프로그램을 시작합니다", + "修改完成": "수정 완료", + "若更新无效, 建议直接卸载再安装": "만약 업데이트가 효과적이지 않다면, 다시 설치하기 위해 직접 언install하고 재install을 권장합니다. (note: in korean, uninstall and install are typically written in english as '언install' and '재install', respectively, due to the common usage of these terms in korean tech language.)", + "部分新功能需要重新安装才可生效": "일부 새로운 기능은 재설치해야만 작동합니다", + "检测到存在最新版": "검출됨 최신 버전이 존재합니다", + "脚本可能未兼容此版本": "시나리오가 이 버전과 호환되지 않을 수 있습니다", + "是否更新": "업데이트할까요", + "升级": "업그레이드", + "升级/重装": "업그레이드/재설치", + "Reality 协议有流量偷跑的风险": "reality 프로토콜에는 데이터 누수 위험이 있습니다", + "该风险在 target 网址被 cdn 加速时存在": "해당 위험은 target url이 cdn로 가속화될 때 존재합니다", + "是否额外安装 nginx 前置保护(推荐)": "추가로 nginx 프론트 엔드 보호를 설치하시겠습니까(권장)", + "已跳过安装": "installation이 생략되었습니다", + "已存在, 跳过编译安装过程": "이미 존재하므로, 컴파일 설치 과정을 건너뜁", + "检测到旧版本安装的": "검출된 설치는 구 버전입니다", + "请先做好备份": "먼저 백업을 해두세요", + "是否需要删除 (请删除)": "삭제 필요함 (삭제)", + "已跳过删除": "이 삭제를 건너뛰었습니다", + "日志目录已更改, 日志清除需要重新设置": "로그 디렉터리가 변경되었습니다, 로그 클리어가 다시 설정되어야 합니다", + "检测到其他套件安装的 Nginx, 继续安装会造成冲突, 请处理后安装": "다른 패키지가 설치한 nginx를 감지했습니다. 계속 설치하면 충돌이 발생할 수 있습니다. 설치를 진행하기 전에 처리해주세요", + "即将下载已编译的": "즉시 다운로드할 컴파일된 것을", + "配置文件不完整, 退出升级": "구성 파일이 불완전하여 업그레이드를 종료합니다", + "当前安装模式不需要": "현재 설치 모드는 필요하지 않습니다", + "配置文件不存在, 退出升级": "구성 파일이 존재하지 않습니다, 업그레이드를 종료합니다", + "删除旧版": "구형 삭제", + "是否保留原 Nginx 配置文件": "기존 nginx 구성 파일을 유지할 것인지", + "原配置文件已删除": "기존 구성 파일이 삭제되었습니다", + "原配置文件已保留": "기존 구성 파일이 보관되었습니다", + "已为最新版": "최신 버전으로 업데이트 되었습니다", + "设置后台定时自动更新程序 (包含: 脚本/Xray/Nginx)": "백그라운드에서 정기적으로 자동으로 업데이트 프로그램 설정 (포함: 스크립트/xray/nginx)", + "可能自动更新后有兼容问题, 谨慎开启": "자동 업데이트 후 호환성 문제가 발생할 수 있으니 주의해서 사용하세요", + "是否开启": "시작할까요", + "设置自动更新": "자동 업데이트 설정", + "已设置自动更新": "자동 업데이트가 설정되었습니다", + "是否关闭": "닫기", + "删除自动更新": "자동 업데이트 삭제", + "安装 SSL 证书生成脚本依赖": "ssl 인증서 생성 스크립트 설치가 필요합니다", + "安装 SSL 证书生成脚本": "ssl 인증서 생성 스크립트를 설치합니다", + "检测到原域名配置存在, 是否跳过域名设置": "검출된 기존 도메인 구성이 있음, 도메인 설정을 건너뛰겠습니까", + "已跳过域名设置": "도메인 설정을 건너뛰었습니다", + "确定域名信息": "도메인 정보 확인", + "请输入你的域名信息": "도메인 정보를 입력하세요", + "请选择公网IP(IPv4/IPv6)或手动输入域名": "공인 ip 주소(ipv4/ipv6)를 선택하거나 도메인을 수동으로 입력하세요", + "不推荐": "권장하지 않습니다", + "正在获取公网IP信息, 请耐心等待": "공개 ip 정보를 얻으려면 참을성있게 기다리십시오", + "此选项用于服务器商仅提供域名访问服务器": "이 옵션은 도메인을 통해 서버에 접근할 수 있는 경우에 사용됩니다", + "注意服务器商域名添加 CNAME 记录": "서버 제공자 도메인에 cname 레코드 추가에 유의하세요", + "域名DNS解析IP": "도메인 dns 해석 ip", + "公网IP/域名": "공인 ip/도메인", + "域名DNS解析IP与公网IP匹配": "도메인 dns 해석 ip가 공용 ip와 일치하는지 확인", + "请确保域名添加了正确的 A/AAAA 记录, 否则将无法正常使用 Xray": "도메인이 올바른 a/aaaa 레코드를 추가했는지 확인하세요. 그렇지 않으면 xray를 정상적으로 사용할 수 없습니다", + "域名DNS解析IP与公网IP不匹配, 请选择": "도메인 dns 해석 ip와 공용 ip가 일치하지 않습니다. 선택해주세요", + "继续安装": "계속 설치", + "重新输入": "새로 입력하세요", + "终止安装": "설치 취소", + "安装终止": "설치가 중지되었습니다", + "检测到原IP配置存在, 是否跳过IP设置": "검출된 기본 ip 구성이 존재합니다, ip 설정을 건너뛸까요", + "已跳过IP设置": "ip 설정을 건너뛰었습니다", + "确定公网IP信息": "공인 ip 정보를 확인합니다", + "请选择公网IP为IPv4或IPv6": "공인 ip 주소를 ipv4 또는 ipv6로 선택하세요", + "手动输入": "수동 입력", + "尝试终止占用的进程": "시도하다 종료 지정된 chiếm당한 프로세스", + "证书测试签发成功, 开始正式签发": "자격 증명서 테스트 발급 성공, 정식 발급 시작", + "证书测试签发失败": "인증서 테스트 발급 실패", + "证书生成成功": "인증서 생성에 성공하였습니다", + "证书配置成功": "인증서 구성이 성공하였습니다", + "证书生成失败": "인증서 생성에 실패하였습니다", + "检测到 Xray 配置过多用户": "xray 의 구성이 많은 사용자를 감지했습니다", + "是否保留原 Xray 配置文件": "기존 xray 구성 파일을 유지할지", + "添加简单 ws/gRPC 协议": "간단한 ws/grpc 프로토콜 추가", + "检测到配置文件, 是否读取配置文件": "설정 파일이 감지되었습니다, 설정 파일을 불러오시겠습니까", + "已删除配置文件": "삭제된 프로파일", + "已保留配置文件": "이 설정 파일은 보관되었습니다", + "检测到当前安装模式与配置文件的安装模式不一致": "현재 설치 모드와 프로파일의 설치 모드가 일치하지 않습니다", + "是否保留配置文件 (强烈不建议)": "프로필 유지 여부(강력히 권장하지 않음)", + "请务必确保配置文件正确": "구성 파일이 올바른지 확인하십시오", + "检测到配置文件不完整, 是否保留配置文件": "검출된 구성 파일이 불완전합니다. 구성 파일을 보관하시겠습니까", + "配置删除": "삭제 설정", + "设置 Nginx 开机自启": "nginx를 부팅 시 자동으로 시작되게 설정", + "设置": "설정", + "开机自启": "시작 시 자동으로 실행", + "关闭 Nginx 开机自启": "nginx 자동 시작을 비활성화", + "关闭": "닫기", + "停止已有服务": "이미 있는 서비스를 중지", + "重启": "재시작", + "启动": "시작", + "停止": "정지", + "新版本已自动设置证书自动更新": "새 버전이 자동으로 인증서 자동 업데이트로 설정되었습니다", + "老版本请及时删除 废弃的 改版证书自动更新": "구형 버전은 신속히 삭제하세요. 폐기된 개정 인증서는 자동으로 업데이트됩니다", + "已设置改版证书自动更新": " đã 설정 변경 인증서 자동 갱신", + "是否需要删除改版证书自动更新 (请删除)": "버전 업데이트 자동 갱신 필요 여부(삭제 시)", + "删除改版证书自动更新": "삭제된 버전의 인증서가 자동으로 업데이트 됩니다", + "已过期": "만료되었습니다", + "证书生成日期": "인증서 생성 날짜", + "证书生成天数": "인증서 생성 일수", + "证书剩余天数": "인증서 남은 일수", + "是否立即更新证书": "즉시 인증서를 업데이트하시겠습니까", + "证书签发工具不存在, 请确认是否证书为脚本签发": "발급 도구가 존재하지 않습니다. 인증서가 스크립트에 의해 발급되었는지 확인하시기 바랍니다", + "证书更新": "인증서 갱신", + "本地文件 fail2ban_manager.sh 不存在, 正在下载": "현지 파일 fail2ban_manager.sh이 존재하지 않습니다, 다운로드 중입니다", + "检测到日志文件大小如下:": "로그 파일 크기는 다음과 같습니다", + "即将清除": "곧 지울 예정입니다", + "日志清理": "ログクリア", + "已设置旧版自动清理日志任务": "이전 버전의 자동 정리 로그 작업을 설정했습니다", + "是否需要删除旧版自动清理日志任务": "자동 정리 로그 작업의 이전 버전을 삭제해야 하나요", + "保留现有自动清理日志任务": "기존 자동 정리 로그 작업 유지", + "删除旧版自动清理日志任务": "구형 자동 정리 로그 작업 삭제", + "是否需要设置自动清理日志": "자동으로 로그를 정리할 필요가 있습니까", + "清空屏幕": "화면 지우기", + "将在 每周三 04:00 自动清空日志": "매주 수요일 오전 4시에 자동으로 로그가 비워집니다", + "已设置自动清理日志任务": "자동 로그 정리 작업이 설정되었습니다", + "是否需要删除现有自动清理日志任务": "기존 자동 정리 로그 작업을 삭제해야 하나요", + "删除自动清理日志任务": "자동 정리 로그 작업 삭제", + "设置自动清理日志": "자동으로 로그 정리 설정", + "配置分享": "공유 설정", + "分享链接": "공유 링크", + "二维码": "qr 코드", + "生成分享链接": "공유 링크 생성", + "安装成功": "설치가 성공하였습니다", + "目前分享链接规范为实验阶段, 请自行判断是否适用": "현재 공유 링크 사양은 실험 단계에 있습니다. 직접 적용 할 수 있는지 판단하십시오", + "配置信息": "설정 정보", + "主机": "호스트", + "端口": "포트", + "用户id": "유저 아이디", + "加密": "암호화", + "传输协议": "전송 프로토콜", + "底层传输安全": "하위 계층 전송 보안", + "路径": "경로", + "不要落下": "다락말 것", + "不需要加": "필요하지 않습니다 추가로", + "流控": "스트림 제어", + "即将申请证书, 支持使用自定义证书": "즉시 자격 증명을 신청할 예정입니다. 사용자 지정 자격 증명을 지원합니다", + "如需使用自定义证书, 请按如下步骤:": "사용자 정의 인증서를 사용하려면 다음 단계를 따르십시오", + "1. 将证书文件重命名: 私钥(xray.key)、证书(xray.crt)": "1. 인증서 파일을 다음과 같이 이름을 변경합니다: 개인 키(xray.key), 인증서(xray.crt)", + "2. 将重命名后的证书文件放入": "2. 이름을 변경한 인증서 파일을 넣습니다", + "目录后再运行脚本": "목차를 다시 실행한 후 스크립트를 실행하세요", + "3. 重新运行脚本": "3. 스크립트 다시 실행하기", + "是否继续": "계속하시겠습니까", + "所有证书文件均已存在, 是否保留": "모든 인증 파일이 이미 존재합니다, 유지하시겠습니까", + "已删除": "삭제되었습니다", + "证书应用": "자격 증명 사용", + "证书文件已存在, 是否保留": "기존에 인증서 파일이 존재합니다, 유지하시겠습니까", + "证书签发残留文件已存在, 是否保留": "발급certificate에 대한 잔여 파일이 이미 존재합니다, 유지하시겠습니까", + "添加": "추가", + "请选择支持的 TLS 版本": "tls 버전 선택을 지원합니다", + "建议选择 TLS1.3 only (安全模式)": "tls1.3만 선택하는 것을 권장합니다(보안 모드)", + "兼容模式": "호환 모드", + "安全模式": "시안전 모드", + "已切换至": "이전으로 변경되었습니다", + "Nginx/配置文件不存在 或 当前模式不支持": "nginx/설정 파일이 존재하지 않거나 현재 모드에서 지원되지 않습니다", + "请先安装": "먼저 설치하시오", + "连接端口号": "연결 포트 번호", + "此模式不支持修改": "이 모드에서는 수정을 할 수 없습니다", + "即将显示用户, 一次仅能显示一个": "즉시 사용자 표시, 한 번에 하나만 표시됩니다", + "请选择显示用户使用的协议": "사용자가 사용한 프로토콜을 표시하도록 선택하세요", + "请选择要显示的用户编号": "사용자 번호를 표시할 선택하십시오", + "选择错误": "잘못된 선택", + "请直接在主菜单选择 [15] 显示主用户": "직접 메인 메뉴에서 [15] 표시 메인 사용자 선택", + "回到菜单": "메뉴로 돌아가기", + "请先检测 Xray 是否正确安装": "먼저 xray가 올바르게 설치되었는지 확인하세요", + "是否继续显示用户": "계속해서 사용자 표시 여부", + "此模式不支持删除用户": "이 모드는 사용자를 삭제하는 것을 지원하지 않습니다", + "即将添加用户, 一次仅能添加一个": "즉시 사용자가 추가될 예정입니다, 한 번에 하나의 사용자만 추가할 수 있습니다", + "请选择添加用户使用的协议": "고객이 사용할 프로토콜을 선택하세요", + "添加用户": "유저 추가", + "是否继续添加用户": "계속해서 사용자 추가하시겠습니까", + "此模式不支持添加用户": "이 모드에서는 사용자 추가를 지원하지 않습니다", + "即将删除用户, 一次仅能删除一个": "사용자를 곧 삭제할 것입니다, 한 번에 하나만 삭제할 수 있습니다", + "请选择删除用户使用的协议": "사용자가 사용하는 프로토콜을 삭제하려면 선택하세요", + "请选择要删除的用户编号": "사용자 번호를 선택하여 삭제하세요", + "请直接在主菜单修改主用户的": "주 메뉴에서 주 사용자를 직접 수정해주세요", + "删除用户": "유저를 삭제합니다", + "是否继续删除用户": "계속해서 사용자 삭제하시겠습니까", + "文件不存在": "파일이 존재하지 않습니다", + "已配置 Xray 流量统计": "이미 xray 트래픽 통계가 설정됨", + "是否需要关闭此功能": "이 기능을 비활성화해야 하나요", + "关闭 Xray 流量统计": "xray 트래픽 통계 닫기", + "流量统计需要使用": "트래픽 통계를 위해서는 사용이 필요합니다", + "可能会影响 Xray 性能": "x선 성능에 영향을 미칠 수 있습니다", + "设置 Xray 流量统计": "xray 트래픽 통계 설정", + "已卸载": "이미 제거되었습니다", + "是否卸载": "앱을 제거하시겠습니까", + "是否删除所有脚本文件": "스クリプト 파일을 모두 삭제하시겠습니까", + "已删除所有文件": "모든 파일이 삭제되었습니다", + "ヾ( ̄▽ ̄) 拜拜~": "バイバイ~", + "已保留脚本文件 (包含 SSL 证书等)": "이전에 예약된 스크립트 파일(ssl 인증서 포함)", + "是否保留配置文件": "프로필 유지 여부", + "已清空证书遗留文件": "증서 이전 파일을 이미 비웠습니다", + "检测最新版本失败": "최신 버전 확인 실패", + "存在新版本, 但版本变化较大, 可能存在不兼容情况, 是否更新": "새 버전이 있지만 버전 변경 사항이 크므로 호환성 문제가 있을 수 있습니다. 업데이트하시겠습니까", + "存在新版本, 是否更新": "새 버전이 있습니다, 업데이트하시겠습니까", + "检测 脚本 最新版本失败": "검색 스크립트의 최신 버전 확인 실패", + "脚本 版本差别过大, 跳过更新": "시나리오 버전 차이가 너무 크므로 업데이트를 건너뜁", + "更新完成": "업데이트 완료", + "脚本版本变化较大, 若服务无法正常运行请卸载后重装": "각본 버전 변화가 크므로 서비스가 정상적으로 작동하지 않으면 재설치를 위해 언install한 후 다시 설치해주세요", + "当前版本为最新版本": "현재 버전은 최신 버전입니다", + "下载最新脚本": "최신 스크립트 다운로드", + "该选项暂时无法使用": "이 옵션은 현재 사용할 수 없습니다", + "此模式推荐用于负载均衡, 一般情况不推荐使用, 是否安装": "이 모드는 로드 밸런싱에 권장됩니다. 일반적으로 권장되지 않으므로 설치하시겠습니까", + "变更": "변경", + "负载均衡配置": "로드 밸런싱 구성", + "清除日志文件": "로그 파일을 지웁니다", + "查看证书状态": "증명서 상태 확인", + "更新证书有效期": "증명서 유효 기간 갱신", + "设置证书自动更新": "인증서 자동 갱신 설정", + "设置 Fail2ban 防暴力破解": "fail2ban을 사용하여 강력한 암호가 없을 때 대비 설정", + "显示帮助": "도움 보기 표시", + "更新": "업데이트", + "脚本卸载": "시나리오 언로드", + "显示安装信息": "설치 정보 표시", + "加速": "가속", + "升级脚本": "업그레이드 스크립트", + "显示": "표시", + "访问信息": "정보 방문", + "错误信息": "오류 메시지", + "脚本版本变化较大, 可能存在不兼容情况, 是否继续使用": "각본 버전의 변경 사항이 크므로 호환성 문제가 발생할 수 있습니다. 계속 사용하시겠습니까", + "检测失败": "검출 실패", + "有新版": "새 버전이 있습니다", + "最新版": "최신 버전", + "版本未知": "unknown version", + "有测试版": "테스트 버전이 있습니다", + "运行中": "작동 중", + "无需测试": "테스트 필요하지 않음", + "未运行": "실행되지 않음", + "无法连通": "연결할 수 없음", + "本地正常": "지역 일반적으로", + "脚本维护中.. 请稍后再试": "시나리오 유지보수 중입니다.. 나중에 다시 시도해주세요", + "无法检测所需依赖的在线版本, 请稍后再试": "의존 해야하는 온라인 버전은 감지 할 수 없습니다. 나중에 다시 시도하십시오", + "请输入数字": "숫자를 입력하세요", + "请输入 1 到 5 之间的有效数字": "1부터 5 사이의 유효한 숫자를 입력하세요", + "无效的选择": "무효된 선택", + "检测存在到": "검출 존재", + "来源于自动清理日志错误的设置": "자동으로 로그 오류를 정리하는 설정에서 유래되었습니다", + "开始修复": "시작 수리", + "错误的配置文件删除": "잘못된 구성 파일 삭제", + "即将重新设置自动清理日志": "자동 정리 로그를 재설정할 예정입니다", + "安装管理脚本": "설치 관리 스크립트", + "作者": "작자", + "当前模式": "현재 모드", + "当前语言": "현재 언어", + "可以使用": "사용할 수 있습니다", + "命令管理脚本": "명령 관리 스크립트", + "版本检测": "버전 검사", + "脚本": "시나리오", + "运行状态": "작동 상태", + "连通性": "연결성", + "升级向导": "업그레이드 마법사", + "安装向导": "설치 안내 프로그램", + "配置变更": "구성 변경", + "版本": "버전", + "用户管理": "사용자 관리", + "查看": "확인", + "用户": "유저", + "删除": "삭제", + "查看信息": "정보 확인", + "实时访问日志": "실시간으로 접근 로그 확인", + "实时错误日志": "실시간 오류 로그", + "服务相关": "서비스 관련", + "所有服务": "모든 서비스", + "证书相关": "자격 증명 관련", + "证书状态": "인증서 상태", + "证书有效期": "자격 증명서 유효 기간", + "证书自动更新": "인증서 자동 갱신", + "其他选项": "기타 옵션", + "自动更新": "자동 업데이트", + "防暴力破解": "방폭력해석", + "流量统计": "트래픽 통계", + "清除": "제거", + "日志文件": "로그 파일", + "测试": "테스트", + "服务器网速": "서버 네트워크 속도", + "卸载向导": "설치 마법사 해제", + "卸载": "설치 해제", + "清空": "비우기", + "证书文件": "인증 파일", + "退出": "나가기", + "请输入选项": "옵션을 입력하세요", + "请输入 0 到 34 之间的有效数字": "0부터 34 사이의 유효한 숫자를 입력하세요", + "不建议": "권장하지 않습니다", + "频繁升级 Nginx, 请确认 Nginx 有升级的必要": "자주 업그레이드 nginx, nginx 업그레이드가 필요한지 확인하세요", + "开始升级": "업그레이드를 시작합니다", + "请输入正确的数字": "옳바른 숫자를 입력하세요", + "管理": "관리", + "状态": "상태", + "无效的选择请重试": "유효하지 않은 선택입니다. 다시 시도해주세요", + "已经安装, 跳过安装步骤": "이미 설치됨, 설치 단계 생략", + "未安装, 请先安装": "설치되지 않았습니다, 먼저 설치해주세요", + "请选择": "선택하세요", + "操作": "작동", + "添加自定义规则": "사용자 정의 규칙 추가", + "请输入新的": "새로운 것을 입력하세요", + "名称": "이름", + "请输入日志路径": "일지 경로를 입력하세요", + "请输入最大重试次数": "최대 재시도 횟수를 입력하세요", + "最大重试次数必须在 1 到 99 之间": "최대 재시도 횟수는 1과 99 사이이어야 합니다", + "请输入封禁时间": "금지 시간을 입력하세요", + "秒": "초", + "封禁时间必须在 1 到 8640000 秒之间": "차단 시간은 1초에서 8640000초 사이여야 합니다", + "已存在": "이미 존재しています", + "自定义规则添加成功": "사용자 정의 규칙이 성공적으로 추가되었습니다", + "重启以应用新规则": "새 규칙을 적용하려면 재시작하세요", + "停止成功": "중지 성공", + "总体状态": "전체 상태", + "默认启用的 Jail 状态": "기본적으로 활성화된 jail 상태", + "封锁情况": "봉쇄 상황", + "新版本可用": "새 버전이 사용 가능합니다", + "当前版本": "현재 버전", + "请访问": "please visit 방문해 주세요", + "查看更新说明": "업데이트 설명 보기", + "是否要下载并安装新版本": "다운로드하고 신규 버전을 설치하시겠습니까", + "正在下载新版本": "신버전을 다운로드 중입니다", + "下载完成, 正在重新运行脚本": "다운로드 완료, 스크립트 재실행 중", + "跳过更新": "업데이트를 건너뛰기", + "当前已经是最新版本": "현재 최신 버전입니다", + "用法": "사용 방법", + "文件扩展名": "파일 확장명", + "目录路径": "디렉토리 경로", + "目录": "목차", + "不存在, 请检查路径": "존재하지 않습니다, 경로를 확인하세요", + "列出所有": "모두 나열하기", + "文件": "파일", + "没有找到": "찾을 수 없습니다", + "文件名": "파일 이름", + "请输入网址 (例如 hey.run)": "웹 사이트 주소 입력 (예를 들어 hey.run)", + "不要包含 http:// 或 https:// 开头": "http:// 나 https://로 시작하지 않도록 하세요", + "网址不能包含 http:// 或 https:// 开头": "웹 주소는 http:// 또는 https://로 시작할 수 없습니다", + "已创建": "이미 생성되었습니다", + "请输入主机": "주최자를 입력하세요", + "请输入端口": "포트를 입력하세요", + "请输入权重": "가중치를 입력하세요", + "追加完成": "추가 완료되었습니다", + "请输入要编辑的文件编号": "편집할 파일 번호를 입력하세요", + "未安装, 正在尝试安装": "설치되지 않음, 설치하려고 시도 중", + "已编辑": "편집됨", + "请输入要删除的文件编号": "삭제할 파일 번호를 입력하세요", + "不支持的文件扩展名": "지원되지 않는 파일 확장자", + "主菜单": "주 메뉴", + "创建一个新的": "새로운 것을 생성합니다", + "编辑一个已存在的": "편집하기 존재하는", + "删除一个已存在的": "이미 존재하는 것을 삭제하여", + "请选择一个选项": "한 가지 옵션을 선택하세요", + "无效选项, 请重试": "무효된 옵션입니다, 다시 시도해주세요", + "重启成功": "재시동 성공하였습니다", + "重启失败": "재시작 실패", + "请检查配置文件是否有误": "구성 파일에 오류가 있는지 확인하세요", + "秒后": "몇 초 후", + "由于 h3 仅支持 TLS1.3, 只支持 TLS1.3 only (安全模式)": "h3은 tls1.3 만 지원하므로 tls1.3 (안전 모드) 만 지원합니다" +} \ No newline at end of file diff --git a/po/cache_Persian.json b/po/cache_Persian.json new file mode 100644 index 0000000..ab35698 --- /dev/null +++ b/po/cache_Persian.json @@ -0,0 +1,446 @@ +{ + "提醒": "یادآوری", + "错误": "خطا", + "警告": "هشدار", + "未安装": "ناصب شده", + "日志文件归档失败": "فایل های لاگ اسپر کردن نشد", + "清空日志文件失败": "خطا در خالی کردن فایل روزنامه", + "日志文件已轮转并归档为": "فایل های لاگ روت شده و به آرشیو تبدیل شده اند", + "当前系统为": "سیستم فعلی", + "不在支持的系统列表内, 安装中断": "نه در لیست سیستم های پشتیبان، نصب متوقف شد", + "当前用户是 root 用户, 进入安装流程": "کاربر فعلی روت است، به فرآیند نصب بپیوندد", + "当前用户不是 root 用户, 请切换到 root 用户后重新执行脚本": "کاربر فعلی کاربر اصلی نیست", + "无法获取远程语言文件信息": "نمی توان اطلاعات فایل زبان دور را دریافت کرد", + "正在更新语言文件": "در حال به روز رسانی فایل های زبان است", + "语言文件更新失败": "بارگذاری فایل زبان با شکست مواجه شد", + "语言文件无效": "فایل زبان معتبر نیست", + "版本文件更新失败": "بازتایر فایل نسخه به روز رسانی نشد", + "语言文件更新完成": "پرونده‌های زبان به روز شدند", + "正在安装": "در حال نصب است", + "安装失败": "نصب ناموفق", + "将使用默认语言": "از زبان پیش‌فرض استفاده خواهد شد", + "未找到": "موردی پیدا نشد", + "不支持的语言": "زبانی که توسط سیستم پشتیبانی نمی‌شود", + "发现语言文件更新": "پیدا کردن فایل های زبانی به روز شده", + "完成": "تمام شد", + "失败": "شکست", + "在线版本检测失败, 请稍后再试": "نسخه آنلاین بررسی نشد، لطفاً دوباره سعی کنید", + "安装": "نصب", + "已安装": "نصب شده", + "自启动配置": "خودکار راه‌اندازی", + "链接库安装": "بسترهای نصب شده لینک شده", + "值为空或超出范围, 请重新输入": "مقدار خالی است یا از محدوده بیرون می‌رود، لطفا دوباره وارد کنید", + "值为空, 请重新输入": "مقدار خالی است، لطفا مجددا وارد کنید", + "确定 连接端口": "تعیین کردن وصل کردن به پورت", + "请输入连接端口": "ورودی لطفا پورت ارتباطی را وارد کنید", + "默认值": "مقدار پیش‌فرض", + "请输入 0-65535 之间的值": "لطفا مقداری بین ۰ تا ۶۵۵۳۵ وارد کنید", + "端口 9443 不允许使用, 请重新输入": "در پورت ۹۴۴۳ امکان ورود وجود ندارد، لطفا مجددا تلاش کنید", + "请选择安装协议": "لطفا قرارداد نصب را انتخاب کنید", + "默认": "پیش‌فرض", + "请输入": "لطفاً ورودی را وارد کنید", + "请输入有效的数字": "لطفاً یک عدد معتبر وارد کنید", + "是否添加简单 ws/gRPC 协议 用于负载均衡": "آیا از پروتکل ساده ws/grpc برای متعادل کردن بار استفاده شود؟", + "如不清楚具体用途, 请勿选择": "اگر کاربرد دقیق آن مشخص نیست لطفا انتخاب نکنید", + "已跳过添加简单 ws/gRPC 协议": "اجازه ساده ws/.grpc را گذشت", + "是否需要自定义": "آیا نیاز است که سفارشی شود", + "请输入自定义": "لطفاً سفارشی را وارد کنید", + "请勿与其他端口相同": "لطفاً با سایر پورت ها مشابه نباشید", + "是否需要设置防火墙": "آیا نیاز است که فایروال را تنظیم کنیم؟", + "防火墙": "پوشش آتشپمایی", + "重启完成": "بازگشایی کامل شد", + "开放防火墙相关端口": "بازکردن پورت های مرتبط با دیواره آتش", + "若修改配置, 请注意关闭防火墙相关端口": "اگر پیکربندی را تغییر دهید، مراقب بستن پورت‌های مرتبط با دیواره feu دیگری باشید", + "配置": "تنظیم کردن", + "跳过防火墙设置": "از تنظیمات فایروال پرش کنید", + "伪装路径": "مسیر مخفی را ترجمه کنید", + "不需要": "بدون نیاز", + "是否需要修改": "آیا نیاز است که تغییر کند", + "用户名": "نام کاربری", + "请输入正确的 email": "لطفا ایمیل معتبر وارد کنید", + "是否需要自定义字符串映射": "آیا نیاز است که رشته ها سفارش داده شوند؟", + "请输入自定义字符串": "لطفاً رشته سفارشی را وارد کنید", + "最多30字符": "حداکثر ۳۰ کاراکتر", + "自定义字符串": "رشته سفارشی", + "映射字符串": "مיפוי رشته", + "检测到 target 域名已配置, 是否保留": "تشکیل domain مقصد آشکار شده است، آیا می‌خواهید داشته باشید؟", + "请输入一个域名": "ورود به یک دامنه", + "域名要求支持 TLSv1.3、X25519 与 H2 以及域名非跳转用": "نام دامنه باید حمایت از tlsv1.3، x25519 و h2 داشته باشد و همچنین باید رедیрект نام دامنه را اجرا نکند", + "确认域名符合要求后请输入": "پس از تایید قیود نام دامنه، لطفا آن را وارد کنید", + "正在检测域名请等待": "در حال بررسی نام دامنه لطفا صبر کنید", + "该域名不支持": "این نام دومین پشتیبانی نمی شود", + "该域名发生了跳转": "این نام دامنه پرش کرده است", + "该域名可能不满足所有要求": "این نام دامنه شرایط مورد نیاز را احتمالاً تامین نمی‌کند", + "是否仍要设置此域名": "آیا هنوز قصد دارید این نام دامنه را تنظیم کنید؟", + "域名": "نام دامنه", + "满足所有要求": "برآوردن تمام نیازها", + "域名的": "نام دومین", + "默认为": "پیش‌فرض بر", + "域名本身": "نام دومین خود به هیچ وجه", + "如不清楚具体用途, 请勿继续": "اگر کاربرد دقیق آن را نمی دانید لطفا ادامه دهید", + "是否变更": "آیا تغییر می‌کند", + "负载均衡": "oad balancing", + "请选择协议为 ws 或 gRPC": "لطفا پروتکل را به عنوان ws یا grpc انتخاب کنید", + "返回": "برگشت", + "请重新输入正确的数字": "لطفاً عدد صحیح را مجددا وارد کنید", + "本地文件 file_manager.sh 不存在, 正在下载": "فایل محلی file_manager.sh وجود ندارد، در حال دانلود است", + "下载失败, 请手动下载并安装新版本": "دانلود با شکست مواجه شد، دانلود و نصب نسخه جدید را دستی انجام دهید", + "无效选项 请重试": "گزینه نامعتبر است لطفا مجددا تلاش کنید", + "当前模式不支持此操作": "قالب فعلی این عمل را پشتیبانی نمی کند", + "配置用途可以参考文章": "استفاده از آن را می توانید در مقاله مراجعه کنید", + "敬请期待": "لطفاً صبر کنید", + "修改": "تغییر", + "端口号": "شماره چنبرک", + "不支持": "نمی پسندید", + "用户名修改": "نام کاربری ویرایش", + "请先删除多余的用户": "لطفاً کاربران اضافی را حذف کنید", + "配置修改": "تغییرات پیکربندی", + "检测到 Xray 的权限控制, 启动修改程序": "تشخیص داده شد کنترل دسترسی xray، برنامه ویرایش را شروع می‌کند", + "修改完成": "تغییرات انجام شد", + "若更新无效, 建议直接卸载再安装": "اگر به‌روزرسانی انجام نشد، پیشنهاد می‌شود که برنامه را خارج کنید و دوباره نصب کنید", + "部分新功能需要重新安装才可生效": "برخی ویژگی‌های جدید نیاز به نصب مجدد دارند تا فعال شوند", + "检测到存在最新版": "شیشه تشخیص داد که نسخه جدیدتری موجود است", + "脚本可能未兼容此版本": "قالب ممکن است با این نسخه سازگار نباشد", + "是否更新": "آیا به روز رسانی می شود", + "升级": "به روز رسانی", + "升级/重装": "به روز رسانی/نصب مجدد", + "Reality 协议有流量偷跑的风险": "ورودی‌های reality امکان رخ دادن نشت ترافیک را دارند", + "该风险在 target 网址被 cdn 加速时存在": "این ریسک زمانی وجود دارد که risk در target آدرس با cdn سرعت بخشیده شود", + "是否额外安装 nginx 前置保护(推荐)": "آیا می خواهید nginx به عنوان یک محافظ اضافی نصب شود (توصیه می شود)", + "已跳过安装": "تخطی نصب شده است", + "已存在, 跳过编译安装过程": " موجود، پروسه نصب و کامپایل را اجتیاز داد", + "检测到旧版本安装的": "آپدیت قدیمی نصب شده تشخیص داده شد", + "请先做好备份": "لطفا ابتدا پشتیبان گرفتن را انجام دهید", + "是否需要删除 (请删除)": "آیا نیاز است که حذف شود (لطفا حذف شود)", + "已跳过删除": "از حذف گذشته اید", + "日志目录已更改, 日志清除需要重新设置": "پوشه ی روزنامه تغییر یافته، برای پاک کردن روزنامه باید تنظیمات جدیدی اعمال شود", + "检测到其他套件安装的 Nginx, 继续安装会造成冲突, 请处理后安装": "تشخیص داده شده که nginx در سایر بسته های نصب شده وجود دارد، نصب ادامه یافته و تداخل آمیز خواهد بود، لطفا پس از رسیدگی مربوطه نصب را انجام دهید", + "即将下载已编译的": "در حال دانلود کردن کد شده", + "配置文件不完整, 退出升级": "پرونده‌ی کاربری ناقص است، بروز رسانی متوقف می‌شود", + "当前安装模式不需要": "قالب نصب فعلی besoin", + "配置文件不存在, 退出升级": "پرونده پیکربندی موجود نیست، بروز رسانی خارج شد", + "删除旧版": "حذف نسخه قدیمی", + "是否保留原 Nginx 配置文件": "آیا فایل های پیکربندی اصلی nginx حفظ می شوند؟", + "原配置文件已删除": "پروندهٔ اصلی حذف شده است", + "原配置文件已保留": "پروندهٔ اصلی حفظ شده است", + "已为最新版": "از جدیدترین نسخه استudded", + "设置后台定时自动更新程序 (包含: 脚本/Xray/Nginx)": "تنظیم به روز رسانی خودکار پس زمینه برنامه (شامل: اسکریپت / xray / nginx)", + "可能自动更新后有兼容问题, 谨慎开启": "شاید پس از به روز رسانی خودکار مشکلات سازگاری وجود داشته باشد، بازخورد را با دقت روشن کنید", + "是否开启": "آیا فعال شود؟", + "设置自动更新": "تنظیم بهروزی خودکار", + "已设置自动更新": "تنظیم به روز رسانی خودکار شده است", + "是否关闭": "آیا بسته شود؟", + "删除自动更新": "حذف به روز رسانی خودکار", + "安装 SSL 证书生成脚本依赖": "نصب اس اس ال گواهینامه به کمک اسکریپت ها", + "安装 SSL 证书生成脚本": "نصب اسکریپت گенراتور گواهنامه ssl", + "检测到原域名配置存在, 是否跳过域名设置": "تشخیص داده شد که پیکربندی دامنه اصلی موجود است، آیا می‌خواهید تنظیمات دامنه را رد کنید؟", + "已跳过域名设置": "تخطی شد تنظیمات دامنه", + "确定域名信息": "تعیین اطلاعات نام دامنه", + "请输入你的域名信息": "لطفا اطلاعات دامنه خود را وارد کنید", + "请选择公网IP(IPv4/IPv6)或手动输入域名": "لطفاً ip عام (ipv4/ipv6) را انتخاب کنید یا دامنه را دستی وارد کنید", + "不推荐": "پیشنهاد نمی‌شود", + "正在获取公网IP信息, 请耐心等待": "در حال دریافت اطلاعات آدرس آی‌پی عمومی، لطفاً صبور باشید", + "此选项用于服务器商仅提供域名访问服务器": "این گزینه برای فروشندگان هاست است که فقط از طریق نام دامنه به سرور دسترسی دارند", + "注意服务器商域名添加 CNAME 记录": "توجه داده کنید که فرملند دامنه فروشگاهی خود را cname رکورد اضافه کنید", + "域名DNS解析IP": "نام دامنه dns به ip ترجمه می شود", + "公网IP/域名": "آدرس آی‌پی عام/نام دامنه", + "域名DNS解析IP与公网IP匹配": "نام دومین (dns) ip متناظر با ip عمومی مطابقت دارد", + "请确保域名添加了正确的 A/AAAA 记录, 否则将无法正常使用 Xray": "لطفا مطمئن شوید که دامنه صحیح رکورد a/aaaa اضافه شده است، در غیر این صورت xray به درستی کار نخواهد کرد", + "域名DNS解析IP与公网IP不匹配, 请选择": "نام دومین (dns) پیکربندی شده ip و ip عمومی مطابقت ندارد، لطفا انتخاب کنید", + "继续安装": "ادامه نصب", + "重新输入": "دوباره وارد کنید", + "终止安装": "انصراف از نصب", + "安装终止": "نصب پایان یافتن", + "检测到原IP配置存在, 是否跳过IP设置": "ip پیکربندی اصلی تشخیص داده شده است، آیا ip را نمی گذراند؟", + "已跳过IP设置": "از تنظیمات ip گذشت شده است", + "确定公网IP信息": "تعیین اطلاعات آدرس آی پی همگانی", + "请选择公网IP为IPv4或IPv6": "لطفاً آدرس ip سرور را یا به پروتکل ipv4 و یا به پروتکل ipv6 انتخاب کنید", + "手动输入": "ورود دستی", + "尝试终止占用的进程": "سعي برای خاتمه دادن به فرآيند حاكم علينصند", + "证书测试签发成功, 开始正式签发": "مجوز تست به موفقیت صادر شد، شروع به صادر کردن رسمی کنید", + "证书测试签发失败": "گواهی گرفتن در طی فرآیند تست شکنی رخ داد", + "证书生成成功": "گواهینامه با موفقیت ایجاد شد", + "证书配置成功": "گواهی با موفقیت کانفیگوره شده", + "证书生成失败": "گواهی تولید نشد", + "检测到 Xray 配置过多用户": "تشخیص از کانفیگ xray برای تعداد زیادی کاربر", + "是否保留原 Xray 配置文件": "آیا فایل های پیکربندی xray باقی ماند؟", + "添加简单 ws/gRPC 协议": "افزودن پروتکل ساده ws/grpc", + "检测到配置文件, 是否读取配置文件": "تشخیص فایل پیکربندی، آیا از فایل پیکربندی خواند خواهد شد", + "已删除配置文件": "حذف شده پرونده سازنده", + "已保留配置文件": "پرونده ذخیره شده است", + "检测到当前安装模式与配置文件的安装模式不一致": "شناسایی شد که حالت نصب فعلی با حالت نصب در فایل متفاوت است", + "是否保留配置文件 (强烈不建议)": "آیا پروفایل حفظ شود (بسیار توصیه نمی‌شود)", + "请务必确保配置文件正确": "لطفا مطمئن شوید که فایل پیکربندی صحیح است", + "检测到配置文件不完整, 是否保留配置文件": "تشخیص عدم کامل بودن فایل پیکربندی، آیا مایلید فایل پیکربندی را حفظ کنید؟", + "配置删除": "configurer حذف", + "设置 Nginx 开机自启": "تنظیم نگینکس برای شروع خودکار در زمان راه‌اندازی سیستم", + "设置": "تنظیمات", + "开机自启": "اجرای خودکار در هنگام روشن کردن", + "关闭 Nginx 开机自启": "بستن شروع خودکار nginx در زمان راه‌اندازی سیستم", + "关闭": "بستن", + "停止已有服务": "این سرویس را متوقف کنید", + "重启": "ریستارت کردن", + "启动": "شروع کنید", + "停止": "این دستور متوقف کن", + "新版本已自动设置证书自动更新": "نسخه جدید به طور خودکار تنظیم به روز رسانی گواهنامه شده است", + "老版本请及时删除 废弃的 改版证书自动更新": "نسخه های قدیمی به زودی حذف شوند نسخه جدید گواهی خودکار به روز رسانی می شود", + "已设置改版证书自动更新": "تنظیم شده است که گواهینامه بازنگری شده به صورت خودکار بروزرسانی شود", + "是否需要删除改版证书自动更新 (请删除)": "آیا نیاز است گواهینامه بازنگری شده خودکار به روز رسانی شود (لطفا حذف کنید)", + "删除改版证书自动更新": "حذف گواهی بازنمایی شده به روز رسانی خودکار", + "已过期": "منقضی شده", + "证书生成日期": "تاریخ ایجاد گواهینامه", + "证书生成天数": "تعداد روزهای تولید گواهینامه", + "证书剩余天数": "مابقی روزهای گواهینامه", + "是否立即更新证书": "آیا مجوز را همین حالا به روز می کنید؟", + "证书签发工具不存在, 请确认是否证书为脚本签发": "ابزار صدور گواهی وجود ندارد، لطفاً مطمئن شوید که گواهی توسط اسکریپت صادر شده است", + "证书更新": "certificat آپدیت شود", + "本地文件 fail2ban_manager.sh 不存在, 正在下载": "فایل محلی fail2ban_manager.sh موجود نیست، در حال دانلود آن ", + "检测到日志文件大小如下:": "logfile size detected as follows", + "即将清除": "به زودی حذف می‌شود", + "日志清理": "ログクリーニング", + "已设置旧版自动清理日志任务": "تنظیم شده است که وظیفه تمیز خودکار قدیمی را یادگیری کند", + "是否需要删除旧版自动清理日志任务": "آیا نیاز است وظیفه خودکار پاک کردن روزانه قدیمی حذف شود", + "保留现有自动清理日志任务": "حذف کردن تسک پاکسازی خودکار روزانه لگ ها", + "删除旧版自动清理日志任务": "حذف وظیفه لاگ تمیز خودکار نسخه قدیمی", + "是否需要设置自动清理日志": "آیا نیاز است که تمیز خودکار لاگ تنظیم شود", + "清空屏幕": "پاک کردن صفحه نمایش", + "将在 每周三 04:00 自动清空日志": "خروج از سیستم در روزهای چهارشنبه هر هفته در ساعت ۴:۰۰ صبح خودکار انجام می‌شود", + "已设置自动清理日志任务": " تنظیم کردن وظیفه پاک کردن خودکار لاگ ها", + "是否需要删除现有自动清理日志任务": "آیا نیاز است که وظیفه خودکار پاک کردن روزانه ی ثبت ها حذف شود", + "删除自动清理日志任务": "حذف وظیفه تمیز خودکار لاگ", + "设置自动清理日志": "تنظیم خودکار پاک کردن لگ ها", + "配置分享": "تعداد کاربرانی که می توانند یک پروتکل را در یک بازه زمانی مشترک داشته باشند را تنظیم کنید", + "分享链接": "لینک را به اشتراک بگذارید", + "二维码": "کد qr", + "生成分享链接": "ساخت لینک به_partagenشareth", + "安装成功": "نصب موفقیت آمیز بود", + "目前分享链接规范为实验阶段, 请自行判断是否适用": "در حال حاضر، قوانین لینک به اشتراک گذاری در مرحله آزمایشی هستند، لطفاً خودتان بررسی کنید که آیا مناسب است یا نه", + "配置信息": "اطلاعات پیکربندی", + "主机": "میزبان", + "端口": "نوع دریچه", + "用户id": "شناسه کاربری", + "加密": "رمزگذاری", + "传输协议": "پروتکل انتقال", + "底层传输安全": "امنیت حمل ارتباطات پایین سطح", + "路径": "مسیر", + "不要落下": "نباشید", + "不需要加": "بدون نیاز به افزودن", + "流控": "کنترل جریان", + "即将申请证书, 支持使用自定义证书": "در حال درخواست گواهینامه ، پشتیبانی از استفاده از گواهینامه سفارشی", + "如需使用自定义证书, 请按如下步骤:": "برای استفاده از گواهی سفارشی ، لطفاً مراحل زیر را دنبال کنید", + "1. 将证书文件重命名: 私钥(xray.key)、证书(xray.crt)": "۱. نام فایل مجوز را تغییر دادن: کلید خصوصی (xray.key)، مجوز (xray.crt)", + "2. 将重命名后的证书文件放入": "2. فایل گواهی با نام جدید را قرار دادید", + "目录后再运行脚本": "فهرست سپس اسکریپت را اجرا کنید", + "3. 重新运行脚本": "۳. مجدد اسکریپت را اجرا کنید", + "是否继续": "آیا ادامه دادن؟", + "所有证书文件均已存在, 是否保留": "تمام فایل‌های گواهی موجود هستند، آیا مورد حفظ قرار گرفته شوند؟", + "已删除": "حذف شده", + "证书应用": "گواهینامه استفاده شود", + "证书文件已存在, 是否保留": "فایل گواهی موجود است، آیا باید نگهداری شود؟", + "证书签发残留文件已存在, 是否保留": "فایل های باقی مانده از صدور گواهینامه وجود دارند، آیا باید نگهداری شوند؟", + "添加": "اضافه کردن", + "请选择支持的 TLS 版本": "لطفا نسخه پروتکل tls را انتخاب کنید", + "建议选择 TLS1.3 only (安全模式)": "پیشنهاد می‌شود تنها tls1.3 (حالت امن) را انتخاب کنید", + "兼容模式": "حالت سازگاری", + "安全模式": "حالت امنیتی", + "已切换至": "تغییر به", + "Nginx/配置文件不存在 或 当前模式不支持": "nginx/فایل مورد نیاز وجود ندارد یا حالت فعلی پشتیبانی آن را فرا نمی‌گیرد", + "请先安装": "لطفاً ابتدا نصب کنید", + "连接端口号": "شماره درگاه اتصال", + "此模式不支持修改": "این الگو حمایت از ویرایش را ندارد", + "即将显示用户, 一次仅能显示一个": "به زودی کاربر نمایش داده می‌شود، فقط یک کاربر در باره نمایش داده می‌شود", + "请选择显示用户使用的协议": "لطفا پروتکلی را انتخاب کنید که کاربران از آن استفاده می‌کنند", + "请选择要显示的用户编号": "لطفا کد کاربری را انتخاب کنید", + "选择错误": "انتخاب اشتباه", + "请直接在主菜单选择 [15] 显示主用户": "لطفاً در منوی اصلی، گزینه [15] نمایش کاربر اصلی را انتخاب کنید", + "回到菜单": "برو به منو", + "请先检测 Xray 是否正确安装": "لطفاً قبل از هرچیز xray را بررسی کنید که نصب شده است", + "是否继续显示用户": "آیا نمایش ادامه یابد برای کاربر", + "此模式不支持删除用户": "این الگو حذف کاربر را پشتیبانی نمی کند", + "即将添加用户, 一次仅能添加一个": "به زودی کاربران اضافه می‌شوند، فقط یک کاربر در باره اول اضافه می‌شود", + "请选择添加用户使用的协议": "لطفا پروتکلی را انتخاب کنید که کاربران از آن استفاده می‌کنند", + "添加用户": "اضافه کردن کاربر", + "是否继续添加用户": "آیا می‌خواهید کاربران دیگری اضافه شوند؟", + "此模式不支持添加用户": "این الگو پشتیبانی از افزودن کاربران را ندارد", + "即将删除用户, 一次仅能删除一个": "به زودی کاربر حذف می‌شود، در هر مرحله فقط یک کاربر حذف می‌شود", + "请选择删除用户使用的协议": "لطفا پروتکلی که کاربر استفاده می کند را حذف کنید", + "请选择要删除的用户编号": "لطفا کد کاربری حذف شده را انتخاب کنید", + "请直接在主菜单修改主用户的": "لطفاً در منوی اصلی، کاربر اصلی را ویرایش کنید", + "删除用户": "حذف کاربر", + "是否继续删除用户": "آیا می‌خواهید کاربر حذف شود؟", + "文件不存在": "فایل موجود نیست", + "已配置 Xray 流量统计": "ایجاد آمار جریان xray", + "是否需要关闭此功能": "آیا نیاز است این قابلیت خاموش شود", + "关闭 Xray 流量统计": "بستن آمار جریان xray", + "流量统计需要使用": "آمار جریان باید از روشی استفاده کند", + "可能会影响 Xray 性能": "شاید به ایجاد تأثیری بر عملکرد xray بپردازد", + "设置 Xray 流量统计": "تنظیم آمار جریان xray", + "已卸载": "از حافظه خارجی حذف شد", + "是否卸载": "آیا آن را خارج کردن", + "是否删除所有脚本文件": "آیا تمام فایل‌های اسکریپت حذف شوند؟", + "已删除所有文件": "حذف شدن تمامی فایل ها", + "ヾ( ̄▽ ̄) 拜拜~": "چون ( ̄▽ ̄) بای بای ~", + "已保留脚本文件 (包含 SSL 证书等)": "فایل نمایش ذخیره شده (که می‌تواند مجوز ssl و سایر چیزها را شامل شود)", + "是否保留配置文件": "آیا پروفایل حفظ شود؟", + "已清空证书遗留文件": "این کار مانیفست فایل های گواهی خالی شده است", + "检测最新版本失败": "شکست در بررسی آخرین نسخه", + "存在新版本, 但版本变化较大, 可能存在不兼容情况, 是否更新": "وجود نسخه جدیدی وجود دارد اما تغییرات زیادی با نسخه قبلی دارد ممکن است سازگاری وجود نداشته باشد آیا مایل به به روز رسانی هستید", + "存在新版本, 是否更新": "نسخه جدیدی موجود است، آیا می خواهید به روز رسانی شود؟", + "检测 脚本 最新版本失败": "بررسی آخرین نسخه از فایل اسکریپت با شکست مواجه شد", + "脚本 版本差别过大, 跳过更新": "سکریپت نسخه های بسیار متفاوتی دارد، به روز رسانی را اجتیاز می کند", + "更新完成": "به‌روزرسانی انجام شد", + "脚本版本变化较大, 若服务无法正常运行请卸载后重装": "نسخه فایل اسکریپت تغییرات زیادی داشته است، در صورتی که خدمات به درستی کار نکنند، لطفاً آنها را حذف و مجدداً نصب کنید", + "当前版本为最新版本": "نسخه فعلی آخرین نسخه است", + "下载最新脚本": "دانلود آخرین فایل اسکریپت", + "该选项暂时无法使用": "این گزینه به طور موقت در دسترس نیست", + "此模式推荐用于负载均衡, 一般情况不推荐使用, 是否安装": "این الگو برای بار متعادل کردن توصیه می‌شود، به طور کلی پیشنهاد استفاده نمی‌شود، آیا نصب شود", + "变更": "تغییر", + "负载均衡配置": "پیکربندی متعادل کننده بار", + "清除日志文件": "حذف فایل‌های لاگ", + "查看证书状态": "مشاهده وضعیت گواهینامه", + "更新证书有效期": "به روز رسانی مدت اعتبار گواهینامه", + "设置证书自动更新": "تنظیم به روز رسانی خودکار گواهنامه", + "设置 Fail2ban 防暴力破解": "تنظیم fail2ban برای جلوگیری از حملات دسته جمعی", + "显示帮助": "نمایش کمک", + "更新": "به‌روز رسانی", + "脚本卸载": "فایل اسکریپت بارگذاری نشده", + "显示安装信息": "نمایش اطلاعات نصب", + "加速": "سرعت دادن", + "升级脚本": "به روز رسانی اسکریپت", + "显示": "نمایش", + "访问信息": "بازدید از اطلاعات", + "错误信息": "پیام خطا", + "脚本版本变化较大, 可能存在不兼容情况, 是否继续使用": "نسخه فایل اسکریپت تغییر زیادی داشته است، شاید سازگاری میان نسخه ها وجود نداشته باشد، آیا ادامه استفاده از آن مورد نظر شماست؟", + "检测失败": "آزمایش شکست خورد", + "有新版": "نسخه جدیدی وجود دارد", + "最新版": "آخرین نسخه", + "版本未知": "نسخه مشخص نشده است", + "有测试版": "نسخه ای آزمایشی وجود دارد", + "运行中": "در حال اجرا", + "无需测试": "بدون آزمایش", + "未运行": "کار نکرده است", + "无法连通": "نمی‌توان ارتباط برقرار کرد", + "本地正常": "در محل عادی", + "脚本维护中.. 请稍后再试": "پیکربندی اسکریپت در حال انجام است.. لطفاً کمی صبر کنید و دوباره تلاش کنید", + "无法检测所需依赖的在线版本, 请稍后再试": "نمی توان وابسته های مورد نیاز را آنلاین بررسی کرد، لطفا دوباره سعی کنید", + "请输入数字": "لطفاً عدد وارد کنید", + "请输入 1 到 5 之间的有效数字": "لطفا یک عدد معتبر از ۱ تا ۵ وارد کنید", + "无效的选择": "انتخاب نامعتبر", + "检测存在到": "تشخیص وجود", + "来源于自动清理日志错误的设置": "تنظیمات پاک کردن خودکار خطاهای لگ", + "开始修复": "شروع به تعمیر", + "错误的配置文件删除": "پرونده‌ی خطا حذف شد", + "即将重新设置自动清理日志": "به زودی تمایز بین فایل های لاگ انجام می شود", + "安装管理脚本": "نصاب اسکریپت مدیریت", + "作者": "نویسنده", + "当前模式": "قالب فعلی", + "当前语言": "زبان فعلی", + "可以使用": "می توان از آن استفاده کرد", + "命令管理脚本": "دستور مدیریت فایلهای اسکریپت", + "版本检测": "ترجمه نسخه بررسی", + "脚本": "سکریپت", + "运行状态": "وضعیت اجرا", + "连通性": "ارتباطی", + "升级向导": "راه‌انداز به‌روز رسانی", + "安装向导": "راه‌اندازی", + "配置变更": "تغییرات در تهیه", + "版本": "نسخه", + "用户管理": "مدیریت کاربران", + "查看": "چکیده", + "用户": "کاربر", + "删除": "حذف", + "查看信息": "چک کردن اطلاعات", + "实时访问日志": "دسترسی زنده به ورودی ها", + "实时错误日志": "ログリアルタイムエラー", + "服务相关": "خدمات مربوطه", + "所有服务": "تمام خدمات", + "证书相关": "ترجمه مرتبط به گواهی ها", + "证书状态": "وضعیت گواهی", + "证书有效期": "مدت اعتبار گواهینامه", + "证书自动更新": "مجوز به طور خودکار به روز رسانی شده است", + "其他选项": "سایر گزینه ها", + "自动更新": "به روز رسانی خودکار", + "防暴力破解": "جلوگیری از شکستن رمز با استفاده از روش های تجربی", + "流量统计": "آمار جریان کاربران", + "清除": "پاک کردن", + "日志文件": "فایل های لاگ", + "测试": "آزمون", + "服务器网速": "سرعت شبکه سرور", + "卸载向导": "راه‌اندازی دیسک", + "卸载": "برداشتن", + "清空": "خالی کردن", + "证书文件": "فایل گواهی", + "退出": "خروج", + "请输入选项": "لطفاً گزینه را وارد کنید", + "请输入 0 到 34 之间的有效数字": "لطفا عددی معتبر بین ۰ تا ۳۴ وارد کنید", + "不建议": "پیشنهاد نمی‌شود", + "频繁升级 Nginx, 请确认 Nginx 有升级的必要": "به طور مداوم نگینکس را به روز رسانی کنید، لطفا مطمئن شوید نیاز به به روز رسانی نگینکس وجود دارد", + "开始升级": "شروع به به روز رسانی", + "请输入正确的数字": "لطفاً عدد صحیح وارد کنید", + "管理": "مدیریت", + "状态": "حالت", + "无效的选择请重试": "انتخاب نامعتبر است لطفا مجددا سعی کنید", + "已经安装, 跳过安装步骤": "نصب شده، قدم نصب را پرش کنید", + "未安装, 请先安装": "بدون نصب، ابتدا نصب کنید", + "请选择": "لطفا انتخاب کنید", + "操作": "عمل", + "添加自定义规则": "اضافه کردن قوانین سفارشی", + "请输入新的": "لطفاً متن جدید وارد کنید", + "名称": "نام", + "请输入日志路径": "لطفا مسیر لاگ را وارد کنید", + "请输入最大重试次数": "لطفاً بیشترین تعداد تلاش مجاز را وارد کنید", + "最大重试次数必须在 1 到 99 之间": "بیشترین تعداد تلاش باید بین ۱ و ۹۹ باشد", + "请输入封禁时间": "لطفا زمان مسدودسازی را وارد کنید", + "秒": "ثانیه", + "封禁时间必须在 1 到 8640000 秒之间": "زمان مسدود کردن باید بین ۱ تا ۸۶۴۰۰۰ ثانیه باشد", + "已存在": "وجود دارد", + "自定义规则添加成功": "رール با موفقیت اضافه شد", + "重启以应用新规则": "ریست کردن برای اعمال قوانین جدید", + "停止成功": "این را توقف کنید", + "总体状态": "وضعیت کلی", + "默认启用的 Jail 状态": "وضعیت پیش‌فرض فعال شدهٔ زیال", + "封锁情况": "بند کردن وضعیت", + "新版本可用": "نسخه جدید در دسترس است", + "当前版本": "نسخه فعلی", + "请访问": "لطفا بازدید کنید", + "查看更新说明": "مشاهده ملاحظات بروز رسانی", + "是否要下载并安装新版本": "آیا می‌خواهید نسخه جدید را دانلود و نصب کنید؟", + "正在下载新版本": "در حال دانلود نسخه جدید", + "下载完成, 正在重新运行脚本": "دانلود کامل شد، اجرای مجدد فریم‌ورک در حال رخ دادن است", + "跳过更新": "پرش کردن از روزآمد سازی", + "当前已经是最新版本": "نسخه فعلی آخرین نسخه است", + "用法": "روش استفاده", + "文件扩展名": "نام توسعه فایل", + "目录路径": "مسیر راهنما", + "目录": "فهرست", + "不存在, 请检查路径": "نیست، مسیر را بررسی کنید", + "列出所有": "فهرست کردن همه", + "文件": "فایل", + "没有找到": "نمی‌توانیم یافتنی پیدا کنیم", + "文件名": "نام فایل", + "序号": "شماره", + "请输入网址 (例如 hey.run)": "لطفا آدرس وب را وارد کنید (مثلا hey.run)", + "不要包含 http:// 或 https:// 开头": "نباشید که حاوی http:// یا https:// در ابتدای آن باشد", + "网址不能包含 http:// 或 https:// 开头": "آدرس نمی تواند با http:// یا https:// شروع شود", + "已创建": "ایجاد شده", + "请输入主机": "لطفا میزبان را وارد کنید", + "请输入端口": "ورودی کریت لطفا port را وارد کنید", + "请输入权重": "وزن را وارد کنید", + "追加完成": "افزودن کامل شد", + "请输入要编辑的文件编号": "شماره فایل مورد ویرایش را وارد کنید", + "未安装, 正在尝试安装": "ناصب شده، تلاش برای نصب در حال انجام است", + "已编辑": "ویرایش شده", + "请输入要删除的文件编号": "شماره فایلی را وارد کنید که می‌خواهید حذف کنید", + "不支持的文件扩展名": "پسوند فایل پشتیبانی نشده است", + "主菜单": "منوی اصلی", + "创建一个新的": "ساخت یکی جدید", + "编辑一个已存在的": "ویرایش یک موجود", + "删除一个已存在的": "حذف یک موجود", + "请选择一个选项": "لطفا یک گزینه را انتخاب کنید", + "无效选项, 请重试": "گزینه نامعتبر، لطفا دوباره تلاش کنید", + "重启成功": "بازکردن مجدد موفقیت آمیز بود", + "重启失败": "بازگشایی شکست خورد", + "请检查配置文件是否有误": "لطفاً فایل پیکربندی را بررسی کنید", + "秒后": "ثانیه دیگر", + "由于 h3 仅支持 TLS1.3, 只支持 TLS1.3 only (安全模式)": "از آنجا که h3 فقط از tls1.3 پشتیبانی می کند ، فقط از tls1.3 (حالت ایمن) پشتیبانی می کند" +} \ No newline at end of file diff --git a/po/cache_Russian.json b/po/cache_Russian.json new file mode 100644 index 0000000..454458e --- /dev/null +++ b/po/cache_Russian.json @@ -0,0 +1,446 @@ +{ + "提醒": "напомнить", + "错误": "ошибка", + "警告": "предупреждение", + "未安装": "не установлен", + "日志文件归档失败": "архивация файлов журнала не удалась", + "清空日志文件失败": "не удалось очистить файл журнала", + "日志文件已轮转并归档为": "файлы журнала были перенаправлены и архивированы как", + "当前系统为": "текущая система является", + "不在支持的系统列表内, 安装中断": "не в списке поддерживаемых систем, установка прервана", + "当前用户是 root 用户, 进入安装流程": "текущий пользователь является пользователем root, переход к установочному процессу", + "当前用户不是 root 用户, 请切换到 root 用户后重新执行脚本": "текущий пользователь не является пользователем root, пожалуйста, переключитесь на пользователя root и выполните скрипт заново", + "无法获取远程语言文件信息": "не удается получить информацию о удаленных языковых файлах", + "正在更新语言文件": "обновление языковых файлов", + "语言文件更新失败": "файл языка не обновлен", + "语言文件无效": "файл языка недействителен", + "版本文件更新失败": "версия файла не обновлена", + "语言文件更新完成": "файл языка обновлен", + "正在安装": "устанавливается", + "安装失败": "установка не удалась", + "将使用默认语言": "будет использован язык по умолчанию", + "未找到": "не найдено", + "不支持的语言": "не поддерживаемый язык", + "发现语言文件更新": "обнаружены обновления языкового файла", + "完成": "завершить", + "失败": "провал", + "在线版本检测失败, 请稍后再试": "онлайн-проверка версии не удалась, попробуйте позже", + "安装": "установка", + "已安装": "установлен", + "自启动配置": "начальная настройка", + "链接库安装": "установка библиотек-ссылок", + "值为空或超出范围, 请重新输入": "значение пустое или выходит за пределы, пожалуйста, введите заново", + "值为空, 请重新输入": "значение пустое, пожалуйста, введите заново", + "确定 连接端口": "определите порт подключения", + "请输入连接端口": "введите порт подключения", + "默认值": "значение по умолчанию", + "请输入 0-65535 之间的值": "введите значение от 0 до 65535", + "端口 9443 不允许使用, 请重新输入": "порт 9443 не разрешен, пожалуйста, введите другой", + "请选择安装协议": "пожалуйста, выберите установочное соглашение", + "默认": "по умолчанию", + "请输入": "введите", + "请输入有效的数字": "пожалуйста, введите действительный номер", + "是否添加简单 ws/gRPC 协议 用于负载均衡": "добавить простые протоколы ws/grpclb для распределения нагрузки", + "如不清楚具体用途, 请勿选择": "если вы не знаете конкретного использования, не выбирайте", + "已跳过添加简单 ws/gRPC 协议": "пропущено добавление простого протокола ws/grpc", + "是否需要自定义": "нужно ли настраиватьcustomized", + "请输入自定义": "введите пользовательский", + "请勿与其他端口相同": "пожалуйста, не используйте другие порты", + "是否需要设置防火墙": "необходимо ли настроить брандмауэр", + "防火墙": "брандмауэр", + "重启完成": "перезагрузка завершена", + "开放防火墙相关端口": "открыть порты для брандмауэра", + "若修改配置, 请注意关闭防火墙相关端口": "если вы изменяете конфигурацию, обратите внимание на закрытие соответствующих портов брандмауэра", + "配置": "настроить", + "跳过防火墙设置": "обойти настройки брандмауэра", + "伪装路径": "маскировка пути", + "不需要": "не нужно", + "是否需要修改": "необходимо ли внести изменения", + "用户名": "имя пользователя", + "请输入正确的 email": "введите правильный email", + "是否需要自定义字符串映射": "необходима ли настройка пользовательских строк отображения", + "请输入自定义字符串": "введите пользовательскую строку", + "最多30字符": "не более 30 символов", + "自定义字符串": "пользовательская строка", + "映射字符串": "маркировка строк", + "检测到 target 域名已配置, 是否保留": "обнаружено, что целевое доменное имя уже настроено, сохранить его", + "请输入一个域名": "введите доменное имя", + "域名要求支持 TLSv1.3、X25519 与 H2 以及域名非跳转用": "доменные имена должны поддерживать tlsv1.3, x25519 и h2, а также домены не должны переадресовываться", + "确认域名符合要求后请输入": "после подтверждения соответствия доменного имени введите", + "正在检测域名请等待": "проверяется домен, пожалуйста, подождите", + "该域名不支持": "доменное имя не поддерживается", + "该域名发生了跳转": "домен был перенаправлен", + "该域名可能不满足所有要求": "доменное имя может не соответствовать всем требованиям", + "是否仍要设置此域名": "не установить ли этот домен", + "域名": "доменное имя", + "满足所有要求": "все требования выполнены", + "域名的": "доменное имя", + "默认为": "по умолчанию", + "域名本身": "доменное имя самой", + "如不清楚具体用途, 请勿继续": "если вы не знаете конкретного использования, не продолжайте", + "是否变更": "изменить", + "负载均衡": "вывод распределения нагрузки", + "请选择协议为 ws 或 gRPC": "выберите протокол как ws или grpc", + "返回": "возвращаться", + "请重新输入正确的数字": "пожалуйста, введите правильное число ещё раз", + "本地文件 file_manager.sh 不存在, 正在下载": "локальный файл file_manager.sh не существует, выполняется загрузка", + "下载失败, 请手动下载并安装新版本": "загрузка не удалась, пожалуйста, скачайте и установите новую версию вручную", + "无效选项 请重试": "недопустимый ввод повторите попытку", + "当前模式不支持此操作": "текущий режим не поддерживает эту операцию", + "配置用途可以参考文章": "конфигурация используется в соответствии с статьей", + "敬请期待": "следите за обновлениями", + "修改": "изменение", + "端口号": "номер порта", + "不支持": "не поддерживается", + "用户名修改": "изменение имени пользователя", + "请先删除多余的用户": "пожалуйста, сначала удалите лишних пользователей", + "配置修改": "настройка изменена", + "检测到 Xray 的权限控制, 启动修改程序": "обнаружено управление правами xray, запуск модификации", + "修改完成": "изменения завершены", + "若更新无效, 建议直接卸载再安装": "если обновление неэффективно, рекомендуется удалить и заново установить", + "部分新功能需要重新安装才可生效": "некоторые новые функции требуют повторной установки для активации", + "检测到存在最新版": "обнаружена доступная новая версия", + "脚本可能未兼容此版本": "сценарий может быть несовместим с этой версией", + "是否更新": "обновить", + "升级": "обновление", + "升级/重装": "обновление/переустановка", + "Reality 协议有流量偷跑的风险": "reality протокол имеет риск утечки трафика", + "该风险在 target 网址被 cdn 加速时存在": "этот риск существует, когда целевое url-адрес ускоряется с помощью cdn", + "是否额外安装 nginx 前置保护(推荐)": "установить дополнительную защиту nginx перед этим (рекомендуется)", + "已跳过安装": "пропущена установка", + "已存在, 跳过编译安装过程": "существует, пропустить этап компиляции и установки", + "检测到旧版本安装的": "обнаружен установочный пакет старой версии", + "请先做好备份": "пожалуйста, сначала сделайте резервную копию", + "是否需要删除 (请删除)": "необходимо удалить (пожалуйста, удалите)", + "已跳过删除": "пропущено удаление", + "日志目录已更改, 日志清除需要重新设置": "директория журнала изменена, настройка очистки журнала требует перенастраивания", + "检测到其他套件安装的 Nginx, 继续安装会造成冲突, 请处理后安装": "обнаружена установленная версия nginx в другом пакете, продолжение установки вызовет конфликт, please handle before installation", + "即将下载已编译的": "скоро будет загружен скомпилированный", + "配置文件不完整, 退出升级": "конфигурационный файл неполный, выход из обновления", + "当前安装模式不需要": "текущий режим установки не требуется", + "配置文件不存在, 退出升级": "профиль конфигурации отсутствует, выход из обновления", + "删除旧版": "удалите предыдущую версию", + "是否保留原 Nginx 配置文件": "оставить ли оригинальный файл конфигурации nginx", + "原配置文件已删除": "удален исходный профиль", + "原配置文件已保留": "старый профайл сохранён", + "已为最新版": "это последняя версия", + "设置后台定时自动更新程序 (包含: 脚本/Xray/Nginx)": "настроить автоматическое обновление программы в фоновом режиме (включая: скрипты/xray/nginx)", + "可能自动更新后有兼容问题, 谨慎开启": "возможны проблемы совместимости после автоматического обновления, будьте осторожны при включении", + "是否开启": "начать", + "设置自动更新": "настроить автоматическое обновление", + "已设置自动更新": "установлена автоматическая обновление", + "是否关闭": "закрыть", + "删除自动更新": "удалить автоматическое обновление", + "安装 SSL 证书生成脚本依赖": "установка скрипта для создания сертификата ssl", + "安装 SSL 证书生成脚本": "установите скрипт для генерации сертификата ssl", + "检测到原域名配置存在, 是否跳过域名设置": "обнаружена конфигурация оригинального доменного имени, пропустить настройку домена", + "已跳过域名设置": "пропущена настройка домена", + "确定域名信息": "установите информацию о домене", + "请输入你的域名信息": "введите информацию о вашем домене", + "请选择公网IP(IPv4/IPv6)或手动输入域名": "пожалуйста, выберите публичный ip-адрес (ipv4/ipv6) или введите домен вручную", + "不推荐": "не рекомендуется", + "正在获取公网IP信息, 请耐心等待": "получение публичной информации ip, пожалуйста, подождите терпеливо", + "此选项用于服务器商仅提供域名访问服务器": "этот параметр используется когда провайдер предоставляет доступ к серверу только через доменное имя", + "注意服务器商域名添加 CNAME 记录": "обратите внимание на добавление cname записи для доменного имени провайдера серверов", + "域名DNS解析IP": "доменное имя dns расшифровывается в ip", + "公网IP/域名": "публичный ip/домен", + "域名DNS解析IP与公网IP匹配": "доменное имя dns-распознавание ip соответствует общедоступному ip", + "请确保域名添加了正确的 A/AAAA 记录, 否则将无法正常使用 Xray": "пожалуйста, убедитесь, что доменное имя добавлено с правильными a/aaaa записями, иначе xray не будет функционировать properly. please note that properly was kept in english as per your instructions to leave english portions as they are. however, for a more coherent translation, you might consider replacing properly with a russian word or phrase", + "域名DNS解析IP与公网IP不匹配, 请选择": "доменное имя dns-распознавание ip не соответствует общедоступному ip, пожалуйста, выберите", + "继续安装": "продолжить установку", + "重新输入": "повторный ввод", + "终止安装": "завершить установку", + "安装终止": "установка завершена", + "检测到原IP配置存在, 是否跳过IP设置": "обнаружена оригинальная конфигурация ip, пропустить настройку ip", + "已跳过IP设置": "пропущена настройка ip", + "确定公网IP信息": "определите информацию о публичном ip-адресе", + "请选择公网IP为IPv4或IPv6": "пожалуйста, выберите публичный ip-адрес как ipv4 или ipv6", + "手动输入": "ручной ввод", + "尝试终止占用的进程": "попытка прекратить занятый процесс", + "证书测试签发成功, 开始正式签发": "сертификат успешно прошел тестирование, начинается официальное подписание", + "证书测试签发失败": "сертификат не был успешно подписан", + "证书生成成功": "сертификат успешно сгенерирован", + "证书配置成功": "сертификат настроен успешно", + "证书生成失败": "сертификат не удалось сгенерировать", + "检测到 Xray 配置过多用户": "обнаружено избыточное количество пользователей в конфигурации xray", + "是否保留原 Xray 配置文件": "сохранить исходный файл конфигурации xray", + "添加简单 ws/gRPC 协议": "добавить простой протокол ws/grpc", + "检测到配置文件, 是否读取配置文件": "обнаружены файлы конфигурации, читать файлы конфигурации", + "已删除配置文件": "удалён профиль", + "已保留配置文件": "зарезервирован профиль", + "检测到当前安装模式与配置文件的安装模式不一致": "обнаружено несоответствие текущего режима установки с режимом установки в профиле", + "是否保留配置文件 (强烈不建议)": "оставить профиль (это не рекомендуется)", + "请务必确保配置文件正确": "пожалуйста, убедитесь, что конфигurationный файл правильно настроен", + "检测到配置文件不完整, 是否保留配置文件": "обнаружен неполный профиль конфигурации, сохранить профиль конфигурации", + "配置删除": "настройка удаления", + "设置 Nginx 开机自启": "настроить автозапуск nginx", + "设置": "настройки", + "开机自启": "запуск при старте", + "关闭 Nginx 开机自启": "отключить автозапуск nginx", + "关闭": "закрыть", + "停止已有服务": "остановить существующие службы", + "重启": "перезагрузить", + "启动": "запуск", + "停止": "остановись", + "新版本已自动设置证书自动更新": "новая версия настроена для автоматического обновления сертификата", + "老版本请及时删除 废弃的 改版证书自动更新": "пожалуйста, удалите старую версию во времени", + "已设置改版证书自动更新": "установлена автоматическая обновление сертификата обновления версии", + "是否需要删除改版证书自动更新 (请删除)": "необходимо ли удалить обновление сертификата при переработке (пожалуйста, удалите)", + "删除改版证书自动更新": "удаление сертификата обновления автоматически обновляется", + "已过期": "просрочено", + "证书生成日期": "дата создания сертификата", + "证书生成天数": "срок генерации сертификата в днях", + "证书剩余天数": "сертификат осталось дней", + "是否立即更新证书": "необходимо немедленно обновить сертификат", + "证书签发工具不存在, 请确认是否证书为脚本签发": "средство для выпуска сертификатов отсутствует, пожалуйста, подтвердите, был ли сертификат выдан сценарием", + "证书更新": "сертификат обновлен", + "本地文件 fail2ban_manager.sh 不存在, 正在下载": "локальный файл fail2ban_manager.sh не существует, загружается", + "检测到日志文件大小如下:": "обнаружен размер файла журнала следующий", + "即将清除": "скоро очистка", + "日志清理": "журнал очистки", + "已设置旧版自动清理日志任务": "настроен задача очистки старых логов автоматически", + "是否需要删除旧版自动清理日志任务": "необходимо удалить старую задачу автоматической очистки журнала", + "保留现有自动清理日志任务": "оставить существующую задачу автоматической очистки журналов", + "删除旧版自动清理日志任务": "удаление задачи автоматической очистки старых логов", + "是否需要设置自动清理日志": "необходимо ли настроить автоматическую очистку журнала", + "清空屏幕": "очистить экран", + "将在 每周三 04:00 自动清空日志": "будут автоматически очищены в среду в 04:00", + "已设置自动清理日志任务": "установлена задача автоматической очистки журнала", + "是否需要删除现有自动清理日志任务": "необходимо ли удалить существующую задачу автоматической очистки журнала", + "删除自动清理日志任务": "удалить задачу автоматической очистки журнала", + "设置自动清理日志": "настроить автоматическую очистку журнала", + "配置分享": "настройки для sharing", + "分享链接": "поделиться ссылкой", + "二维码": "кодовая строка двойного измерения", + "生成分享链接": "создать ссылку для sharing", + "安装成功": "установка успешна", + "目前分享链接规范为实验阶段, 请自行判断是否适用": "в настоящее время нормы для распространения ссылок находятся на экспериментальном этапе, пожалуйста, оцените самостоятельно, подходят ли они для использования", + "配置信息": "конфигурационная информация", + "主机": "хост", + "端口": "порт", + "用户id": "идентификатор пользователя", + "加密": "шифрование", + "传输协议": "протокол передачи данных", + "底层传输安全": "нижний уровень транспортной безопасности", + "路径": "путь", + "不要落下": "не уходи", + "不需要加": "не нужно добавлять", + "流控": "управление потоком", + "即将申请证书, 支持使用自定义证书": "заявка на получение сертификата, поддержка использования пользовательского сертификата", + "如需使用自定义证书, 请按如下步骤:": "если вы хотите использовать пользовательский сертификат, следуйте приведенным ниже инструкциям", + "1. 将证书文件重命名: 私钥(xray.key)、证书(xray.crt)": "1. переименуйте файлы сертификата: приватный ключ (xray.key), сертификат (xray.crt)", + "2. 将重命名后的证书文件放入": "2. переименованный файл сертификата поместите", + "目录后再运行脚本": "запустите сценарий после каталога", + "3. 重新运行脚本": "3. заново запустить сценарий", + "是否继续": "продолжить", + "所有证书文件均已存在, 是否保留": "все файлы сертификатов уже существуют, нужно ли сохранить", + "已删除": "удалено", + "证书应用": "сертификаты используются", + "证书文件已存在, 是否保留": "файл сертификата уже существует, сохранить", + "证书签发残留文件已存在, 是否保留": "файлы оставшиеся от предыдущего выпуска сертификатов уже существуют, нужно ли сохранить их", + "添加": "добавить", + "请选择支持的 TLS 版本": "выберите поддерживаемую версию tls", + "建议选择 TLS1.3 only (安全模式)": "рекомендуется выбрать только tls1.3 (режим безопасности)", + "兼容模式": "режим совместимости", + "安全模式": "режим безопасности", + "已切换至": "переключено на", + "Nginx/配置文件不存在 或 当前模式不支持": "nginx/конфигурационный файл не существует или текущий режим не поддерживает", + "请先安装": "пожалуйста, установите", + "连接端口号": "номер порта подключения", + "此模式不支持修改": "этот режим не поддерживает изменения", + "即将显示用户, 一次仅能显示一个": "скоро будет показан пользователь, отображается только один за раз", + "请选择显示用户使用的协议": "пожалуйста, выберите протокол, используемый пользователем", + "请选择要显示的用户编号": "пожалуйста, выберите номер пользователя, который должен быть отображен", + "选择错误": "выбор ошибки", + "请直接在主菜单选择 [15] 显示主用户": "пожалуйста, выберите [15] вывод основного пользователя в главном меню", + "回到菜单": "вернуться в меню", + "请先检测 Xray 是否正确安装": "пожалуйста, проверьте, правильно ли установлен xray", + "是否继续显示用户": "продолжить отображение пользователя", + "此模式不支持删除用户": "этот режим не поддерживает удаление пользователей", + "即将添加用户, 一次仅能添加一个": "скоро добавим пользователя, один раз можно добавить только одного", + "请选择添加用户使用的协议": "выберите протокол, используемый пользователем", + "添加用户": "добавить пользователя", + "是否继续添加用户": "продолжить добавление пользователей", + "此模式不支持添加用户": "этот режим не поддерживает добавление пользователей", + "即将删除用户, 一次仅能删除一个": "сoon the user will be deleted, only one user can be deleted at a time", + "请选择删除用户使用的协议": "выберите удаление используемых пользователем протоколов", + "请选择要删除的用户编号": "пожалуйста, выберите номер пользователя для удаления", + "请直接在主菜单修改主用户的": "пожалуйста, измените основного пользователя в главном меню", + "删除用户": "удалить пользователя", + "是否继续删除用户": "продолжить удаление пользователя", + "文件不存在": "файл не существует", + "已配置 Xray 流量统计": "настроен учёт трафика xray", + "是否需要关闭此功能": "необходимо ли отключить эту функцию", + "关闭 Xray 流量统计": "закрыть статистику трафика xray", + "流量统计需要使用": "статистика трафика требует использования", + "可能会影响 Xray 性能": "может повлиять на производительность xray", + "设置 Xray 流量统计": "настройка учёта трафика xray", + "已卸载": "удаляется", + "是否卸载": "вы хотите удалить", + "是否删除所有脚本文件": "удалить все скриптовые файлы", + "已删除所有文件": "удалены все файлы", + "ヾ( ̄▽ ̄) 拜拜~": "прощай~", + "已保留脚本文件 (包含 SSL 证书等)": "зарезервированы скриптовые файлы (содержащие ssl-сертификаты и т. д.)", + "是否保留配置文件": "оставить профиль", + "已清空证书遗留文件": "очистить файлы свидетельств", + "检测最新版本失败": "проверка последней версии не удалась", + "存在新版本, 但版本变化较大, 可能存在不兼容情况, 是否更新": "есть новая версия, но версия сильно меняется, может быть несовместимость, обновляется ли обновление", + "存在新版本, 是否更新": "существует новая версия, обновить её", + "检测 脚本 最新版本失败": "проверка последней версии скрипта не удалась", + "脚本 版本差别过大, 跳过更新": "скрипт версий отличается слишком сильно, пропускаю обновление", + "更新完成": "обновление завершено", + "脚本版本变化较大, 若服务无法正常运行请卸载后重装": "скрипт претерпел значительные изменения. если сервис не работает, пожалуйста, удалите его и установите заново", + "当前版本为最新版本": "текущая версия является последней версией", + "下载最新脚本": "загрузите последний сценарий", + "该选项暂时无法使用": "этот вариант временно недоступен", + "此模式推荐用于负载均衡, 一般情况不推荐使用, 是否安装": "этот режим рекомендуется использовать для балансировки нагрузки, обычно не рекомендуется использовать, устанавливать или нет", + "变更": "изменение", + "负载均衡配置": "балансировка нагрузки настроена", + "清除日志文件": "очистить файлы журнала", + "查看证书状态": "проверить состояние сертификата", + "更新证书有效期": "обновите срок действия сертификата", + "设置证书自动更新": "настройка автоматического обновления сертификатов", + "设置 Fail2ban 防暴力破解": "настройка fail2ban brute-rypray cracking", + "显示帮助": "показать помощь", + "更新": "обновление", + "脚本卸载": "скрипт выгружен", + "显示安装信息": "показать информацию об установке", + "加速": "ускорение", + "升级脚本": "обновить сценарий", + "显示": "показать", + "访问信息": "посетить информацию", + "错误信息": "информация об ошибке", + "脚本版本变化较大, 可能存在不兼容情况, 是否继续使用": "версия сценария сильно изменилась, и может быть несовместимость", + "检测失败": "проверка не удалась", + "有新版": "есть новая версия", + "最新版": "последняя версия", + "版本未知": "версия неизвестна", + "有测试版": "есть бета-версия", + "运行中": "запуск", + "无需测试": "не требуется тестирование", + "未运行": "не запущено", + "无法连通": "нет соединения", + "本地正常": "регион нормален", + "脚本维护中.. 请稍后再试": "скрипт находится в процессе обслуживания.. пожалуйста, попробуйте позже", + "无法检测所需依赖的在线版本, 请稍后再试": "не удалось проверить онлайн-версию необходимых зависимостей, попробуйте пожалуйста позже", + "请输入数字": "введите число", + "请输入 1 到 5 之间的有效数字": "введитеeffective number from 1 to 5", + "无效的选择": "недопустимый выбор", + "检测存在到": "проверка наличия до", + "来源于自动清理日志错误的设置": "из настроек автоматической очистки журнала ошибок", + "开始修复": "начать ремонт", + "错误的配置文件删除": "неправильный профиль удален", + "即将重新设置自动清理日志": "скоро будет настроен автоматический сброс журнала", + "安装管理脚本": "установка скриптов управления", + "作者": "автор", + "当前模式": "текущий режим", + "当前语言": "текущий язык", + "可以使用": "можно использовать", + "命令管理脚本": "командный скрипт управления", + "版本检测": "версия обнаружена", + "脚本": "сценарий", + "运行状态": "рабочее состояние", + "连通性": "связность", + "升级向导": "мастер обновления", + "安装向导": "установочный мастер", + "配置变更": "настройка изменена", + "版本": "версия", + "用户管理": "управление пользователями", + "查看": "посмотреть", + "用户": "пользователь", + "删除": "удалить", + "查看信息": "просмотр информации", + "实时访问日志": "доступ к журналам в режиме реального времени", + "实时错误日志": "реали-time ошибки лог", + "服务相关": "служба", + "所有服务": "все сервисы", + "证书相关": "сертификаты", + "证书状态": "статус сертификата", + "证书有效期": "срок действия сертификата", + "证书自动更新": "сертификаты обновляются автоматически", + "其他选项": "другие варианты", + "自动更新": "автоматическое обновление", + "防暴力破解": "защита от подбора паролей", + "流量统计": "статистика трафика", + "清除": "очистить", + "日志文件": "файлы журнала", + "测试": "тестирование", + "服务器网速": "скорость сервера", + "卸载向导": "установить мастер", + "卸载": "удалить", + "清空": "очистить", + "证书文件": "файл сертификата", + "退出": "выйти", + "请输入选项": "введите опцию", + "请输入 0 到 34 之间的有效数字": "введите действительное число от 0 до 34", + "不建议": "не рекомендуется", + "频繁升级 Nginx, 请确认 Nginx 有升级的必要": "частое обновление nginx, пожалуйста, убедитесь, что для nginx есть необходимость в обновлении", + "开始升级": "начать обновление", + "请输入正确的数字": "введите правильное число", + "管理": "управление", + "状态": "состояние", + "无效的选择请重试": "недопустимый ввод, попробуйте снова", + "已经安装, 跳过安装步骤": "установлено, пропустить этапы установки", + "未安装, 请先安装": "не установлен, установите сначала", + "请选择": "пожалуйста, выберите", + "操作": "управление", + "添加自定义规则": "добавить пользовательские правила", + "请输入新的": "введите новые", + "名称": "название", + "请输入日志路径": "введите путь к журналу", + "请输入最大重试次数": "введите максимальное количество попыток повтора", + "最大重试次数必须在 1 到 99 之间": "максимальное количество попыток должно быть между 1 и 99", + "请输入封禁时间": "введите время блокировки", + "秒": "секунду", + "封禁时间必须在 1 到 8640000 秒之间": "время блокировки должно находиться в диапазоне от 1 до 8640000 секунд", + "已存在": "существует", + "自定义规则添加成功": "пользовательские правила успешно добавлены", + "重启以应用新规则": "перезагрузите для применения новых правил", + "停止成功": "прекратить успех", + "总体状态": "общее состояние", + "默认启用的 Jail 状态": "по умолчанию включено состояние jail", + "封锁情况": "блокада situation", + "新版本可用": "новая версия доступна", + "当前版本": "текущая версия", + "请访问": "пожалуйста, посетите", + "查看更新说明": "просмотреть заметки о выпуске", + "是否要下载并安装新版本": "необходимо загрузить и установить новую версию", + "正在下载新版本": "загрузка новой версии", + "下载完成, 正在重新运行脚本": "загрузка завершена, скрипт запускается заново", + "跳过更新": "пропустить обновление", + "当前已经是最新版本": "текущая версия является самой последней", + "用法": "использование", + "文件扩展名": "расширение файла", + "目录路径": "путь к каталогу", + "目录": "содержание", + "不存在, 请检查路径": "не существует, проверьте путь", + "列出所有": "список всех", + "文件": "файл", + "没有找到": "не найдено", + "文件名": "название файла", + "序号": "номер", + "请输入网址 (例如 hey.run)": "введите адрес веб-сайта (например, hey.run)", + "不要包含 http:// 或 https:// 开头": "не включайте начало с http:// или https://", + "网址不能包含 http:// 或 https:// 开头": "url не должен содержать в начале http:// или https://", + "已创建": "создан", + "请输入主机": "введите хост", + "请输入端口": "введите порт", + "请输入权重": "введите вес", + "追加完成": "дополнение завершено", + "请输入要编辑的文件编号": "введите номер файла для редактирования", + "未安装, 正在尝试安装": "не установлен, попытка установки", + "已编辑": "отредактировано", + "请输入要删除的文件编号": "введите номер файла для удаления", + "不支持的文件扩展名": "неподдерживаемое расширение файла", + "主菜单": "главное меню", + "创建一个新的": "создать новое", + "编辑一个已存在的": "редактировать существующий", + "删除一个已存在的": "удалить существующий", + "请选择一个选项": "пожалуйста, выберите один вариант", + "无效选项, 请重试": "недопустимый вариант, попробуйте снова", + "重启成功": "перезапуск успешно выполнен", + "重启失败": "перезапуск не удался", + "请检查配置文件是否有误": "проверьте, пожалуйста, на наличие ошибок файл конфигурации", + "秒后": "через секунду", + "由于 h3 仅支持 TLS1.3, 只支持 TLS1.3 only (安全模式)": "поскольку h3 поддерживает только tls1.3, поддерживает только tls1.3 (безопасный режим)" +} \ No newline at end of file diff --git a/po/en.po b/po/en.po index f3bde1d..fbf8566 100644 --- a/po/en.po +++ b/po/en.po @@ -8,8 +8,8 @@ msgstr "" "Project-Id-Version: xray_install 1.0\n" "Report-Msgid-Bugs-To: https://github.com/hello-yunshu/Xray_bash_onekey/" "issues\n" -"POT-Creation-Date: 2025-01-29 17:17+0000\n" -"PO-Revision-Date: 2025-01-29 17:17+0000\n" +"POT-Creation-Date: 2025-02-06 18:01+0000\n" +"PO-Revision-Date: 2025-02-06 18:01+0000\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" "Language: en\n" @@ -24,11 +24,11 @@ msgstr "remind" #: install.sh:37 msgid "错误" -msgstr "mistake" +msgstr "error" #: install.sh:38 msgid "警告" -msgstr "warn" +msgstr "warning" #: install.sh:41 install.sh:1338 install.sh:3368 install.sh:3390 #: install.sh:3393 install.sh:3394 install.sh:3432 @@ -37,11 +37,11 @@ msgstr "not installed" #: install.sh:100 msgid "日志文件归档失败" -msgstr "log file archiving failed" +msgstr "the log file archiving failed" #: install.sh:105 msgid "清空日志文件失败" -msgstr "clear the log file failed" +msgstr "failed to clear log file" #: install.sh:109 msgid "日志文件已轮转并归档为" @@ -53,23 +53,23 @@ msgstr "the current system is" #: install.sh:156 msgid "不在支持的系统列表内, 安装中断" -msgstr "install interrupt in the system list that is not supported" +msgstr "not in the supported system list, installation interrupted" #: install.sh:163 msgid "当前用户是 root 用户, 进入安装流程" -msgstr "the current user is root user, enter the installation process" +msgstr "the current user is the root user, proceeding to the installation process" #: install.sh:165 msgid "当前用户不是 root 用户, 请切换到 root 用户后重新执行脚本" -msgstr "the current user is not a root user, please re -execute the script after switching to the root user" +msgstr "the current user is not a root user, please switch to the root user and re-run the script" #: install.sh:191 msgid "无法获取远程语言文件信息" -msgstr "unable to obtain remote language file information" +msgstr "unable to retrieve remote language file information" #: install.sh:209 msgid "正在更新语言文件" -msgstr "update language files" +msgstr "updating language files" #: install.sh:212 install.sh:291 msgid "语言文件更新失败" @@ -77,27 +77,27 @@ msgstr "language file update failed" #: install.sh:217 msgid "语言文件无效" -msgstr "language file is invalid" +msgstr "the language file is invalid" #: install.sh:223 msgid "版本文件更新失败" -msgstr "edition file update failed" +msgstr "the version file update failed" #: install.sh:230 msgid "语言文件更新完成" -msgstr "language file update is completed" +msgstr "language file update completed" #: install.sh:235 msgid "正在安装" -msgstr "install" +msgstr "installing now" #: install.sh:238 msgid "安装失败" -msgstr "failed to install" +msgstr "installation failed" #: install.sh:238 install.sh:261 install.sh:282 install.sh:291 msgid "将使用默认语言" -msgstr "will use the default language" +msgstr "will use default language" #: install.sh:261 msgid "未找到" @@ -105,15 +105,15 @@ msgstr "not found" #: install.sh:282 msgid "不支持的语言" -msgstr "unsurable language" +msgstr "unsupported language" #: install.sh:296 msgid "发现语言文件更新" -msgstr "discover the language file update" +msgstr "discover language file updates" #: install.sh:309 install.sh:1521 msgid "完成" -msgstr "finish" +msgstr "complete" #: install.sh:312 msgid "失败" @@ -121,7 +121,7 @@ msgstr "fail" #: install.sh:319 msgid "在线版本检测失败, 请稍后再试" -msgstr "the online version of the test failed, please try again later" +msgstr "online version detection failed, please try again later" #: install.sh:341 install.sh:349 install.sh:1105 install.sh:3289 #: install.sh:3290 install.sh:3291 install.sh:3558 install.sh:3559 @@ -135,7 +135,7 @@ msgstr "installed" #: install.sh:368 install.sh:372 msgid "自启动配置" -msgstr "self -start configuration" +msgstr "self-start configuration" #: install.sh:381 msgid "链接库安装" @@ -143,15 +143,15 @@ msgstr "link library installation" #: install.sh:386 msgid "值为空或超出范围, 请重新输入" -msgstr "value is empty or beyond the range, please re -enter" +msgstr "the value is empty or out of range, please re-enter" #: install.sh:395 msgid "值为空, 请重新输入" -msgstr "value is empty, please re -enter" +msgstr "the value is empty, please re-enter" #: install.sh:437 msgid "确定 连接端口" -msgstr "determine the connection port" +msgstr "confirm connect port" #: install.sh:438 install.sh:441 install.sh:2532 install.sh:2538 msgid "请输入连接端口" @@ -167,15 +167,15 @@ msgstr "default value" #: install.sh:2553 install.sh:2568 install.sh:2573 install.sh:2578 #: install.sh:2579 msgid "请输入 0-65535 之间的值" -msgstr "please enter the value between 0-65535" +msgstr "enter a value between 0 and 65535" #: install.sh:440 msgid "端口 9443 不允许使用, 请重新输入" -msgstr "port 9443 is not allowed to be used, please re -enter" +msgstr "port 9443 is not allowed, please re-enter" #: install.sh:449 msgid "请选择安装协议" -msgstr "please select the installation protocol" +msgstr "please select the installation agreement" #: install.sh:450 install.sh:1410 install.sh:1443 install.sh:1490 #: install.sh:2629 install.sh:2700 install.sh:2749 fail2ban_manager.sh:138 @@ -196,23 +196,23 @@ msgstr "please enter" #: install.sh:454 install.sh:1414 install.sh:1445 install.sh:1494 #: install.sh:2492 install.sh:2632 install.sh:2703 install.sh:2752 msgid "请输入有效的数字" -msgstr "please enter valid numbers" +msgstr "enter a valid number" #: install.sh:475 msgid "是否添加简单 ws/gRPC 协议 用于负载均衡" -msgstr "whether to add a simple ws/grpc protocol for load balancing" +msgstr "whether to add simple ws/grpc protocol for load balancing" #: install.sh:476 msgid "如不清楚具体用途, 请勿选择" -msgstr "if you don’t know the specific use, please do not choose" +msgstr "if you are not clear about the specific use, do not select" #: install.sh:495 msgid "已跳过添加简单 ws/gRPC 协议" -msgstr "skip to add simple ws/grpc protocol" +msgstr "skipped adding simple ws/grpc protocol" #: install.sh:524 install.sh:546 install.sh:627 install.sh:660 install.sh:692 msgid "是否需要自定义" -msgstr "do you need a custom" +msgstr "do you need custom" #: install.sh:528 install.sh:550 install.sh:631 install.sh:664 msgid "请输入自定义" @@ -220,7 +220,7 @@ msgstr "please enter custom" #: install.sh:528 install.sh:550 msgid "请勿与其他端口相同" -msgstr "do not be the same as other ports" +msgstr "please do not use the same port as other ports" #: install.sh:567 file_manager.sh:121 msgid "是否需要设置防火墙" @@ -233,20 +233,20 @@ msgstr "firewall" #: install.sh:607 install.sh:611 file_manager.sh:139 file_manager.sh:143 msgid "重启完成" -msgstr "restart" +msgstr "reboot completed" #: install.sh:613 msgid "开放防火墙相关端口" -msgstr "open firewall -related port" +msgstr "open the firewall-related ports" #: install.sh:614 msgid "若修改配置, 请注意关闭防火墙相关端口" -msgstr "if you modify the configuration, please pay attention to turn off the firewall -related port" +msgstr "if you modify the configuration, please note to close the firewall-related ports" #: install.sh:615 install.sh:3293 install.sh:3306 install.sh:3307 #: install.sh:3567 install.sh:3586 fail2ban_manager.sh:76 msgid "配置" -msgstr "configuration" +msgstr "configure" #: install.sh:618 file_manager.sh:147 msgid "跳过防火墙设置" @@ -256,11 +256,11 @@ msgstr "skip firewall settings" #: install.sh:660 install.sh:664 install.sh:665 install.sh:669 install.sh:677 #: install.sh:1044 msgid "伪装路径" -msgstr "camouflage" +msgstr "masked path" #: install.sh:631 install.sh:664 msgid "不需要" -msgstr "unnecessary" +msgstr "no need" #: install.sh:644 install.sh:677 install.sh:811 msgid "是否需要修改" @@ -272,11 +272,11 @@ msgstr "username" #: install.sh:696 msgid "请输入正确的 email" -msgstr "please enter the correct email" +msgstr "please enter a valid email" #: install.sh:709 msgid "是否需要自定义字符串映射" -msgstr "do you need a custom string mapping" +msgstr "do you need custom string mapping" #: install.sh:713 msgid "请输入自定义字符串" @@ -297,7 +297,7 @@ msgstr "mapping string" #: install.sh:733 msgid "检测到 target 域名已配置, 是否保留" -msgstr "the target domain name has been configured, whether it is retained" +msgstr "detected that the target domain has been configured, do you want to retain it" #: install.sh:753 msgid "请输入一个域名" @@ -305,15 +305,15 @@ msgstr "please enter a domain name" #: install.sh:754 msgid "域名要求支持 TLSv1.3、X25519 与 H2 以及域名非跳转用" -msgstr "the domain name requires support for tlsv1.3, x25519 and h2, and domain name non -jump" +msgstr "the domain name requirements support tlsv1.3, x25519, and h2, and the domain name does not redirect" #: install.sh:755 msgid "确认域名符合要求后请输入" -msgstr "please enter after confirming that the domain name meets the requirements" +msgstr "confirm that the domain name meets the requirements and then enter" #: install.sh:756 msgid "正在检测域名请等待" -msgstr "please wait for the domain name" +msgstr "detecting domain name, please wait" #: install.sh:763 install.sh:768 install.sh:773 msgid "该域名不支持" @@ -321,15 +321,15 @@ msgstr "the domain name does not support" #: install.sh:778 msgid "该域名发生了跳转" -msgstr "the domain name jumped" +msgstr "the domain name has been redirected" #: install.sh:785 msgid "该域名可能不满足所有要求" -msgstr "this domain name may not meet all requirements" +msgstr "the domain name may not meet all requirements" #: install.sh:786 msgid "是否仍要设置此域名" -msgstr "do you still have to set this domain name" +msgstr "do you still want to set this domain name" #: install.sh:798 install.sh:803 install.sh:1412 msgid "域名" @@ -341,19 +341,19 @@ msgstr "meet all requirements" #: install.sh:811 msgid "域名的" -msgstr "domain name" +msgstr "the domain name's" #: install.sh:812 msgid "默认为" -msgstr "default" +msgstr "the default is" #: install.sh:812 msgid "域名本身" -msgstr "domain name itself" +msgstr "the domain name itself" #: install.sh:813 install.sh:851 install.sh:894 msgid "如不清楚具体用途, 请勿继续" -msgstr "if you don’t know the specific use, please do not continue" +msgstr "if you are not clear about the specific purpose, do not continue" #: install.sh:850 install.sh:893 msgid "是否变更" @@ -365,7 +365,7 @@ msgstr "load balancing" #: install.sh:855 msgid "请选择协议为 ws 或 gRPC" -msgstr "please select the protocol to ws or grpc" +msgstr "please select the protocol as ws or grpc" #: install.sh:858 fail2ban_manager.sh:102 msgid "返回" @@ -373,20 +373,20 @@ msgstr "return" #: install.sh:860 msgid "请重新输入正确的数字" -msgstr "please re -enter the correct number" +msgstr "please re-enter the correct number" #: install.sh:865 install.sh:902 msgid "本地文件 file_manager.sh 不存在, 正在下载" -msgstr "local file file_manager.sh does not exist, downloading" +msgstr "the local file file_manager.sh does not exist, downloading now" #: install.sh:868 install.sh:905 install.sh:2039 fail2ban_manager.sh:242 #: file_manager.sh:258 msgid "下载失败, 请手动下载并安装新版本" -msgstr "the download failed, please download and install the new version manually" +msgstr "download failed, please download and install the new version manually" #: install.sh:878 msgid "无效选项 请重试" -msgstr "invalent options please try it out" +msgstr "invalid option please try again" #: install.sh:886 install.sh:915 install.sh:1975 install.sh:2013 #: install.sh:2029 @@ -395,17 +395,17 @@ msgstr "the current mode does not support this operation" #: install.sh:895 msgid "配置用途可以参考文章" -msgstr "you can refer to the article for configuration" +msgstr "configuration usage can refer to the article" #: install.sh:895 msgid "敬请期待" -msgstr "please look forward to" +msgstr "look forward to it" #: install.sh:937 install.sh:941 install.sh:945 install.sh:957 install.sh:962 #: install.sh:968 install.sh:988 install.sh:994 install.sh:1044 install.sh:1063 #: install.sh:3307 install.sh:3530 msgid "修改" -msgstr "revise" +msgstr "modify" #: install.sh:996 msgid "端口号" @@ -413,7 +413,7 @@ msgstr "port number" #: install.sh:1046 msgid "不支持" -msgstr "not support" +msgstr "not supported" #: install.sh:1053 msgid "用户名修改" @@ -421,7 +421,7 @@ msgstr "username modification" #: install.sh:1056 install.sh:1066 msgid "请先删除多余的用户" -msgstr "please delete excess users first" +msgstr "please first delete the redundant users" #: install.sh:1074 install.sh:1082 install.sh:1089 install.sh:1763 #: install.sh:1833 install.sh:1863 install.sh:1872 install.sh:1895 @@ -429,73 +429,65 @@ msgid "配置修改" msgstr "configuration modification" #: install.sh:1094 -msgid "检测到 Xray 的权限控制, 启动擦屁股程序" -msgstr "the permissions control of xray is detected, and the scratching program is started" +msgid "检测到 Xray 的权限控制, 启动修改程序" +msgstr "detected permission control for xray, starting modification process" #: install.sh:1099 -msgid "擦屁股完成" -msgstr "finish the buttocks" +msgid "修改完成" +msgstr "modification completed" #: install.sh:1116 msgid "若更新无效, 建议直接卸载再安装" -msgstr "if the update is invalid, it is recommended to uninstall it directly and install it" +msgstr "if the update is ineffective, it is recommended to uninstall and then reinstall" #: install.sh:1117 msgid "部分新功能需要重新安装才可生效" -msgstr "some new functions need to be reinstalled before it can take effect" +msgstr "some new features require reinstallation to take effect" #: install.sh:1123 msgid "检测到存在最新版" -msgstr "the latest version is detected" +msgstr "detected existing latest version" #: install.sh:1124 msgid "脚本可能未兼容此版本" -msgstr "script may not be compatible with this version" +msgstr "the script may not be compatible with this version" #: install.sh:1125 msgid "是否更新" msgstr "whether to update" -#: install.sh:1132 -msgid "即将升级" -msgstr "improve" - -#: install.sh:1136 install.sh:1143 install.sh:1150 install.sh:1333 -#: install.sh:3548 install.sh:3549 install.sh:3550 +#: install.sh:1132 install.sh:1136 install.sh:1143 install.sh:1150 +#: install.sh:1333 install.sh:3548 install.sh:3549 install.sh:3550 msgid "升级" msgstr "upgrade" -#: install.sh:1139 -msgid "即将升级/重装" -msgstr "improved/reinstalled" - -#: install.sh:1147 +#: install.sh:1139 install.sh:1147 msgid "升级/重装" -msgstr "upgrade/reinstallation" +msgstr "upgrade/reinstall" #: install.sh:1163 msgid "Reality 协议有流量偷跑的风险" -msgstr "reality protocol has the risk of stealing traffic" +msgstr "reality protocol has a risk of data usage leakage" #: install.sh:1164 msgid "该风险在 target 网址被 cdn 加速时存在" -msgstr "this risk exists when the target website is accelerated by cdn" +msgstr "the risk exists when the target url is cdn accelerated" #: install.sh:1165 msgid "是否额外安装 nginx 前置保护(推荐)" -msgstr "whether to install nginx pre -protection (recommended)" +msgstr "whether to install an additional nginx front-end protection (recommended)" #: install.sh:1169 msgid "已跳过安装" -msgstr "skip installation" +msgstr "skipped installation" #: install.sh:1199 msgid "已存在, 跳过编译安装过程" -msgstr "already, skip the compilation and installation process" +msgstr "already exists, skip compilation installation process" #: install.sh:1202 msgid "检测到旧版本安装的" -msgstr "the old version was installed" +msgstr "detecting old version installation" #: install.sh:1203 msgid "请先做好备份" @@ -503,43 +495,43 @@ msgstr "please make a backup first" #: install.sh:1204 msgid "是否需要删除 (请删除)" -msgstr "do you need to delete (please delete)" +msgstr "whether to delete (please delete)" #: install.sh:1208 msgid "已跳过删除" -msgstr "skip delete" +msgstr "skipped deletion" #: install.sh:1215 msgid "日志目录已更改, 日志清除需要重新设置" -msgstr "the log directory has been changed, and the log clearance needs to be reset" +msgstr "the log directory has been changed, the log clearance needs to be reset" #: install.sh:1221 msgid "检测到其他套件安装的 Nginx, 继续安装会造成冲突, 请处理后安装" -msgstr "nginx installed in other kits, continuing installation will cause conflict, please install it after processing" +msgstr "detecting nginx installed by other packages, continuing installation will cause conflicts, please install after handling" #: install.sh:1235 msgid "即将下载已编译的" -msgstr "the compilation is about to be downloaded" +msgstr "compiled ones will be downloaded soon" #: install.sh:1280 install.sh:1281 install.sh:1288 install.sh:1289 msgid "配置文件不完整, 退出升级" -msgstr "the configuration file is incomplete, exit and upgrade" +msgstr "the configuration file is incomplete, exiting the upgrade" #: install.sh:1293 install.sh:1294 msgid "当前安装模式不需要" -msgstr "the current installation mode is not needed" +msgstr "the current installation mode does not require" #: install.sh:1298 install.sh:1299 msgid "配置文件不存在, 退出升级" -msgstr "the configuration file does not exist, exit and upgrade" +msgstr "the configuration file does not exist, exit upgrade" #: install.sh:1303 msgid "删除旧版" -msgstr "delete the old version" +msgstr "delete old version" #: install.sh:1307 msgid "是否保留原 Nginx 配置文件" -msgstr "whether to keep the original nginx configuration file" +msgstr "whether to retain the original nginx configuration file" #: install.sh:1315 install.sh:1584 msgid "原配置文件已删除" @@ -551,27 +543,27 @@ msgstr "the original configuration file has been retained" #: install.sh:1335 msgid "已为最新版" -msgstr "has been the latest version" +msgstr "already updated to the latest version" #: install.sh:1350 msgid "设置后台定时自动更新程序 (包含: 脚本/Xray/Nginx)" -msgstr "set the automatic update program (including: script/xray/nginx) when setting a background" +msgstr "set up background scheduled automatic update program (including: script/xray/nginx)" #: install.sh:1351 msgid "可能自动更新后有兼容问题, 谨慎开启" -msgstr "there may be compatible problems after automatic update, and open cautiously" +msgstr "it may cause compatibility issues after automatic updates, so proceed with caution" #: install.sh:1352 msgid "是否开启" -msgstr "whether to open" +msgstr "whether to enable" #: install.sh:1358 install.sh:3294 msgid "设置自动更新" -msgstr "set automatic update" +msgstr "set automatic updates" #: install.sh:1363 msgid "已设置自动更新" -msgstr "set automatic update" +msgstr "already set for automatic update" #: install.sh:1364 msgid "是否关闭" @@ -579,139 +571,139 @@ msgstr "whether to close" #: install.sh:1370 msgid "删除自动更新" -msgstr "delete automatic update" +msgstr "delete automatic updates" #: install.sh:1379 msgid "安装 SSL 证书生成脚本依赖" -msgstr "install ssl certificate generating script dependencies" +msgstr "install the ssl certificate generation script dependencies" #: install.sh:1381 msgid "安装 SSL 证书生成脚本" -msgstr "install the ssl certificate to generate a script" +msgstr "install the ssl certificate generation script" #: install.sh:1387 msgid "检测到原域名配置存在, 是否跳过域名设置" -msgstr "the presence of the original domain name configuration is detected, whether to skip the domain name settings" +msgstr "detecting existing original domain configuration, do you want to skip domain setup" #: install.sh:1401 msgid "已跳过域名设置" -msgstr "skip domain name settings" +msgstr "skipped domain name setup" #: install.sh:1407 msgid "确定域名信息" -msgstr "determine domain information" +msgstr "confirm domain name information" #: install.sh:1408 msgid "请输入你的域名信息" -msgstr "please enter your domain name information" +msgstr "enter your domain information" #: install.sh:1409 msgid "请选择公网IP(IPv4/IPv6)或手动输入域名" -msgstr "please select the public network ip (ipv4/ipv6) or manually enter the domain name" +msgstr "please select a public ip (ipv4/ipv6) or manually enter a domain name" #: install.sh:1411 install.sh:1491 msgid "不推荐" -msgstr "not recommend" +msgstr "not recommended" #: install.sh:1415 install.sh:1496 msgid "正在获取公网IP信息, 请耐心等待" -msgstr "get the public network ip information, please wait patiently" +msgstr "getting public ip information, please wait patiently" #: install.sh:1425 msgid "此选项用于服务器商仅提供域名访问服务器" -msgstr "this option is used for server vendors to provide only domain name access servers" +msgstr "this option is used when the server provider only offers domain access to the server" #: install.sh:1426 msgid "注意服务器商域名添加 CNAME 记录" -msgstr "note that the server business domain name is added cname record" +msgstr "pay attention to add cname record for the domain name of the server provider" #: install.sh:1434 msgid "域名DNS解析IP" -msgstr "domain dns analysis ip" +msgstr "domain dns resolves ip" #: install.sh:1435 install.sh:1510 msgid "公网IP/域名" -msgstr "public network ip/domain name" +msgstr "public ip/domain name" #: install.sh:1437 msgid "域名DNS解析IP与公网IP匹配" -msgstr "domain dns analysis ip and public network ip match" +msgstr "domain dns resolves ip and matches public ip" #: install.sh:1439 msgid "请确保域名添加了正确的 A/AAAA 记录, 否则将无法正常使用 Xray" -msgstr "please ensure that the domain name adds the correct a/aaaa record, otherwise it will not be able to use xray normally" +msgstr "please ensure that the domain name has added the correct a/aaaa records, otherwise xray cannot be used normally" #: install.sh:1440 msgid "域名DNS解析IP与公网IP不匹配, 请选择" -msgstr "domain dns parsing ip does not match the public network ip, please select" +msgstr "domain name dns resolves ip and public ip do not match, please select" #: install.sh:1441 install.sh:1448 msgid "继续安装" -msgstr "continue to install" +msgstr "continue installation" #: install.sh:1442 msgid "重新输入" -msgstr "re -enter" +msgstr "re-enter" #: install.sh:1443 msgid "终止安装" -msgstr "terminate the installation" +msgstr "stop installation" #: install.sh:1454 msgid "安装终止" -msgstr "install" +msgstr "install terminate" #: install.sh:1465 msgid "检测到原IP配置存在, 是否跳过IP设置" -msgstr "detecting the existence of the original ip configuration, whether to skip the ip settings" +msgstr "detecting original ip configuration exists, do you want to skip ip settings" #: install.sh:1482 msgid "已跳过IP设置" -msgstr "skip ip settings" +msgstr "skipped ip settings" #: install.sh:1488 msgid "确定公网IP信息" -msgstr "determine the public network ip information" +msgstr "confirm public ip information" #: install.sh:1489 msgid "请选择公网IP为IPv4或IPv6" -msgstr "please select the public network ip as ipv4 or ipv6" +msgstr "please select the public ip as ipv4 or ipv6" #: install.sh:1492 msgid "手动输入" -msgstr "manually input" +msgstr "manually enter" #: install.sh:1519 -msgid "尝试自动 kill 占用进程" -msgstr "try the automatic kill occupation process" +msgid "尝试终止占用的进程" +msgstr "try to terminate the occupied process" #: install.sh:1530 msgid "证书测试签发成功, 开始正式签发" -msgstr "the certificate test was issued successfully, and the official issuance began to be officially issued" +msgstr "certificate test issuance succeeded, start formal issuance" #: install.sh:1533 msgid "证书测试签发失败" -msgstr "certificate test issuance fails" +msgstr "certificate test issuance failed" #: install.sh:1540 msgid "证书生成成功" -msgstr "successful certificate" +msgstr "certificate generated successfully" #: install.sh:1546 msgid "证书配置成功" -msgstr "successful certificate configuration" +msgstr "certificate configuration successful" #: install.sh:1550 msgid "证书生成失败" -msgstr "certificate generation failure" +msgstr "certificate generation failed" #: install.sh:1578 msgid "检测到 Xray 配置过多用户" -msgstr "testing too many users in xray configuration" +msgstr "detected xray configuration for too many users" #: install.sh:1579 msgid "是否保留原 Xray 配置文件" -msgstr "whether to keep the original xray configuration file" +msgstr "whether to keep the original xray configuration files" #: install.sh:1597 msgid "添加简单 ws/gRPC 协议" @@ -719,11 +711,11 @@ msgstr "add simple ws/grpc protocol" #: install.sh:1612 msgid "检测到配置文件, 是否读取配置文件" -msgstr "detect the configuration file, whether to read the configuration file" +msgstr "detecting configuration file, should the configuration file be read" #: install.sh:1617 install.sh:1638 install.sh:1734 install.sh:2916 msgid "已删除配置文件" -msgstr "deleted configuration file" +msgstr "deleted profile" #: install.sh:1620 install.sh:1633 install.sh:1729 install.sh:2912 msgid "已保留配置文件" @@ -731,11 +723,11 @@ msgstr "the configuration file has been retained" #: install.sh:1627 msgid "检测到当前安装模式与配置文件的安装模式不一致" -msgstr "the current installation mode is detected that the installation mode of the configuration file is inconsistent" +msgstr "detecting that the currently installed mode is inconsistent with the installation mode in the profile" #: install.sh:1628 msgid "是否保留配置文件 (强烈不建议)" -msgstr "whether to keep the configuration file (strong is not recommended)" +msgstr "whether to keep the profile (strongly not recommended)" #: install.sh:1632 msgid "请务必确保配置文件正确" @@ -743,32 +735,32 @@ msgstr "please make sure the configuration file is correct" #: install.sh:1724 msgid "检测到配置文件不完整, 是否保留配置文件" -msgstr "the configuration file is not complete, whether the configuration file is retained" +msgstr "detected incomplete configuration file, do you want to keep the configuration file" #: install.sh:1879 msgid "配置删除" -msgstr "configuration deletion" +msgstr "configure deletion" #: install.sh:1900 msgid "设置 Nginx 开机自启" -msgstr "set nginx and start self -starting" +msgstr "enable nginx to start at boot" #: install.sh:1903 install.sh:3584 install.sh:3587 install.sh:3588 #: install.sh:3589 fail2ban_manager.sh:10 msgid "设置" -msgstr "set up" +msgstr "setting" #: install.sh:1903 install.sh:1911 msgid "开机自启" -msgstr "start self -starting" +msgstr "starts on boot" #: install.sh:1908 msgid "关闭 Nginx 开机自启" -msgstr "turn off nginx and start self -starting" +msgstr "close nginx auto start on boot" #: install.sh:1911 msgid "关闭" -msgstr "closure" +msgstr "close" #: install.sh:1918 msgid "停止已有服务" @@ -782,7 +774,7 @@ msgstr "restart" #: install.sh:1932 install.sh:1935 install.sh:3578 fail2ban_manager.sh:98 #: fail2ban_manager.sh:158 msgid "启动" -msgstr "start up" +msgstr "start" #: install.sh:1940 install.sh:1943 install.sh:2003 install.sh:3579 #: fail2ban_manager.sh:100 @@ -791,27 +783,27 @@ msgstr "stop" #: install.sh:1956 install.sh:1972 msgid "新版本已自动设置证书自动更新" -msgstr "the new version has been automatically set up automatically update" +msgstr "the new version has automatically set up automatic certificate updates" #: install.sh:1957 msgid "老版本请及时删除 废弃的 改版证书自动更新" -msgstr "please delete the abandoned revision certificate in time to update the old version in time" +msgstr "please delete the old version in time. the abandoned revision certificate will be automatically updated" #: install.sh:1958 msgid "已设置改版证书自动更新" -msgstr "automatically update the revision certificate" +msgstr "the certificate for updating the version has been set to automatic renewal" #: install.sh:1959 msgid "是否需要删除改版证书自动更新 (请删除)" -msgstr "do you need to delete the revision certificate and update automatically (please delete)" +msgstr "do you need to delete the upgraded certificate auto update (please delete)" #: install.sh:1966 msgid "删除改版证书自动更新" -msgstr "delete the revision certificate automatic update" +msgstr "delete revision certificate automatic update" #: install.sh:1990 msgid "已过期" -msgstr "extension" +msgstr "expired" #: install.sh:1992 msgid "证书生成日期" @@ -827,82 +819,83 @@ msgstr "certificate remaining days" #: install.sh:1998 msgid "是否立即更新证书" -msgstr "do you update the certificate immediately" +msgstr "whether to update the certificate immediately" #: install.sh:2010 install.sh:2022 msgid "证书签发工具不存在, 请确认是否证书为脚本签发" -msgstr "the certificate issuance tool does not exist, please confirm whether the certificate is issued as the script" +msgstr "the certificate issuance tool does not exist, please confirm if the certificate is issued by the script" #: install.sh:2026 msgid "证书更新" -msgstr "certificate update" +msgstr "certificate renewal" #: install.sh:2036 msgid "本地文件 fail2ban_manager.sh 不存在, 正在下载" -msgstr "local file fail2ban_manager.sh does not exist, and is downloading" +msgstr "local file fail2ban_manager.sh does not exist, downloading" #: install.sh:2050 msgid "检测到日志文件大小如下:" -msgstr "the size of the log file is detected as follows" +msgstr "the size of the log files is as follows" #: install.sh:2052 msgid "即将清除" -msgstr "be cleared" +msgstr "cleared soon" #: install.sh:2054 msgid "日志清理" -msgstr "log cleaning" +msgstr "log cleanup" #: install.sh:2064 msgid "已设置旧版自动清理日志任务" -msgstr "the old version of the automatic cleaning log task has been set up" +msgstr "have set up the old automatic cleanup log task" #: install.sh:2065 msgid "是否需要删除旧版自动清理日志任务" -msgstr "do you need to delete the old version of the automatic cleaning log task" +msgstr "do you need to delete the old automatic cleanup log task" #: install.sh:2069 install.sh:2103 msgid "保留现有自动清理日志任务" -msgstr "keep the existing automatic cleaning log task" +msgstr "keep the existing automatic log cleanup task" #: install.sh:2074 msgid "删除旧版自动清理日志任务" -msgstr "delete the old version of the automatic cleaning log task" +msgstr "delete the old automatic cleanup log task" #: install.sh:2081 msgid "是否需要设置自动清理日志" -msgstr "do you need to set up an automatic cleaning log" +msgstr "do you need to set up automatic log cleanup" #: install.sh:2085 install.sh:3606 install.sh:3615 install.sh:3667 #: install.sh:3673 install.sh:3709 install.sh:3715 install.sh:3721 #: install.sh:3750 install.sh:3777 install.sh:3784 install.sh:3789 #: fail2ban_manager.sh:159 fail2ban_manager.sh:172 fail2ban_manager.sh:181 +#: fail2ban_manager.sh:189 msgid "清空屏幕" msgstr "clear the screen" #: install.sh:2089 msgid "将在 每周三 04:00 自动清空日志" -msgstr "the log will be automatically emptied every wednesday at 04:00" +msgstr "the logs will be automatically cleared every wednesday at 04:00" #: install.sh:2094 msgid "已设置自动清理日志任务" -msgstr "automatic cleaning log task has been set up" +msgstr "the automatic log cleanup task has been set" #: install.sh:2095 msgid "是否需要删除现有自动清理日志任务" -msgstr "do you need to delete the existing automatic cleaning log task" +msgstr "do you need to delete the existing automatic log cleanup task" #: install.sh:2100 msgid "删除自动清理日志任务" -msgstr "delete the automatic cleaning log task" +msgstr "delete the automatic cleanup log task" #: install.sh:2118 msgid "设置自动清理日志" -msgstr "set automatic cleaning log" +msgstr "set automatic log cleanup" #: install.sh:2243 msgid "配置分享" -msgstr "configuration sharing" +msgstr "sharing configuration" #: install.sh:2245 install.sh:2251 install.sh:2256 install.sh:2261 #: install.sh:2265 install.sh:2673 @@ -916,17 +909,17 @@ msgstr "qr code" #: install.sh:2275 msgid "生成分享链接" -msgstr "generate sharing link" +msgstr "generate share link" #: install.sh:2289 install.sh:2292 install.sh:2295 install.sh:2298 #: install.sh:2301 install.sh:2304 install.sh:2307 install.sh:2310 #: install.sh:2313 install.sh:2316 msgid "安装成功" -msgstr "successful installation" +msgstr "installation successful" #: install.sh:2320 msgid "目前分享链接规范为实验阶段, 请自行判断是否适用" -msgstr "at present, the sharing link specification is the experimental stage, please determine whether it is applicable by yourself" +msgstr "currently, the sharing link guidelines are in the experimental stage, please judge for yourself whether they are applicable" #: install.sh:2322 install.sh:3575 msgid "配置信息" @@ -934,7 +927,7 @@ msgstr "configuration information" #: install.sh:2323 msgid "主机" -msgstr "host" +msgstr "host machine" #: install.sh:2326 install.sh:2328 install.sh:2330 install.sh:2331 #: install.sh:2334 install.sh:2338 install.sh:2340 install.sh:2342 @@ -957,7 +950,7 @@ msgstr "transmission protocol" #: install.sh:2351 msgid "底层传输安全" -msgstr "safety of underlying transmission" +msgstr "underlying transmission security" #: install.sh:2354 install.sh:2358 install.sh:2371 install.sh:2377 msgid "路径" @@ -965,7 +958,7 @@ msgstr "path" #: install.sh:2354 install.sh:2358 install.sh:2371 install.sh:2377 msgid "不要落下" -msgstr "not to fall" +msgstr "do not leave behind" #: install.sh:2356 install.sh:2359 install.sh:2374 install.sh:2379 msgid "不需要加" @@ -977,19 +970,19 @@ msgstr "flow control" #: install.sh:2393 msgid "即将申请证书, 支持使用自定义证书" -msgstr "to apply soon, support the use of custom certificates" +msgstr "apply for a certificate soon, support the use of custom certificates" #: install.sh:2394 msgid "如需使用自定义证书, 请按如下步骤:" -msgstr "if you need to use a custom certificate, please follow the steps below" +msgstr "if you need to use a custom certificate, please follow these steps" #: install.sh:2395 msgid "1. 将证书文件重命名: 私钥(xray.key)、证书(xray.crt)" -msgstr "1. rename the certificate document: the key (xray.key), the certificate (xray.crt)" +msgstr "1. rename the certificate file: private key (xray.key), certificate (xray.crt)" #: install.sh:2396 msgid "2. 将重命名后的证书文件放入" -msgstr "2. put the renamed certificate file in" +msgstr "2. rename the certificate file and place it in" #: install.sh:2396 msgid "目录后再运行脚本" @@ -997,7 +990,7 @@ msgstr "run the script after the directory" #: install.sh:2397 msgid "3. 重新运行脚本" -msgstr "3. run the script again" +msgstr "3. re-run the script" #: install.sh:2398 install.sh:2831 msgid "是否继续" @@ -1005,7 +998,7 @@ msgstr "whether to continue" #: install.sh:2406 msgid "所有证书文件均已存在, 是否保留" -msgstr "all certificate documents already exist, whether to keep" +msgstr "all certificate files already exist, do you want to retain them" #: install.sh:2412 install.sh:2427 install.sh:2443 file_manager.sh:186 msgid "已删除" @@ -1017,15 +1010,15 @@ msgstr "certificate application" #: install.sh:2422 msgid "证书文件已存在, 是否保留" -msgstr "certificate documents have existed, whether to keep" +msgstr "the certificate file already exists, do you want to keep it" #: install.sh:2438 msgid "证书签发残留文件已存在, 是否保留" -msgstr "certificate issuance of residual documents has existed, is it retained" +msgstr "the certificate issuance residual files already exist, do you want to keep them" #: install.sh:2480 install.sh:3570 msgid "添加" -msgstr "add to" +msgstr "add" #: install.sh:2487 msgid "请选择支持的 TLS 版本" @@ -1033,29 +1026,27 @@ msgstr "please select the supported tls version" #: install.sh:2488 msgid "建议选择 TLS1.3 only (安全模式)" -msgstr "it is recommended to select tls1.3 only (security mode)" +msgstr "suggest selecting only tls1.3 (security mode)" #: install.sh:2489 msgid "兼容模式" -msgstr "compatible mode" +msgstr "compatibility mode" #: install.sh:2490 msgid "安全模式" -msgstr "security mode" +msgstr "safe mode" #: install.sh:2494 -msgid "" -"从 2.2.1 版本起, 由于启用 h3 仅支持 TLS1.3, 请选择 TLS1.3 only (安全模式)" -msgstr "" -"从 2.2.1 版本起, 由于启用 h3 仅支持 TLS1.3, 请选择 TLS1.3 only (安全模式)" +msgid "由于 h3 仅支持 TLS1.3, 只支持 TLS1.3 only (安全模式)" +msgstr "since h3 only supports tls1.3, only supports tls1.3 (safe mode)" #: install.sh:2498 msgid "已切换至" -msgstr "switch to" +msgstr "switched to" #: install.sh:2504 msgid "Nginx/配置文件不存在 或 当前模式不支持" -msgstr "nginx/configuration file does not exist or the current mode is not supported" +msgstr "nginx/ configuration file does not exist or current mode does not support" #: install.sh:2525 install.sh:2595 install.sh:2619 install.sh:2688 #: install.sh:2738 install.sh:2797 install.sh:2849 @@ -1064,45 +1055,45 @@ msgstr "please install first" #: install.sh:2536 msgid "连接端口号" -msgstr "connect" +msgstr "connection port number" #: install.sh:2617 msgid "此模式不支持修改" -msgstr "this model does not support modification" +msgstr "this mode does not support modifications" #: install.sh:2626 msgid "即将显示用户, 一次仅能显示一个" -msgstr "the user is about to be displayed, only one can be displayed at a time" +msgstr "the user will be displayed soon, only one can be displayed at a time" #: install.sh:2628 msgid "请选择显示用户使用的协议" -msgstr "please select the protocol used to display the user" +msgstr "please select the protocol used by the user" #: install.sh:2638 msgid "请选择要显示的用户编号" -msgstr "please select the user number you want to display" +msgstr "please select the user number to display" #: install.sh:2643 install.sh:2654 install.sh:2763 install.sh:2786 msgid "选择错误" -msgstr "choose an error" +msgstr "choose incorrectly" #: install.sh:2646 msgid "请直接在主菜单选择 [15] 显示主用户" -msgstr "please select the main user directly on the main menu [15]" +msgstr "please select [15] display main user directly from the main menu" #: install.sh:2647 install.sh:2658 install.sh:2768 install.sh:2790 #: install.sh:3679 install.sh:3684 install.sh:3689 install.sh:3734 #: install.sh:3739 install.sh:3744 install.sh:3764 msgid "回到菜单" -msgstr "back to the menu" +msgstr "back to menu" #: install.sh:2657 install.sh:2789 msgid "请先检测 Xray 是否正确安装" -msgstr "please check whether xray is installed correctly" +msgstr "please first check if xray is correctly installed" #: install.sh:2677 msgid "是否继续显示用户" -msgstr "whether to continue displaying users" +msgstr "whether to continue displaying the user" #: install.sh:2686 install.sh:2795 msgid "此模式不支持删除用户" @@ -1110,47 +1101,47 @@ msgstr "this mode does not support deleting users" #: install.sh:2697 msgid "即将添加用户, 一次仅能添加一个" -msgstr "the user is about to be added, only one can be added at a time" +msgstr "user will be added soon, one at a time" #: install.sh:2699 msgid "请选择添加用户使用的协议" -msgstr "please select the protocol used by the user" +msgstr "please select the protocol used by the user to be added" #: install.sh:2721 msgid "添加用户" -msgstr "add users" +msgstr "add user" #: install.sh:2726 msgid "是否继续添加用户" -msgstr "do you continue to add users" +msgstr "whether to continue adding users" #: install.sh:2736 msgid "此模式不支持添加用户" -msgstr "this model does not support adding users" +msgstr "this mode does not support adding users" #: install.sh:2746 msgid "即将删除用户, 一次仅能删除一个" -msgstr "the user is about to be deleted, only one can be deleted at a time" +msgstr "the user will be deleted soon, one at a time" #: install.sh:2748 msgid "请选择删除用户使用的协议" -msgstr "please select the protocol used by the user" +msgstr "please select the protocol used by the user for deletion" #: install.sh:2758 msgid "请选择要删除的用户编号" -msgstr "please select the user number to be deleted" +msgstr "please select the user number to delete" #: install.sh:2767 msgid "请直接在主菜单修改主用户的" -msgstr "please modify the main user directly on the main menu" +msgstr "please modify the main user directly in the main menu" #: install.sh:2774 msgid "删除用户" -msgstr "delete users" +msgstr "delete user" #: install.sh:2777 msgid "是否继续删除用户" -msgstr "do you continue to delete the user" +msgstr "whether to continue deleting the user" #: install.sh:2802 install.sh:2806 msgid "文件不存在" @@ -1158,11 +1149,11 @@ msgstr "the file does not exist" #: install.sh:2813 msgid "已配置 Xray 流量统计" -msgstr "calculated xray traffic statistics" +msgstr "configured xray traffic statistics" #: install.sh:2814 msgid "是否需要关闭此功能" -msgstr "do you need to close this function" +msgstr "do you need to turn off this feature" #: install.sh:2820 msgid "关闭 Xray 流量统计" @@ -1170,15 +1161,15 @@ msgstr "close xray traffic statistics" #: install.sh:2829 msgid "流量统计需要使用" -msgstr "traffic statistics need to be used" +msgstr "traffic statistics require the use of" #: install.sh:2830 msgid "可能会影响 Xray 性能" -msgstr "it may affect xray performance" +msgstr "may affect the xray performance" #: install.sh:2841 msgid "设置 Xray 流量统计" -msgstr "set xray traffic statistics" +msgstr "set up xray traffic statistics" #: install.sh:2871 install.sh:2886 msgid "已卸载" @@ -1186,7 +1177,7 @@ msgstr "uninstalled" #: install.sh:2874 msgid "是否卸载" -msgstr "whether to unload" +msgstr "whether to uninstall" #: install.sh:2891 msgid "是否删除所有脚本文件" @@ -1194,55 +1185,55 @@ msgstr "whether to delete all script files" #: install.sh:2898 msgid "已删除所有文件" -msgstr "all files have been deleted" +msgstr "deleted all files" #: install.sh:2899 msgid "ヾ( ̄▽ ̄) 拜拜~" -msgstr "ヾ ( ̄ ▽  ̄) worship ~" +msgstr "( ̄▽ ̄) bye-bye~" #: install.sh:2904 msgid "已保留脚本文件 (包含 SSL 证书等)" -msgstr "a script file has been retained (including ssl certificate, etc.)" +msgstr "the script file has been retained (including ssl certificates, etc.)" #: install.sh:2908 msgid "是否保留配置文件" -msgstr "whether to keep the configuration file" +msgstr "whether to retain the profile" #: install.sh:2925 msgid "已清空证书遗留文件" -msgstr "the documents left over the certificate" +msgstr "the certificate residual files have been cleared" #: install.sh:2955 -msgid "秒后将" -msgstr "will be after a second" +msgid "秒后" +msgstr "a second later" #: install.sh:3118 msgid "检测最新版本失败" -msgstr "the latest version failed" +msgstr "failed to detect the latest version" #: install.sh:3127 msgid "存在新版本, 但版本变化较大, 可能存在不兼容情况, 是否更新" -msgstr "there are new versions, but the version changes greatly and may be incompatible. whether it is updated" +msgstr "there is a new version available, but there are significant changes that may cause compatibility issues. do you want to update" #: install.sh:3130 msgid "存在新版本, 是否更新" -msgstr "is there a new version, whether to update" +msgstr "there is a new version, update" #: install.sh:3134 msgid "检测 脚本 最新版本失败" -msgstr "the latest version of the detection script failed" +msgstr "failed to detect the latest version of the script" #: install.sh:3135 msgid "脚本 版本差别过大, 跳过更新" -msgstr "the script version is too different, skip the update" +msgstr "script versions differ too much, skip update" #: install.sh:3145 msgid "更新完成" -msgstr "update" +msgstr "update completed" #: install.sh:3146 install.sh:3339 msgid "脚本版本变化较大, 若服务无法正常运行请卸载后重装" -msgstr "the script version changes greatly, if the service cannot run normally, please reinstall it after uninstallation" +msgstr "the script version has changed significantly. if the service does not run properly, please uninstall and reinstall" #: install.sh:3152 msgid "当前版本为最新版本" @@ -1258,7 +1249,7 @@ msgstr "this option is temporarily unavailable" #: install.sh:3197 install.sh:3633 msgid "此模式推荐用于负载均衡, 一般情况不推荐使用, 是否安装" -msgstr "this model is recommended for load balancing. generally, it is not recommended. whether it is installed" +msgstr "this mode is recommended for load balancing. it is generally not recommended for use. install or not" #: install.sh:3292 install.sh:3293 install.sh:3302 install.sh:3305 #: install.sh:3309 install.sh:3562 install.sh:3563 install.sh:3564 @@ -1273,35 +1264,35 @@ msgstr "load balancing configuration" #: install.sh:3295 msgid "清除日志文件" -msgstr "clear log file" +msgstr "clear log files" #: install.sh:3296 msgid "查看证书状态" -msgstr "view certificate status" +msgstr "check certificate status" #: install.sh:3297 msgid "更新证书有效期" -msgstr "renewal certificate validity period" +msgstr "update certificate expiration date" #: install.sh:3298 msgid "设置证书自动更新" -msgstr "set the certificate automatic update" +msgstr "set certificate for automatic update" #: install.sh:3299 msgid "设置 Fail2ban 防暴力破解" -msgstr "set fail2ban anti -violence cracking" +msgstr "set up fail2ban to prevent brute force attacks" #: install.sh:3300 msgid "显示帮助" -msgstr "display help" +msgstr "show help" #: install.sh:3301 install.sh:3312 install.sh:3583 msgid "更新" -msgstr "renew" +msgstr "update" #: install.sh:3303 msgid "脚本卸载" -msgstr "script uninstall" +msgstr "the script unloads" #: install.sh:3304 msgid "显示安装信息" @@ -1317,7 +1308,7 @@ msgstr "upgrade script" #: install.sh:3310 install.sh:3311 msgid "显示" -msgstr "show" +msgstr "display" #: install.sh:3310 msgid "访问信息" @@ -1329,15 +1320,15 @@ msgstr "error message" #: install.sh:3331 msgid "脚本版本变化较大, 可能存在不兼容情况, 是否继续使用" -msgstr "the script version changes greatly, and there may be incompatibility, whether to continue to use" +msgstr "the script version has changed significantly, there may be compatibility issues, continue to use" #: install.sh:3356 msgid "检测失败" -msgstr "detect failure" +msgstr "detection failed" #: install.sh:3360 install.sh:3370 install.sh:3380 msgid "有新版" -msgstr "have a new version" +msgstr "there is a new version" #: install.sh:3363 install.sh:3372 install.sh:3386 msgid "最新版" @@ -1345,19 +1336,19 @@ msgstr "latest version" #: install.sh:3378 msgid "版本未知" -msgstr "unknown version" +msgstr "version unknown" #: install.sh:3384 msgid "有测试版" -msgstr "test version" +msgstr "there is a beta version" #: install.sh:3402 install.sh:3409 msgid "运行中" -msgstr "in operation" +msgstr "operating" #: install.sh:3404 install.sh:3427 install.sh:3429 msgid "无需测试" -msgstr "no test" +msgstr "no need to test" #: install.sh:3406 install.sh:3411 msgid "未运行" @@ -1369,35 +1360,35 @@ msgstr "unable to connect" #: install.sh:3423 install.sh:3424 install.sh:3425 msgid "本地正常" -msgstr "local normal" +msgstr "locally normal" #: install.sh:3440 msgid "脚本维护中.. 请稍后再试" -msgstr "script maintenance .. please try it later" +msgstr "script maintenance in progress.. please try again later" #: install.sh:3442 msgid "无法检测所需依赖的在线版本, 请稍后再试" -msgstr "can't detect the online version you need, please try again later" +msgstr "unable to detect the online version of the required dependency, please try again later" #: install.sh:3459 msgid "请输入数字" -msgstr "please enter the number" +msgstr "enter a number" #: install.sh:3459 msgid "请输入 1 到 5 之间的有效数字" -msgstr "please enter the valid number between 1 and 5" +msgstr "enter a valid number between 1 and 5" #: install.sh:3480 msgid "无效的选择" -msgstr "invalid choice" +msgstr "invalid selection" #: install.sh:3513 msgid "检测存在到" -msgstr "the detection exists" +msgstr "detecting presence to" #: install.sh:3514 msgid "来源于自动清理日志错误的设置" -msgstr "it comes from the settings of the error of automatic cleaning log" +msgstr "derived from the settings for automatic log error cleanup" #: install.sh:3515 msgid "开始修复" @@ -1405,23 +1396,23 @@ msgstr "start repair" #: install.sh:3519 msgid "错误的配置文件删除" -msgstr "delete the wrong configuration file" +msgstr "incorrect configuration file deletion" #: install.sh:3520 msgid "即将重新设置自动清理日志" -msgstr "the automatic cleaning log is about to be restarted" +msgstr "will reset the automatic log cleanup" #: install.sh:3528 msgid "安装管理脚本" -msgstr "installation management script" +msgstr "install management script" #: install.sh:3529 msgid "作者" -msgstr "author" +msgstr "the author is" #: install.sh:3533 msgid "当前模式" -msgstr "current mode" +msgstr "current model" #: install.sh:3534 msgid "当前语言" @@ -1429,7 +1420,7 @@ msgstr "current language" #: install.sh:3537 msgid "可以使用" -msgstr "be available" +msgstr "you can use" #: install.sh:3537 msgid "命令管理脚本" @@ -1445,7 +1436,7 @@ msgstr "script" #: install.sh:3543 msgid "运行状态" -msgstr "running status" +msgstr "operating status" #: install.sh:3546 msgid "连通性" @@ -1453,7 +1444,7 @@ msgstr "connectivity" #: install.sh:3547 msgid "升级向导" -msgstr "upgrade guide" +msgstr "upgrade wizard" #: install.sh:3557 msgid "安装向导" @@ -1486,19 +1477,19 @@ msgstr "delete" #: install.sh:3572 msgid "查看信息" -msgstr "check the information" +msgstr "check information" #: install.sh:3573 msgid "实时访问日志" -msgstr "real -time visit log" +msgstr "real-time access logs" #: install.sh:3574 msgid "实时错误日志" -msgstr "real -time error log" +msgstr "real-time error log" #: install.sh:3576 msgid "服务相关" -msgstr "service -related" +msgstr "service related" #: install.sh:3577 install.sh:3578 install.sh:3579 install.sh:3580 msgid "所有服务" @@ -1506,7 +1497,7 @@ msgstr "all services" #: install.sh:3581 msgid "证书相关" -msgstr "certificate -related" +msgstr "certificate related" #: install.sh:3582 msgid "证书状态" @@ -1514,11 +1505,11 @@ msgstr "certificate status" #: install.sh:3583 msgid "证书有效期" -msgstr "validity period of certificates" +msgstr "the certificate validity period" #: install.sh:3584 msgid "证书自动更新" -msgstr "automatic certificate update" +msgstr "certificate auto renewal" #: install.sh:3585 msgid "其他选项" @@ -1526,19 +1517,19 @@ msgstr "other options" #: install.sh:3586 msgid "自动更新" -msgstr "automatic update" +msgstr "auto-update" #: install.sh:3588 msgid "防暴力破解" -msgstr "anti -violence cracking" +msgstr "prevent brute force attack" #: install.sh:3589 msgid "流量统计" -msgstr "flow statistics" +msgstr "traffic statistics" #: install.sh:3590 msgid "清除" -msgstr "remove" +msgstr "clear" #: install.sh:3590 msgid "日志文件" @@ -1546,7 +1537,7 @@ msgstr "log file" #: install.sh:3591 msgid "测试" -msgstr "test" +msgstr "testing" #: install.sh:3591 msgid "服务器网速" @@ -1554,7 +1545,7 @@ msgstr "server network speed" #: install.sh:3592 msgid "卸载向导" -msgstr "unload" +msgstr "uninstall wizard" #: install.sh:3593 fail2ban_manager.sh:13 fail2ban_manager.sh:171 msgid "卸载" @@ -1562,7 +1553,7 @@ msgstr "uninstall" #: install.sh:3594 msgid "清空" -msgstr "empty" +msgstr "clear" #: install.sh:3594 msgid "证书文件" @@ -1570,23 +1561,23 @@ msgstr "certificate file" #: install.sh:3595 fail2ban_manager.sh:15 file_manager.sh:217 msgid "退出" -msgstr "quit" +msgstr "exit" #: install.sh:3598 msgid "请输入选项" -msgstr "please enter the option" +msgstr "please enter an option" #: install.sh:3598 msgid "请输入 0 到 34 之间的有效数字" -msgstr "please enter the valid number between 0 and 34" +msgstr "enter a valid number between 0 and 34" #: install.sh:3612 msgid "不建议" -msgstr "no recommendation" +msgstr "not recommended" #: install.sh:3612 msgid "频繁升级 Nginx, 请确认 Nginx 有升级的必要" -msgstr "frequent upgrade nginx, please confirm that nginx is necessary to upgrade" +msgstr "frequent nginx upgrades, please confirm if nginx needs to be upgraded" #: install.sh:3613 msgid "开始升级" @@ -1594,7 +1585,7 @@ msgstr "start upgrade" #: install.sh:3799 msgid "请输入正确的数字" -msgstr "please enter the correct number" +msgstr "enter the correct number" #: fail2ban_manager.sh:12 msgid "管理" @@ -1602,27 +1593,27 @@ msgstr "manage" #: fail2ban_manager.sh:14 msgid "状态" -msgstr "state" +msgstr "status" #: fail2ban_manager.sh:27 fail2ban_manager.sh:122 msgid "无效的选择请重试" -msgstr "if the invalid choice, please try it out" +msgstr "invalid selection, please try again" #: fail2ban_manager.sh:34 msgid "已经安装, 跳过安装步骤" -msgstr "has been installed, skip installation steps" +msgstr "already installed, skip installation steps" #: fail2ban_manager.sh:52 fail2ban_manager.sh:92 fail2ban_manager.sh:195 msgid "未安装, 请先安装" -msgstr "not installed, please install it first" +msgstr "not installed, please install first" #: fail2ban_manager.sh:97 msgid "请选择" -msgstr "choose" +msgstr "please select" #: fail2ban_manager.sh:97 msgid "操作" -msgstr "operate" +msgstr "operation" #: fail2ban_manager.sh:101 msgid "添加自定义规则" @@ -1630,7 +1621,7 @@ msgstr "add custom rules" #: fail2ban_manager.sh:135 msgid "请输入新的" -msgstr "please enter the new one" +msgstr "please enter the new" #: fail2ban_manager.sh:135 fail2ban_manager.sh:136 msgid "名称" @@ -1642,15 +1633,15 @@ msgstr "please enter the log path" #: fail2ban_manager.sh:138 msgid "请输入最大重试次数" -msgstr "please enter the maximum number of reviews" +msgstr "enter the maximum retry count" #: fail2ban_manager.sh:138 msgid "最大重试次数必须在 1 到 99 之间" -msgstr "the maximum number of retries must be between 1 and 99" +msgstr "the maximum retry count must be between 1 and 99" #: fail2ban_manager.sh:139 msgid "请输入封禁时间" -msgstr "please enter the banning time" +msgstr "please enter the ban duration" #: fail2ban_manager.sh:139 msgid "秒" @@ -1658,15 +1649,15 @@ msgstr "second" #: fail2ban_manager.sh:139 msgid "封禁时间必须在 1 到 8640000 秒之间" -msgstr "the banned time must be between 1 and 86,40000 seconds" +msgstr "the ban time must be between 1 and 8640000 seconds" #: fail2ban_manager.sh:142 msgid "已存在" -msgstr "exist" +msgstr "already exists" #: fail2ban_manager.sh:147 msgid "自定义规则添加成功" -msgstr "customized rules are successfully added" +msgstr "custom rules added successfully" #: fail2ban_manager.sh:151 msgid "重启以应用新规则" @@ -1676,25 +1667,21 @@ msgstr "restart to apply new rules" msgid "停止成功" msgstr "stop success" -#: fail2ban_manager.sh:189 -msgid "清空屏幕!" -msgstr "clear the screen" - #: fail2ban_manager.sh:199 msgid "总体状态" -msgstr "overall state" +msgstr "general status" #: fail2ban_manager.sh:203 msgid "默认启用的 Jail 状态" -msgstr "jail status opened by default" +msgstr "jail status enabled by default" #: fail2ban_manager.sh:205 fail2ban_manager.sh:208 fail2ban_manager.sh:212 msgid "封锁情况" -msgstr "blockage" +msgstr "blockade situation" #: fail2ban_manager.sh:226 file_manager.sh:242 msgid "新版本可用" -msgstr "new version available" +msgstr "the new version is available" #: fail2ban_manager.sh:226 file_manager.sh:242 msgid "当前版本" @@ -1706,23 +1693,23 @@ msgstr "please visit" #: fail2ban_manager.sh:227 file_manager.sh:243 msgid "查看更新说明" -msgstr "view the update instructions" +msgstr "check update notes" #: fail2ban_manager.sh:229 file_manager.sh:245 msgid "是否要下载并安装新版本" -msgstr "whether you want to download and install a new version" +msgstr "do you want to download and install the new version" #: fail2ban_manager.sh:233 file_manager.sh:249 msgid "正在下载新版本" -msgstr "downloading a new version" +msgstr "downloading the new version" #: fail2ban_manager.sh:238 file_manager.sh:254 msgid "下载完成, 正在重新运行脚本" -msgstr "the download is complete, and the script is re -running" +msgstr "download complete, restarting script" #: fail2ban_manager.sh:246 file_manager.sh:262 msgid "跳过更新" -msgstr "skip the update" +msgstr "skip update" #: fail2ban_manager.sh:250 file_manager.sh:266 msgid "当前已经是最新版本" @@ -1734,7 +1721,7 @@ msgstr "usage" #: file_manager.sh:8 msgid "文件扩展名" -msgstr "file expansion name" +msgstr "file extension" #: file_manager.sh:8 msgid "目录路径" @@ -1742,11 +1729,11 @@ msgstr "directory path" #: file_manager.sh:18 msgid "目录" -msgstr "table of contents" +msgstr "catalogue" #: file_manager.sh:18 msgid "不存在, 请检查路径" -msgstr "do not exist, please check the path" +msgstr "does not exist, please check the path" #: file_manager.sh:31 file_manager.sh:213 msgid "列出所有" @@ -1757,7 +1744,7 @@ msgstr "list all" #: file_manager.sh:213 file_manager.sh:214 file_manager.sh:215 #: file_manager.sh:216 msgid "文件" -msgstr "document" +msgstr "file" #: file_manager.sh:40 msgid "没有找到" @@ -1769,23 +1756,23 @@ msgstr "file name" #: file_manager.sh:70 msgid "序号" -msgstr "serial number" +msgstr "no" #: file_manager.sh:93 msgid "请输入网址 (例如 hey.run)" -msgstr "please enter the url (for example hey.run)" +msgstr "please enter the website address (for example hey.run)" #: file_manager.sh:94 msgid "不要包含 http:// 或 https:// 开头" -msgstr "do not include http: // or https: //" +msgstr "do not include http:// or https:// at the beginning" #: file_manager.sh:98 msgid "网址不能包含 http:// 或 https:// 开头" -msgstr "urls cannot include http:/ or https: //" +msgstr "the url must not start with http:// or https://" #: file_manager.sh:102 file_manager.sh:117 msgid "已创建" -msgstr "have created" +msgstr "already created" #: file_manager.sh:111 msgid "请输入主机" @@ -1793,7 +1780,7 @@ msgstr "please enter the host" #: file_manager.sh:112 msgid "请输入端口" -msgstr "please enter port" +msgstr "please enter the port" #: file_manager.sh:113 msgid "请输入权重" @@ -1801,15 +1788,15 @@ msgstr "please enter the weight" #: file_manager.sh:135 msgid "追加完成" -msgstr "additional completion" +msgstr "the additional completion is done" #: file_manager.sh:159 msgid "请输入要编辑的文件编号" -msgstr "please enter the file number to be edited" +msgstr "enter the file number to edit" #: file_manager.sh:165 msgid "未安装, 正在尝试安装" -msgstr "not installed, i am trying to install" +msgstr "not installed, trying to install" #: file_manager.sh:169 msgid "已编辑" @@ -1817,11 +1804,11 @@ msgstr "edited" #: file_manager.sh:181 msgid "请输入要删除的文件编号" -msgstr "please enter the file number to be deleted" +msgstr "enter the file number to delete" #: file_manager.sh:202 msgid "不支持的文件扩展名" -msgstr "unreachable file extension name" +msgstr "unsupported file extension" #: file_manager.sh:212 msgid "主菜单" @@ -1833,11 +1820,11 @@ msgstr "create a new" #: file_manager.sh:215 msgid "编辑一个已存在的" -msgstr "edit an existing existence" +msgstr "edit an existing" #: file_manager.sh:216 msgid "删除一个已存在的" -msgstr "delete one existing" +msgstr "delete an existing" #: file_manager.sh:219 msgid "请选择一个选项" @@ -1845,16 +1832,16 @@ msgstr "please select an option" #: file_manager.sh:229 msgid "无效选项, 请重试" -msgstr "effective options, please try again" +msgstr "invalid option, please try again" #: file_manager.sh:275 msgid "重启成功" -msgstr "restart success" +msgstr "reboot successful" #: file_manager.sh:278 msgid "重启失败" -msgstr "failure to restart" +msgstr "reboot failed" #: file_manager.sh:278 msgid "请检查配置文件是否有误" -msgstr "please check whether the configuration file is wrong" +msgstr "please check if there is any error in the configuration file" diff --git a/po/fa.po b/po/fa.po index eaf4ad1..6112930 100644 --- a/po/fa.po +++ b/po/fa.po @@ -8,8 +8,8 @@ msgstr "" "Project-Id-Version: xray_install 1.0\n" "Report-Msgid-Bugs-To: https://github.com/hello-yunshu/Xray_bash_onekey/" "issues\n" -"POT-Creation-Date: 2025-01-29 17:17+0000\n" -"PO-Revision-Date: 2025-01-29 17:17+0000\n" +"POT-Creation-Date: 2025-02-06 18:01+0000\n" +"PO-Revision-Date: 2025-02-06 18:01+0000\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" "Language: fa\n" @@ -19,114 +19,114 @@ msgstr "" #: install.sh:35 msgid "提醒" -msgstr "یادآوری کردن" +msgstr "یادآوری" #: install.sh:37 msgid "错误" -msgstr "اشتباه" +msgstr "خطا" #: install.sh:38 msgid "警告" -msgstr "هشدار دادن" +msgstr "هشدار" #: install.sh:41 install.sh:1338 install.sh:3368 install.sh:3390 #: install.sh:3393 install.sh:3394 install.sh:3432 msgid "未安装" -msgstr "نصب نشده است" +msgstr "ناصب شده" #: install.sh:100 msgid "日志文件归档失败" -msgstr "بایگانی پرونده ورود به سیستم انجام نشد" +msgstr "فایل های لاگ اسپر کردن نشد" #: install.sh:105 msgid "清空日志文件失败" -msgstr "پرونده ورود به سیستم را پاک کرد" +msgstr "خطا در خالی کردن فایل روزنامه" #: install.sh:109 msgid "日志文件已轮转并归档为" -msgstr "پرونده log به صورت چرخشی و بایگانی شده است" +msgstr "فایل های لاگ روت شده و به آرشیو تبدیل شده اند" #: install.sh:138 install.sh:142 install.sh:146 install.sh:156 msgid "当前系统为" -msgstr "سیستم فعلی است" +msgstr "سیستم فعلی" #: install.sh:156 msgid "不在支持的系统列表内, 安装中断" -msgstr "eutrup را در لیست سیستم که پشتیبانی نمی شود نصب کنید" +msgstr "نه در لیست سیستم های پشتیبان، نصب متوقف شد" #: install.sh:163 msgid "当前用户是 root 用户, 进入安装流程" -msgstr "کاربر فعلی کاربر root است ، فرایند نصب را وارد کنید" +msgstr "کاربر فعلی روت است، به فرآیند نصب بپیوندد" #: install.sh:165 msgid "当前用户不是 root 用户, 请切换到 root 用户后重新执行脚本" -msgstr "کاربر فعلی کاربر اصلی نیست ، لطفاً پس از جابجایی به کاربر root ، اسکریپت را دوباره انتخاب کنید" +msgstr "کاربر فعلی کاربر اصلی نیست" #: install.sh:191 msgid "无法获取远程语言文件信息" -msgstr "اطلاعات فایل زبانی از راه دور امکان پذیر نیست" +msgstr "نمی توان اطلاعات فایل زبان دور را دریافت کرد" #: install.sh:209 msgid "正在更新语言文件" -msgstr "پرونده های زبانی را به روز کنید" +msgstr "در حال به روز رسانی فایل های زبان است" #: install.sh:212 install.sh:291 msgid "语言文件更新失败" -msgstr "به روزرسانی پرونده زبانی انجام نشد" +msgstr "بارگذاری فایل زبان با شکست مواجه شد" #: install.sh:217 msgid "语言文件无效" -msgstr "پرونده زبانی نامعتبر است" +msgstr "فایل زبان معتبر نیست" #: install.sh:223 msgid "版本文件更新失败" -msgstr "به روزرسانی فایل نسخه انجام نشد" +msgstr "بازتایر فایل نسخه به روز رسانی نشد" #: install.sh:230 msgid "语言文件更新完成" -msgstr "به روزرسانی پرونده زبانی تکمیل شده است" +msgstr "پرونده‌های زبان به روز شدند" #: install.sh:235 msgid "正在安装" -msgstr "نصب کردن" +msgstr "در حال نصب است" #: install.sh:238 msgid "安装失败" -msgstr "نصب نشد" +msgstr "نصب ناموفق" #: install.sh:238 install.sh:261 install.sh:282 install.sh:291 msgid "将使用默认语言" -msgstr "از زبان پیش فرض استفاده خواهد کرد" +msgstr "از زبان پیش‌فرض استفاده خواهد شد" #: install.sh:261 msgid "未找到" -msgstr "یافت نشد" +msgstr "موردی پیدا نشد" #: install.sh:282 msgid "不支持的语言" -msgstr "زبان نامطلوب" +msgstr "زبانی که توسط سیستم پشتیبانی نمی‌شود" #: install.sh:296 msgid "发现语言文件更新" -msgstr "به روزرسانی پرونده زبان را کشف کنید" +msgstr "پیدا کردن فایل های زبانی به روز شده" #: install.sh:309 install.sh:1521 msgid "完成" -msgstr "پایان" +msgstr "تمام شد" #: install.sh:312 msgid "失败" -msgstr "شکست خوردن" +msgstr "شکست" #: install.sh:319 msgid "在线版本检测失败, 请稍后再试" -msgstr "نسخه آنلاین آزمون انجام نشد ، لطفاً بعداً دوباره امتحان کنید" +msgstr "نسخه آنلاین بررسی نشد، لطفاً دوباره سعی کنید" #: install.sh:341 install.sh:349 install.sh:1105 install.sh:3289 #: install.sh:3290 install.sh:3291 install.sh:3558 install.sh:3559 #: install.sh:3560 fail2ban_manager.sh:11 fail2ban_manager.sh:38 msgid "安装" -msgstr "نصب کردن" +msgstr "نصب" #: install.sh:343 install.sh:351 install.sh:1111 install.sh:3378 msgid "已安装" @@ -134,53 +134,53 @@ msgstr "نصب شده" #: install.sh:368 install.sh:372 msgid "自启动配置" -msgstr "پیکربندی خود نشر" +msgstr "خودکار راه‌اندازی" #: install.sh:381 msgid "链接库安装" -msgstr "نصب کتابخانه پیوند" +msgstr "بسترهای نصب شده لینک شده" #: install.sh:386 msgid "值为空或超出范围, 请重新输入" -msgstr "مقدار خالی یا فراتر از محدوده است ، لطفاً دوباره وارد شوید" +msgstr "مقدار خالی است یا از محدوده بیرون می‌رود، لطفا دوباره وارد کنید" #: install.sh:395 msgid "值为空, 请重新输入" -msgstr "ارزش خالی است ، لطفاً دوباره وارد شوید" +msgstr "مقدار خالی است، لطفا مجددا وارد کنید" #: install.sh:437 msgid "确定 连接端口" -msgstr "درگاه اتصال را تعیین کنید" +msgstr "تعیین کردن وصل کردن به پورت" #: install.sh:438 install.sh:441 install.sh:2532 install.sh:2538 msgid "请输入连接端口" -msgstr "لطفا درگاه اتصال را وارد کنید" +msgstr "ورودی لطفا پورت ارتباطی را وارد کنید" #: install.sh:438 install.sh:441 install.sh:2532 install.sh:2538 #: file_manager.sh:113 msgid "默认值" -msgstr "مقدار پیش فرض" +msgstr "مقدار پیش‌فرض" #: install.sh:438 install.sh:441 install.sh:528 install.sh:550 install.sh:2532 #: install.sh:2538 install.sh:2542 install.sh:2547 install.sh:2552 #: install.sh:2553 install.sh:2568 install.sh:2573 install.sh:2578 #: install.sh:2579 msgid "请输入 0-65535 之间的值" -msgstr "لطفاً مقدار بین 0-65535 را وارد کنید" +msgstr "لطفا مقداری بین ۰ تا ۶۵۵۳۵ وارد کنید" #: install.sh:440 msgid "端口 9443 不允许使用, 请重新输入" -msgstr "بندر 9443 مجاز به استفاده نیست ، لطفاً دوباره وارد کنید" +msgstr "در پورت ۹۴۴۳ امکان ورود وجود ندارد، لطفا مجددا تلاش کنید" #: install.sh:449 msgid "请选择安装协议" -msgstr "لطفاً پروتکل نصب را انتخاب کنید" +msgstr "لطفا قرارداد نصب را انتخاب کنید" #: install.sh:450 install.sh:1410 install.sh:1443 install.sh:1490 #: install.sh:2629 install.sh:2700 install.sh:2749 fail2ban_manager.sh:138 #: fail2ban_manager.sh:139 msgid "默认" -msgstr "پیش فرض" +msgstr "پیش‌فرض" #: install.sh:454 install.sh:817 install.sh:860 install.sh:1414 install.sh:1427 #: install.sh:1445 install.sh:1494 install.sh:1504 install.sh:2492 @@ -190,80 +190,80 @@ msgstr "پیش فرض" #: install.sh:2761 fail2ban_manager.sh:16 fail2ban_manager.sh:103 #: fail2ban_manager.sh:136 file_manager.sh:95 msgid "请输入" -msgstr "لطفا وارد کنید" +msgstr "لطفاً ورودی را وارد کنید" #: install.sh:454 install.sh:1414 install.sh:1445 install.sh:1494 #: install.sh:2492 install.sh:2632 install.sh:2703 install.sh:2752 msgid "请输入有效的数字" -msgstr "لطفا شماره های معتبر را وارد کنید" +msgstr "لطفاً یک عدد معتبر وارد کنید" #: install.sh:475 msgid "是否添加简单 ws/gRPC 协议 用于负载均衡" -msgstr "آیا می توان یک پروتکل ws/grpc ساده برای تعادل بار اضافه کرد" +msgstr "آیا از پروتکل ساده ws/grpc برای متعادل کردن بار استفاده شود؟" #: install.sh:476 msgid "如不清楚具体用途, 请勿选择" -msgstr "اگر استفاده خاص را نمی دانید ، لطفاً انتخاب نکنید" +msgstr "اگر کاربرد دقیق آن مشخص نیست لطفا انتخاب نکنید" #: install.sh:495 msgid "已跳过添加简单 ws/gRPC 协议" -msgstr "برای افزودن پروتکل ساده ws/grpc پرش کنید" +msgstr "اجازه ساده ws/.grpc را گذشت" #: install.sh:524 install.sh:546 install.sh:627 install.sh:660 install.sh:692 msgid "是否需要自定义" -msgstr "آیا به یک سفارشی نیاز دارید" +msgstr "آیا نیاز است که سفارشی شود" #: install.sh:528 install.sh:550 install.sh:631 install.sh:664 msgid "请输入自定义" -msgstr "لطفا سفارشی را وارد کنید" +msgstr "لطفاً سفارشی را وارد کنید" #: install.sh:528 install.sh:550 msgid "请勿与其他端口相同" -msgstr "همان بنادر دیگر نباشید" +msgstr "لطفاً با سایر پورت ها مشابه نباشید" #: install.sh:567 file_manager.sh:121 msgid "是否需要设置防火墙" -msgstr "آیا شما نیاز به تنظیم فایروال دارید" +msgstr "آیا نیاز است که فایروال را تنظیم کنیم؟" #: install.sh:607 install.sh:611 file_manager.sh:135 file_manager.sh:139 #: file_manager.sh:143 msgid "防火墙" -msgstr "دیوار آتش" +msgstr "پوشش آتشپمایی" #: install.sh:607 install.sh:611 file_manager.sh:139 file_manager.sh:143 msgid "重启完成" -msgstr "مجدداً" +msgstr "بازگشایی کامل شد" #: install.sh:613 msgid "开放防火墙相关端口" -msgstr "بندر مرتبط با فایروال" +msgstr "بازکردن پورت های مرتبط با دیواره آتش" #: install.sh:614 msgid "若修改配置, 请注意关闭防火墙相关端口" -msgstr "اگر پیکربندی را اصلاح کردید ، لطفاً برای خاموش کردن پورت مرتبط با فایروال توجه کنید" +msgstr "اگر پیکربندی را تغییر دهید، مراقب بستن پورت‌های مرتبط با دیواره feu دیگری باشید" #: install.sh:615 install.sh:3293 install.sh:3306 install.sh:3307 #: install.sh:3567 install.sh:3586 fail2ban_manager.sh:76 msgid "配置" -msgstr "پیکربندی" +msgstr "تنظیم کردن" #: install.sh:618 file_manager.sh:147 msgid "跳过防火墙设置" -msgstr "تنظیمات فایروال را پرش کنید" +msgstr "از تنظیمات فایروال پرش کنید" #: install.sh:627 install.sh:631 install.sh:632 install.sh:636 install.sh:644 #: install.sh:660 install.sh:664 install.sh:665 install.sh:669 install.sh:677 #: install.sh:1044 msgid "伪装路径" -msgstr "استتار" +msgstr "مسیر مخفی را ترجمه کنید" #: install.sh:631 install.sh:664 msgid "不需要" -msgstr "غیر ضروری" +msgstr "بدون نیاز" #: install.sh:644 install.sh:677 install.sh:811 msgid "是否需要修改" -msgstr "آیا شما نیاز به اصلاح دارید" +msgstr "آیا نیاز است که تغییر کند" #: install.sh:692 install.sh:702 install.sh:2662 msgid "用户名" @@ -271,19 +271,19 @@ msgstr "نام کاربری" #: install.sh:696 msgid "请输入正确的 email" -msgstr "لطفا ایمیل صحیح را وارد کنید" +msgstr "لطفا ایمیل معتبر وارد کنید" #: install.sh:709 msgid "是否需要自定义字符串映射" -msgstr "آیا به نقشه برداری رشته ای سفارشی نیاز دارید" +msgstr "آیا نیاز است که رشته ها سفارش داده شوند؟" #: install.sh:713 msgid "请输入自定义字符串" -msgstr "لطفا رشته سفارشی را وارد کنید" +msgstr "لطفاً رشته سفارشی را وارد کنید" #: install.sh:713 msgid "最多30字符" -msgstr "حداکثر 30 نویسه" +msgstr "حداکثر ۳۰ کاراکتر" #: install.sh:715 msgid "自定义字符串" @@ -292,43 +292,43 @@ msgstr "رشته سفارشی" #: install.sh:722 install.sh:2346 install.sh:3309 install.sh:3562 #: install.sh:3647 msgid "映射字符串" -msgstr "رشته نقشه برداری" +msgstr "مיפוי رشته" #: install.sh:733 msgid "检测到 target 域名已配置, 是否保留" -msgstr "نام دامنه هدف پیکربندی شده است ، خواه حفظ شود" +msgstr "تشکیل domain مقصد آشکار شده است، آیا می‌خواهید داشته باشید؟" #: install.sh:753 msgid "请输入一个域名" -msgstr "لطفا یک نام دامنه وارد کنید" +msgstr "ورود به یک دامنه" #: install.sh:754 msgid "域名要求支持 TLSv1.3、X25519 与 H2 以及域名非跳转用" -msgstr "نام دامنه نیاز به پشتیبانی از tlsv1.3 ، x25519 و h2 و نام دامنه غیر جمپ دارد" +msgstr "نام دامنه باید حمایت از tlsv1.3، x25519 و h2 داشته باشد و همچنین باید رедیрект نام دامنه را اجرا نکند" #: install.sh:755 msgid "确认域名符合要求后请输入" -msgstr "لطفاً پس از تأیید اینکه نام دامنه شرایط را برآورده می کند ، وارد کنید" +msgstr "پس از تایید قیود نام دامنه، لطفا آن را وارد کنید" #: install.sh:756 msgid "正在检测域名请等待" -msgstr "لطفا منتظر نام دامنه باشید" +msgstr "در حال بررسی نام دامنه لطفا صبر کنید" #: install.sh:763 install.sh:768 install.sh:773 msgid "该域名不支持" -msgstr "نام دامنه پشتیبانی نمی کند" +msgstr "این نام دومین پشتیبانی نمی شود" #: install.sh:778 msgid "该域名发生了跳转" -msgstr "نام دامنه پرید" +msgstr "این نام دامنه پرش کرده است" #: install.sh:785 msgid "该域名可能不满足所有要求" -msgstr "این نام دامنه ممکن است تمام شرایط را برآورده نکند" +msgstr "این نام دامنه شرایط مورد نیاز را احتمالاً تامین نمی‌کند" #: install.sh:786 msgid "是否仍要设置此域名" -msgstr "آیا هنوز باید این نام دامنه را تنظیم کنید" +msgstr "آیا هنوز قصد دارید این نام دامنه را تنظیم کنید؟" #: install.sh:798 install.sh:803 install.sh:1412 msgid "域名" @@ -336,577 +336,570 @@ msgstr "نام دامنه" #: install.sh:798 msgid "满足所有要求" -msgstr "همه شرایط را برآورده کنید" +msgstr "برآوردن تمام نیازها" #: install.sh:811 msgid "域名的" -msgstr "نام دامنه" +msgstr "نام دومین" #: install.sh:812 msgid "默认为" -msgstr "پیش فرض" +msgstr "پیش‌فرض بر" #: install.sh:812 msgid "域名本身" -msgstr "نام دامنه خود" +msgstr "نام دومین خود به هیچ وجه" #: install.sh:813 install.sh:851 install.sh:894 msgid "如不清楚具体用途, 请勿继续" -msgstr "اگر استفاده خاص را نمی دانید ، لطفاً ادامه ندهید" +msgstr "اگر کاربرد دقیق آن را نمی دانید لطفا ادامه دهید" #: install.sh:850 install.sh:893 msgid "是否变更" -msgstr "تغییر کند" +msgstr "آیا تغییر می‌کند" #: install.sh:850 msgid "负载均衡" -msgstr "تعادل بار" +msgstr "oad balancing" #: install.sh:855 msgid "请选择协议为 ws 或 gRPC" -msgstr "لطفاً پروتکل ws یا grpc را انتخاب کنید" +msgstr "لطفا پروتکل را به عنوان ws یا grpc انتخاب کنید" #: install.sh:858 fail2ban_manager.sh:102 msgid "返回" -msgstr "بازگشت" +msgstr "برگشت" #: install.sh:860 msgid "请重新输入正确的数字" -msgstr "لطفا شماره صحیح را دوباره وارد کنید" +msgstr "لطفاً عدد صحیح را مجددا وارد کنید" #: install.sh:865 install.sh:902 msgid "本地文件 file_manager.sh 不存在, 正在下载" -msgstr "file file_manager.sh محلی وجود ندارد ، بارگیری می شود" +msgstr "فایل محلی file_manager.sh وجود ندارد، در حال دانلود است" #: install.sh:868 install.sh:905 install.sh:2039 fail2ban_manager.sh:242 #: file_manager.sh:258 msgid "下载失败, 请手动下载并安装新版本" -msgstr "بارگیری انجام نشد ، لطفاً نسخه جدید را به صورت دستی بارگیری و نصب کنید" +msgstr "دانلود با شکست مواجه شد، دانلود و نصب نسخه جدید را دستی انجام دهید" #: install.sh:878 msgid "无效选项 请重试" -msgstr "گزینه های نامعتبر لطفا آن را امتحان کنید" +msgstr "گزینه نامعتبر است لطفا مجددا تلاش کنید" #: install.sh:886 install.sh:915 install.sh:1975 install.sh:2013 #: install.sh:2029 msgid "当前模式不支持此操作" -msgstr "حالت فعلی از این عملیات پشتیبانی نمی کند" +msgstr "قالب فعلی این عمل را پشتیبانی نمی کند" #: install.sh:895 msgid "配置用途可以参考文章" -msgstr "برای پیکربندی می توانید به مقاله مراجعه کنید" +msgstr "استفاده از آن را می توانید در مقاله مراجعه کنید" #: install.sh:895 msgid "敬请期待" -msgstr "لطفا مشتاقانه منتظر باشید" +msgstr "لطفاً صبر کنید" #: install.sh:937 install.sh:941 install.sh:945 install.sh:957 install.sh:962 #: install.sh:968 install.sh:988 install.sh:994 install.sh:1044 install.sh:1063 #: install.sh:3307 install.sh:3530 msgid "修改" -msgstr "تجدید نظر کردن" +msgstr "تغییر" #: install.sh:996 msgid "端口号" -msgstr "شماره بندر" +msgstr "شماره چنبرک" #: install.sh:1046 msgid "不支持" -msgstr "حمایت نکردن" +msgstr "نمی پسندید" #: install.sh:1053 msgid "用户名修改" -msgstr "اصلاح نام کاربری" +msgstr "نام کاربری ویرایش" #: install.sh:1056 install.sh:1066 msgid "请先删除多余的用户" -msgstr "لطفاً ابتدا کاربران اضافی را حذف کنید" +msgstr "لطفاً کاربران اضافی را حذف کنید" #: install.sh:1074 install.sh:1082 install.sh:1089 install.sh:1763 #: install.sh:1833 install.sh:1863 install.sh:1872 install.sh:1895 msgid "配置修改" -msgstr "تغییر پیکربندی" +msgstr "تغییرات پیکربندی" #: install.sh:1094 -msgid "检测到 Xray 的权限控制, 启动擦屁股程序" -msgstr "کنترل مجوزهای xray شناسایی شده است و برنامه خراش شروع می شود" +msgid "检测到 Xray 的权限控制, 启动修改程序" +msgstr "تشخیص داده شد کنترل دسترسی xray، برنامه ویرایش را شروع می‌کند" #: install.sh:1099 -msgid "擦屁股完成" -msgstr "باسن را تمام کنید" +msgid "修改完成" +msgstr "تغییرات انجام شد" #: install.sh:1116 msgid "若更新无效, 建议直接卸载再安装" -msgstr "اگر به روزرسانی نامعتبر باشد ، توصیه می شود مستقیماً آن را حذف کرده و آن را نصب کنید" +msgstr "اگر به‌روزرسانی انجام نشد، پیشنهاد می‌شود که برنامه را خارج کنید و دوباره نصب کنید" #: install.sh:1117 msgid "部分新功能需要重新安装才可生效" -msgstr "برخی از کارکردهای جدید قبل از شروع کار باید دوباره نصب شوند" +msgstr "برخی ویژگی‌های جدید نیاز به نصب مجدد دارند تا فعال شوند" #: install.sh:1123 msgid "检测到存在最新版" -msgstr "آخرین نسخه شناسایی شده است" +msgstr "شیشه تشخیص داد که نسخه جدیدتری موجود است" #: install.sh:1124 msgid "脚本可能未兼容此版本" -msgstr "اسکریپت ممکن است با این نسخه سازگار نباشد" +msgstr "قالب ممکن است با این نسخه سازگار نباشد" #: install.sh:1125 msgid "是否更新" -msgstr "آیا به روز رسانی" +msgstr "آیا به روز رسانی می شود" -#: install.sh:1132 -msgid "即将升级" -msgstr "پیشرفت کردن" - -#: install.sh:1136 install.sh:1143 install.sh:1150 install.sh:1333 -#: install.sh:3548 install.sh:3549 install.sh:3550 +#: install.sh:1132 install.sh:1136 install.sh:1143 install.sh:1150 +#: install.sh:1333 install.sh:3548 install.sh:3549 install.sh:3550 msgid "升级" -msgstr "بالا بردن" +msgstr "به روز رسانی" -#: install.sh:1139 -msgid "即将升级/重装" -msgstr "بهبود یافته/نصب شده" - -#: install.sh:1147 +#: install.sh:1139 install.sh:1147 msgid "升级/重装" -msgstr "ارتقا/نصب مجدد" +msgstr "به روز رسانی/نصب مجدد" #: install.sh:1163 msgid "Reality 协议有流量偷跑的风险" -msgstr "پروتکل واقعیت خطر سرقت ترافیک را دارد" +msgstr "ورودی‌های reality امکان رخ دادن نشت ترافیک را دارند" #: install.sh:1164 msgid "该风险在 target 网址被 cdn 加速时存在" -msgstr "این خطر هنگام تسریع در وب سایت هدف توسط cdn وجود دارد" +msgstr "این ریسک زمانی وجود دارد که risk در target آدرس با cdn سرعت بخشیده شود" #: install.sh:1165 msgid "是否额外安装 nginx 前置保护(推荐)" -msgstr "آیا برای نصب nginx قبل از محافظت (توصیه می شود)" +msgstr "آیا می خواهید nginx به عنوان یک محافظ اضافی نصب شود (توصیه می شود)" #: install.sh:1169 msgid "已跳过安装" -msgstr "نصب" +msgstr "تخطی نصب شده است" #: install.sh:1199 msgid "已存在, 跳过编译安装过程" -msgstr "در حال حاضر ، روند تدوین و نصب را پرش کنید" +msgstr " موجود، پروسه نصب و کامپایل را اجتیاز داد" #: install.sh:1202 msgid "检测到旧版本安装的" -msgstr "نسخه قدیمی نصب شد" +msgstr "آپدیت قدیمی نصب شده تشخیص داده شد" #: install.sh:1203 msgid "请先做好备份" -msgstr "لطفاً ابتدا پشتیبان تهیه کنید" +msgstr "لطفا ابتدا پشتیبان گرفتن را انجام دهید" #: install.sh:1204 msgid "是否需要删除 (请删除)" -msgstr "آیا شما نیاز به حذف دارید (لطفا حذف کنید)" +msgstr "آیا نیاز است که حذف شود (لطفا حذف شود)" #: install.sh:1208 msgid "已跳过删除" -msgstr "حذف" +msgstr "از حذف گذشته اید" #: install.sh:1215 msgid "日志目录已更改, 日志清除需要重新设置" -msgstr "فهرست ورود به سیستم تغییر یافته است ، و نیاز به تنظیم مجدد ورود به سیستم" +msgstr "پوشه ی روزنامه تغییر یافته، برای پاک کردن روزنامه باید تنظیمات جدیدی اعمال شود" #: install.sh:1221 msgid "检测到其他套件安装的 Nginx, 继续安装会造成冲突, 请处理后安装" -msgstr "nginx نصب شده در کیت های دیگر ، ادامه نصب باعث درگیری خواهد شد ، لطفاً آن را پس از پردازش نصب کنید" +msgstr "تشخیص داده شده که nginx در سایر بسته های نصب شده وجود دارد، نصب ادامه یافته و تداخل آمیز خواهد بود، لطفا پس از رسیدگی مربوطه نصب را انجام دهید" #: install.sh:1235 msgid "即将下载已编译的" -msgstr "این مجموعه در حال بارگیری است" +msgstr "در حال دانلود کردن کد شده" #: install.sh:1280 install.sh:1281 install.sh:1288 install.sh:1289 msgid "配置文件不完整, 退出升级" -msgstr "پرونده پیکربندی ناقص ، خروج و به روزرسانی است" +msgstr "پرونده‌ی کاربری ناقص است، بروز رسانی متوقف می‌شود" #: install.sh:1293 install.sh:1294 msgid "当前安装模式不需要" -msgstr "حالت نصب فعلی لازم نیست" +msgstr "قالب نصب فعلی besoin" #: install.sh:1298 install.sh:1299 msgid "配置文件不存在, 退出升级" -msgstr "پرونده پیکربندی وجود ندارد ، خروج و به روز رسانی می کند" +msgstr "پرونده پیکربندی موجود نیست، بروز رسانی خارج شد" #: install.sh:1303 msgid "删除旧版" -msgstr "نسخه قدیمی را حذف کنید" +msgstr "حذف نسخه قدیمی" #: install.sh:1307 msgid "是否保留原 Nginx 配置文件" -msgstr "آیا برای نگه داشتن فایل پیکربندی اصلی nginx" +msgstr "آیا فایل های پیکربندی اصلی nginx حفظ می شوند؟" #: install.sh:1315 install.sh:1584 msgid "原配置文件已删除" -msgstr "پرونده پیکربندی اصلی حذف شده است" +msgstr "پروندهٔ اصلی حذف شده است" #: install.sh:1319 msgid "原配置文件已保留" -msgstr "پرونده پیکربندی اصلی حفظ شده است" +msgstr "پروندهٔ اصلی حفظ شده است" #: install.sh:1335 msgid "已为最新版" -msgstr "آخرین نسخه بوده است" +msgstr "از جدیدترین نسخه استudded" #: install.sh:1350 msgid "设置后台定时自动更新程序 (包含: 脚本/Xray/Nginx)" -msgstr "هنگام تنظیم پس زمینه ، برنامه به روزرسانی خودکار (از جمله: script/xray/nginx) را تنظیم کنید" +msgstr "تنظیم به روز رسانی خودکار پس زمینه برنامه (شامل: اسکریپت / xray / nginx)" #: install.sh:1351 msgid "可能自动更新后有兼容问题, 谨慎开启" -msgstr "ممکن است بعد از بروزرسانی خودکار مشکلات سازگار وجود داشته باشد و با احتیاط باز شود" +msgstr "شاید پس از به روز رسانی خودکار مشکلات سازگاری وجود داشته باشد، بازخورد را با دقت روشن کنید" #: install.sh:1352 msgid "是否开启" -msgstr "باز کردن" +msgstr "آیا فعال شود؟" #: install.sh:1358 install.sh:3294 msgid "设置自动更新" -msgstr "به روزرسانی خودکار را تنظیم کنید" +msgstr "تنظیم بهروزی خودکار" #: install.sh:1363 msgid "已设置自动更新" -msgstr "به روزرسانی خودکار را تنظیم کنید" +msgstr "تنظیم به روز رسانی خودکار شده است" #: install.sh:1364 msgid "是否关闭" -msgstr "آیا بستن" +msgstr "آیا بسته شود؟" #: install.sh:1370 msgid "删除自动更新" -msgstr "به روزرسانی خودکار را حذف کنید" +msgstr "حذف به روز رسانی خودکار" #: install.sh:1379 msgid "安装 SSL 证书生成脚本依赖" -msgstr "مجوز ssl تولید وابستگی های اسکریپت را نصب کنید" +msgstr "نصب اس اس ال گواهینامه به کمک اسکریپت ها" #: install.sh:1381 msgid "安装 SSL 证书生成脚本" -msgstr "گواهی ssl را برای تولید اسکریپت نصب کنید" +msgstr "نصب اسکریپت گенراتور گواهنامه ssl" #: install.sh:1387 msgid "检测到原域名配置存在, 是否跳过域名设置" -msgstr "حضور پیکربندی نام دامنه اصلی شناسایی شده است ، آیا می توان از تنظیمات نام دامنه استفاده کرد" +msgstr "تشخیص داده شد که پیکربندی دامنه اصلی موجود است، آیا می‌خواهید تنظیمات دامنه را رد کنید؟" #: install.sh:1401 msgid "已跳过域名设置" -msgstr "تنظیمات نام دامنه را پرش کنید" +msgstr "تخطی شد تنظیمات دامنه" #: install.sh:1407 msgid "确定域名信息" -msgstr "اطلاعات دامنه را تعیین کنید" +msgstr "تعیین اطلاعات نام دامنه" #: install.sh:1408 msgid "请输入你的域名信息" -msgstr "لطفاً اطلاعات نام دامنه خود را وارد کنید" +msgstr "لطفا اطلاعات دامنه خود را وارد کنید" #: install.sh:1409 msgid "请选择公网IP(IPv4/IPv6)或手动输入域名" -msgstr "لطفاً ip شبکه عمومی (ipv4/ipv6) را انتخاب کنید یا نام دامنه را به صورت دستی وارد کنید" +msgstr "لطفاً ip عام (ipv4/ipv6) را انتخاب کنید یا دامنه را دستی وارد کنید" #: install.sh:1411 install.sh:1491 msgid "不推荐" -msgstr "توصیه نکنید" +msgstr "پیشنهاد نمی‌شود" #: install.sh:1415 install.sh:1496 msgid "正在获取公网IP信息, 请耐心等待" -msgstr "اطلاعات ip شبکه عمومی را دریافت کنید ، لطفا صبر صبر کنید" +msgstr "در حال دریافت اطلاعات آدرس آی‌پی عمومی، لطفاً صبور باشید" #: install.sh:1425 msgid "此选项用于服务器商仅提供域名访问服务器" -msgstr "این گزینه برای فروشندگان سرور استفاده می شود تا فقط سرورهای دسترسی به نام دامنه ارائه دهند" +msgstr "این گزینه برای فروشندگان هاست است که فقط از طریق نام دامنه به سرور دسترسی دارند" #: install.sh:1426 msgid "注意服务器商域名添加 CNAME 记录" -msgstr "توجه داشته باشید که نام دامنه کسب و کار سرور اضافه شده است" +msgstr "توجه داده کنید که فرملند دامنه فروشگاهی خود را cname رکورد اضافه کنید" #: install.sh:1434 msgid "域名DNS解析IP" -msgstr "دامنه تجزیه و تحلیل dns ip" +msgstr "نام دامنه dns به ip ترجمه می شود" #: install.sh:1435 install.sh:1510 msgid "公网IP/域名" -msgstr "شبکه عمومی ip/نام دامنه" +msgstr "آدرس آی‌پی عام/نام دامنه" #: install.sh:1437 msgid "域名DNS解析IP与公网IP匹配" -msgstr "domain dns analysis ip و ip network ip مطابقت دارد" +msgstr "نام دومین (dns) ip متناظر با ip عمومی مطابقت دارد" #: install.sh:1439 msgid "请确保域名添加了正确的 A/AAAA 记录, 否则将无法正常使用 Xray" -msgstr "لطفاً اطمینان حاصل کنید که نام دامنه رکورد صحیح a/aaaa را اضافه می کند ، در غیر این صورت قادر به استفاده از xray به طور عادی نخواهد بود" +msgstr "لطفا مطمئن شوید که دامنه صحیح رکورد a/aaaa اضافه شده است، در غیر این صورت xray به درستی کار نخواهد کرد" #: install.sh:1440 msgid "域名DNS解析IP与公网IP不匹配, 请选择" -msgstr "دامنه dns تجزیه شده ip با ip شبکه عمومی مطابقت ندارد ، لطفا انتخاب کنید" +msgstr "نام دومین (dns) پیکربندی شده ip و ip عمومی مطابقت ندارد، لطفا انتخاب کنید" #: install.sh:1441 install.sh:1448 msgid "继续安装" -msgstr "به نصب ادامه دهید" +msgstr "ادامه نصب" #: install.sh:1442 msgid "重新输入" -msgstr "مجدداً" +msgstr "دوباره وارد کنید" #: install.sh:1443 msgid "终止安装" -msgstr "نصب را خاتمه دهید" +msgstr "انصراف از نصب" #: install.sh:1454 msgid "安装终止" -msgstr "نصب کردن" +msgstr "نصب پایان یافتن" #: install.sh:1465 msgid "检测到原IP配置存在, 是否跳过IP设置" -msgstr "تشخیص وجود پیکربندی ip اصلی ، خواه از تنظیمات ip استفاده کنید" +msgstr "ip پیکربندی اصلی تشخیص داده شده است، آیا ip را نمی گذراند؟" #: install.sh:1482 msgid "已跳过IP设置" -msgstr "تنظیمات ip را پرش کنید" +msgstr "از تنظیمات ip گذشت شده است" #: install.sh:1488 msgid "确定公网IP信息" -msgstr "اطلاعات ip شبکه عمومی را تعیین کنید" +msgstr "تعیین اطلاعات آدرس آی پی همگانی" #: install.sh:1489 msgid "请选择公网IP为IPv4或IPv6" -msgstr "لطفاً ip شبکه عمومی را به عنوان ipv4 یا ipv6 انتخاب کنید" +msgstr "لطفاً آدرس ip سرور را یا به پروتکل ipv4 و یا به پروتکل ipv6 انتخاب کنید" #: install.sh:1492 msgid "手动输入" -msgstr "ورودی دستی" +msgstr "ورود دستی" #: install.sh:1519 -msgid "尝试自动 kill 占用进程" -msgstr "روند کار خودکار کشتن را امتحان کنید" +msgid "尝试终止占用的进程" +msgstr "سعي برای خاتمه دادن به فرآيند حاكم علينصند" #: install.sh:1530 msgid "证书测试签发成功, 开始正式签发" -msgstr "آزمون گواهینامه با موفقیت صادر شد و صدور رسمی شروع به صادر کرد" +msgstr "مجوز تست به موفقیت صادر شد، شروع به صادر کردن رسمی کنید" #: install.sh:1533 msgid "证书测试签发失败" -msgstr "صدور آزمون گواهینامه انجام نمی شود" +msgstr "گواهی گرفتن در طی فرآیند تست شکنی رخ داد" #: install.sh:1540 msgid "证书生成成功" -msgstr "گواهی موفق" +msgstr "گواهینامه با موفقیت ایجاد شد" #: install.sh:1546 msgid "证书配置成功" -msgstr "پیکربندی گواهینامه موفق" +msgstr "گواهی با موفقیت کانفیگوره شده" #: install.sh:1550 msgid "证书生成失败" -msgstr "خرابی تولید گواهی" +msgstr "گواهی تولید نشد" #: install.sh:1578 msgid "检测到 Xray 配置过多用户" -msgstr "آزمایش بیش از حد کاربران در پیکربندی xray" +msgstr "تشخیص از کانفیگ xray برای تعداد زیادی کاربر" #: install.sh:1579 msgid "是否保留原 Xray 配置文件" -msgstr "اینکه آیا پرونده پیکربندی اصلی xray را نگه دارید" +msgstr "آیا فایل های پیکربندی xray باقی ماند؟" #: install.sh:1597 msgid "添加简单 ws/gRPC 协议" -msgstr "پروتکل ساده ws/grpc را اضافه کنید" +msgstr "افزودن پروتکل ساده ws/grpc" #: install.sh:1612 msgid "检测到配置文件, 是否读取配置文件" -msgstr "فایل پیکربندی را تشخیص دهید ، آیا پرونده پیکربندی را بخوانید" +msgstr "تشخیص فایل پیکربندی، آیا از فایل پیکربندی خواند خواهد شد" #: install.sh:1617 install.sh:1638 install.sh:1734 install.sh:2916 msgid "已删除配置文件" -msgstr "پرونده پیکربندی حذف شده" +msgstr "حذف شده پرونده سازنده" #: install.sh:1620 install.sh:1633 install.sh:1729 install.sh:2912 msgid "已保留配置文件" -msgstr "پرونده پیکربندی حفظ شده است" +msgstr "پرونده ذخیره شده است" #: install.sh:1627 msgid "检测到当前安装模式与配置文件的安装模式不一致" -msgstr "حالت نصب فعلی تشخیص داده شده است که حالت نصب پرونده پیکربندی متناقض است" +msgstr "شناسایی شد که حالت نصب فعلی با حالت نصب در فایل متفاوت است" #: install.sh:1628 msgid "是否保留配置文件 (强烈不建议)" -msgstr "آیا برای نگه داشتن پرونده پیکربندی (قوی توصیه نمی شود)" +msgstr "آیا پروفایل حفظ شود (بسیار توصیه نمی‌شود)" #: install.sh:1632 msgid "请务必确保配置文件正确" -msgstr "لطفاً اطمینان حاصل کنید که پرونده پیکربندی صحیح است" +msgstr "لطفا مطمئن شوید که فایل پیکربندی صحیح است" #: install.sh:1724 msgid "检测到配置文件不完整, 是否保留配置文件" -msgstr "پرونده پیکربندی کامل نیست ، آیا پرونده پیکربندی حفظ شده است" +msgstr "تشخیص عدم کامل بودن فایل پیکربندی، آیا مایلید فایل پیکربندی را حفظ کنید؟" #: install.sh:1879 msgid "配置删除" -msgstr "حذف پیکربندی" +msgstr "configurer حذف" #: install.sh:1900 msgid "设置 Nginx 开机自启" -msgstr "nginx را تنظیم کنید و شروع به کار خود کنید" +msgstr "تنظیم نگینکس برای شروع خودکار در زمان راه‌اندازی سیستم" #: install.sh:1903 install.sh:3584 install.sh:3587 install.sh:3588 #: install.sh:3589 fail2ban_manager.sh:10 msgid "设置" -msgstr "تنظیم کردن" +msgstr "تنظیمات" #: install.sh:1903 install.sh:1911 msgid "开机自启" -msgstr "شروع به کار خود شروع کنید" +msgstr "اجرای خودکار در هنگام روشن کردن" #: install.sh:1908 msgid "关闭 Nginx 开机自启" -msgstr "nginx را خاموش کنید و شروع به کار خود کنید" +msgstr "بستن شروع خودکار nginx در زمان راه‌اندازی سیستم" #: install.sh:1911 msgid "关闭" -msgstr "بسته شدن" +msgstr "بستن" #: install.sh:1918 msgid "停止已有服务" -msgstr "سرویس موجود را متوقف کنید" +msgstr "این سرویس را متوقف کنید" #: install.sh:1924 install.sh:1927 install.sh:2500 install.sh:2502 #: install.sh:3577 fail2ban_manager.sh:99 fail2ban_manager.sh:188 msgid "重启" -msgstr "مجدداً" +msgstr "ریستارت کردن" #: install.sh:1932 install.sh:1935 install.sh:3578 fail2ban_manager.sh:98 #: fail2ban_manager.sh:158 msgid "启动" -msgstr "شروع کردن" +msgstr "شروع کنید" #: install.sh:1940 install.sh:1943 install.sh:2003 install.sh:3579 #: fail2ban_manager.sh:100 msgid "停止" -msgstr "توقف" +msgstr "این دستور متوقف کن" #: install.sh:1956 install.sh:1972 msgid "新版本已自动设置证书自动更新" -msgstr "نسخه جدید به طور خودکار به طور خودکار به روز شده است" +msgstr "نسخه جدید به طور خودکار تنظیم به روز رسانی گواهنامه شده است" #: install.sh:1957 msgid "老版本请及时删除 废弃的 改版证书自动更新" -msgstr "لطفاً برای به روزرسانی نسخه قدیمی به موقع ، گواهی تجدید نظر متروکه را به موقع حذف کنید" +msgstr "نسخه های قدیمی به زودی حذف شوند نسخه جدید گواهی خودکار به روز رسانی می شود" #: install.sh:1958 msgid "已设置改版证书自动更新" -msgstr "به طور خودکار گواهی تجدید نظر را به روز کنید" +msgstr "تنظیم شده است که گواهینامه بازنگری شده به صورت خودکار بروزرسانی شود" #: install.sh:1959 msgid "是否需要删除改版证书自动更新 (请删除)" -msgstr "آیا باید گواهی تجدید نظر را حذف کرده و به طور خودکار به روز کنید (لطفا حذف کنید)" +msgstr "آیا نیاز است گواهینامه بازنگری شده خودکار به روز رسانی شود (لطفا حذف کنید)" #: install.sh:1966 msgid "删除改版证书自动更新" -msgstr "به روزرسانی خودکار گواهی تجدید نظر را حذف کنید" +msgstr "حذف گواهی بازنمایی شده به روز رسانی خودکار" #: install.sh:1990 msgid "已过期" -msgstr "گسترش" +msgstr "منقضی شده" #: install.sh:1992 msgid "证书生成日期" -msgstr "تاریخ تولید گواهینامه" +msgstr "تاریخ ایجاد گواهینامه" #: install.sh:1993 msgid "证书生成天数" -msgstr "روزهای تولید گواهی" +msgstr "تعداد روزهای تولید گواهینامه" #: install.sh:1994 msgid "证书剩余天数" -msgstr "گواهی روزهای باقی مانده" +msgstr "مابقی روزهای گواهینامه" #: install.sh:1998 msgid "是否立即更新证书" -msgstr "آیا بلافاصله گواهی را به روز می کنید" +msgstr "آیا مجوز را همین حالا به روز می کنید؟" #: install.sh:2010 install.sh:2022 msgid "证书签发工具不存在, 请确认是否证书为脚本签发" -msgstr "ابزار صدور گواهی وجود ندارد ، لطفاً تأیید کنید که آیا گواهی به عنوان اسکریپت صادر شده است" +msgstr "ابزار صدور گواهی وجود ندارد، لطفاً مطمئن شوید که گواهی توسط اسکریپت صادر شده است" #: install.sh:2026 msgid "证书更新" -msgstr "به روزرسانی گواهی" +msgstr "certificat آپدیت شود" #: install.sh:2036 msgid "本地文件 fail2ban_manager.sh 不存在, 正在下载" -msgstr "پرونده محلی fail2ban_manager.sh وجود ندارد و در حال بارگیری است" +msgstr "فایل محلی fail2ban_manager.sh موجود نیست، در حال دانلود آن " #: install.sh:2050 msgid "检测到日志文件大小如下:" -msgstr "اندازه پرونده log به شرح زیر است" +msgstr "logfile size detected as follows" #: install.sh:2052 msgid "即将清除" -msgstr "پاک شدن" +msgstr "به زودی حذف می‌شود" #: install.sh:2054 msgid "日志清理" -msgstr "پاکسازی ورود به سیستم" +msgstr "ログクリーニング" #: install.sh:2064 msgid "已设置旧版自动清理日志任务" -msgstr "نسخه قدیمی کار ورود به سیستم تمیز کردن خودکار تنظیم شده است" +msgstr "تنظیم شده است که وظیفه تمیز خودکار قدیمی را یادگیری کند" #: install.sh:2065 msgid "是否需要删除旧版自动清理日志任务" -msgstr "آیا شما نیاز به حذف نسخه قدیمی کار ورود به سیستم اتوماتیک دارید" +msgstr "آیا نیاز است وظیفه خودکار پاک کردن روزانه قدیمی حذف شود" #: install.sh:2069 install.sh:2103 msgid "保留现有自动清理日志任务" -msgstr "کار ورود به سیستم تمیز کردن اتوماتیک موجود را حفظ کنید" +msgstr "حذف کردن تسک پاکسازی خودکار روزانه لگ ها" #: install.sh:2074 msgid "删除旧版自动清理日志任务" -msgstr "نسخه قدیمی کار ورود به سیستم اتوماتیک را حذف کنید" +msgstr "حذف وظیفه لاگ تمیز خودکار نسخه قدیمی" #: install.sh:2081 msgid "是否需要设置自动清理日志" -msgstr "آیا شما نیاز به تنظیم یک گزارش تمیز کردن اتوماتیک دارید" +msgstr "آیا نیاز است که تمیز خودکار لاگ تنظیم شود" #: install.sh:2085 install.sh:3606 install.sh:3615 install.sh:3667 #: install.sh:3673 install.sh:3709 install.sh:3715 install.sh:3721 #: install.sh:3750 install.sh:3777 install.sh:3784 install.sh:3789 #: fail2ban_manager.sh:159 fail2ban_manager.sh:172 fail2ban_manager.sh:181 +#: fail2ban_manager.sh:189 msgid "清空屏幕" -msgstr "صفحه را پاک کنید" +msgstr "پاک کردن صفحه نمایش" #: install.sh:2089 msgid "将在 每周三 04:00 自动清空日志" -msgstr "ورود به سیستم به طور خودکار هر چهارشنبه ساعت 04:00 خالی می شود" +msgstr "خروج از سیستم در روزهای چهارشنبه هر هفته در ساعت ۴:۰۰ صبح خودکار انجام می‌شود" #: install.sh:2094 msgid "已设置自动清理日志任务" -msgstr "کار ورود به سیستم تمیز کردن خودکار تنظیم شده است" +msgstr " تنظیم کردن وظیفه پاک کردن خودکار لاگ ها" #: install.sh:2095 msgid "是否需要删除现有自动清理日志任务" -msgstr "آیا شما نیاز به حذف کار ورود به سیستم اتوماتیک موجود دارید" +msgstr "آیا نیاز است که وظیفه خودکار پاک کردن روزانه ی ثبت ها حذف شود" #: install.sh:2100 msgid "删除自动清理日志任务" -msgstr "کار ورود به سیستم خودکار تمیز کردن را حذف کنید" +msgstr "حذف وظیفه تمیز خودکار لاگ" #: install.sh:2118 msgid "设置自动清理日志" -msgstr "ورود به سیستم تمیز کردن خودکار را تنظیم کنید" +msgstr "تنظیم خودکار پاک کردن لگ ها" #: install.sh:2243 msgid "配置分享" -msgstr "به اشتراک گذاری پیکربندی" +msgstr "تعداد کاربرانی که می توانند یک پروتکل را در یک بازه زمانی مشترک داشته باشند را تنظیم کنید" #: install.sh:2245 install.sh:2251 install.sh:2256 install.sh:2261 #: install.sh:2265 install.sh:2673 msgid "分享链接" -msgstr "لینک مشترک" +msgstr "لینک را به اشتراک بگذارید" #: install.sh:2246 install.sh:2252 install.sh:2257 install.sh:2262 #: install.sh:2266 @@ -915,17 +908,17 @@ msgstr "کد qr" #: install.sh:2275 msgid "生成分享链接" -msgstr "پیوند اشتراک گذاری ایجاد کنید" +msgstr "ساخت لینک به_partagenشareth" #: install.sh:2289 install.sh:2292 install.sh:2295 install.sh:2298 #: install.sh:2301 install.sh:2304 install.sh:2307 install.sh:2310 #: install.sh:2313 install.sh:2316 msgid "安装成功" -msgstr "نصب موفق" +msgstr "نصب موفقیت آمیز بود" #: install.sh:2320 msgid "目前分享链接规范为实验阶段, 请自行判断是否适用" -msgstr "در حال حاضر ، مشخصات لینک اشتراک گذاری مرحله آزمایشی است ، لطفاً تعیین کنید که آیا توسط خودتان قابل اجرا است" +msgstr "در حال حاضر، قوانین لینک به اشتراک گذاری در مرحله آزمایشی هستند، لطفاً خودتان بررسی کنید که آیا مناسب است یا نه" #: install.sh:2322 install.sh:3575 msgid "配置信息" @@ -940,15 +933,15 @@ msgstr "میزبان" #: install.sh:2343 install.sh:2370 install.sh:2373 install.sh:2376 #: install.sh:2378 msgid "端口" -msgstr "بندر" +msgstr "نوع دریچه" #: install.sh:2347 msgid "用户id" -msgstr "شناسه کاربر" +msgstr "شناسه کاربری" #: install.sh:2349 msgid "加密" -msgstr "رمز" +msgstr "رمزگذاری" #: install.sh:2350 msgid "传输协议" @@ -956,7 +949,7 @@ msgstr "پروتکل انتقال" #: install.sh:2351 msgid "底层传输安全" -msgstr "ایمنی انتقال اساسی" +msgstr "امنیت حمل ارتباطات پایین سطح" #: install.sh:2354 install.sh:2358 install.sh:2371 install.sh:2377 msgid "路径" @@ -964,11 +957,11 @@ msgstr "مسیر" #: install.sh:2354 install.sh:2358 install.sh:2371 install.sh:2377 msgid "不要落下" -msgstr "سقوط نکردن" +msgstr "نباشید" #: install.sh:2356 install.sh:2359 install.sh:2374 install.sh:2379 msgid "不需要加" -msgstr "نیازی به اضافه کردن نیست" +msgstr "بدون نیاز به افزودن" #: install.sh:2362 msgid "流控" @@ -976,35 +969,35 @@ msgstr "کنترل جریان" #: install.sh:2393 msgid "即将申请证书, 支持使用自定义证书" -msgstr "برای استفاده به زودی ، از استفاده از گواهینامه های سفارشی پشتیبانی کنید" +msgstr "در حال درخواست گواهینامه ، پشتیبانی از استفاده از گواهینامه سفارشی" #: install.sh:2394 msgid "如需使用自定义证书, 请按如下步骤:" -msgstr "اگر نیاز به استفاده از گواهی سفارشی دارید ، لطفاً مراحل زیر را دنبال کنید" +msgstr "برای استفاده از گواهی سفارشی ، لطفاً مراحل زیر را دنبال کنید" #: install.sh:2395 msgid "1. 将证书文件重命名: 私钥(xray.key)、证书(xray.crt)" -msgstr "1. سند گواهینامه را تغییر نام دهید: کلید (xray.key) ، گواهی (xray.crt)" +msgstr "۱. نام فایل مجوز را تغییر دادن: کلید خصوصی (xray.key)، مجوز (xray.crt)" #: install.sh:2396 msgid "2. 将重命名后的证书文件放入" -msgstr "2. پرونده گواهینامه تغییر نام را در آن قرار دهید" +msgstr "2. فایل گواهی با نام جدید را قرار دادید" #: install.sh:2396 msgid "目录后再运行脚本" -msgstr "فیلمنامه را بعد از دایرکتوری اجرا کنید" +msgstr "فهرست سپس اسکریپت را اجرا کنید" #: install.sh:2397 msgid "3. 重新运行脚本" -msgstr "3. فیلمنامه را دوباره اجرا کنید" +msgstr "۳. مجدد اسکریپت را اجرا کنید" #: install.sh:2398 install.sh:2831 msgid "是否继续" -msgstr "آیا ادامه دارد" +msgstr "آیا ادامه دادن؟" #: install.sh:2406 msgid "所有证书文件均已存在, 是否保留" -msgstr "تمام اسناد گواهینامه از قبل وجود دارد ، چه باید نگه دارید" +msgstr "تمام فایل‌های گواهی موجود هستند، آیا مورد حفظ قرار گرفته شوند؟" #: install.sh:2412 install.sh:2427 install.sh:2443 file_manager.sh:186 msgid "已删除" @@ -1012,15 +1005,15 @@ msgstr "حذف شده" #: install.sh:2418 install.sh:2433 install.sh:2450 msgid "证书应用" -msgstr "برنامه گواهینامه" +msgstr "گواهینامه استفاده شود" #: install.sh:2422 msgid "证书文件已存在, 是否保留" -msgstr "اسناد گواهی وجود داشته است ، چه باید نگه دارید" +msgstr "فایل گواهی موجود است، آیا باید نگهداری شود؟" #: install.sh:2438 msgid "证书签发残留文件已存在, 是否保留" -msgstr "صدور گواهینامه اسناد باقیمانده وجود داشته است ، آیا حفظ شده است؟" +msgstr "فایل های باقی مانده از صدور گواهینامه وجود دارند، آیا باید نگهداری شوند؟" #: install.sh:2480 install.sh:3570 msgid "添加" @@ -1028,219 +1021,218 @@ msgstr "اضافه کردن" #: install.sh:2487 msgid "请选择支持的 TLS 版本" -msgstr "لطفاً نسخه tls پشتیبانی شده را انتخاب کنید" +msgstr "لطفا نسخه پروتکل tls را انتخاب کنید" #: install.sh:2488 msgid "建议选择 TLS1.3 only (安全模式)" -msgstr "توصیه می شود فقط tls1.3 را انتخاب کنید (حالت امنیتی)" +msgstr "پیشنهاد می‌شود تنها tls1.3 (حالت امن) را انتخاب کنید" #: install.sh:2489 msgid "兼容模式" -msgstr "حالت سازگار" +msgstr "حالت سازگاری" #: install.sh:2490 msgid "安全模式" msgstr "حالت امنیتی" #: install.sh:2494 -msgid "" -"从 2.2.1 版本起, 由于启用 h3 仅支持 TLS1.3, 请选择 TLS1.3 only (安全模式)" -msgstr "" +msgid "由于 h3 仅支持 TLS1.3, 只支持 TLS1.3 only (安全模式)" +msgstr "از آنجا که h3 فقط از tls1.3 پشتیبانی می کند ، فقط از tls1.3 (حالت ایمن) پشتیبانی می کند" #: install.sh:2498 msgid "已切换至" -msgstr "روی دادن" +msgstr "تغییر به" #: install.sh:2504 msgid "Nginx/配置文件不存在 或 当前模式不支持" -msgstr "پرونده nginx/پیکربندی وجود ندارد یا حالت فعلی پشتیبانی نمی شود" +msgstr "nginx/فایل مورد نیاز وجود ندارد یا حالت فعلی پشتیبانی آن را فرا نمی‌گیرد" #: install.sh:2525 install.sh:2595 install.sh:2619 install.sh:2688 #: install.sh:2738 install.sh:2797 install.sh:2849 msgid "请先安装" -msgstr "لطفا ابتدا نصب کنید" +msgstr "لطفاً ابتدا نصب کنید" #: install.sh:2536 msgid "连接端口号" -msgstr "وصل کردن" +msgstr "شماره درگاه اتصال" #: install.sh:2617 msgid "此模式不支持修改" -msgstr "این مدل از اصلاح پشتیبانی نمی کند" +msgstr "این الگو حمایت از ویرایش را ندارد" #: install.sh:2626 msgid "即将显示用户, 一次仅能显示一个" -msgstr "کاربر در حال نمایش است ، فقط یک بار می تواند نمایش داده شود" +msgstr "به زودی کاربر نمایش داده می‌شود، فقط یک کاربر در باره نمایش داده می‌شود" #: install.sh:2628 msgid "请选择显示用户使用的协议" -msgstr "لطفاً پروتکل مورد استفاده برای نمایش کاربر را انتخاب کنید" +msgstr "لطفا پروتکلی را انتخاب کنید که کاربران از آن استفاده می‌کنند" #: install.sh:2638 msgid "请选择要显示的用户编号" -msgstr "لطفاً شماره کاربر مورد نظر خود را انتخاب کنید" +msgstr "لطفا کد کاربری را انتخاب کنید" #: install.sh:2643 install.sh:2654 install.sh:2763 install.sh:2786 msgid "选择错误" -msgstr "یک خطا را انتخاب کنید" +msgstr "انتخاب اشتباه" #: install.sh:2646 msgid "请直接在主菜单选择 [15] 显示主用户" -msgstr "لطفاً کاربر اصلی را مستقیماً در منوی اصلی انتخاب کنید [15]" +msgstr "لطفاً در منوی اصلی، گزینه [15] نمایش کاربر اصلی را انتخاب کنید" #: install.sh:2647 install.sh:2658 install.sh:2768 install.sh:2790 #: install.sh:3679 install.sh:3684 install.sh:3689 install.sh:3734 #: install.sh:3739 install.sh:3744 install.sh:3764 msgid "回到菜单" -msgstr "بازگشت به منو" +msgstr "برو به منو" #: install.sh:2657 install.sh:2789 msgid "请先检测 Xray 是否正确安装" -msgstr "لطفاً بررسی کنید که آیا xray به درستی نصب شده است" +msgstr "لطفاً قبل از هرچیز xray را بررسی کنید که نصب شده است" #: install.sh:2677 msgid "是否继续显示用户" -msgstr "آیا برای ادامه نمایش کاربران" +msgstr "آیا نمایش ادامه یابد برای کاربر" #: install.sh:2686 install.sh:2795 msgid "此模式不支持删除用户" -msgstr "این حالت از حذف کاربران پشتیبانی نمی کند" +msgstr "این الگو حذف کاربر را پشتیبانی نمی کند" #: install.sh:2697 msgid "即将添加用户, 一次仅能添加一个" -msgstr "کاربر در حال اضافه شدن است ، فقط یک بار می تواند اضافه شود" +msgstr "به زودی کاربران اضافه می‌شوند، فقط یک کاربر در باره اول اضافه می‌شود" #: install.sh:2699 msgid "请选择添加用户使用的协议" -msgstr "لطفاً پروتکل مورد استفاده کاربر را انتخاب کنید" +msgstr "لطفا پروتکلی را انتخاب کنید که کاربران از آن استفاده می‌کنند" #: install.sh:2721 msgid "添加用户" -msgstr "کاربران را اضافه کنید" +msgstr "اضافه کردن کاربر" #: install.sh:2726 msgid "是否继续添加用户" -msgstr "آیا به اضافه کردن کاربران ادامه می دهید" +msgstr "آیا می‌خواهید کاربران دیگری اضافه شوند؟" #: install.sh:2736 msgid "此模式不支持添加用户" -msgstr "این مدل از افزودن کاربران پشتیبانی نمی کند" +msgstr "این الگو پشتیبانی از افزودن کاربران را ندارد" #: install.sh:2746 msgid "即将删除用户, 一次仅能删除一个" -msgstr "کاربر در حال حذف است ، فقط یک بار می توان حذف کرد" +msgstr "به زودی کاربر حذف می‌شود، در هر مرحله فقط یک کاربر حذف می‌شود" #: install.sh:2748 msgid "请选择删除用户使用的协议" -msgstr "لطفاً پروتکل مورد استفاده کاربر را انتخاب کنید" +msgstr "لطفا پروتکلی که کاربر استفاده می کند را حذف کنید" #: install.sh:2758 msgid "请选择要删除的用户编号" -msgstr "لطفاً شماره کاربر را حذف کنید" +msgstr "لطفا کد کاربری حذف شده را انتخاب کنید" #: install.sh:2767 msgid "请直接在主菜单修改主用户的" -msgstr "لطفاً کاربر اصلی را مستقیماً در منوی اصلی تغییر دهید" +msgstr "لطفاً در منوی اصلی، کاربر اصلی را ویرایش کنید" #: install.sh:2774 msgid "删除用户" -msgstr "کاربران را حذف کنید" +msgstr "حذف کاربر" #: install.sh:2777 msgid "是否继续删除用户" -msgstr "آیا شما همچنان به حذف کاربر ادامه می دهید" +msgstr "آیا می‌خواهید کاربر حذف شود؟" #: install.sh:2802 install.sh:2806 msgid "文件不存在" -msgstr "پرونده وجود ندارد" +msgstr "فایل موجود نیست" #: install.sh:2813 msgid "已配置 Xray 流量统计" -msgstr "آمار ترافیک xray را محاسبه کرد" +msgstr "ایجاد آمار جریان xray" #: install.sh:2814 msgid "是否需要关闭此功能" -msgstr "آیا شما نیاز به بستن این عملکرد دارید" +msgstr "آیا نیاز است این قابلیت خاموش شود" #: install.sh:2820 msgid "关闭 Xray 流量统计" -msgstr "نزدیک آمار ترافیک xray" +msgstr "بستن آمار جریان xray" #: install.sh:2829 msgid "流量统计需要使用" -msgstr "باید از آمار ترافیک استفاده شود" +msgstr "آمار جریان باید از روشی استفاده کند" #: install.sh:2830 msgid "可能会影响 Xray 性能" -msgstr "این ممکن است بر عملکرد xray تأثیر بگذارد" +msgstr "شاید به ایجاد تأثیری بر عملکرد xray بپردازد" #: install.sh:2841 msgid "设置 Xray 流量统计" -msgstr "آمار ترافیک xray را تنظیم کنید" +msgstr "تنظیم آمار جریان xray" #: install.sh:2871 install.sh:2886 msgid "已卸载" -msgstr "حذف نشده" +msgstr "از حافظه خارجی حذف شد" #: install.sh:2874 msgid "是否卸载" -msgstr "آیا بارگیری می شود" +msgstr "آیا آن را خارج کردن" #: install.sh:2891 msgid "是否删除所有脚本文件" -msgstr "آیا می توان همه پرونده های اسکریپت را حذف کرد" +msgstr "آیا تمام فایل‌های اسکریپت حذف شوند؟" #: install.sh:2898 msgid "已删除所有文件" -msgstr "همه پرونده ها حذف شده اند" +msgstr "حذف شدن تمامی فایل ها" #: install.sh:2899 msgid "ヾ( ̄▽ ̄) 拜拜~" -msgstr "ヾ ( ̄ ▽  ̄) عبادت" +msgstr "چون ( ̄▽ ̄) بای بای ~" #: install.sh:2904 msgid "已保留脚本文件 (包含 SSL 证书等)" -msgstr "یک پرونده اسکریپت حفظ شده است (از جمله گواهی ssl و غیره)" +msgstr "فایل نمایش ذخیره شده (که می‌تواند مجوز ssl و سایر چیزها را شامل شود)" #: install.sh:2908 msgid "是否保留配置文件" -msgstr "آیا برای نگه داشتن پرونده پیکربندی" +msgstr "آیا پروفایل حفظ شود؟" #: install.sh:2925 msgid "已清空证书遗留文件" -msgstr "اسناد باقی مانده از گواهینامه" +msgstr "این کار مانیفست فایل های گواهی خالی شده است" #: install.sh:2955 -msgid "秒后将" -msgstr "بعد از یک ثانیه خواهد بود" +msgid "秒后" +msgstr "ثانیه دیگر" #: install.sh:3118 msgid "检测最新版本失败" -msgstr "آخرین نسخه انجام نشد" +msgstr "شکست در بررسی آخرین نسخه" #: install.sh:3127 msgid "存在新版本, 但版本变化较大, 可能存在不兼容情况, 是否更新" -msgstr "نسخه های جدیدی وجود دارد ، اما نسخه بسیار تغییر می کند و ممکن است ناسازگار باشد" +msgstr "وجود نسخه جدیدی وجود دارد اما تغییرات زیادی با نسخه قبلی دارد ممکن است سازگاری وجود نداشته باشد آیا مایل به به روز رسانی هستید" #: install.sh:3130 msgid "存在新版本, 是否更新" -msgstr "آیا نسخه جدیدی وجود دارد ، چه به روز کنید" +msgstr "نسخه جدیدی موجود است، آیا می خواهید به روز رسانی شود؟" #: install.sh:3134 msgid "检测 脚本 最新版本失败" -msgstr "آخرین نسخه اسکریپت تشخیص شکست خورد" +msgstr "بررسی آخرین نسخه از فایل اسکریپت با شکست مواجه شد" #: install.sh:3135 msgid "脚本 版本差别过大, 跳过更新" -msgstr "نسخه اسکریپت خیلی متفاوت است ، از بروزرسانی پرش کنید" +msgstr "سکریپت نسخه های بسیار متفاوتی دارد، به روز رسانی را اجتیاز می کند" #: install.sh:3145 msgid "更新完成" -msgstr "بروزرسانی" +msgstr "به‌روزرسانی انجام شد" #: install.sh:3146 install.sh:3339 msgid "脚本版本变化较大, 若服务无法正常运行请卸载后重装" -msgstr "نسخه اسکریپت تا حد زیادی تغییر می کند ، اگر سرویس نتواند به طور عادی اجرا شود ، لطفاً پس از حذف نصب مجدد آن را دوباره نصب کنید" +msgstr "نسخه فایل اسکریپت تغییرات زیادی داشته است، در صورتی که خدمات به درستی کار نکنند، لطفاً آنها را حذف و مجدداً نصب کنید" #: install.sh:3152 msgid "当前版本为最新版本" @@ -1248,7 +1240,7 @@ msgstr "نسخه فعلی آخرین نسخه است" #: install.sh:3164 install.sh:3326 install.sh:3337 install.sh:3349 msgid "下载最新脚本" -msgstr "آخرین اسکریپت را بارگیری کنید" +msgstr "دانلود آخرین فایل اسکریپت" #: install.sh:3178 msgid "该选项暂时无法使用" @@ -1256,7 +1248,7 @@ msgstr "این گزینه به طور موقت در دسترس نیست" #: install.sh:3197 install.sh:3633 msgid "此模式推荐用于负载均衡, 一般情况不推荐使用, 是否安装" -msgstr "این مدل برای تعادل بار توصیه می شود" +msgstr "این الگو برای بار متعادل کردن توصیه می‌شود، به طور کلی پیشنهاد استفاده نمی‌شود، آیا نصب شود" #: install.sh:3292 install.sh:3293 install.sh:3302 install.sh:3305 #: install.sh:3309 install.sh:3562 install.sh:3563 install.sh:3564 @@ -1267,39 +1259,39 @@ msgstr "تغییر" #: install.sh:3292 install.sh:3566 msgid "负载均衡配置" -msgstr "پیکربندی تعادل بار" +msgstr "پیکربندی متعادل کننده بار" #: install.sh:3295 msgid "清除日志文件" -msgstr "پرونده ورود به سیستم را پاک کنید" +msgstr "حذف فایل‌های لاگ" #: install.sh:3296 msgid "查看证书状态" -msgstr "مشاهده وضعیت گواهی" +msgstr "مشاهده وضعیت گواهینامه" #: install.sh:3297 msgid "更新证书有效期" -msgstr "دوره اعتبار گواهی تجدید" +msgstr "به روز رسانی مدت اعتبار گواهینامه" #: install.sh:3298 msgid "设置证书自动更新" -msgstr "به روزرسانی خودکار گواهینامه را تنظیم کنید" +msgstr "تنظیم به روز رسانی خودکار گواهنامه" #: install.sh:3299 msgid "设置 Fail2ban 防暴力破解" -msgstr "set fail2ban cracking ضد خشونت" +msgstr "تنظیم fail2ban برای جلوگیری از حملات دسته جمعی" #: install.sh:3300 msgid "显示帮助" -msgstr "راهنما نمایش" +msgstr "نمایش کمک" #: install.sh:3301 install.sh:3312 install.sh:3583 msgid "更新" -msgstr "تمدید کردن" +msgstr "به‌روز رسانی" #: install.sh:3303 msgid "脚本卸载" -msgstr "فیلمنامه حذف نصب" +msgstr "فایل اسکریپت بارگذاری نشده" #: install.sh:3304 msgid "显示安装信息" @@ -1307,19 +1299,19 @@ msgstr "نمایش اطلاعات نصب" #: install.sh:3306 install.sh:3587 msgid "加速" -msgstr "تسریع کردن" +msgstr "سرعت دادن" #: install.sh:3308 msgid "升级脚本" -msgstr "اسکریپت ارتقاء" +msgstr "به روز رسانی اسکریپت" #: install.sh:3310 install.sh:3311 msgid "显示" -msgstr "نشان دادن" +msgstr "نمایش" #: install.sh:3310 msgid "访问信息" -msgstr "دسترسی به اطلاعات" +msgstr "بازدید از اطلاعات" #: install.sh:3311 msgid "错误信息" @@ -1327,15 +1319,15 @@ msgstr "پیام خطا" #: install.sh:3331 msgid "脚本版本变化较大, 可能存在不兼容情况, 是否继续使用" -msgstr "نسخه اسکریپت تا حد زیادی تغییر می کند ، و ممکن است ناسازگاری وجود داشته باشد ، چه باید به استفاده ادامه داد" +msgstr "نسخه فایل اسکریپت تغییر زیادی داشته است، شاید سازگاری میان نسخه ها وجود نداشته باشد، آیا ادامه استفاده از آن مورد نظر شماست؟" #: install.sh:3356 msgid "检测失败" -msgstr "عدم موفقیت" +msgstr "آزمایش شکست خورد" #: install.sh:3360 install.sh:3370 install.sh:3380 msgid "有新版" -msgstr "نسخه جدیدی داشته باشید" +msgstr "نسخه جدیدی وجود دارد" #: install.sh:3363 install.sh:3372 install.sh:3386 msgid "最新版" @@ -1343,47 +1335,47 @@ msgstr "آخرین نسخه" #: install.sh:3378 msgid "版本未知" -msgstr "نسخه ناشناخته" +msgstr "نسخه مشخص نشده است" #: install.sh:3384 msgid "有测试版" -msgstr "نسخه تست" +msgstr "نسخه ای آزمایشی وجود دارد" #: install.sh:3402 install.sh:3409 msgid "运行中" -msgstr "در عمل" +msgstr "در حال اجرا" #: install.sh:3404 install.sh:3427 install.sh:3429 msgid "无需测试" -msgstr "بدون تست" +msgstr "بدون آزمایش" #: install.sh:3406 install.sh:3411 msgid "未运行" -msgstr "دویدن" +msgstr "کار نکرده است" #: install.sh:3421 msgid "无法连通" -msgstr "اتصال امکان پذیر نیست" +msgstr "نمی‌توان ارتباط برقرار کرد" #: install.sh:3423 install.sh:3424 install.sh:3425 msgid "本地正常" -msgstr "موضعی" +msgstr "در محل عادی" #: install.sh:3440 msgid "脚本维护中.. 请稍后再试" -msgstr "تعمیر و نگهداری اسکریپت .. لطفا بعداً آن را امتحان کنید" +msgstr "پیکربندی اسکریپت در حال انجام است.. لطفاً کمی صبر کنید و دوباره تلاش کنید" #: install.sh:3442 msgid "无法检测所需依赖的在线版本, 请稍后再试" -msgstr "نمی توانید نسخه آنلاین مورد نیاز خود را تشخیص دهید ، لطفاً بعداً دوباره امتحان کنید" +msgstr "نمی توان وابسته های مورد نیاز را آنلاین بررسی کرد، لطفا دوباره سعی کنید" #: install.sh:3459 msgid "请输入数字" -msgstr "لطفا شماره را وارد کنید" +msgstr "لطفاً عدد وارد کنید" #: install.sh:3459 msgid "请输入 1 到 5 之间的有效数字" -msgstr "لطفاً شماره معتبر را بین 1 تا 5 وارد کنید" +msgstr "لطفا یک عدد معتبر از ۱ تا ۵ وارد کنید" #: install.sh:3480 msgid "无效的选择" @@ -1391,27 +1383,27 @@ msgstr "انتخاب نامعتبر" #: install.sh:3513 msgid "检测存在到" -msgstr "تشخیص وجود دارد" +msgstr "تشخیص وجود" #: install.sh:3514 msgid "来源于自动清理日志错误的设置" -msgstr "این از تنظیمات خطای ورود به سیستم اتوماتیک ناشی می شود" +msgstr "تنظیمات پاک کردن خودکار خطاهای لگ" #: install.sh:3515 msgid "开始修复" -msgstr "تعمیر" +msgstr "شروع به تعمیر" #: install.sh:3519 msgid "错误的配置文件删除" -msgstr "پرونده پیکربندی اشتباه را حذف کنید" +msgstr "پرونده‌ی خطا حذف شد" #: install.sh:3520 msgid "即将重新设置自动清理日志" -msgstr "ورود به سیستم تمیز کردن اتوماتیک قرار است دوباره راه اندازی شود" +msgstr "به زودی تمایز بین فایل های لاگ انجام می شود" #: install.sh:3528 msgid "安装管理脚本" -msgstr "اسکریپت مدیریت نصب" +msgstr "نصاب اسکریپت مدیریت" #: install.sh:3529 msgid "作者" @@ -1419,7 +1411,7 @@ msgstr "نویسنده" #: install.sh:3533 msgid "当前模式" -msgstr "حالت فعلی" +msgstr "قالب فعلی" #: install.sh:3534 msgid "当前语言" @@ -1427,39 +1419,39 @@ msgstr "زبان فعلی" #: install.sh:3537 msgid "可以使用" -msgstr "در دسترس بودن" +msgstr "می توان از آن استفاده کرد" #: install.sh:3537 msgid "命令管理脚本" -msgstr "اسکریپت مدیریت فرمان" +msgstr "دستور مدیریت فایلهای اسکریپت" #: install.sh:3539 msgid "版本检测" -msgstr "کشف نسخه" +msgstr "ترجمه نسخه بررسی" #: install.sh:3540 install.sh:3548 install.sh:3593 msgid "脚本" -msgstr "فیلمنامه" +msgstr "سکریپت" #: install.sh:3543 msgid "运行状态" -msgstr "وضعیت در حال اجرا" +msgstr "وضعیت اجرا" #: install.sh:3546 msgid "连通性" -msgstr "اتصال" +msgstr "ارتباطی" #: install.sh:3547 msgid "升级向导" -msgstr "راهنمای ارتقاء" +msgstr "راه‌انداز به‌روز رسانی" #: install.sh:3557 msgid "安装向导" -msgstr "جادوگر نصب" +msgstr "راه‌اندازی" #: install.sh:3561 msgid "配置变更" -msgstr "تغییر پیکربندی" +msgstr "تغییرات در تهیه" #: install.sh:3565 install.sh:3662 msgid "版本" @@ -1467,12 +1459,12 @@ msgstr "نسخه" #: install.sh:3568 msgid "用户管理" -msgstr "مدیریت کاربر" +msgstr "مدیریت کاربران" #: install.sh:3569 install.sh:3573 install.sh:3574 install.sh:3575 #: install.sh:3580 install.sh:3582 fail2ban_manager.sh:14 msgid "查看" -msgstr "بررسی کردن" +msgstr "چکیده" #: install.sh:3569 install.sh:3570 install.sh:3571 msgid "用户" @@ -1480,71 +1472,71 @@ msgstr "کاربر" #: install.sh:3571 msgid "删除" -msgstr "حذف کردن" +msgstr "حذف" #: install.sh:3572 msgid "查看信息" -msgstr "اطلاعات را بررسی کنید" +msgstr "چک کردن اطلاعات" #: install.sh:3573 msgid "实时访问日志" -msgstr "ورود به سیستم واقعی" +msgstr "دسترسی زنده به ورودی ها" #: install.sh:3574 msgid "实时错误日志" -msgstr "گزارش خطای زمان واقعی" +msgstr "ログリアルタイムエラー" #: install.sh:3576 msgid "服务相关" -msgstr "دارای خدمات مرتبط" +msgstr "خدمات مربوطه" #: install.sh:3577 install.sh:3578 install.sh:3579 install.sh:3580 msgid "所有服务" -msgstr "کلیه خدمات" +msgstr "تمام خدمات" #: install.sh:3581 msgid "证书相关" -msgstr "گواهینامه مرتبط" +msgstr "ترجمه مرتبط به گواهی ها" #: install.sh:3582 msgid "证书状态" -msgstr "وضعیت گواهینامه" +msgstr "وضعیت گواهی" #: install.sh:3583 msgid "证书有效期" -msgstr "دوره اعتبار گواهینامه ها" +msgstr "مدت اعتبار گواهینامه" #: install.sh:3584 msgid "证书自动更新" -msgstr "به روزرسانی گواهینامه خودکار" +msgstr "مجوز به طور خودکار به روز رسانی شده است" #: install.sh:3585 msgid "其他选项" -msgstr "گزینه های دیگر" +msgstr "سایر گزینه ها" #: install.sh:3586 msgid "自动更新" -msgstr "بروزرسانی خودکار" +msgstr "به روز رسانی خودکار" #: install.sh:3588 msgid "防暴力破解" -msgstr "ترک خوردگی ضد خشونت" +msgstr "جلوگیری از شکستن رمز با استفاده از روش های تجربی" #: install.sh:3589 msgid "流量统计" -msgstr "آمار جریان" +msgstr "آمار جریان کاربران" #: install.sh:3590 msgid "清除" -msgstr "برداشتن" +msgstr "پاک کردن" #: install.sh:3590 msgid "日志文件" -msgstr "پرونده ورود به سیستم" +msgstr "فایل های لاگ" #: install.sh:3591 msgid "测试" -msgstr "تست" +msgstr "آزمون" #: install.sh:3591 msgid "服务器网速" @@ -1552,51 +1544,51 @@ msgstr "سرعت شبکه سرور" #: install.sh:3592 msgid "卸载向导" -msgstr "بارگیری کردن" +msgstr "راه‌اندازی دیسک" #: install.sh:3593 fail2ban_manager.sh:13 fail2ban_manager.sh:171 msgid "卸载" -msgstr "حذف کردن" +msgstr "برداشتن" #: install.sh:3594 msgid "清空" -msgstr "خالی" +msgstr "خالی کردن" #: install.sh:3594 msgid "证书文件" -msgstr "پرونده گواهینامه" +msgstr "فایل گواهی" #: install.sh:3595 fail2ban_manager.sh:15 file_manager.sh:217 msgid "退出" -msgstr "ترک" +msgstr "خروج" #: install.sh:3598 msgid "请输入选项" -msgstr "لطفا گزینه را وارد کنید" +msgstr "لطفاً گزینه را وارد کنید" #: install.sh:3598 msgid "请输入 0 到 34 之间的有效数字" -msgstr "لطفاً شماره معتبر را بین 0 تا 34 وارد کنید" +msgstr "لطفا عددی معتبر بین ۰ تا ۳۴ وارد کنید" #: install.sh:3612 msgid "不建议" -msgstr "هیچ توصیه ای" +msgstr "پیشنهاد نمی‌شود" #: install.sh:3612 msgid "频繁升级 Nginx, 请确认 Nginx 有升级的必要" -msgstr "به روزرسانی مکرر nginx ، لطفاً تأیید کنید که nginx برای به روزرسانی لازم است" +msgstr "به طور مداوم نگینکس را به روز رسانی کنید، لطفا مطمئن شوید نیاز به به روز رسانی نگینکس وجود دارد" #: install.sh:3613 msgid "开始升级" -msgstr "شروع" +msgstr "شروع به به روز رسانی" #: install.sh:3799 msgid "请输入正确的数字" -msgstr "لطفا شماره صحیح را وارد کنید" +msgstr "لطفاً عدد صحیح وارد کنید" #: fail2ban_manager.sh:12 msgid "管理" -msgstr "مدیریت کردن" +msgstr "مدیریت" #: fail2ban_manager.sh:14 msgid "状态" @@ -1604,31 +1596,31 @@ msgstr "حالت" #: fail2ban_manager.sh:27 fail2ban_manager.sh:122 msgid "无效的选择请重试" -msgstr "اگر انتخاب نامعتبر است ، لطفاً آن را امتحان کنید" +msgstr "انتخاب نامعتبر است لطفا مجددا سعی کنید" #: fail2ban_manager.sh:34 msgid "已经安装, 跳过安装步骤" -msgstr "نصب شده است ، مراحل نصب را پرش کنید" +msgstr "نصب شده، قدم نصب را پرش کنید" #: fail2ban_manager.sh:52 fail2ban_manager.sh:92 fail2ban_manager.sh:195 msgid "未安装, 请先安装" -msgstr "نصب نشده ، لطفاً ابتدا آن را نصب کنید" +msgstr "بدون نصب، ابتدا نصب کنید" #: fail2ban_manager.sh:97 msgid "请选择" -msgstr "انتخاب کردن" +msgstr "لطفا انتخاب کنید" #: fail2ban_manager.sh:97 msgid "操作" -msgstr "عمل کردن" +msgstr "عمل" #: fail2ban_manager.sh:101 msgid "添加自定义规则" -msgstr "قوانین سفارشی را اضافه کنید" +msgstr "اضافه کردن قوانین سفارشی" #: fail2ban_manager.sh:135 msgid "请输入新的" -msgstr "لطفا وارد جدید شوید" +msgstr "لطفاً متن جدید وارد کنید" #: fail2ban_manager.sh:135 fail2ban_manager.sh:136 msgid "名称" @@ -1636,63 +1628,59 @@ msgstr "نام" #: fail2ban_manager.sh:137 msgid "请输入日志路径" -msgstr "لطفا مسیر ورود به سیستم را وارد کنید" +msgstr "لطفا مسیر لاگ را وارد کنید" #: fail2ban_manager.sh:138 msgid "请输入最大重试次数" -msgstr "لطفاً حداکثر تعداد بررسی ها را وارد کنید" +msgstr "لطفاً بیشترین تعداد تلاش مجاز را وارد کنید" #: fail2ban_manager.sh:138 msgid "最大重试次数必须在 1 到 99 之间" -msgstr "حداکثر تعداد قیام باید بین 1 تا 99 باشد" +msgstr "بیشترین تعداد تلاش باید بین ۱ و ۹۹ باشد" #: fail2ban_manager.sh:139 msgid "请输入封禁时间" -msgstr "لطفاً زمان ممنوعیت را وارد کنید" +msgstr "لطفا زمان مسدودسازی را وارد کنید" #: fail2ban_manager.sh:139 msgid "秒" -msgstr "دوم" +msgstr "ثانیه" #: fail2ban_manager.sh:139 msgid "封禁时间必须在 1 到 8640000 秒之间" -msgstr "زمان ممنوعیت باید بین 1 تا 86.40000 ثانیه باشد" +msgstr "زمان مسدود کردن باید بین ۱ تا ۸۶۴۰۰۰ ثانیه باشد" #: fail2ban_manager.sh:142 msgid "已存在" -msgstr "وجود داشتن" +msgstr "وجود دارد" #: fail2ban_manager.sh:147 msgid "自定义规则添加成功" -msgstr "قوانین سفارشی با موفقیت اضافه می شوند" +msgstr "رール با موفقیت اضافه شد" #: fail2ban_manager.sh:151 msgid "重启以应用新规则" -msgstr "برای اعمال قوانین جدید مجدداً راه اندازی کنید" +msgstr "ریست کردن برای اعمال قوانین جدید" #: fail2ban_manager.sh:180 msgid "停止成功" -msgstr "موفقیت را متوقف کنید" - -#: fail2ban_manager.sh:189 -msgid "清空屏幕!" -msgstr "صفحه را پاک کنید" +msgstr "این را توقف کنید" #: fail2ban_manager.sh:199 msgid "总体状态" -msgstr "حالت کلی" +msgstr "وضعیت کلی" #: fail2ban_manager.sh:203 msgid "默认启用的 Jail 状态" -msgstr "وضعیت زندان به طور پیش فرض باز شد" +msgstr "وضعیت پیش‌فرض فعال شدهٔ زیال" #: fail2ban_manager.sh:205 fail2ban_manager.sh:208 fail2ban_manager.sh:212 msgid "封锁情况" -msgstr "انسداد" +msgstr "بند کردن وضعیت" #: fail2ban_manager.sh:226 file_manager.sh:242 msgid "新版本可用" -msgstr "نسخه جدید موجود است" +msgstr "نسخه جدید در دسترس است" #: fail2ban_manager.sh:226 file_manager.sh:242 msgid "当前版本" @@ -1704,35 +1692,35 @@ msgstr "لطفا بازدید کنید" #: fail2ban_manager.sh:227 file_manager.sh:243 msgid "查看更新说明" -msgstr "دستورالعمل های بروزرسانی را مشاهده کنید" +msgstr "مشاهده ملاحظات بروز رسانی" #: fail2ban_manager.sh:229 file_manager.sh:245 msgid "是否要下载并安装新版本" -msgstr "خواه بخواهید نسخه جدیدی را بارگیری و نصب کنید" +msgstr "آیا می‌خواهید نسخه جدید را دانلود و نصب کنید؟" #: fail2ban_manager.sh:233 file_manager.sh:249 msgid "正在下载新版本" -msgstr "بارگیری نسخه جدید" +msgstr "در حال دانلود نسخه جدید" #: fail2ban_manager.sh:238 file_manager.sh:254 msgid "下载完成, 正在重新运行脚本" -msgstr "بارگیری کامل است ، و اسکریپت دوباره نامگذاری شده است" +msgstr "دانلود کامل شد، اجرای مجدد فریم‌ورک در حال رخ دادن است" #: fail2ban_manager.sh:246 file_manager.sh:262 msgid "跳过更新" -msgstr "از بروزرسانی پرش کنید" +msgstr "پرش کردن از روزآمد سازی" #: fail2ban_manager.sh:250 file_manager.sh:266 msgid "当前已经是最新版本" -msgstr "این آخرین نسخه است" +msgstr "نسخه فعلی آخرین نسخه است" #: file_manager.sh:8 msgid "用法" -msgstr "استفاده" +msgstr "روش استفاده" #: file_manager.sh:8 msgid "文件扩展名" -msgstr "نام گسترش پرونده" +msgstr "نام توسعه فایل" #: file_manager.sh:8 msgid "目录路径" @@ -1740,50 +1728,50 @@ msgstr "مسیر راهنما" #: file_manager.sh:18 msgid "目录" -msgstr "فهرست مطالب" +msgstr "فهرست" #: file_manager.sh:18 msgid "不存在, 请检查路径" -msgstr "وجود ندارد ، لطفا مسیر را بررسی کنید" +msgstr "نیست، مسیر را بررسی کنید" #: file_manager.sh:31 file_manager.sh:213 msgid "列出所有" -msgstr "لیست همه" +msgstr "فهرست کردن همه" #: file_manager.sh:31 file_manager.sh:40 file_manager.sh:102 #: file_manager.sh:117 file_manager.sh:169 file_manager.sh:186 #: file_manager.sh:213 file_manager.sh:214 file_manager.sh:215 #: file_manager.sh:216 msgid "文件" -msgstr "مدرک" +msgstr "فایل" #: file_manager.sh:40 msgid "没有找到" -msgstr "یافت نشد" +msgstr "نمی‌توانیم یافتنی پیدا کنیم" #: file_manager.sh:64 msgid "文件名" -msgstr "نام پرونده" +msgstr "نام فایل" #: file_manager.sh:70 msgid "序号" -msgstr "شماره سریال" +msgstr "شماره" #: file_manager.sh:93 msgid "请输入网址 (例如 hey.run)" -msgstr "لطفاً url را وارد کنید (به عنوان مثال hey.run)" +msgstr "لطفا آدرس وب را وارد کنید (مثلا hey.run)" #: file_manager.sh:94 msgid "不要包含 http:// 或 https:// 开头" -msgstr "http: // یا https: // را شامل نمی شود" +msgstr "نباشید که حاوی http:// یا https:// در ابتدای آن باشد" #: file_manager.sh:98 msgid "网址不能包含 http:// 或 https:// 开头" -msgstr "url ها نمی توانند شامل http:/ یا https: //" +msgstr "آدرس نمی تواند با http:// یا https:// شروع شود" #: file_manager.sh:102 file_manager.sh:117 msgid "已创建" -msgstr "ایجاد کرده اند" +msgstr "ایجاد شده" #: file_manager.sh:111 msgid "请输入主机" @@ -1791,23 +1779,23 @@ msgstr "لطفا میزبان را وارد کنید" #: file_manager.sh:112 msgid "请输入端口" -msgstr "لطفا وارد بندر شوید" +msgstr "ورودی کریت لطفا port را وارد کنید" #: file_manager.sh:113 msgid "请输入权重" -msgstr "لطفا وارد وزن شوید" +msgstr "وزن را وارد کنید" #: file_manager.sh:135 msgid "追加完成" -msgstr "تکمیل اضافی" +msgstr "افزودن کامل شد" #: file_manager.sh:159 msgid "请输入要编辑的文件编号" -msgstr "لطفاً شماره پرونده را برای ویرایش وارد کنید" +msgstr "شماره فایل مورد ویرایش را وارد کنید" #: file_manager.sh:165 msgid "未安装, 正在尝试安装" -msgstr "نصب نشده ، من سعی می کنم نصب کنم" +msgstr "ناصب شده، تلاش برای نصب در حال انجام است" #: file_manager.sh:169 msgid "已编辑" @@ -1815,11 +1803,11 @@ msgstr "ویرایش شده" #: file_manager.sh:181 msgid "请输入要删除的文件编号" -msgstr "لطفاً شماره پرونده را حذف کنید تا حذف شود" +msgstr "شماره فایلی را وارد کنید که می‌خواهید حذف کنید" #: file_manager.sh:202 msgid "不支持的文件扩展名" -msgstr "نام فرمت فایل غیرقابل دستیابی" +msgstr "پسوند فایل پشتیبانی نشده است" #: file_manager.sh:212 msgid "主菜单" @@ -1827,15 +1815,15 @@ msgstr "منوی اصلی" #: file_manager.sh:214 msgid "创建一个新的" -msgstr "جدید ایجاد کنید" +msgstr "ساخت یکی جدید" #: file_manager.sh:215 msgid "编辑一个已存在的" -msgstr "یک موجود موجود را ویرایش کنید" +msgstr "ویرایش یک موجود" #: file_manager.sh:216 msgid "删除一个已存在的" -msgstr "یک موجود موجود را حذف کنید" +msgstr "حذف یک موجود" #: file_manager.sh:219 msgid "请选择一个选项" @@ -1843,16 +1831,16 @@ msgstr "لطفا یک گزینه را انتخاب کنید" #: file_manager.sh:229 msgid "无效选项, 请重试" -msgstr "گزینه های مؤثر ، لطفا دوباره امتحان کنید" +msgstr "گزینه نامعتبر، لطفا دوباره تلاش کنید" #: file_manager.sh:275 msgid "重启成功" -msgstr "موفقیت را مجدداً راه اندازی کنید" +msgstr "بازکردن مجدد موفقیت آمیز بود" #: file_manager.sh:278 msgid "重启失败" -msgstr "عدم راه اندازی مجدد" +msgstr "بازگشایی شکست خورد" #: file_manager.sh:278 msgid "请检查配置文件是否有误" -msgstr "لطفاً بررسی کنید که آیا پرونده پیکربندی اشتباه است" +msgstr "لطفاً فایل پیکربندی را بررسی کنید" diff --git a/po/ko.po b/po/ko.po index 8b28f48..329e473 100644 --- a/po/ko.po +++ b/po/ko.po @@ -8,8 +8,8 @@ msgstr "" "Project-Id-Version: xray_install 1.0\n" "Report-Msgid-Bugs-To: https://github.com/hello-yunshu/Xray_bash_onekey/" "issues\n" -"POT-Creation-Date: 2025-01-29 17:17+0000\n" -"PO-Revision-Date: 2025-01-29 17:17+0000\n" +"POT-Creation-Date: 2025-02-06 18:01+0000\n" +"PO-Revision-Date: 2025-02-06 18:01+0000\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" "Language: ko\n" @@ -20,60 +20,60 @@ msgstr "" #: install.sh:35 msgid "提醒" -msgstr "상기시키다" +msgstr "알림" #: install.sh:37 msgid "错误" -msgstr "실수" +msgstr "오류" #: install.sh:38 msgid "警告" -msgstr "경고하다" +msgstr "경고" #: install.sh:41 install.sh:1338 install.sh:3368 install.sh:3390 #: install.sh:3393 install.sh:3394 install.sh:3432 msgid "未安装" -msgstr "설치되지 않았습니다" +msgstr "설치되지 않음" #: install.sh:100 msgid "日志文件归档失败" -msgstr "로그 파일 아카이브에 실패했습니다" +msgstr "로그 파일 아카이브에 실패하였습니다" #: install.sh:105 msgid "清空日志文件失败" -msgstr "로그 파일이 실패했습니다" +msgstr "로그 파일을 비우는 데 실패하였습니다" #: install.sh:109 msgid "日志文件已轮转并归档为" -msgstr "로그 파일이 회전 및 보관되었습니다" +msgstr "로그 파일이 회전되어 아카이브로 저장되었습니다" #: install.sh:138 install.sh:142 install.sh:146 install.sh:156 msgid "当前系统为" -msgstr "현재 시스템은입니다" +msgstr "현재 시스템은" #: install.sh:156 msgid "不在支持的系统列表内, 安装中断" -msgstr "지원되지 않는 시스템 목록에 인터럽트 설치" +msgstr "지원되는 시스템 목록에 없음, 설치 중단" #: install.sh:163 msgid "当前用户是 root 用户, 进入安装流程" -msgstr "현재 사용자는 루트 사용자이며 설치 프로세스를 입력하십시오" +msgstr "현재 사용자가 root 사용자입니다, 설치 프로세스로 이동합니다" #: install.sh:165 msgid "当前用户不是 root 用户, 请切换到 root 用户后重新执行脚本" -msgstr "현재 사용자는 루트 사용자가 아닙니다. 루트 사용자로 전환 한 후 스크립트를 다시 실행하십시오" +msgstr "현재 사용자가 root 사용자가 아닙니다. 루트 사용자로 전환한 후 스크립트를 다시 실행하세요" #: install.sh:191 msgid "无法获取远程语言文件信息" -msgstr "원격 언어 파일 정보를 얻을 수 없습니다" +msgstr "원격 언어 파일 정보를 가져올 수 없습니다" #: install.sh:209 msgid "正在更新语言文件" -msgstr "언어 파일 업데이트" +msgstr "언어 파일이 업데이트 중입니다" #: install.sh:212 install.sh:291 msgid "语言文件更新失败" -msgstr "언어 파일 업데이트가 실패했습니다" +msgstr "언어 파일 업데이트에 실패하였습니다" #: install.sh:217 msgid "语言文件无效" @@ -81,23 +81,23 @@ msgstr "언어 파일이 유효하지 않습니다" #: install.sh:223 msgid "版本文件更新失败" -msgstr "에디션 파일 업데이트에 실패했습니다" +msgstr "버전 파일 업데이트에 실패하였습니다" #: install.sh:230 msgid "语言文件更新完成" -msgstr "언어 파일 업데이트가 완료되었습니다" +msgstr "언어 파일 업데이트 완료" #: install.sh:235 msgid "正在安装" -msgstr "설치하다" +msgstr "이 설치 중입니다" #: install.sh:238 msgid "安装失败" -msgstr "설치에 실패했습니다" +msgstr "설치 실패" #: install.sh:238 install.sh:261 install.sh:282 install.sh:291 msgid "将使用默认语言" -msgstr "기본 언어를 사용합니다" +msgstr "기본 언어를 사용할 것입니다" #: install.sh:261 msgid "未找到" @@ -105,83 +105,83 @@ msgstr "찾을 수 없습니다" #: install.sh:282 msgid "不支持的语言" -msgstr "의심 할 여지가없는 언어" +msgstr "지원되지 않는 언어" #: install.sh:296 msgid "发现语言文件更新" -msgstr "언어 파일 업데이트를 발견하십시오" +msgstr "언어 파일이 업데이트된 것을 발견하였습니다" #: install.sh:309 install.sh:1521 msgid "完成" -msgstr "마치다" +msgstr "완성" #: install.sh:312 msgid "失败" -msgstr "실패하다" +msgstr "실패" #: install.sh:319 msgid "在线版本检测失败, 请稍后再试" -msgstr "테스트의 온라인 버전이 실패했습니다. 나중에 다시 시도하십시오" +msgstr "온라인 버전 검사 실패했습니다 다시 시도해주세요" #: install.sh:341 install.sh:349 install.sh:1105 install.sh:3289 #: install.sh:3290 install.sh:3291 install.sh:3558 install.sh:3559 #: install.sh:3560 fail2ban_manager.sh:11 fail2ban_manager.sh:38 msgid "安装" -msgstr "설치하다" +msgstr "설치" #: install.sh:343 install.sh:351 install.sh:1111 install.sh:3378 msgid "已安装" -msgstr "설치" +msgstr "이미 설치되어 있습니다" #: install.sh:368 install.sh:372 msgid "自启动配置" -msgstr "자체 구성 구성" +msgstr "자체 시작 설정" #: install.sh:381 msgid "链接库安装" -msgstr "링크 라이브러리 설치" +msgstr "라이브러리 링크 설치" #: install.sh:386 msgid "值为空或超出范围, 请重新输入" -msgstr "값은 비어 있거나 범위를 넘어서서 다시 참가하십시오" +msgstr "값이 비어 있거나 범위를 초과했습니다 재입력해주세요" #: install.sh:395 msgid "值为空, 请重新输入" -msgstr "값은 비어 있습니다. 다시 참가하십시오" +msgstr "값이 비어 있습니다, 다시 입력해주세요" #: install.sh:437 msgid "确定 连接端口" -msgstr "연결 포트를 결정하십시오" +msgstr "확정 연결 포트" #: install.sh:438 install.sh:441 install.sh:2532 install.sh:2538 msgid "请输入连接端口" -msgstr "연결 포트를 입력하십시오" +msgstr "연결 포트를 입력하세요" #: install.sh:438 install.sh:441 install.sh:2532 install.sh:2538 #: file_manager.sh:113 msgid "默认值" -msgstr "기본값" +msgstr "기본 값" #: install.sh:438 install.sh:441 install.sh:528 install.sh:550 install.sh:2532 #: install.sh:2538 install.sh:2542 install.sh:2547 install.sh:2552 #: install.sh:2553 install.sh:2568 install.sh:2573 install.sh:2578 #: install.sh:2579 msgid "请输入 0-65535 之间的值" -msgstr "0-65535 사이의 값을 입력하십시오" +msgstr "0부터 65535 사이의 값을 입력하세요" #: install.sh:440 msgid "端口 9443 不允许使用, 请重新输入" -msgstr "포트 9443은 사용할 수 없습니다. 다시 참가하십시오" +msgstr "포트 9443을 사용할 수 없으므로 다시 입력해주세요" #: install.sh:449 msgid "请选择安装协议" -msgstr "설치 프로토콜을 선택하십시오" +msgstr "설치 계약서를 선택하세요" #: install.sh:450 install.sh:1410 install.sh:1443 install.sh:1490 #: install.sh:2629 install.sh:2700 install.sh:2749 fail2ban_manager.sh:138 #: fail2ban_manager.sh:139 msgid "默认" -msgstr "기본" +msgstr "기본 설정으로" #: install.sh:454 install.sh:817 install.sh:860 install.sh:1414 install.sh:1427 #: install.sh:1445 install.sh:1494 install.sh:1504 install.sh:2492 @@ -191,40 +191,40 @@ msgstr "기본" #: install.sh:2761 fail2ban_manager.sh:16 fail2ban_manager.sh:103 #: fail2ban_manager.sh:136 file_manager.sh:95 msgid "请输入" -msgstr "입력하십시오" +msgstr "한글 입력하세요" #: install.sh:454 install.sh:1414 install.sh:1445 install.sh:1494 #: install.sh:2492 install.sh:2632 install.sh:2703 install.sh:2752 msgid "请输入有效的数字" -msgstr "유효한 번호를 입력하십시오" +msgstr "유효한 숫자를 입력하세요" #: install.sh:475 msgid "是否添加简单 ws/gRPC 协议 用于负载均衡" -msgstr "로드 밸런싱을위한 간단한 ws/grpc 프로토콜 추가 여부" +msgstr "간단한 ws/grpc 프로토콜을 로드 밸런싱을 위해 추가할 것인가" #: install.sh:476 msgid "如不清楚具体用途, 请勿选择" -msgstr "특정 용도를 모르는 경우 선택하지 마십시오" +msgstr "특정 목적을 모르는 경우 선택하지 마십시오" #: install.sh:495 msgid "已跳过添加简单 ws/gRPC 协议" -msgstr "간단한 ws/grpc 프로토콜을 추가하려면 건너 뜁니다" +msgstr "간단한 ws/grpc 프로토콜을 추가하지 않았습니다" #: install.sh:524 install.sh:546 install.sh:627 install.sh:660 install.sh:692 msgid "是否需要自定义" -msgstr "관습이 필요합니까" +msgstr "whether you need a custom" #: install.sh:528 install.sh:550 install.sh:631 install.sh:664 msgid "请输入自定义" -msgstr "custom을 입력하십시오" +msgstr "사용자 정의 입력해주세요" #: install.sh:528 install.sh:550 msgid "请勿与其他端口相同" -msgstr "다른 포트와 동일하지 마십시오" +msgstr "기타 포트와 같지 않게 설정해주세요" #: install.sh:567 file_manager.sh:121 msgid "是否需要设置防火墙" -msgstr "방화벽을 설정해야합니까" +msgstr "방화벽를 설정해야 하나요" #: install.sh:607 install.sh:611 file_manager.sh:135 file_manager.sh:139 #: file_manager.sh:143 @@ -233,58 +233,58 @@ msgstr "방화벽" #: install.sh:607 install.sh:611 file_manager.sh:139 file_manager.sh:143 msgid "重启完成" -msgstr "다시 시작하십시오" +msgstr "리부팅 완료되었습니다" #: install.sh:613 msgid "开放防火墙相关端口" -msgstr "방화벽 관련 포트를 개방합니다" +msgstr "방화벽 관련 포트 열기" #: install.sh:614 msgid "若修改配置, 请注意关闭防火墙相关端口" -msgstr "구성을 수정하면 방화벽 관련 포트를 끄는 데주의를 기울이십시오" +msgstr "설정을 수정할 때 방화벽 관련 포트를 닫는 것에 주의하세요" #: install.sh:615 install.sh:3293 install.sh:3306 install.sh:3307 #: install.sh:3567 install.sh:3586 fail2ban_manager.sh:76 msgid "配置" -msgstr "구성" +msgstr "설정" #: install.sh:618 file_manager.sh:147 msgid "跳过防火墙设置" -msgstr "방화벽 설정을 건너 뜁니다" +msgstr "도약 방화벽 설정تخطerb" #: install.sh:627 install.sh:631 install.sh:632 install.sh:636 install.sh:644 #: install.sh:660 install.sh:664 install.sh:665 install.sh:669 install.sh:677 #: install.sh:1044 msgid "伪装路径" -msgstr "위장" +msgstr "가짜 경로" #: install.sh:631 install.sh:664 msgid "不需要" -msgstr "불필요한" +msgstr "필요하지 않습니다" #: install.sh:644 install.sh:677 install.sh:811 msgid "是否需要修改" -msgstr "수정해야합니까" +msgstr "whether you need to modify" #: install.sh:692 install.sh:702 install.sh:2662 msgid "用户名" -msgstr "사용자 이름" +msgstr "유저 이름" #: install.sh:696 msgid "请输入正确的 email" -msgstr "올바른 이메일을 입력하십시오" +msgstr "이메일을 올바르게 입력하세요" #: install.sh:709 msgid "是否需要自定义字符串映射" -msgstr "사용자 정의 문자열 매핑이 필요합니까" +msgstr "사용자 정의 문자 매핑이 필요합니까" #: install.sh:713 msgid "请输入自定义字符串" -msgstr "사용자 정의 문자열을 입력하십시오" +msgstr "사용자 정의 문자열을 입력하세요" #: install.sh:713 msgid "最多30字符" -msgstr "최대 30 자" +msgstr "최대 30자까지" #: install.sh:715 msgid "自定义字符串" @@ -297,15 +297,15 @@ msgstr "매핑 문자열" #: install.sh:733 msgid "检测到 target 域名已配置, 是否保留" -msgstr "대상 도메인 이름이 유지되었는지 여부에 관계없이 구성되었습니다" +msgstr "target 도메인이 구성되어 감지되었습니다. 유지하시겠습니까" #: install.sh:753 msgid "请输入一个域名" -msgstr "도메인 이름을 입력하십시오" +msgstr "도메인 이름을 입력하세요" #: install.sh:754 msgid "域名要求支持 TLSv1.3、X25519 与 H2 以及域名非跳转用" -msgstr "도메인 이름에는 tlsv1.3, x25519 및 h2에 대한 지원이 필요하며 도메인 이름이 비 점프" +msgstr "도메인 이름은 tlsv1.3, x25519 및 h2를 지원해야 하며 도메인 리다이렉트가 아닌 것을 요구합니다" #: install.sh:755 msgid "确认域名符合要求后请输入" @@ -313,23 +313,23 @@ msgstr "도메인 이름이 요구 사항을 충족하는 것을 확인한 후 #: install.sh:756 msgid "正在检测域名请等待" -msgstr "도메인 이름을 기다리십시오" +msgstr "도메인 검사를 중>please wait" #: install.sh:763 install.sh:768 install.sh:773 msgid "该域名不支持" -msgstr "도메인 이름은 지원하지 않습니다" +msgstr "이 도메인 이름은 지원되지 않습니다" #: install.sh:778 msgid "该域名发生了跳转" -msgstr "도메인 이름이 점프되었습니다" +msgstr "해당 도메인 이름이 리다이렉트되었습니다" #: install.sh:785 msgid "该域名可能不满足所有要求" -msgstr "이 도메인 이름은 모든 요구 사항을 충족하지 않을 수 있습니다" +msgstr "해당 도메인 이름이 모든 요구 사항을 충족하지 않을 수 있습니다" #: install.sh:786 msgid "是否仍要设置此域名" -msgstr "이 도메인 이름을 설정해야합니까" +msgstr "여전히 이 도메인을 설정하시겠습니까" #: install.sh:798 install.sh:803 install.sh:1412 msgid "域名" @@ -337,15 +337,15 @@ msgstr "도메인 이름" #: install.sh:798 msgid "满足所有要求" -msgstr "모든 요구 사항을 충족합니다" +msgstr "모든 요구 사항을 충족" #: install.sh:811 msgid "域名的" -msgstr "도메인 이름" +msgstr "도메인 이름의" #: install.sh:812 msgid "默认为" -msgstr "기본" +msgstr "기본값은" #: install.sh:812 msgid "域名本身" @@ -353,11 +353,11 @@ msgstr "도메인 이름 자체" #: install.sh:813 install.sh:851 install.sh:894 msgid "如不清楚具体用途, 请勿继续" -msgstr "특정 용도를 모르는 경우 계속하지 마십시오" +msgstr "불명확한 용도의 경우 계속 진행하지 마십시오" #: install.sh:850 install.sh:893 msgid "是否变更" -msgstr "변경 여부" +msgstr "변경하시겠습니까" #: install.sh:850 msgid "负载均衡" @@ -365,47 +365,47 @@ msgstr "로드 밸런싱" #: install.sh:855 msgid "请选择协议为 ws 或 gRPC" -msgstr "ws 또는 grpc의 프로토콜을 선택하십시오" +msgstr "프로토콜을 ws 또는 grpc로 선택하세요" #: install.sh:858 fail2ban_manager.sh:102 msgid "返回" -msgstr "반품" +msgstr "돌아가기" #: install.sh:860 msgid "请重新输入正确的数字" -msgstr "올바른 번호를 다시 입력하십시오" +msgstr "잘못된 숫자를 다시 입력해주세요" #: install.sh:865 install.sh:902 msgid "本地文件 file_manager.sh 不存在, 正在下载" -msgstr "로컬 파일 file_manager.sh가 존재하지 않으며 다운로드합니다" +msgstr "지역 파일 file_manager.sh이 존재하지 않으므로 다운로드 중입니다" #: install.sh:868 install.sh:905 install.sh:2039 fail2ban_manager.sh:242 #: file_manager.sh:258 msgid "下载失败, 请手动下载并安装新版本" -msgstr "다운로드가 실패했습니다. 다운로드하여 새 버전을 수동으로 설치하십시오" +msgstr "다운로드에 실패했습니다, 수동으로 새 버전을 다운로드하고 설치하세요" #: install.sh:878 msgid "无效选项 请重试" -msgstr "무효 옵션을 사용해보십시오" +msgstr "잘못된 옵션입니다 재시도해주세요" #: install.sh:886 install.sh:915 install.sh:1975 install.sh:2013 #: install.sh:2029 msgid "当前模式不支持此操作" -msgstr "현재 모드는이 작업을 지원하지 않습니다" +msgstr "현재 모드에서는 이 작업을 지원하지 않습니다" #: install.sh:895 msgid "配置用途可以参考文章" -msgstr "구성은 기사를 참조 할 수 있습니다" +msgstr "사용 용도는 문서를 참조할 수 있습니다" #: install.sh:895 msgid "敬请期待" -msgstr "기대 해주세요" +msgstr "기대해주세요" #: install.sh:937 install.sh:941 install.sh:945 install.sh:957 install.sh:962 #: install.sh:968 install.sh:988 install.sh:994 install.sh:1044 install.sh:1063 #: install.sh:3307 install.sh:3530 msgid "修改" -msgstr "개정하다" +msgstr "수정" #: install.sh:996 msgid "端口号" @@ -413,7 +413,7 @@ msgstr "포트 번호" #: install.sh:1046 msgid "不支持" -msgstr "지원하지 않습니다" +msgstr "비지원" #: install.sh:1053 msgid "用户名修改" @@ -421,193 +421,185 @@ msgstr "사용자 이름 수정" #: install.sh:1056 install.sh:1066 msgid "请先删除多余的用户" -msgstr "초과 사용자를 먼저 삭제하십시오" +msgstr "먼저 불필요한 사용자를 삭제해주세요" #: install.sh:1074 install.sh:1082 install.sh:1089 install.sh:1763 #: install.sh:1833 install.sh:1863 install.sh:1872 install.sh:1895 msgid "配置修改" -msgstr "구성 수정" +msgstr "구성 변경" #: install.sh:1094 -msgid "检测到 Xray 的权限控制, 启动擦屁股程序" -msgstr "xray의 권한 제어가 감지되고 긁힘 프로그램이 시작됩니다" +msgid "检测到 Xray 的权限控制, 启动修改程序" +msgstr "xray의 권한 제어가 감지되었습니다, 수정 프로그램을 시작합니다" #: install.sh:1099 -msgid "擦屁股完成" -msgstr "엉덩이를 끝내십시오" +msgid "修改完成" +msgstr "수정 완료" #: install.sh:1116 msgid "若更新无效, 建议直接卸载再安装" -msgstr "업데이트가 유효하지 않으면 직접 제거하고 설치하는 것이 좋습니다" +msgstr "만약 업데이트가 효과적이지 않다면, 다시 설치하기 위해 직접 언install하고 재install을 권장합니다. (note: in korean, uninstall and install are typically written in english as '언install' and '재install', respectively, due to the common usage of these terms in korean tech language.)" #: install.sh:1117 msgid "部分新功能需要重新安装才可生效" -msgstr "발효되기 전에 일부 새로운 기능을 다시 설치해야합니다" +msgstr "일부 새로운 기능은 재설치해야만 작동합니다" #: install.sh:1123 msgid "检测到存在最新版" -msgstr "최신 버전이 감지됩니다" +msgstr "검출됨 최신 버전이 존재합니다" #: install.sh:1124 msgid "脚本可能未兼容此版本" -msgstr "스크립트는이 버전과 호환되지 않을 수 있습니다" +msgstr "시나리오가 이 버전과 호환되지 않을 수 있습니다" #: install.sh:1125 msgid "是否更新" -msgstr "업데이트 여부" +msgstr "업데이트할까요" -#: install.sh:1132 -msgid "即将升级" -msgstr "개선하다" - -#: install.sh:1136 install.sh:1143 install.sh:1150 install.sh:1333 -#: install.sh:3548 install.sh:3549 install.sh:3550 +#: install.sh:1132 install.sh:1136 install.sh:1143 install.sh:1150 +#: install.sh:1333 install.sh:3548 install.sh:3549 install.sh:3550 msgid "升级" -msgstr "치받이" +msgstr "업그레이드" -#: install.sh:1139 -msgid "即将升级/重装" -msgstr "개선/재설치" - -#: install.sh:1147 +#: install.sh:1139 install.sh:1147 msgid "升级/重装" msgstr "업그레이드/재설치" #: install.sh:1163 msgid "Reality 协议有流量偷跑的风险" -msgstr "현실 프로토콜은 트래픽을 훔칠 위험이 있습니다" +msgstr "reality 프로토콜에는 데이터 누수 위험이 있습니다" #: install.sh:1164 msgid "该风险在 target 网址被 cdn 加速时存在" -msgstr "이 위험은 대상 웹 사이트가 cdn에 의해 ​​가속화 될 때 존재합니다" +msgstr "해당 위험은 target url이 cdn로 가속화될 때 존재합니다" #: install.sh:1165 msgid "是否额外安装 nginx 前置保护(推荐)" -msgstr "nginx 사전 보호를 설치하는지 (권장)" +msgstr "추가로 nginx 프론트 엔드 보호를 설치하시겠습니까(권장)" #: install.sh:1169 msgid "已跳过安装" -msgstr "설치를 건너 뛰십시오" +msgstr "installation이 생략되었습니다" #: install.sh:1199 msgid "已存在, 跳过编译安装过程" -msgstr "이미 컴파일 및 설치 프로세스를 건너 뛰십시오" +msgstr "이미 존재하므로, 컴파일 설치 과정을 건너뜁" #: install.sh:1202 msgid "检测到旧版本安装的" -msgstr "이전 버전이 설치되었습니다" +msgstr "검출된 설치는 구 버전입니다" #: install.sh:1203 msgid "请先做好备份" -msgstr "먼저 백업을하십시오" +msgstr "먼저 백업을 해두세요" #: install.sh:1204 msgid "是否需要删除 (请删除)" -msgstr "삭제해야합니까 (삭제하십시오)" +msgstr "삭제 필요함 (삭제)" #: install.sh:1208 msgid "已跳过删除" -msgstr "삭제를 건너 뛰십시오" +msgstr "이 삭제를 건너뛰었습니다" #: install.sh:1215 msgid "日志目录已更改, 日志清除需要重新设置" -msgstr "로그 디렉토리가 변경되었고 로그 허가를 재설정해야합니다" +msgstr "로그 디렉터리가 변경되었습니다, 로그 클리어가 다시 설정되어야 합니다" #: install.sh:1221 msgid "检测到其他套件安装的 Nginx, 继续安装会造成冲突, 请处理后安装" -msgstr "다른 키트에 설치된 nginx는 계속 설치하면 충돌이 발생합니다. 처리 후 설치하십시오" +msgstr "다른 패키지가 설치한 nginx를 감지했습니다. 계속 설치하면 충돌이 발생할 수 있습니다. 설치를 진행하기 전에 처리해주세요" #: install.sh:1235 msgid "即将下载已编译的" -msgstr "컴파일이 다운로드 될 예정입니다" +msgstr "즉시 다운로드할 컴파일된 것을" #: install.sh:1280 install.sh:1281 install.sh:1288 install.sh:1289 msgid "配置文件不完整, 退出升级" -msgstr "구성 파일은 불완전하고 종료 및 업그레이드됩니다" +msgstr "구성 파일이 불완전하여 업그레이드를 종료합니다" #: install.sh:1293 install.sh:1294 msgid "当前安装模式不需要" -msgstr "현재 설치 모드가 필요하지 않습니다" +msgstr "현재 설치 모드는 필요하지 않습니다" #: install.sh:1298 install.sh:1299 msgid "配置文件不存在, 退出升级" -msgstr "구성 파일이 존재하지 않고 종료 및 업그레이드됩니다" +msgstr "구성 파일이 존재하지 않습니다, 업그레이드를 종료합니다" #: install.sh:1303 msgid "删除旧版" -msgstr "이전 버전을 삭제하십시오" +msgstr "구형 삭제" #: install.sh:1307 msgid "是否保留原 Nginx 配置文件" -msgstr "원래 nginx 구성 파일을 유지 해야하는지 여부" +msgstr "기존 nginx 구성 파일을 유지할 것인지" #: install.sh:1315 install.sh:1584 msgid "原配置文件已删除" -msgstr "원래 구성 파일이 삭제되었습니다" +msgstr "기존 구성 파일이 삭제되었습니다" #: install.sh:1319 msgid "原配置文件已保留" -msgstr "원래 구성 파일이 유지되었습니다" +msgstr "기존 구성 파일이 보관되었습니다" #: install.sh:1335 msgid "已为最新版" -msgstr "최신 버전이었습니다" +msgstr "최신 버전으로 업데이트 되었습니다" #: install.sh:1350 msgid "设置后台定时自动更新程序 (包含: 脚本/Xray/Nginx)" -msgstr "배경을 설정할 때 자동 업데이트 프로그램 (포함 : script/xray/nginx 포함) 설정" +msgstr "백그라운드에서 정기적으로 자동으로 업데이트 프로그램 설정 (포함: 스크립트/xray/nginx)" #: install.sh:1351 msgid "可能自动更新后有兼容问题, 谨慎开启" -msgstr "자동 업데이트 후 호환되는 문제가있을 수 있으며 조심스럽게 열 수 있습니다" +msgstr "자동 업데이트 후 호환성 문제가 발생할 수 있으니 주의해서 사용하세요" #: install.sh:1352 msgid "是否开启" -msgstr "열 여부" +msgstr "시작할까요" #: install.sh:1358 install.sh:3294 msgid "设置自动更新" -msgstr "자동 업데이트를 설정합니다" +msgstr "자동 업데이트 설정" #: install.sh:1363 msgid "已设置自动更新" -msgstr "자동 업데이트를 설정합니다" +msgstr "자동 업데이트가 설정되었습니다" #: install.sh:1364 msgid "是否关闭" -msgstr "닫을지 여부" +msgstr "닫기" #: install.sh:1370 msgid "删除自动更新" -msgstr "자동 업데이트를 삭제합니다" +msgstr "자동 업데이트 삭제" #: install.sh:1379 msgid "安装 SSL 证书生成脚本依赖" -msgstr "ssl 인증서 생성 스크립트 종속성을 설치하십시오" +msgstr "ssl 인증서 생성 스크립트 설치가 필요합니다" #: install.sh:1381 msgid "安装 SSL 证书生成脚本" -msgstr "스크립트를 생성하려면 ssl 인증서를 설치하십시오" +msgstr "ssl 인증서 생성 스크립트를 설치합니다" #: install.sh:1387 msgid "检测到原域名配置存在, 是否跳过域名设置" -msgstr "원래 도메인 이름 구성의 존재가 도메인 이름 설정을 건너 뛸지 여부" +msgstr "검출된 기존 도메인 구성이 있음, 도메인 설정을 건너뛰겠습니까" #: install.sh:1401 msgid "已跳过域名设置" -msgstr "도메인 이름 설정을 건너 뜁니다" +msgstr "도메인 설정을 건너뛰었습니다" #: install.sh:1407 msgid "确定域名信息" -msgstr "도메인 정보를 결정하십시오" +msgstr "도메인 정보 확인" #: install.sh:1408 msgid "请输入你的域名信息" -msgstr "도메인 이름 정보를 입력하십시오" +msgstr "도메인 정보를 입력하세요" #: install.sh:1409 msgid "请选择公网IP(IPv4/IPv6)或手动输入域名" -msgstr "공개 네트워크 ip (ipv4/ipv6)를 선택하거나 도메인 이름을 수동으로 입력하십시오" +msgstr "공인 ip 주소(ipv4/ipv6)를 선택하거나 도메인을 수동으로 입력하세요" #: install.sh:1411 install.sh:1491 msgid "不推荐" @@ -615,127 +607,127 @@ msgstr "권장하지 않습니다" #: install.sh:1415 install.sh:1496 msgid "正在获取公网IP信息, 请耐心等待" -msgstr "공개 네트워크 ip 정보를 얻으십시오. 참을성있게 기다리십시오" +msgstr "공개 ip 정보를 얻으려면 참을성있게 기다리십시오" #: install.sh:1425 msgid "此选项用于服务器商仅提供域名访问服务器" -msgstr "이 옵션은 서버 공급 업체가 도메인 이름 액세스 서버 만 제공하는 데 사용됩니다" +msgstr "이 옵션은 도메인을 통해 서버에 접근할 수 있는 경우에 사용됩니다" #: install.sh:1426 msgid "注意服务器商域名添加 CNAME 记录" -msgstr "서버 비즈니스 도메인 이름이 cname 레코드가 추가됩니다" +msgstr "서버 제공자 도메인에 cname 레코드 추가에 유의하세요" #: install.sh:1434 msgid "域名DNS解析IP" -msgstr "도메인 dns 분석 ip" +msgstr "도메인 dns 해석 ip" #: install.sh:1435 install.sh:1510 msgid "公网IP/域名" -msgstr "공개 네트워크 ip/도메인 이름" +msgstr "공인 ip/도메인" #: install.sh:1437 msgid "域名DNS解析IP与公网IP匹配" -msgstr "도메인 dns 분석 ip 및 공개 네트워크 ip 일치" +msgstr "도메인 dns 해석 ip가 공용 ip와 일치하는지 확인" #: install.sh:1439 msgid "请确保域名添加了正确的 A/AAAA 记录, 否则将无法正常使用 Xray" -msgstr "도메인 이름이 올바른 a/aaaa 레코드를 추가하는지 확인하십시오. 그렇지 않으면 xray를 정상적으로 사용할 수 없습니다" +msgstr "도메인이 올바른 a/aaaa 레코드를 추가했는지 확인하세요. 그렇지 않으면 xray를 정상적으로 사용할 수 없습니다" #: install.sh:1440 msgid "域名DNS解析IP与公网IP不匹配, 请选择" -msgstr "도메인 dns parsing ip는 공개 네트워크 ip와 일치하지 않습니다" +msgstr "도메인 dns 해석 ip와 공용 ip가 일치하지 않습니다. 선택해주세요" #: install.sh:1441 install.sh:1448 msgid "继续安装" -msgstr "계속 설치하십시오" +msgstr "계속 설치" #: install.sh:1442 msgid "重新输入" -msgstr "재 입자" +msgstr "새로 입력하세요" #: install.sh:1443 msgid "终止安装" -msgstr "설치를 종료하십시오" +msgstr "설치 취소" #: install.sh:1454 msgid "安装终止" -msgstr "설치하다" +msgstr "설치가 중지되었습니다" #: install.sh:1465 msgid "检测到原IP配置存在, 是否跳过IP设置" -msgstr "원래 ip 구성의 존재 감지, ip 설정을 건너 뛸지 여부" +msgstr "검출된 기본 ip 구성이 존재합니다, ip 설정을 건너뛸까요" #: install.sh:1482 msgid "已跳过IP设置" -msgstr "ip 설정을 건너 뜁니다" +msgstr "ip 설정을 건너뛰었습니다" #: install.sh:1488 msgid "确定公网IP信息" -msgstr "공개 네트워크 ip 정보를 결정하십시오" +msgstr "공인 ip 정보를 확인합니다" #: install.sh:1489 msgid "请选择公网IP为IPv4或IPv6" -msgstr "public network ip를 ipv4 또는 ipv6으로 선택하십시오" +msgstr "공인 ip 주소를 ipv4 또는 ipv6로 선택하세요" #: install.sh:1492 msgid "手动输入" -msgstr "수동으로 입력" +msgstr "수동 입력" #: install.sh:1519 -msgid "尝试自动 kill 占用进程" -msgstr "자동 킬 직업 과정을 시도하십시오" +msgid "尝试终止占用的进程" +msgstr "시도하다 종료 지정된 chiếm당한 프로세스" #: install.sh:1530 msgid "证书测试签发成功, 开始正式签发" -msgstr "인증 테스트는 성공적으로 발행되었으며 공식 발급이 공식적으로 발행되기 시작했습니다" +msgstr "자격 증명서 테스트 발급 성공, 정식 발급 시작" #: install.sh:1533 msgid "证书测试签发失败" -msgstr "인증서 테스트 발행이 실패합니다" +msgstr "인증서 테스트 발급 실패" #: install.sh:1540 msgid "证书生成成功" -msgstr "성공적인 인증서" +msgstr "인증서 생성에 성공하였습니다" #: install.sh:1546 msgid "证书配置成功" -msgstr "성공적인 인증서 구성" +msgstr "인증서 구성이 성공하였습니다" #: install.sh:1550 msgid "证书生成失败" -msgstr "인증서 생성 실패" +msgstr "인증서 생성에 실패하였습니다" #: install.sh:1578 msgid "检测到 Xray 配置过多用户" -msgstr "xray 구성에서 너무 많은 사용자를 테스트합니다" +msgstr "xray 의 구성이 많은 사용자를 감지했습니다" #: install.sh:1579 msgid "是否保留原 Xray 配置文件" -msgstr "원래 xray 구성 파일을 유지 해야하는지 여부" +msgstr "기존 xray 구성 파일을 유지할지" #: install.sh:1597 msgid "添加简单 ws/gRPC 协议" -msgstr "간단한 ws/grpc 프로토콜을 추가하십시오" +msgstr "간단한 ws/grpc 프로토콜 추가" #: install.sh:1612 msgid "检测到配置文件, 是否读取配置文件" -msgstr "구성 파일을 읽을지 여부 구성 파일 감지" +msgstr "설정 파일이 감지되었습니다, 설정 파일을 불러오시겠습니까" #: install.sh:1617 install.sh:1638 install.sh:1734 install.sh:2916 msgid "已删除配置文件" -msgstr "삭제 된 구성 파일" +msgstr "삭제된 프로파일" #: install.sh:1620 install.sh:1633 install.sh:1729 install.sh:2912 msgid "已保留配置文件" -msgstr "구성 파일이 유지되었습니다" +msgstr "이 설정 파일은 보관되었습니다" #: install.sh:1627 msgid "检测到当前安装模式与配置文件的安装模式不一致" -msgstr "현재 설치 모드는 구성 파일의 설치 모드가 일치하지 않음을 감지합니다" +msgstr "현재 설치 모드와 프로파일의 설치 모드가 일치하지 않습니다" #: install.sh:1628 msgid "是否保留配置文件 (强烈不建议)" -msgstr "구성 파일을 유지할지 여부 (강한 권장하지 않음)" +msgstr "프로필 유지 여부(강력히 권장하지 않음)" #: install.sh:1632 msgid "请务必确保配置文件正确" @@ -743,15 +735,15 @@ msgstr "구성 파일이 올바른지 확인하십시오" #: install.sh:1724 msgid "检测到配置文件不完整, 是否保留配置文件" -msgstr "구성 파일이 완료되지 않은 경우 구성 파일이 유지되었는지 여부" +msgstr "검출된 구성 파일이 불완전합니다. 구성 파일을 보관하시겠습니까" #: install.sh:1879 msgid "配置删除" -msgstr "구성 삭제" +msgstr "삭제 설정" #: install.sh:1900 msgid "设置 Nginx 开机自启" -msgstr "nginx를 설정하고 자체 스테이트를 시작하십시오" +msgstr "nginx를 부팅 시 자동으로 시작되게 설정" #: install.sh:1903 install.sh:3584 install.sh:3587 install.sh:3588 #: install.sh:3589 fail2ban_manager.sh:10 @@ -760,24 +752,24 @@ msgstr "설정" #: install.sh:1903 install.sh:1911 msgid "开机自启" -msgstr "자체 스테이트를 시작하십시오" +msgstr "시작 시 자동으로 실행" #: install.sh:1908 msgid "关闭 Nginx 开机自启" -msgstr "nginx를 끄고 자체 스테이트를 시작하십시오" +msgstr "nginx 자동 시작을 비활성화" #: install.sh:1911 msgid "关闭" -msgstr "폐쇄" +msgstr "닫기" #: install.sh:1918 msgid "停止已有服务" -msgstr "기존 서비스를 중지하십시오" +msgstr "이미 있는 서비스를 중지" #: install.sh:1924 install.sh:1927 install.sh:2500 install.sh:2502 #: install.sh:3577 fail2ban_manager.sh:99 fail2ban_manager.sh:188 msgid "重启" -msgstr "다시 시작하십시오" +msgstr "재시작" #: install.sh:1932 install.sh:1935 install.sh:3578 fail2ban_manager.sh:98 #: fail2ban_manager.sh:158 @@ -787,31 +779,31 @@ msgstr "시작" #: install.sh:1940 install.sh:1943 install.sh:2003 install.sh:3579 #: fail2ban_manager.sh:100 msgid "停止" -msgstr "멈추다" +msgstr "정지" #: install.sh:1956 install.sh:1972 msgid "新版本已自动设置证书自动更新" -msgstr "새 버전이 자동으로 자동으로 설정되었습니다" +msgstr "새 버전이 자동으로 인증서 자동 업데이트로 설정되었습니다" #: install.sh:1957 msgid "老版本请及时删除 废弃的 改版证书自动更新" -msgstr "기존 버전을 제 시간에 업데이트하려면 버려진 개정 인증서를 제 시간에 삭제하십시오" +msgstr "구형 버전은 신속히 삭제하세요. 폐기된 개정 인증서는 자동으로 업데이트됩니다" #: install.sh:1958 msgid "已设置改版证书自动更新" -msgstr "개정 인증서를 자동으로 업데이트하십시오" +msgstr " đã 설정 변경 인증서 자동 갱신" #: install.sh:1959 msgid "是否需要删除改版证书自动更新 (请删除)" -msgstr "개정 인증서를 삭제하고 자동으로 업데이트해야합니까 (삭제하십시오)" +msgstr "버전 업데이트 자동 갱신 필요 여부(삭제 시)" #: install.sh:1966 msgid "删除改版证书自动更新" -msgstr "개정 인증서 자동 업데이트를 삭제하십시오" +msgstr "삭제된 버전의 인증서가 자동으로 업데이트 됩니다" #: install.sh:1990 msgid "已过期" -msgstr "확대" +msgstr "만료되었습니다" #: install.sh:1992 msgid "证书生成日期" @@ -819,90 +811,91 @@ msgstr "인증서 생성 날짜" #: install.sh:1993 msgid "证书生成天数" -msgstr "인증서 생성 일" +msgstr "인증서 생성 일수" #: install.sh:1994 msgid "证书剩余天数" -msgstr "나머지 인증서" +msgstr "인증서 남은 일수" #: install.sh:1998 msgid "是否立即更新证书" -msgstr "인증서를 즉시 업데이트합니까" +msgstr "즉시 인증서를 업데이트하시겠습니까" #: install.sh:2010 install.sh:2022 msgid "证书签发工具不存在, 请确认是否证书为脚本签发" -msgstr "인증서 발행 도구가 존재하지 않습니다. 인증서가 스크립트로 발행되었는지 확인하십시오" +msgstr "발급 도구가 존재하지 않습니다. 인증서가 스크립트에 의해 발급되었는지 확인하시기 바랍니다" #: install.sh:2026 msgid "证书更新" -msgstr "인증서 업데이트" +msgstr "인증서 갱신" #: install.sh:2036 msgid "本地文件 fail2ban_manager.sh 不存在, 正在下载" -msgstr "로컬 파일 fail2ban_manager.sh는 존재하지 않으며 다운로드 중입니다" +msgstr "현지 파일 fail2ban_manager.sh이 존재하지 않습니다, 다운로드 중입니다" #: install.sh:2050 msgid "检测到日志文件大小如下:" -msgstr "로그 파일의 크기는 다음과 같이 감지됩니다" +msgstr "로그 파일 크기는 다음과 같습니다" #: install.sh:2052 msgid "即将清除" -msgstr "지우십시오" +msgstr "곧 지울 예정입니다" #: install.sh:2054 msgid "日志清理" -msgstr "로그 청소" +msgstr "ログクリア" #: install.sh:2064 msgid "已设置旧版自动清理日志任务" -msgstr "자동 청소 로그 작업의 이전 버전이 설정되었습니다" +msgstr "이전 버전의 자동 정리 로그 작업을 설정했습니다" #: install.sh:2065 msgid "是否需要删除旧版自动清理日志任务" -msgstr "자동 청소 로그 작업의 이전 버전을 삭제해야합니까" +msgstr "자동 정리 로그 작업의 이전 버전을 삭제해야 하나요" #: install.sh:2069 install.sh:2103 msgid "保留现有自动清理日志任务" -msgstr "기존 자동 청소 로그 작업을 유지하십시오" +msgstr "기존 자동 정리 로그 작업 유지" #: install.sh:2074 msgid "删除旧版自动清理日志任务" -msgstr "자동 청소 로그 작업의 이전 버전 삭제" +msgstr "구형 자동 정리 로그 작업 삭제" #: install.sh:2081 msgid "是否需要设置自动清理日志" -msgstr "자동 청소 로그를 설정해야합니까" +msgstr "자동으로 로그를 정리할 필요가 있습니까" #: install.sh:2085 install.sh:3606 install.sh:3615 install.sh:3667 #: install.sh:3673 install.sh:3709 install.sh:3715 install.sh:3721 #: install.sh:3750 install.sh:3777 install.sh:3784 install.sh:3789 #: fail2ban_manager.sh:159 fail2ban_manager.sh:172 fail2ban_manager.sh:181 +#: fail2ban_manager.sh:189 msgid "清空屏幕" -msgstr "화면을 지우십시오" +msgstr "화면 지우기" #: install.sh:2089 msgid "将在 每周三 04:00 自动清空日志" -msgstr "로그는 매주 수요일마다 04:00에 자동으로 비 웁니다" +msgstr "매주 수요일 오전 4시에 자동으로 로그가 비워집니다" #: install.sh:2094 msgid "已设置自动清理日志任务" -msgstr "자동 청소 로그 작업이 설정되었습니다" +msgstr "자동 로그 정리 작업이 설정되었습니다" #: install.sh:2095 msgid "是否需要删除现有自动清理日志任务" -msgstr "기존 자동 청소 로그 작업을 삭제해야합니까" +msgstr "기존 자동 정리 로그 작업을 삭제해야 하나요" #: install.sh:2100 msgid "删除自动清理日志任务" -msgstr "자동 청소 로그 작업을 삭제하십시오" +msgstr "자동 정리 로그 작업 삭제" #: install.sh:2118 msgid "设置自动清理日志" -msgstr "자동 청소 로그를 설정하십시오" +msgstr "자동으로 로그 정리 설정" #: install.sh:2243 msgid "配置分享" -msgstr "구성 공유" +msgstr "공유 설정" #: install.sh:2245 install.sh:2251 install.sh:2256 install.sh:2261 #: install.sh:2265 install.sh:2673 @@ -916,25 +909,25 @@ msgstr "qr 코드" #: install.sh:2275 msgid "生成分享链接" -msgstr "공유 링크를 생성합니다" +msgstr "공유 링크 생성" #: install.sh:2289 install.sh:2292 install.sh:2295 install.sh:2298 #: install.sh:2301 install.sh:2304 install.sh:2307 install.sh:2310 #: install.sh:2313 install.sh:2316 msgid "安装成功" -msgstr "성공적인 설치" +msgstr "설치가 성공하였습니다" #: install.sh:2320 msgid "目前分享链接规范为实验阶段, 请自行判断是否适用" -msgstr "현재 공유 링크 사양은 실험 단계입니다" +msgstr "현재 공유 링크 사양은 실험 단계에 있습니다. 직접 적용 할 수 있는지 판단하십시오" #: install.sh:2322 install.sh:3575 msgid "配置信息" -msgstr "구성 정보" +msgstr "설정 정보" #: install.sh:2323 msgid "主机" -msgstr "주인" +msgstr "호스트" #: install.sh:2326 install.sh:2328 install.sh:2330 install.sh:2331 #: install.sh:2334 install.sh:2338 install.sh:2340 install.sh:2342 @@ -945,7 +938,7 @@ msgstr "포트" #: install.sh:2347 msgid "用户id" -msgstr "사용자 id" +msgstr "유저 아이디" #: install.sh:2349 msgid "加密" @@ -957,71 +950,71 @@ msgstr "전송 프로토콜" #: install.sh:2351 msgid "底层传输安全" -msgstr "기본 전송의 안전성" +msgstr "하위 계층 전송 보안" #: install.sh:2354 install.sh:2358 install.sh:2371 install.sh:2377 msgid "路径" -msgstr "길" +msgstr "경로" #: install.sh:2354 install.sh:2358 install.sh:2371 install.sh:2377 msgid "不要落下" -msgstr "넘어지지 않습니다" +msgstr "다락말 것" #: install.sh:2356 install.sh:2359 install.sh:2374 install.sh:2379 msgid "不需要加" -msgstr "추가 할 필요가 없습니다" +msgstr "필요하지 않습니다 추가로" #: install.sh:2362 msgid "流控" -msgstr "흐름 제어" +msgstr "스트림 제어" #: install.sh:2393 msgid "即将申请证书, 支持使用自定义证书" -msgstr "곧 신청하려면 사용자 정의 인증서 사용을 지원하십시오" +msgstr "즉시 자격 증명을 신청할 예정입니다. 사용자 지정 자격 증명을 지원합니다" #: install.sh:2394 msgid "如需使用自定义证书, 请按如下步骤:" -msgstr "사용자 정의 인증서를 사용해야하는 경우 아래 단계를 따르십시오" +msgstr "사용자 정의 인증서를 사용하려면 다음 단계를 따르십시오" #: install.sh:2395 msgid "1. 将证书文件重命名: 私钥(xray.key)、证书(xray.crt)" -msgstr "1. 인증서 문서 이름 : 키 (xray.key), 인증서 (xray.crt)" +msgstr "1. 인증서 파일을 다음과 같이 이름을 변경합니다: 개인 키(xray.key), 인증서(xray.crt)" #: install.sh:2396 msgid "2. 将重命名后的证书文件放入" -msgstr "2. 이름이 바뀌는 인증서 파일을 넣습니다" +msgstr "2. 이름을 변경한 인증서 파일을 넣습니다" #: install.sh:2396 msgid "目录后再运行脚本" -msgstr "디렉토리 다음에 스크립트를 실행하십시오" +msgstr "목차를 다시 실행한 후 스크립트를 실행하세요" #: install.sh:2397 msgid "3. 重新运行脚本" -msgstr "3. 스크립트를 다시 실행하십시오" +msgstr "3. 스크립트 다시 실행하기" #: install.sh:2398 install.sh:2831 msgid "是否继续" -msgstr "계속할 것인지" +msgstr "계속하시겠습니까" #: install.sh:2406 msgid "所有证书文件均已存在, 是否保留" -msgstr "모든 인증서 문서는 이미 유지 여부에 관계없이 존재합니다" +msgstr "모든 인증 파일이 이미 존재합니다, 유지하시겠습니까" #: install.sh:2412 install.sh:2427 install.sh:2443 file_manager.sh:186 msgid "已删除" -msgstr "삭제" +msgstr "삭제되었습니다" #: install.sh:2418 install.sh:2433 install.sh:2450 msgid "证书应用" -msgstr "인증서 신청" +msgstr "자격 증명 사용" #: install.sh:2422 msgid "证书文件已存在, 是否保留" -msgstr "보관 여부에 따라 인증서 문서가 존재했습니다" +msgstr "기존에 인증서 파일이 존재합니다, 유지하시겠습니까" #: install.sh:2438 msgid "证书签发残留文件已存在, 是否保留" -msgstr "잔여 문서의 인증서 발행이 존재 했습니까" +msgstr "발급certificate에 대한 잔여 파일이 이미 존재합니다, 유지하시겠습니까" #: install.sh:2480 install.sh:3570 msgid "添加" @@ -1029,11 +1022,11 @@ msgstr "추가" #: install.sh:2487 msgid "请选择支持的 TLS 版本" -msgstr "지원되는 tls 버전을 선택하십시오" +msgstr "tls 버전 선택을 지원합니다" #: install.sh:2488 msgid "建议选择 TLS1.3 only (安全模式)" -msgstr "tls1.3 만 선택하는 것이 좋습니다 (보안 모드)" +msgstr "tls1.3만 선택하는 것을 권장합니다(보안 모드)" #: install.sh:2489 msgid "兼容模式" @@ -1041,115 +1034,114 @@ msgstr "호환 모드" #: install.sh:2490 msgid "安全模式" -msgstr "보안 모드" +msgstr "시안전 모드" #: install.sh:2494 -msgid "" -"从 2.2.1 版本起, 由于启用 h3 仅支持 TLS1.3, 请选择 TLS1.3 only (安全模式)" -msgstr "" +msgid "由于 h3 仅支持 TLS1.3, 只支持 TLS1.3 only (安全模式)" +msgstr "h3은 tls1.3 만 지원하므로 tls1.3 (안전 모드) 만 지원합니다" #: install.sh:2498 msgid "已切换至" -msgstr "전환하십시오" +msgstr "이전으로 변경되었습니다" #: install.sh:2504 msgid "Nginx/配置文件不存在 或 当前模式不支持" -msgstr "nginx/configuration 파일이 존재하지 않거나 현재 모드가 지원되지 않습니다" +msgstr "nginx/설정 파일이 존재하지 않거나 현재 모드에서 지원되지 않습니다" #: install.sh:2525 install.sh:2595 install.sh:2619 install.sh:2688 #: install.sh:2738 install.sh:2797 install.sh:2849 msgid "请先安装" -msgstr "먼저 설치하십시오" +msgstr "먼저 설치하시오" #: install.sh:2536 msgid "连接端口号" -msgstr "연결하다" +msgstr "연결 포트 번호" #: install.sh:2617 msgid "此模式不支持修改" -msgstr "이 모델은 수정을 지원하지 않습니다" +msgstr "이 모드에서는 수정을 할 수 없습니다" #: install.sh:2626 msgid "即将显示用户, 一次仅能显示一个" -msgstr "사용자가 표시 될 예정이며 한 번에 하나만 표시 할 수 있습니다" +msgstr "즉시 사용자 표시, 한 번에 하나만 표시됩니다" #: install.sh:2628 msgid "请选择显示用户使用的协议" -msgstr "사용자를 표시하는 데 사용되는 프로토콜을 선택하십시오" +msgstr "사용자가 사용한 프로토콜을 표시하도록 선택하세요" #: install.sh:2638 msgid "请选择要显示的用户编号" -msgstr "표시 할 사용자 번호를 선택하십시오" +msgstr "사용자 번호를 표시할 선택하십시오" #: install.sh:2643 install.sh:2654 install.sh:2763 install.sh:2786 msgid "选择错误" -msgstr "오류를 선택하십시오" +msgstr "잘못된 선택" #: install.sh:2646 msgid "请直接在主菜单选择 [15] 显示主用户" -msgstr "메인 메뉴 [15]에서 직접 메인 사용자를 선택하십시오" +msgstr "직접 메인 메뉴에서 [15] 표시 메인 사용자 선택" #: install.sh:2647 install.sh:2658 install.sh:2768 install.sh:2790 #: install.sh:3679 install.sh:3684 install.sh:3689 install.sh:3734 #: install.sh:3739 install.sh:3744 install.sh:3764 msgid "回到菜单" -msgstr "메뉴로 돌아갑니다" +msgstr "메뉴로 돌아가기" #: install.sh:2657 install.sh:2789 msgid "请先检测 Xray 是否正确安装" -msgstr "xray가 올바르게 설치되어 있는지 확인하십시오" +msgstr "먼저 xray가 올바르게 설치되었는지 확인하세요" #: install.sh:2677 msgid "是否继续显示用户" -msgstr "사용자를 계속 표시할지 여부" +msgstr "계속해서 사용자 표시 여부" #: install.sh:2686 install.sh:2795 msgid "此模式不支持删除用户" -msgstr "이 모드는 사용자 삭제를 지원하지 않습니다" +msgstr "이 모드는 사용자를 삭제하는 것을 지원하지 않습니다" #: install.sh:2697 msgid "即将添加用户, 一次仅能添加一个" -msgstr "사용자가 추가 될 예정입니다. 한 번에 하나만 추가 할 수 있습니다" +msgstr "즉시 사용자가 추가될 예정입니다, 한 번에 하나의 사용자만 추가할 수 있습니다" #: install.sh:2699 msgid "请选择添加用户使用的协议" -msgstr "사용자가 사용하는 프로토콜을 선택하십시오" +msgstr "고객이 사용할 프로토콜을 선택하세요" #: install.sh:2721 msgid "添加用户" -msgstr "사용자 추가" +msgstr "유저 추가" #: install.sh:2726 msgid "是否继续添加用户" -msgstr "계속 사용자를 추가합니까" +msgstr "계속해서 사용자 추가하시겠습니까" #: install.sh:2736 msgid "此模式不支持添加用户" -msgstr "이 모델은 사용자 추가를 지원하지 않습니다" +msgstr "이 모드에서는 사용자 추가를 지원하지 않습니다" #: install.sh:2746 msgid "即将删除用户, 一次仅能删除一个" -msgstr "사용자는 삭제하려고합니다. 한 번에 하나만 삭제할 수 있습니다" +msgstr "사용자를 곧 삭제할 것입니다, 한 번에 하나만 삭제할 수 있습니다" #: install.sh:2748 msgid "请选择删除用户使用的协议" -msgstr "사용자가 사용하는 프로토콜을 선택하십시오" +msgstr "사용자가 사용하는 프로토콜을 삭제하려면 선택하세요" #: install.sh:2758 msgid "请选择要删除的用户编号" -msgstr "삭제할 사용자 번호를 선택하십시오" +msgstr "사용자 번호를 선택하여 삭제하세요" #: install.sh:2767 msgid "请直接在主菜单修改主用户的" -msgstr "기본 메뉴에서 직접 메인 사용자를 수정하십시오" +msgstr "주 메뉴에서 주 사용자를 직접 수정해주세요" #: install.sh:2774 msgid "删除用户" -msgstr "사용자 삭제" +msgstr "유저를 삭제합니다" #: install.sh:2777 msgid "是否继续删除用户" -msgstr "사용자를 계속 삭제합니까" +msgstr "계속해서 사용자 삭제하시겠습니까" #: install.sh:2802 install.sh:2806 msgid "文件不存在" @@ -1157,39 +1149,39 @@ msgstr "파일이 존재하지 않습니다" #: install.sh:2813 msgid "已配置 Xray 流量统计" -msgstr "계산 된 xray 트래픽 통계" +msgstr "이미 xray 트래픽 통계가 설정됨" #: install.sh:2814 msgid "是否需要关闭此功能" -msgstr "이 기능을 닫아야합니까" +msgstr "이 기능을 비활성화해야 하나요" #: install.sh:2820 msgid "关闭 Xray 流量统计" -msgstr "xray 트래픽 통계를 닫습니다" +msgstr "xray 트래픽 통계 닫기" #: install.sh:2829 msgid "流量统计需要使用" -msgstr "트래픽 통계를 사용해야합니다" +msgstr "트래픽 통계를 위해서는 사용이 필요합니다" #: install.sh:2830 msgid "可能会影响 Xray 性能" -msgstr "xray 성능에 영향을 줄 수 있습니다" +msgstr "x선 성능에 영향을 미칠 수 있습니다" #: install.sh:2841 msgid "设置 Xray 流量统计" -msgstr "xray 트래픽 통계를 설정하십시오" +msgstr "xray 트래픽 통계 설정" #: install.sh:2871 install.sh:2886 msgid "已卸载" -msgstr "제거되지 않았습니다" +msgstr "이미 제거되었습니다" #: install.sh:2874 msgid "是否卸载" -msgstr "언로드 여부" +msgstr "앱을 제거하시겠습니까" #: install.sh:2891 msgid "是否删除所有脚本文件" -msgstr "모든 스크립트 파일을 삭제할지 여부" +msgstr "스クリプト 파일을 모두 삭제하시겠습니까" #: install.sh:2898 msgid "已删除所有文件" @@ -1197,51 +1189,51 @@ msgstr "모든 파일이 삭제되었습니다" #: install.sh:2899 msgid "ヾ( ̄▽ ̄) 拜拜~" -msgstr "ヾ (▽  ̄  ̄) 숭배 ~" +msgstr "バイバイ~" #: install.sh:2904 msgid "已保留脚本文件 (包含 SSL 证书等)" -msgstr "스크립트 파일이 유지되었습니다 (ssl 인증서 포함)" +msgstr "이전에 예약된 스크립트 파일(ssl 인증서 포함)" #: install.sh:2908 msgid "是否保留配置文件" -msgstr "구성 파일을 유지 해야하는지 여부" +msgstr "프로필 유지 여부" #: install.sh:2925 msgid "已清空证书遗留文件" -msgstr "문서는 인증서를 남겼습니다" +msgstr "증서 이전 파일을 이미 비웠습니다" #: install.sh:2955 -msgid "秒后将" -msgstr "잠시 후에있을 것입니다" +msgid "秒后" +msgstr "몇 초 후" #: install.sh:3118 msgid "检测最新版本失败" -msgstr "최신 버전이 실패했습니다" +msgstr "최신 버전 확인 실패" #: install.sh:3127 msgid "存在新版本, 但版本变化较大, 可能存在不兼容情况, 是否更新" -msgstr "새로운 버전이 있지만 버전은 크게 변경되어 업데이트되지 않습니다" +msgstr "새 버전이 있지만 버전 변경 사항이 크므로 호환성 문제가 있을 수 있습니다. 업데이트하시겠습니까" #: install.sh:3130 msgid "存在新版本, 是否更新" -msgstr "업데이트 여부에 관계없이 새 버전이 있습니까" +msgstr "새 버전이 있습니다, 업데이트하시겠습니까" #: install.sh:3134 msgid "检测 脚本 最新版本失败" -msgstr "최신 버전의 탐지 스크립트가 실패했습니다" +msgstr "검색 스크립트의 최신 버전 확인 실패" #: install.sh:3135 msgid "脚本 版本差别过大, 跳过更新" -msgstr "스크립트 버전이 너무 다르고 업데이트를 건너 뛰십시오" +msgstr "시나리오 버전 차이가 너무 크므로 업데이트를 건너뜁" #: install.sh:3145 msgid "更新完成" -msgstr "업데이트" +msgstr "업데이트 완료" #: install.sh:3146 install.sh:3339 msgid "脚本版本变化较大, 若服务无法正常运行请卸载后重装" -msgstr "스크립트 버전이 크게 변경되고 서비스가 정상적으로 실행될 수 없으면 설치 후 다시 설치하십시오" +msgstr "각본 버전 변화가 크므로 서비스가 정상적으로 작동하지 않으면 재설치를 위해 언install한 후 다시 설치해주세요" #: install.sh:3152 msgid "当前版本为最新版本" @@ -1249,22 +1241,22 @@ msgstr "현재 버전은 최신 버전입니다" #: install.sh:3164 install.sh:3326 install.sh:3337 install.sh:3349 msgid "下载最新脚本" -msgstr "최신 스크립트를 다운로드하십시오" +msgstr "최신 스크립트 다운로드" #: install.sh:3178 msgid "该选项暂时无法使用" -msgstr "이 옵션은 일시적으로 사용할 수 없습니다" +msgstr "이 옵션은 현재 사용할 수 없습니다" #: install.sh:3197 install.sh:3633 msgid "此模式推荐用于负载均衡, 一般情况不推荐使用, 是否安装" -msgstr "이 모델은 일반적으로로드 밸런싱을 권장합니다" +msgstr "이 모드는 로드 밸런싱에 권장됩니다. 일반적으로 권장되지 않으므로 설치하시겠습니까" #: install.sh:3292 install.sh:3293 install.sh:3302 install.sh:3305 #: install.sh:3309 install.sh:3562 install.sh:3563 install.sh:3564 #: install.sh:3565 install.sh:3566 install.sh:3567 install.sh:3647 #: install.sh:3652 install.sh:3657 install.sh:3662 msgid "变更" -msgstr "변화" +msgstr "변경" #: install.sh:3292 install.sh:3566 msgid "负载均衡配置" @@ -1272,39 +1264,39 @@ msgstr "로드 밸런싱 구성" #: install.sh:3295 msgid "清除日志文件" -msgstr "명확한 로그 파일" +msgstr "로그 파일을 지웁니다" #: install.sh:3296 msgid "查看证书状态" -msgstr "인증서 상태를 봅니다" +msgstr "증명서 상태 확인" #: install.sh:3297 msgid "更新证书有效期" -msgstr "갱신 증명서 유효 기간" +msgstr "증명서 유효 기간 갱신" #: install.sh:3298 msgid "设置证书自动更新" -msgstr "인증서 자동 업데이트를 설정하십시오" +msgstr "인증서 자동 갱신 설정" #: install.sh:3299 msgid "设置 Fail2ban 防暴力破解" -msgstr "실패 2ban anti -violence 균열을 설정하십시오" +msgstr "fail2ban을 사용하여 강력한 암호가 없을 때 대비 설정" #: install.sh:3300 msgid "显示帮助" -msgstr "도움말을 표시합니다" +msgstr "도움 보기 표시" #: install.sh:3301 install.sh:3312 install.sh:3583 msgid "更新" -msgstr "고쳐 쓰다" +msgstr "업데이트" #: install.sh:3303 msgid "脚本卸载" -msgstr "스크립트 제거" +msgstr "시나리오 언로드" #: install.sh:3304 msgid "显示安装信息" -msgstr "설치 정보를 표시합니다" +msgstr "설치 정보 표시" #: install.sh:3306 install.sh:3587 msgid "加速" @@ -1312,15 +1304,15 @@ msgstr "가속" #: install.sh:3308 msgid "升级脚本" -msgstr "스크립트 업그레이드" +msgstr "업그레이드 스크립트" #: install.sh:3310 install.sh:3311 msgid "显示" -msgstr "보여주다" +msgstr "표시" #: install.sh:3310 msgid "访问信息" -msgstr "액세스 정보" +msgstr "정보 방문" #: install.sh:3311 msgid "错误信息" @@ -1328,11 +1320,11 @@ msgstr "오류 메시지" #: install.sh:3331 msgid "脚本版本变化较大, 可能存在不兼容情况, 是否继续使用" -msgstr "스크립트 버전은 크게 변경되며 계속 사용할 것인지에 대한 비 호환성이있을 수 있습니다" +msgstr "각본 버전의 변경 사항이 크므로 호환성 문제가 발생할 수 있습니다. 계속 사용하시겠습니까" #: install.sh:3356 msgid "检测失败" -msgstr "실패를 감지하십시오" +msgstr "검출 실패" #: install.sh:3360 install.sh:3370 install.sh:3380 msgid "有新版" @@ -1344,11 +1336,11 @@ msgstr "최신 버전" #: install.sh:3378 msgid "版本未知" -msgstr "알 수없는 버전" +msgstr "unknown version" #: install.sh:3384 msgid "有测试版" -msgstr "테스트 버전" +msgstr "테스트 버전이 있습니다" #: install.sh:3402 install.sh:3409 msgid "运行中" @@ -1356,59 +1348,59 @@ msgstr "작동 중" #: install.sh:3404 install.sh:3427 install.sh:3429 msgid "无需测试" -msgstr "테스트가 없습니다" +msgstr "테스트 필요하지 않음" #: install.sh:3406 install.sh:3411 msgid "未运行" -msgstr "실행되지 않습니다" +msgstr "실행되지 않음" #: install.sh:3421 msgid "无法连通" -msgstr "연결할 수 없습니다" +msgstr "연결할 수 없음" #: install.sh:3423 install.sh:3424 install.sh:3425 msgid "本地正常" -msgstr "국부 정상" +msgstr "지역 일반적으로" #: install.sh:3440 msgid "脚本维护中.. 请稍后再试" -msgstr "스크립트 유지 보수 .. 나중에 시도하십시오" +msgstr "시나리오 유지보수 중입니다.. 나중에 다시 시도해주세요" #: install.sh:3442 msgid "无法检测所需依赖的在线版本, 请稍后再试" -msgstr "필요한 온라인 버전을 감지 할 수 없습니다. 나중에 다시 시도하십시오" +msgstr "의존 해야하는 온라인 버전은 감지 할 수 없습니다. 나중에 다시 시도하십시오" #: install.sh:3459 msgid "请输入数字" -msgstr "번호를 입력하십시오" +msgstr "숫자를 입력하세요" #: install.sh:3459 msgid "请输入 1 到 5 之间的有效数字" -msgstr "1과 5 사이의 유효한 번호를 입력하십시오" +msgstr "1부터 5 사이의 유효한 숫자를 입력하세요" #: install.sh:3480 msgid "无效的选择" -msgstr "잘못된 선택" +msgstr "무효된 선택" #: install.sh:3513 msgid "检测存在到" -msgstr "탐지가 존재합니다" +msgstr "검출 존재" #: install.sh:3514 msgid "来源于自动清理日志错误的设置" -msgstr "자동 청소 로그 오류 설정에서 비롯됩니다" +msgstr "자동으로 로그 오류를 정리하는 설정에서 유래되었습니다" #: install.sh:3515 msgid "开始修复" -msgstr "수리를 시작하십시오" +msgstr "시작 수리" #: install.sh:3519 msgid "错误的配置文件删除" -msgstr "잘못된 구성 파일을 삭제합니다" +msgstr "잘못된 구성 파일 삭제" #: install.sh:3520 msgid "即将重新设置自动清理日志" -msgstr "자동 청소 로그가 다시 시작됩니다" +msgstr "자동 정리 로그를 재설정할 예정입니다" #: install.sh:3528 msgid "安装管理脚本" @@ -1416,7 +1408,7 @@ msgstr "설치 관리 스크립트" #: install.sh:3529 msgid "作者" -msgstr "작가" +msgstr "작자" #: install.sh:3533 msgid "当前模式" @@ -1428,7 +1420,7 @@ msgstr "현재 언어" #: install.sh:3537 msgid "可以使用" -msgstr "사용 가능합니다" +msgstr "사용할 수 있습니다" #: install.sh:3537 msgid "命令管理脚本" @@ -1436,15 +1428,15 @@ msgstr "명령 관리 스크립트" #: install.sh:3539 msgid "版本检测" -msgstr "버전 감지" +msgstr "버전 검사" #: install.sh:3540 install.sh:3548 install.sh:3593 msgid "脚本" -msgstr "스크립트" +msgstr "시나리오" #: install.sh:3543 msgid "运行状态" -msgstr "실행 상태" +msgstr "작동 상태" #: install.sh:3546 msgid "连通性" @@ -1452,11 +1444,11 @@ msgstr "연결성" #: install.sh:3547 msgid "升级向导" -msgstr "업그레이드 가이드" +msgstr "업그레이드 마법사" #: install.sh:3557 msgid "安装向导" -msgstr "설치 마법사" +msgstr "설치 안내 프로그램" #: install.sh:3561 msgid "配置变更" @@ -1473,11 +1465,11 @@ msgstr "사용자 관리" #: install.sh:3569 install.sh:3573 install.sh:3574 install.sh:3575 #: install.sh:3580 install.sh:3582 fail2ban_manager.sh:14 msgid "查看" -msgstr "확인하다" +msgstr "확인" #: install.sh:3569 install.sh:3570 install.sh:3571 msgid "用户" -msgstr "사용자" +msgstr "유저" #: install.sh:3571 msgid "删除" @@ -1485,11 +1477,11 @@ msgstr "삭제" #: install.sh:3572 msgid "查看信息" -msgstr "정보를 확인하십시오" +msgstr "정보 확인" #: install.sh:3573 msgid "实时访问日志" -msgstr "실시간 방문 로그" +msgstr "실시간으로 접근 로그 확인" #: install.sh:3574 msgid "实时错误日志" @@ -1505,7 +1497,7 @@ msgstr "모든 서비스" #: install.sh:3581 msgid "证书相关" -msgstr "인증서 관련" +msgstr "자격 증명 관련" #: install.sh:3582 msgid "证书状态" @@ -1513,15 +1505,15 @@ msgstr "인증서 상태" #: install.sh:3583 msgid "证书有效期" -msgstr "인증서의 유효 기간" +msgstr "자격 증명서 유효 기간" #: install.sh:3584 msgid "证书自动更新" -msgstr "자동 인증서 업데이트" +msgstr "인증서 자동 갱신" #: install.sh:3585 msgid "其他选项" -msgstr "다른 옵션" +msgstr "기타 옵션" #: install.sh:3586 msgid "自动更新" @@ -1529,15 +1521,15 @@ msgstr "자동 업데이트" #: install.sh:3588 msgid "防暴力破解" -msgstr "반 폭력 균열" +msgstr "방폭력해석" #: install.sh:3589 msgid "流量统计" -msgstr "흐름 통계" +msgstr "트래픽 통계" #: install.sh:3590 msgid "清除" -msgstr "제거하다" +msgstr "제거" #: install.sh:3590 msgid "日志文件" @@ -1545,7 +1537,7 @@ msgstr "로그 파일" #: install.sh:3591 msgid "测试" -msgstr "시험" +msgstr "테스트" #: install.sh:3591 msgid "服务器网速" @@ -1553,51 +1545,51 @@ msgstr "서버 네트워크 속도" #: install.sh:3592 msgid "卸载向导" -msgstr "부리다" +msgstr "설치 마법사 해제" #: install.sh:3593 fail2ban_manager.sh:13 fail2ban_manager.sh:171 msgid "卸载" -msgstr "제거하십시오" +msgstr "설치 해제" #: install.sh:3594 msgid "清空" -msgstr "비어 있는" +msgstr "비우기" #: install.sh:3594 msgid "证书文件" -msgstr "인증서 파일" +msgstr "인증 파일" #: install.sh:3595 fail2ban_manager.sh:15 file_manager.sh:217 msgid "退出" -msgstr "그만두다" +msgstr "나가기" #: install.sh:3598 msgid "请输入选项" -msgstr "옵션을 입력하십시오" +msgstr "옵션을 입력하세요" #: install.sh:3598 msgid "请输入 0 到 34 之间的有效数字" -msgstr "0과 34 사이의 유효한 번호를 입력하십시오" +msgstr "0부터 34 사이의 유효한 숫자를 입력하세요" #: install.sh:3612 msgid "不建议" -msgstr "권장 사항이 없습니다" +msgstr "권장하지 않습니다" #: install.sh:3612 msgid "频繁升级 Nginx, 请确认 Nginx 有升级的必要" -msgstr "자주 업그레이드 nginx, 업그레이드하는 데 nginx가 필요하다는 것을 확인하십시오" +msgstr "자주 업그레이드 nginx, nginx 업그레이드가 필요한지 확인하세요" #: install.sh:3613 msgid "开始升级" -msgstr "업그레이드를 시작하십시오" +msgstr "업그레이드를 시작합니다" #: install.sh:3799 msgid "请输入正确的数字" -msgstr "올바른 번호를 입력하십시오" +msgstr "옳바른 숫자를 입력하세요" #: fail2ban_manager.sh:12 msgid "管理" -msgstr "관리하다" +msgstr "관리" #: fail2ban_manager.sh:14 msgid "状态" @@ -1605,31 +1597,31 @@ msgstr "상태" #: fail2ban_manager.sh:27 fail2ban_manager.sh:122 msgid "无效的选择请重试" -msgstr "유효하지 않은 선택이라면 시도해보십시오" +msgstr "유효하지 않은 선택입니다. 다시 시도해주세요" #: fail2ban_manager.sh:34 msgid "已经安装, 跳过安装步骤" -msgstr "설치가 설치되어 설치 단계를 건너 뜁니다" +msgstr "이미 설치됨, 설치 단계 생략" #: fail2ban_manager.sh:52 fail2ban_manager.sh:92 fail2ban_manager.sh:195 msgid "未安装, 请先安装" -msgstr "설치되지 않으면 먼저 설치하십시오" +msgstr "설치되지 않았습니다, 먼저 설치해주세요" #: fail2ban_manager.sh:97 msgid "请选择" -msgstr "선택하다" +msgstr "선택하세요" #: fail2ban_manager.sh:97 msgid "操作" -msgstr "작동하다" +msgstr "작동" #: fail2ban_manager.sh:101 msgid "添加自定义规则" -msgstr "사용자 정의 규칙을 추가하십시오" +msgstr "사용자 정의 규칙 추가" #: fail2ban_manager.sh:135 msgid "请输入新的" -msgstr "새로운 것을 입력하십시오" +msgstr "새로운 것을 입력하세요" #: fail2ban_manager.sh:135 fail2ban_manager.sh:136 msgid "名称" @@ -1637,47 +1629,43 @@ msgstr "이름" #: fail2ban_manager.sh:137 msgid "请输入日志路径" -msgstr "로그 경로를 입력하십시오" +msgstr "일지 경로를 입력하세요" #: fail2ban_manager.sh:138 msgid "请输入最大重试次数" -msgstr "최대 리뷰 수를 입력하십시오" +msgstr "최대 재시도 횟수를 입력하세요" #: fail2ban_manager.sh:138 msgid "最大重试次数必须在 1 到 99 之间" -msgstr "최대 검색 수는 1에서 99 사이 여야합니다" +msgstr "최대 재시도 횟수는 1과 99 사이이어야 합니다" #: fail2ban_manager.sh:139 msgid "请输入封禁时间" -msgstr "금지 시간을 입력하십시오" +msgstr "금지 시간을 입력하세요" #: fail2ban_manager.sh:139 msgid "秒" -msgstr "두번째" +msgstr "초" #: fail2ban_manager.sh:139 msgid "封禁时间必须在 1 到 8640000 秒之间" -msgstr "금지 된 시간은 1 ~ 86,40000 초 사이 여야합니다" +msgstr "차단 시간은 1초에서 8640000초 사이여야 합니다" #: fail2ban_manager.sh:142 msgid "已存在" -msgstr "존재하다" +msgstr "이미 존재しています" #: fail2ban_manager.sh:147 msgid "自定义规则添加成功" -msgstr "맞춤형 규칙이 성공적으로 추가됩니다" +msgstr "사용자 정의 규칙이 성공적으로 추가되었습니다" #: fail2ban_manager.sh:151 msgid "重启以应用新规则" -msgstr "새로운 규칙을 적용하려면 다시 시작하십시오" +msgstr "새 규칙을 적용하려면 재시작하세요" #: fail2ban_manager.sh:180 msgid "停止成功" -msgstr "성공을 중지하십시오" - -#: fail2ban_manager.sh:189 -msgid "清空屏幕!" -msgstr "화면을 지우십시오" +msgstr "중지 성공" #: fail2ban_manager.sh:199 msgid "总体状态" @@ -1685,15 +1673,15 @@ msgstr "전체 상태" #: fail2ban_manager.sh:203 msgid "默认启用的 Jail 状态" -msgstr "기본적으로 감옥 상태가 열렸습니다" +msgstr "기본적으로 활성화된 jail 상태" #: fail2ban_manager.sh:205 fail2ban_manager.sh:208 fail2ban_manager.sh:212 msgid "封锁情况" -msgstr "막힘" +msgstr "봉쇄 상황" #: fail2ban_manager.sh:226 file_manager.sh:242 msgid "新版本可用" -msgstr "새로운 버전을 사용할 수 있습니다" +msgstr "새 버전이 사용 가능합니다" #: fail2ban_manager.sh:226 file_manager.sh:242 msgid "当前版本" @@ -1701,39 +1689,39 @@ msgstr "현재 버전" #: fail2ban_manager.sh:227 file_manager.sh:243 msgid "请访问" -msgstr "방문하십시오" +msgstr "please visit 방문해 주세요" #: fail2ban_manager.sh:227 file_manager.sh:243 msgid "查看更新说明" -msgstr "업데이트 지침을보십시오" +msgstr "업데이트 설명 보기" #: fail2ban_manager.sh:229 file_manager.sh:245 msgid "是否要下载并安装新版本" -msgstr "새 버전을 다운로드하여 설치하든" +msgstr "다운로드하고 신규 버전을 설치하시겠습니까" #: fail2ban_manager.sh:233 file_manager.sh:249 msgid "正在下载新版本" -msgstr "새 버전 다운로드" +msgstr "신버전을 다운로드 중입니다" #: fail2ban_manager.sh:238 file_manager.sh:254 msgid "下载完成, 正在重新运行脚本" -msgstr "다운로드가 완료되었고 스크립트가 다시 시작됩니다" +msgstr "다운로드 완료, 스크립트 재실행 중" #: fail2ban_manager.sh:246 file_manager.sh:262 msgid "跳过更新" -msgstr "업데이트를 건너 뛰십시오" +msgstr "업데이트를 건너뛰기" #: fail2ban_manager.sh:250 file_manager.sh:266 msgid "当前已经是最新版本" -msgstr "이미 최신 버전입니다" +msgstr "현재 최신 버전입니다" #: file_manager.sh:8 msgid "用法" -msgstr "용법" +msgstr "사용 방법" #: file_manager.sh:8 msgid "文件扩展名" -msgstr "파일 확장 이름" +msgstr "파일 확장명" #: file_manager.sh:8 msgid "目录路径" @@ -1745,18 +1733,18 @@ msgstr "목차" #: file_manager.sh:18 msgid "不存在, 请检查路径" -msgstr "존재하지 마십시오. 경로를 확인하십시오" +msgstr "존재하지 않습니다, 경로를 확인하세요" #: file_manager.sh:31 file_manager.sh:213 msgid "列出所有" -msgstr "모두 나열하십시오" +msgstr "모두 나열하기" #: file_manager.sh:31 file_manager.sh:40 file_manager.sh:102 #: file_manager.sh:117 file_manager.sh:169 file_manager.sh:186 #: file_manager.sh:213 file_manager.sh:214 file_manager.sh:215 #: file_manager.sh:216 msgid "文件" -msgstr "문서" +msgstr "파일" #: file_manager.sh:40 msgid "没有找到" @@ -1768,92 +1756,92 @@ msgstr "파일 이름" #: file_manager.sh:70 msgid "序号" -msgstr "일련 번호" +msgstr "1" #: file_manager.sh:93 msgid "请输入网址 (例如 hey.run)" -msgstr "url을 입력하십시오 (예 : hey.run)" +msgstr "웹 사이트 주소 입력 (예를 들어 hey.run)" #: file_manager.sh:94 msgid "不要包含 http:// 或 https:// 开头" -msgstr "http : // 또는 https : // 포함하지 마십시오" +msgstr "http:// 나 https://로 시작하지 않도록 하세요" #: file_manager.sh:98 msgid "网址不能包含 http:// 或 https:// 开头" -msgstr "url에는 http :/ 또는 https : //가 포함될 수 없습니다" +msgstr "웹 주소는 http:// 또는 https://로 시작할 수 없습니다" #: file_manager.sh:102 file_manager.sh:117 msgid "已创建" -msgstr "만들었습니다" +msgstr "이미 생성되었습니다" #: file_manager.sh:111 msgid "请输入主机" -msgstr "호스트를 입력하십시오" +msgstr "주최자를 입력하세요" #: file_manager.sh:112 msgid "请输入端口" -msgstr "포트를 입력하십시오" +msgstr "포트를 입력하세요" #: file_manager.sh:113 msgid "请输入权重" -msgstr "무게를 입력하십시오" +msgstr "가중치를 입력하세요" #: file_manager.sh:135 msgid "追加完成" -msgstr "추가 완료" +msgstr "추가 완료되었습니다" #: file_manager.sh:159 msgid "请输入要编辑的文件编号" -msgstr "편집 할 파일 번호를 입력하십시오" +msgstr "편집할 파일 번호를 입력하세요" #: file_manager.sh:165 msgid "未安装, 正在尝试安装" -msgstr "설치되지 않고 설치하려고합니다" +msgstr "설치되지 않음, 설치하려고 시도 중" #: file_manager.sh:169 msgid "已编辑" -msgstr "편집" +msgstr "편집됨" #: file_manager.sh:181 msgid "请输入要删除的文件编号" -msgstr "삭제할 파일 번호를 입력하십시오" +msgstr "삭제할 파일 번호를 입력하세요" #: file_manager.sh:202 msgid "不支持的文件扩展名" -msgstr "도달 할 수없는 파일 확장자 이름" +msgstr "지원되지 않는 파일 확장자" #: file_manager.sh:212 msgid "主菜单" -msgstr "메인 메뉴" +msgstr "주 메뉴" #: file_manager.sh:214 msgid "创建一个新的" -msgstr "새로운 것을 만듭니다" +msgstr "새로운 것을 생성합니다" #: file_manager.sh:215 msgid "编辑一个已存在的" -msgstr "기존 존재를 편집하십시오" +msgstr "편집하기 존재하는" #: file_manager.sh:216 msgid "删除一个已存在的" -msgstr "기존 하나를 삭제하십시오" +msgstr "이미 존재하는 것을 삭제하여" #: file_manager.sh:219 msgid "请选择一个选项" -msgstr "옵션을 선택하십시오" +msgstr "한 가지 옵션을 선택하세요" #: file_manager.sh:229 msgid "无效选项, 请重试" -msgstr "효과적인 옵션, 다시 시도하십시오" +msgstr "무효된 옵션입니다, 다시 시도해주세요" #: file_manager.sh:275 msgid "重启成功" -msgstr "성공을 다시 시작하십시오" +msgstr "재시동 성공하였습니다" #: file_manager.sh:278 msgid "重启失败" -msgstr "다시 시작하지 않음" +msgstr "재시작 실패" #: file_manager.sh:278 msgid "请检查配置文件是否有误" -msgstr "구성 파일이 잘못되었는지 확인하십시오" +msgstr "구성 파일에 오류가 있는지 확인하세요" diff --git a/po/ru.po b/po/ru.po index aeb6e09..b69bfae 100644 --- a/po/ru.po +++ b/po/ru.po @@ -8,8 +8,8 @@ msgstr "" "Project-Id-Version: xray_install 1.0\n" "Report-Msgid-Bugs-To: https://github.com/hello-yunshu/Xray_bash_onekey/" "issues\n" -"POT-Creation-Date: 2025-01-29 17:17+0000\n" -"PO-Revision-Date: 2025-01-29 17:17+0000\n" +"POT-Creation-Date: 2025-02-06 18:01+0000\n" +"PO-Revision-Date: 2025-02-06 18:01+0000\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" "Language: ru\n" @@ -21,7 +21,7 @@ msgstr "" #: install.sh:35 msgid "提醒" -msgstr "напоминать" +msgstr "напомнить" #: install.sh:37 msgid "错误" @@ -29,7 +29,7 @@ msgstr "ошибка" #: install.sh:38 msgid "警告" -msgstr "предупреждать" +msgstr "предупреждение" #: install.sh:41 install.sh:1338 install.sh:3368 install.sh:3390 #: install.sh:3393 install.sh:3394 install.sh:3432 @@ -38,35 +38,35 @@ msgstr "не установлен" #: install.sh:100 msgid "日志文件归档失败" -msgstr "архивирование файла журнала не удалось" +msgstr "архивация файлов журнала не удалась" #: install.sh:105 msgid "清空日志文件失败" -msgstr "очистить файл журнала" +msgstr "не удалось очистить файл журнала" #: install.sh:109 msgid "日志文件已轮转并归档为" -msgstr "файл журнала был повернут и архив как" +msgstr "файлы журнала были перенаправлены и архивированы как" #: install.sh:138 install.sh:142 install.sh:146 install.sh:156 msgid "当前系统为" -msgstr "текущая система" +msgstr "текущая система является" #: install.sh:156 msgid "不在支持的系统列表内, 安装中断" -msgstr "установите прерывание в списке систем, который не поддерживается" +msgstr "не в списке поддерживаемых систем, установка прервана" #: install.sh:163 msgid "当前用户是 root 用户, 进入安装流程" -msgstr "текущий пользователь - root user, введите процесс установки" +msgstr "текущий пользователь является пользователем root, переход к установочному процессу" #: install.sh:165 msgid "当前用户不是 root 用户, 请切换到 root 用户后重新执行脚本" -msgstr "текущий пользователь не является пользователем root, пожалуйста, перепроверьте скрипт после перехода на пользователь root" +msgstr "текущий пользователь не является пользователем root, пожалуйста, переключитесь на пользователя root и выполните скрипт заново" #: install.sh:191 msgid "无法获取远程语言文件信息" -msgstr "невозможно получить информацию о файле удаленного языка" +msgstr "не удается получить информацию о удаленных языковых файлах" #: install.sh:209 msgid "正在更新语言文件" @@ -74,31 +74,31 @@ msgstr "обновление языковых файлов" #: install.sh:212 install.sh:291 msgid "语言文件更新失败" -msgstr "не удалось обновление языкового файла" +msgstr "файл языка не обновлен" #: install.sh:217 msgid "语言文件无效" -msgstr "языковой файл недействителен" +msgstr "файл языка недействителен" #: install.sh:223 msgid "版本文件更新失败" -msgstr "не удалось обновление файла издания" +msgstr "версия файла не обновлена" #: install.sh:230 msgid "语言文件更新完成" -msgstr "обновление языкового файла завершено" +msgstr "файл языка обновлен" #: install.sh:235 msgid "正在安装" -msgstr "установить" +msgstr "устанавливается" #: install.sh:238 msgid "安装失败" -msgstr "не удалось установить" +msgstr "установка не удалась" #: install.sh:238 install.sh:261 install.sh:282 install.sh:291 msgid "将使用默认语言" -msgstr "будет использовать язык по умолчанию" +msgstr "будет использован язык по умолчанию" #: install.sh:261 msgid "未找到" @@ -106,29 +106,29 @@ msgstr "не найдено" #: install.sh:282 msgid "不支持的语言" -msgstr "невысокий язык" +msgstr "не поддерживаемый язык" #: install.sh:296 msgid "发现语言文件更新" -msgstr "откройте для себя обновление языкового файла" +msgstr "обнаружены обновления языкового файла" #: install.sh:309 install.sh:1521 msgid "完成" -msgstr "заканчивать" +msgstr "завершить" #: install.sh:312 msgid "失败" -msgstr "неудача" +msgstr "провал" #: install.sh:319 msgid "在线版本检测失败, 请稍后再试" -msgstr "онлайн -версия теста не удалась, попробуйте еще раз позже" +msgstr "онлайн-проверка версии не удалась, попробуйте позже" #: install.sh:341 install.sh:349 install.sh:1105 install.sh:3289 #: install.sh:3290 install.sh:3291 install.sh:3558 install.sh:3559 #: install.sh:3560 fail2ban_manager.sh:11 fail2ban_manager.sh:38 msgid "安装" -msgstr "установить" +msgstr "установка" #: install.sh:343 install.sh:351 install.sh:1111 install.sh:3378 msgid "已安装" @@ -136,27 +136,27 @@ msgstr "установлен" #: install.sh:368 install.sh:372 msgid "自启动配置" -msgstr "самостоятельная конфигурация" +msgstr "начальная настройка" #: install.sh:381 msgid "链接库安装" -msgstr "установка библиотеки ссылок" +msgstr "установка библиотек-ссылок" #: install.sh:386 msgid "值为空或超出范围, 请重新输入" -msgstr "значение пустое или за пределами диапазона, пожалуйста, повторно" +msgstr "значение пустое или выходит за пределы, пожалуйста, введите заново" #: install.sh:395 msgid "值为空, 请重新输入" -msgstr "значение пусто, пожалуйста, повторно" +msgstr "значение пустое, пожалуйста, введите заново" #: install.sh:437 msgid "确定 连接端口" -msgstr "определить порт соединения" +msgstr "определите порт подключения" #: install.sh:438 install.sh:441 install.sh:2532 install.sh:2538 msgid "请输入连接端口" -msgstr "пожалуйста, введите порт подключения" +msgstr "введите порт подключения" #: install.sh:438 install.sh:441 install.sh:2532 install.sh:2538 #: file_manager.sh:113 @@ -168,15 +168,15 @@ msgstr "значение по умолчанию" #: install.sh:2553 install.sh:2568 install.sh:2573 install.sh:2578 #: install.sh:2579 msgid "请输入 0-65535 之间的值" -msgstr "пожалуйста, введите значение между 0-65535" +msgstr "введите значение от 0 до 65535" #: install.sh:440 msgid "端口 9443 不允许使用, 请重新输入" -msgstr "порт 9443 не разрешается использовать, пожалуйста, повторно" +msgstr "порт 9443 не разрешен, пожалуйста, введите другой" #: install.sh:449 msgid "请选择安装协议" -msgstr "пожалуйста, выберите протокол установки" +msgstr "пожалуйста, выберите установочное соглашение" #: install.sh:450 install.sh:1410 install.sh:1443 install.sh:1490 #: install.sh:2629 install.sh:2700 install.sh:2749 fail2ban_manager.sh:138 @@ -192,40 +192,40 @@ msgstr "по умолчанию" #: install.sh:2761 fail2ban_manager.sh:16 fail2ban_manager.sh:103 #: fail2ban_manager.sh:136 file_manager.sh:95 msgid "请输入" -msgstr "пожалуйста, введите" +msgstr "введите" #: install.sh:454 install.sh:1414 install.sh:1445 install.sh:1494 #: install.sh:2492 install.sh:2632 install.sh:2703 install.sh:2752 msgid "请输入有效的数字" -msgstr "пожалуйста, введите действительные номера" +msgstr "пожалуйста, введите действительный номер" #: install.sh:475 msgid "是否添加简单 ws/gRPC 协议 用于负载均衡" -msgstr "добавить ли простой протокол ws/grpc для балансировки нагрузки" +msgstr "добавить простые протоколы ws/grpclb для распределения нагрузки" #: install.sh:476 msgid "如不清楚具体用途, 请勿选择" -msgstr "если вы не знаете конкретного использования, пожалуйста, не выбирайте" +msgstr "если вы не знаете конкретного использования, не выбирайте" #: install.sh:495 msgid "已跳过添加简单 ws/gRPC 协议" -msgstr "пропустить, чтобы добавить простой протокол ws/grpc" +msgstr "пропущено добавление простого протокола ws/grpc" #: install.sh:524 install.sh:546 install.sh:627 install.sh:660 install.sh:692 msgid "是否需要自定义" -msgstr "вам нужен обычай" +msgstr "нужно ли настраиватьcustomized" #: install.sh:528 install.sh:550 install.sh:631 install.sh:664 msgid "请输入自定义" -msgstr "пожалуйста, введите пользовательский" +msgstr "введите пользовательский" #: install.sh:528 install.sh:550 msgid "请勿与其他端口相同" -msgstr "не будьте такими же, как другие порты" +msgstr "пожалуйста, не используйте другие порты" #: install.sh:567 file_manager.sh:121 msgid "是否需要设置防火墙" -msgstr "вам нужно настроить брандмауэр" +msgstr "необходимо ли настроить брандмауэр" #: install.sh:607 install.sh:611 file_manager.sh:135 file_manager.sh:139 #: file_manager.sh:143 @@ -234,38 +234,38 @@ msgstr "брандмауэр" #: install.sh:607 install.sh:611 file_manager.sh:139 file_manager.sh:143 msgid "重启完成" -msgstr "перезапуск" +msgstr "перезагрузка завершена" #: install.sh:613 msgid "开放防火墙相关端口" -msgstr "открытый брандмауэр -связанный порт" +msgstr "открыть порты для брандмауэра" #: install.sh:614 msgid "若修改配置, 请注意关闭防火墙相关端口" -msgstr "если вы измените конфигурацию, обратите внимание на отключение порта, связанного с брандмауэром" +msgstr "если вы изменяете конфигурацию, обратите внимание на закрытие соответствующих портов брандмауэра" #: install.sh:615 install.sh:3293 install.sh:3306 install.sh:3307 #: install.sh:3567 install.sh:3586 fail2ban_manager.sh:76 msgid "配置" -msgstr "конфигурация" +msgstr "настроить" #: install.sh:618 file_manager.sh:147 msgid "跳过防火墙设置" -msgstr "пропустить настройки брандмауэра" +msgstr "обойти настройки брандмауэра" #: install.sh:627 install.sh:631 install.sh:632 install.sh:636 install.sh:644 #: install.sh:660 install.sh:664 install.sh:665 install.sh:669 install.sh:677 #: install.sh:1044 msgid "伪装路径" -msgstr "камуфляж" +msgstr "маскировка пути" #: install.sh:631 install.sh:664 msgid "不需要" -msgstr "ненужный" +msgstr "не нужно" #: install.sh:644 install.sh:677 install.sh:811 msgid "是否需要修改" -msgstr "вам нужно изменить" +msgstr "необходимо ли внести изменения" #: install.sh:692 install.sh:702 install.sh:2662 msgid "用户名" @@ -273,19 +273,19 @@ msgstr "имя пользователя" #: install.sh:696 msgid "请输入正确的 email" -msgstr "пожалуйста, введите правильное электронное письмо" +msgstr "введите правильный email" #: install.sh:709 msgid "是否需要自定义字符串映射" -msgstr "вам нужно индивидуальное отображение строк" +msgstr "необходима ли настройка пользовательских строк отображения" #: install.sh:713 msgid "请输入自定义字符串" -msgstr "пожалуйста, введите настраиваемую строку" +msgstr "введите пользовательскую строку" #: install.sh:713 msgid "最多30字符" -msgstr "до 30 символов" +msgstr "не более 30 символов" #: install.sh:715 msgid "自定义字符串" @@ -294,43 +294,43 @@ msgstr "пользовательская строка" #: install.sh:722 install.sh:2346 install.sh:3309 install.sh:3562 #: install.sh:3647 msgid "映射字符串" -msgstr "картирование строки" +msgstr "маркировка строк" #: install.sh:733 msgid "检测到 target 域名已配置, 是否保留" -msgstr "целевое доменное имя было настроено, независимо от того, сохраняется оно" +msgstr "обнаружено, что целевое доменное имя уже настроено, сохранить его" #: install.sh:753 msgid "请输入一个域名" -msgstr "пожалуйста, введите доменное имя" +msgstr "введите доменное имя" #: install.sh:754 msgid "域名要求支持 TLSv1.3、X25519 与 H2 以及域名非跳转用" -msgstr "доменное имя требует поддержки tlsv1.3, x25519 и h2, а также доменное имя не -jupp" +msgstr "доменные имена должны поддерживать tlsv1.3, x25519 и h2, а также домены не должны переадресовываться" #: install.sh:755 msgid "确认域名符合要求后请输入" -msgstr "пожалуйста, введите после подтверждения того, что доменное имя соответствует требованиям" +msgstr "после подтверждения соответствия доменного имени введите" #: install.sh:756 msgid "正在检测域名请等待" -msgstr "подождите доменного имени" +msgstr "проверяется домен, пожалуйста, подождите" #: install.sh:763 install.sh:768 install.sh:773 msgid "该域名不支持" -msgstr "доменное имя не поддерживает" +msgstr "доменное имя не поддерживается" #: install.sh:778 msgid "该域名发生了跳转" -msgstr "доменное имя прыгнуло" +msgstr "домен был перенаправлен" #: install.sh:785 msgid "该域名可能不满足所有要求" -msgstr "это доменное имя может не соответствовать всем требованиям" +msgstr "доменное имя может не соответствовать всем требованиям" #: install.sh:786 msgid "是否仍要设置此域名" -msgstr "вам все еще нужно установить это доменное имя" +msgstr "не установить ли этот домен" #: install.sh:798 install.sh:803 install.sh:1412 msgid "域名" @@ -338,7 +338,7 @@ msgstr "доменное имя" #: install.sh:798 msgid "满足所有要求" -msgstr "соответствовать всем требованиям" +msgstr "все требования выполнены" #: install.sh:811 msgid "域名的" @@ -350,23 +350,23 @@ msgstr "по умолчанию" #: install.sh:812 msgid "域名本身" -msgstr "само доменное имя" +msgstr "доменное имя самой" #: install.sh:813 install.sh:851 install.sh:894 msgid "如不清楚具体用途, 请勿继续" -msgstr "если вы не знаете конкретного использования, пожалуйста, не продолжайте" +msgstr "если вы не знаете конкретного использования, не продолжайте" #: install.sh:850 install.sh:893 msgid "是否变更" -msgstr "изменить ли" +msgstr "изменить" #: install.sh:850 msgid "负载均衡" -msgstr "балансировка нагрузки" +msgstr "вывод распределения нагрузки" #: install.sh:855 msgid "请选择协议为 ws 或 gRPC" -msgstr "пожалуйста, выберите протокол в ws или grpc" +msgstr "выберите протокол как ws или grpc" #: install.sh:858 fail2ban_manager.sh:102 msgid "返回" @@ -374,20 +374,20 @@ msgstr "возвращаться" #: install.sh:860 msgid "请重新输入正确的数字" -msgstr "пожалуйста, повторьте правильный номер" +msgstr "пожалуйста, введите правильное число ещё раз" #: install.sh:865 install.sh:902 msgid "本地文件 file_manager.sh 不存在, 正在下载" -msgstr "локальный файл file_manager.sh не существует, загрузка" +msgstr "локальный файл file_manager.sh не существует, выполняется загрузка" #: install.sh:868 install.sh:905 install.sh:2039 fail2ban_manager.sh:242 #: file_manager.sh:258 msgid "下载失败, 请手动下载并安装新版本" -msgstr "скачать не удалась, пожалуйста, загрузите и установите новую версию вручную" +msgstr "загрузка не удалась, пожалуйста, скачайте и установите новую версию вручную" #: install.sh:878 msgid "无效选项 请重试" -msgstr "неотверждаемые параметры, пожалуйста, попробуйте" +msgstr "недопустимый ввод повторите попытку" #: install.sh:886 install.sh:915 install.sh:1975 install.sh:2013 #: install.sh:2029 @@ -396,17 +396,17 @@ msgstr "текущий режим не поддерживает эту опер #: install.sh:895 msgid "配置用途可以参考文章" -msgstr "вы можете обратиться к статье для конфигурации" +msgstr "конфигурация используется в соответствии с статьей" #: install.sh:895 msgid "敬请期待" -msgstr "пожалуйста, с нетерпением жду возможности" +msgstr "следите за обновлениями" #: install.sh:937 install.sh:941 install.sh:945 install.sh:957 install.sh:962 #: install.sh:968 install.sh:988 install.sh:994 install.sh:1044 install.sh:1063 #: install.sh:3307 install.sh:3530 msgid "修改" -msgstr "исправлять" +msgstr "изменение" #: install.sh:996 msgid "端口号" @@ -414,117 +414,109 @@ msgstr "номер порта" #: install.sh:1046 msgid "不支持" -msgstr "не поддержка" +msgstr "не поддерживается" #: install.sh:1053 msgid "用户名修改" -msgstr "модификация имени пользователя" +msgstr "изменение имени пользователя" #: install.sh:1056 install.sh:1066 msgid "请先删除多余的用户" -msgstr "сначала удалите лишние пользователей" +msgstr "пожалуйста, сначала удалите лишних пользователей" #: install.sh:1074 install.sh:1082 install.sh:1089 install.sh:1763 #: install.sh:1833 install.sh:1863 install.sh:1872 install.sh:1895 msgid "配置修改" -msgstr "модификация конфигурации" +msgstr "настройка изменена" #: install.sh:1094 -msgid "检测到 Xray 的权限控制, 启动擦屁股程序" -msgstr "обнаружен контроль разрешений рентгеновского происхождения, и запускается программа царапин" +msgid "检测到 Xray 的权限控制, 启动修改程序" +msgstr "обнаружено управление правами xray, запуск модификации" #: install.sh:1099 -msgid "擦屁股完成" -msgstr "завершите ягодицы" +msgid "修改完成" +msgstr "изменения завершены" #: install.sh:1116 msgid "若更新无效, 建议直接卸载再安装" -msgstr "если обновление недействительно, рекомендуется удалить его напрямую и установить его" +msgstr "если обновление неэффективно, рекомендуется удалить и заново установить" #: install.sh:1117 msgid "部分新功能需要重新安装才可生效" -msgstr "некоторые новые функции должны быть переустановлены, прежде чем они смогут вступить в силу" +msgstr "некоторые новые функции требуют повторной установки для активации" #: install.sh:1123 msgid "检测到存在最新版" -msgstr "последняя версия обнаружена" +msgstr "обнаружена доступная новая версия" #: install.sh:1124 msgid "脚本可能未兼容此版本" -msgstr "сценарий может быть не совместим с этой версией" +msgstr "сценарий может быть несовместим с этой версией" #: install.sh:1125 msgid "是否更新" -msgstr "обновлять" +msgstr "обновить" -#: install.sh:1132 -msgid "即将升级" -msgstr "улучшать" - -#: install.sh:1136 install.sh:1143 install.sh:1150 install.sh:1333 -#: install.sh:3548 install.sh:3549 install.sh:3550 +#: install.sh:1132 install.sh:1136 install.sh:1143 install.sh:1150 +#: install.sh:1333 install.sh:3548 install.sh:3549 install.sh:3550 msgid "升级" msgstr "обновление" -#: install.sh:1139 -msgid "即将升级/重装" -msgstr "улучшен/переустановлен" - -#: install.sh:1147 +#: install.sh:1139 install.sh:1147 msgid "升级/重装" msgstr "обновление/переустановка" #: install.sh:1163 msgid "Reality 协议有流量偷跑的风险" -msgstr "протокол реальности имеет риск кражи трафика" +msgstr "reality протокол имеет риск утечки трафика" #: install.sh:1164 msgid "该风险在 target 网址被 cdn 加速时存在" -msgstr "этот риск существует, когда целевой веб -сайт ускоряется cdn" +msgstr "этот риск существует, когда целевое url-адрес ускоряется с помощью cdn" #: install.sh:1165 msgid "是否额外安装 nginx 前置保护(推荐)" -msgstr "должно ли установить предварительную защиту nginx (рекомендуется)" +msgstr "установить дополнительную защиту nginx перед этим (рекомендуется)" #: install.sh:1169 msgid "已跳过安装" -msgstr "пропустить установку" +msgstr "пропущена установка" #: install.sh:1199 msgid "已存在, 跳过编译安装过程" -msgstr "уже пропустите процесс компиляции и установки" +msgstr "существует, пропустить этап компиляции и установки" #: install.sh:1202 msgid "检测到旧版本安装的" -msgstr "старая версия была установлена" +msgstr "обнаружен установочный пакет старой версии" #: install.sh:1203 msgid "请先做好备份" -msgstr "сначала сделайте резервную копию" +msgstr "пожалуйста, сначала сделайте резервную копию" #: install.sh:1204 msgid "是否需要删除 (请删除)" -msgstr "вам нужно удалить (пожалуйста, удалите)" +msgstr "необходимо удалить (пожалуйста, удалите)" #: install.sh:1208 msgid "已跳过删除" -msgstr "пропустить удаление" +msgstr "пропущено удаление" #: install.sh:1215 msgid "日志目录已更改, 日志清除需要重新设置" -msgstr "справочник журнала был изменен, и очистка журнала должно быть сброшено" +msgstr "директория журнала изменена, настройка очистки журнала требует перенастраивания" #: install.sh:1221 msgid "检测到其他套件安装的 Nginx, 继续安装会造成冲突, 请处理后安装" -msgstr "nginx установлен в других наборах, продолжающаяся установка вызовет конфликт, установите его после обработки" +msgstr "обнаружена установленная версия nginx в другом пакете, продолжение установки вызовет конфликт, please handle before installation" #: install.sh:1235 msgid "即将下载已编译的" -msgstr "компиляция собирается загрузить" +msgstr "скоро будет загружен скомпилированный" #: install.sh:1280 install.sh:1281 install.sh:1288 install.sh:1289 msgid "配置文件不完整, 退出升级" -msgstr "файл конфигурации неполный, выходить и обновлять" +msgstr "конфигурационный файл неполный, выход из обновления" #: install.sh:1293 install.sh:1294 msgid "当前安装模式不需要" @@ -532,51 +524,51 @@ msgstr "текущий режим установки не требуется" #: install.sh:1298 install.sh:1299 msgid "配置文件不存在, 退出升级" -msgstr "файл конфигурации не существует, выходить и обновлять" +msgstr "профиль конфигурации отсутствует, выход из обновления" #: install.sh:1303 msgid "删除旧版" -msgstr "удалить старую версию" +msgstr "удалите предыдущую версию" #: install.sh:1307 msgid "是否保留原 Nginx 配置文件" -msgstr "сохранить исходный файл конфигурации nginx" +msgstr "оставить ли оригинальный файл конфигурации nginx" #: install.sh:1315 install.sh:1584 msgid "原配置文件已删除" -msgstr "исходный файл конфигурации был удален" +msgstr "удален исходный профиль" #: install.sh:1319 msgid "原配置文件已保留" -msgstr "исходный файл конфигурации был сохранен" +msgstr "старый профайл сохранён" #: install.sh:1335 msgid "已为最新版" -msgstr "был последней версией" +msgstr "это последняя версия" #: install.sh:1350 msgid "设置后台定时自动更新程序 (包含: 脚本/Xray/Nginx)" -msgstr "установите программу автоматического обновления (включая: script/xray/nginx) при настройке фона" +msgstr "настроить автоматическое обновление программы в фоновом режиме (включая: скрипты/xray/nginx)" #: install.sh:1351 msgid "可能自动更新后有兼容问题, 谨慎开启" -msgstr "после автоматического обновления могут быть совместимые проблемы и откройте осторожно" +msgstr "возможны проблемы совместимости после автоматического обновления, будьте осторожны при включении" #: install.sh:1352 msgid "是否开启" -msgstr "открыть ли" +msgstr "начать" #: install.sh:1358 install.sh:3294 msgid "设置自动更新" -msgstr "установите автоматическое обновление" +msgstr "настроить автоматическое обновление" #: install.sh:1363 msgid "已设置自动更新" -msgstr "установите автоматическое обновление" +msgstr "установлена автоматическая обновление" #: install.sh:1364 msgid "是否关闭" -msgstr "закрыть ли" +msgstr "закрыть" #: install.sh:1370 msgid "删除自动更新" @@ -584,75 +576,75 @@ msgstr "удалить автоматическое обновление" #: install.sh:1379 msgid "安装 SSL 证书生成脚本依赖" -msgstr "установить зависимости сценария сценария ssl -сертификаты" +msgstr "установка скрипта для создания сертификата ssl" #: install.sh:1381 msgid "安装 SSL 证书生成脚本" -msgstr "установите сертификат ssl для создания сценария" +msgstr "установите скрипт для генерации сертификата ssl" #: install.sh:1387 msgid "检测到原域名配置存在, 是否跳过域名设置" -msgstr "обнаружено наличие исходной конфигурации доменного имени, независимо от того, пропустить настройки доменного имени" +msgstr "обнаружена конфигурация оригинального доменного имени, пропустить настройку домена" #: install.sh:1401 msgid "已跳过域名设置" -msgstr "пропустить настройки доменного имени" +msgstr "пропущена настройка домена" #: install.sh:1407 msgid "确定域名信息" -msgstr "определить информацию домена" +msgstr "установите информацию о домене" #: install.sh:1408 msgid "请输入你的域名信息" -msgstr "пожалуйста, введите информацию о своем доменном имени" +msgstr "введите информацию о вашем домене" #: install.sh:1409 msgid "请选择公网IP(IPv4/IPv6)或手动输入域名" -msgstr "пожалуйста, выберите ip public network ip (ipv4/ipv6) или вручную введите доменное имя" +msgstr "пожалуйста, выберите публичный ip-адрес (ipv4/ipv6) или введите домен вручную" #: install.sh:1411 install.sh:1491 msgid "不推荐" -msgstr "не рекомендую" +msgstr "не рекомендуется" #: install.sh:1415 install.sh:1496 msgid "正在获取公网IP信息, 请耐心等待" -msgstr "получите информацию об публичной сети ip, пожалуйста, подождите терпеливо" +msgstr "получение публичной информации ip, пожалуйста, подождите терпеливо" #: install.sh:1425 msgid "此选项用于服务器商仅提供域名访问服务器" -msgstr "эта опция используется для поставщиков серверов для предоставления только серверов домена доменного имени" +msgstr "этот параметр используется когда провайдер предоставляет доступ к серверу только через доменное имя" #: install.sh:1426 msgid "注意服务器商域名添加 CNAME 记录" -msgstr "обратите внимание, что имя бизнес -домена сервера добавлено" +msgstr "обратите внимание на добавление cname записи для доменного имени провайдера серверов" #: install.sh:1434 msgid "域名DNS解析IP" -msgstr "домен dns -анализ ip" +msgstr "доменное имя dns расшифровывается в ip" #: install.sh:1435 install.sh:1510 msgid "公网IP/域名" -msgstr "общедоступная сеть ip/доменное имя" +msgstr "публичный ip/домен" #: install.sh:1437 msgid "域名DNS解析IP与公网IP匹配" -msgstr "домен dns -анализ ip и match public network ip" +msgstr "доменное имя dns-распознавание ip соответствует общедоступному ip" #: install.sh:1439 msgid "请确保域名添加了正确的 A/AAAA 记录, 否则将无法正常使用 Xray" -msgstr "пожалуйста, убедитесь, что доменное имя добавляет правильную запись a/aaaa, в противном случае оно не сможет использовать рентген обычно" +msgstr "пожалуйста, убедитесь, что доменное имя добавлено с правильными a/aaaa записями, иначе xray не будет функционировать properly. please note that properly was kept in english as per your instructions to leave english portions as they are. however, for a more coherent translation, you might consider replacing properly with a russian word or phrase" #: install.sh:1440 msgid "域名DNS解析IP与公网IP不匹配, 请选择" -msgstr "домен dns sacersing ip не соответствует ip общедоступной сети, пожалуйста, выберите" +msgstr "доменное имя dns-распознавание ip не соответствует общедоступному ip, пожалуйста, выберите" #: install.sh:1441 install.sh:1448 msgid "继续安装" -msgstr "продолжайте устанавливать" +msgstr "продолжить установку" #: install.sh:1442 msgid "重新输入" -msgstr "re -enter" +msgstr "повторный ввод" #: install.sh:1443 msgid "终止安装" @@ -660,59 +652,59 @@ msgstr "завершить установку" #: install.sh:1454 msgid "安装终止" -msgstr "установить" +msgstr "установка завершена" #: install.sh:1465 msgid "检测到原IP配置存在, 是否跳过IP设置" -msgstr "обнаружение существования исходной конфигурации ip, будь то пропустить настройки ip" +msgstr "обнаружена оригинальная конфигурация ip, пропустить настройку ip" #: install.sh:1482 msgid "已跳过IP设置" -msgstr "пропустить настройки ip" +msgstr "пропущена настройка ip" #: install.sh:1488 msgid "确定公网IP信息" -msgstr "определить информацию об публичной сети ip" +msgstr "определите информацию о публичном ip-адресе" #: install.sh:1489 msgid "请选择公网IP为IPv4或IPv6" -msgstr "пожалуйста, выберите ip public network как ipv4 или ipv6" +msgstr "пожалуйста, выберите публичный ip-адрес как ipv4 или ipv6" #: install.sh:1492 msgid "手动输入" -msgstr "вручную ввод" +msgstr "ручной ввод" #: install.sh:1519 -msgid "尝试自动 kill 占用进程" -msgstr "попробуйте процесс автоматического убийства" +msgid "尝试终止占用的进程" +msgstr "попытка прекратить занятый процесс" #: install.sh:1530 msgid "证书测试签发成功, 开始正式签发" -msgstr "испытание на сертификат был успешно выпущен, и официальное выпущение начало официально выпущено" +msgstr "сертификат успешно прошел тестирование, начинается официальное подписание" #: install.sh:1533 msgid "证书测试签发失败" -msgstr "выпуск тестов на сертификат не удается" +msgstr "сертификат не был успешно подписан" #: install.sh:1540 msgid "证书生成成功" -msgstr "успешный сертификат" +msgstr "сертификат успешно сгенерирован" #: install.sh:1546 msgid "证书配置成功" -msgstr "успешная конфигурация сертификата" +msgstr "сертификат настроен успешно" #: install.sh:1550 msgid "证书生成失败" -msgstr "провал генерации сертификатов" +msgstr "сертификат не удалось сгенерировать" #: install.sh:1578 msgid "检测到 Xray 配置过多用户" -msgstr "тестирование слишком много пользователей в конфигурации xray" +msgstr "обнаружено избыточное количество пользователей в конфигурации xray" #: install.sh:1579 msgid "是否保留原 Xray 配置文件" -msgstr "сохранить исходный файл конфигурации рентгеновского языка" +msgstr "сохранить исходный файл конфигурации xray" #: install.sh:1597 msgid "添加简单 ws/gRPC 协议" @@ -720,190 +712,191 @@ msgstr "добавить простой протокол ws/grpc" #: install.sh:1612 msgid "检测到配置文件, 是否读取配置文件" -msgstr "обнаружение файла конфигурации, будь то прочитать файл конфигурации" +msgstr "обнаружены файлы конфигурации, читать файлы конфигурации" #: install.sh:1617 install.sh:1638 install.sh:1734 install.sh:2916 msgid "已删除配置文件" -msgstr "удаленный файл конфигурации" +msgstr "удалён профиль" #: install.sh:1620 install.sh:1633 install.sh:1729 install.sh:2912 msgid "已保留配置文件" -msgstr "файл конфигурации был сохранен" +msgstr "зарезервирован профиль" #: install.sh:1627 msgid "检测到当前安装模式与配置文件的安装模式不一致" -msgstr "обнаружен текущий режим установки, что режим установки файла конфигурации не согласуется" +msgstr "обнаружено несоответствие текущего режима установки с режимом установки в профиле" #: install.sh:1628 msgid "是否保留配置文件 (强烈不建议)" -msgstr "сохранить ли файл конфигурации (не рекомендуется сильнее)" +msgstr "оставить профиль (это не рекомендуется)" #: install.sh:1632 msgid "请务必确保配置文件正确" -msgstr "пожалуйста, убедитесь, что файл конфигурации верен" +msgstr "пожалуйста, убедитесь, что конфигurationный файл правильно настроен" #: install.sh:1724 msgid "检测到配置文件不完整, 是否保留配置文件" -msgstr "файл конфигурации не завершен, сохраняется ли файл конфигурации" +msgstr "обнаружен неполный профиль конфигурации, сохранить профиль конфигурации" #: install.sh:1879 msgid "配置删除" -msgstr "удаление конфигурации" +msgstr "настройка удаления" #: install.sh:1900 msgid "设置 Nginx 开机自启" -msgstr "установите nginx и запустите себя" +msgstr "настроить автозапуск nginx" #: install.sh:1903 install.sh:3584 install.sh:3587 install.sh:3588 #: install.sh:3589 fail2ban_manager.sh:10 msgid "设置" -msgstr "настраивать" +msgstr "настройки" #: install.sh:1903 install.sh:1911 msgid "开机自启" -msgstr "начните самостоятельно" +msgstr "запуск при старте" #: install.sh:1908 msgid "关闭 Nginx 开机自启" -msgstr "выключите nginx и начните самостоятельно" +msgstr "отключить автозапуск nginx" #: install.sh:1911 msgid "关闭" -msgstr "закрытие" +msgstr "закрыть" #: install.sh:1918 msgid "停止已有服务" -msgstr "прекратите существующую услугу" +msgstr "остановить существующие службы" #: install.sh:1924 install.sh:1927 install.sh:2500 install.sh:2502 #: install.sh:3577 fail2ban_manager.sh:99 fail2ban_manager.sh:188 msgid "重启" -msgstr "перезапуск" +msgstr "перезагрузить" #: install.sh:1932 install.sh:1935 install.sh:3578 fail2ban_manager.sh:98 #: fail2ban_manager.sh:158 msgid "启动" -msgstr "запускать" +msgstr "запуск" #: install.sh:1940 install.sh:1943 install.sh:2003 install.sh:3579 #: fail2ban_manager.sh:100 msgid "停止" -msgstr "останавливаться" +msgstr "остановись" #: install.sh:1956 install.sh:1972 msgid "新版本已自动设置证书自动更新" -msgstr "новая версия автоматически настроена автоматически" +msgstr "новая версия настроена для автоматического обновления сертификата" #: install.sh:1957 msgid "老版本请及时删除 废弃的 改版证书自动更新" -msgstr "пожалуйста, удалите заброшенный сертификат пересмотра вовремя, чтобы вовремя обновлять старую версию" +msgstr "пожалуйста, удалите старую версию во времени" #: install.sh:1958 msgid "已设置改版证书自动更新" -msgstr "автоматически обновлять сертификат пересмотра" +msgstr "установлена автоматическая обновление сертификата обновления версии" #: install.sh:1959 msgid "是否需要删除改版证书自动更新 (请删除)" -msgstr "вам нужно автоматически удалить сертификат пересмотра и обновлять (пожалуйста, удалите)" +msgstr "необходимо ли удалить обновление сертификата при переработке (пожалуйста, удалите)" #: install.sh:1966 msgid "删除改版证书自动更新" -msgstr "удалить автоматическое обновление сертификата пересмотра" +msgstr "удаление сертификата обновления автоматически обновляется" #: install.sh:1990 msgid "已过期" -msgstr "расширение" +msgstr "просрочено" #: install.sh:1992 msgid "证书生成日期" -msgstr "дата генерации сертификатов" +msgstr "дата создания сертификата" #: install.sh:1993 msgid "证书生成天数" -msgstr "дни генерации сертификатов" +msgstr "срок генерации сертификата в днях" #: install.sh:1994 msgid "证书剩余天数" -msgstr "сертификат оставшиеся дни" +msgstr "сертификат осталось дней" #: install.sh:1998 msgid "是否立即更新证书" -msgstr "вы немедленно обновляете сертификат" +msgstr "необходимо немедленно обновить сертификат" #: install.sh:2010 install.sh:2022 msgid "证书签发工具不存在, 请确认是否证书为脚本签发" -msgstr "инструмента выпуска сертификата не существует, пожалуйста, подтвердите, выдается ли сертификат в качестве сценария" +msgstr "средство для выпуска сертификатов отсутствует, пожалуйста, подтвердите, был ли сертификат выдан сценарием" #: install.sh:2026 msgid "证书更新" -msgstr "обновление сертификата" +msgstr "сертификат обновлен" #: install.sh:2036 msgid "本地文件 fail2ban_manager.sh 不存在, 正在下载" -msgstr "локальный файл fail2ban_manager.sh не существует и загружается" +msgstr "локальный файл fail2ban_manager.sh не существует, загружается" #: install.sh:2050 msgid "检测到日志文件大小如下:" -msgstr "размер файла журнала обнаружен следующим образом" +msgstr "обнаружен размер файла журнала следующий" #: install.sh:2052 msgid "即将清除" -msgstr "быть очищенным" +msgstr "скоро очистка" #: install.sh:2054 msgid "日志清理" -msgstr "очистка журнала" +msgstr "журнал очистки" #: install.sh:2064 msgid "已设置旧版自动清理日志任务" -msgstr "была настроена старая версия задачи автоматического журнала очистки" +msgstr "настроен задача очистки старых логов автоматически" #: install.sh:2065 msgid "是否需要删除旧版自动清理日志任务" -msgstr "вам нужно удалить старую версию задачи автоматического журнала очистки" +msgstr "необходимо удалить старую задачу автоматической очистки журнала" #: install.sh:2069 install.sh:2103 msgid "保留现有自动清理日志任务" -msgstr "сохранить существующую задачу автоматической очистки" +msgstr "оставить существующую задачу автоматической очистки журналов" #: install.sh:2074 msgid "删除旧版自动清理日志任务" -msgstr "удалить старую версию задачи автоматической очистки" +msgstr "удаление задачи автоматической очистки старых логов" #: install.sh:2081 msgid "是否需要设置自动清理日志" -msgstr "вам нужно настроить автоматическое журнал очистки" +msgstr "необходимо ли настроить автоматическую очистку журнала" #: install.sh:2085 install.sh:3606 install.sh:3615 install.sh:3667 #: install.sh:3673 install.sh:3709 install.sh:3715 install.sh:3721 #: install.sh:3750 install.sh:3777 install.sh:3784 install.sh:3789 #: fail2ban_manager.sh:159 fail2ban_manager.sh:172 fail2ban_manager.sh:181 +#: fail2ban_manager.sh:189 msgid "清空屏幕" msgstr "очистить экран" #: install.sh:2089 msgid "将在 每周三 04:00 自动清空日志" -msgstr "журнал будет автоматически опустошен каждую среду в 04:00" +msgstr "будут автоматически очищены в среду в 04:00" #: install.sh:2094 msgid "已设置自动清理日志任务" -msgstr "задача автоматической очистки журнала была установлена" +msgstr "установлена задача автоматической очистки журнала" #: install.sh:2095 msgid "是否需要删除现有自动清理日志任务" -msgstr "вам нужно удалить существующую задачу автоматического журнала очистки" +msgstr "необходимо ли удалить существующую задачу автоматической очистки журнала" #: install.sh:2100 msgid "删除自动清理日志任务" -msgstr "удалить задачу автоматической очистки" +msgstr "удалить задачу автоматической очистки журнала" #: install.sh:2118 msgid "设置自动清理日志" -msgstr "установить автоматическую очистку" +msgstr "настроить автоматическую очистку журнала" #: install.sh:2243 msgid "配置分享" -msgstr "обмен конфигурацией" +msgstr "настройки для sharing" #: install.sh:2245 install.sh:2251 install.sh:2256 install.sh:2261 #: install.sh:2265 install.sh:2673 @@ -913,29 +906,29 @@ msgstr "поделиться ссылкой" #: install.sh:2246 install.sh:2252 install.sh:2257 install.sh:2262 #: install.sh:2266 msgid "二维码" -msgstr "qr -код" +msgstr "кодовая строка двойного измерения" #: install.sh:2275 msgid "生成分享链接" -msgstr "генерировать ссылку на обмен" +msgstr "создать ссылку для sharing" #: install.sh:2289 install.sh:2292 install.sh:2295 install.sh:2298 #: install.sh:2301 install.sh:2304 install.sh:2307 install.sh:2310 #: install.sh:2313 install.sh:2316 msgid "安装成功" -msgstr "успешная установка" +msgstr "установка успешна" #: install.sh:2320 msgid "目前分享链接规范为实验阶段, 请自行判断是否适用" -msgstr "в настоящее время спецификация общего звена является экспериментальной стадией, пожалуйста, определите, применимо ли это самостоятельно" +msgstr "в настоящее время нормы для распространения ссылок находятся на экспериментальном этапе, пожалуйста, оцените самостоятельно, подходят ли они для использования" #: install.sh:2322 install.sh:3575 msgid "配置信息" -msgstr "информация о конфигурации" +msgstr "конфигурационная информация" #: install.sh:2323 msgid "主机" -msgstr "хозяин" +msgstr "хост" #: install.sh:2326 install.sh:2328 install.sh:2330 install.sh:2331 #: install.sh:2334 install.sh:2338 install.sh:2340 install.sh:2342 @@ -946,7 +939,7 @@ msgstr "порт" #: install.sh:2347 msgid "用户id" -msgstr "id пользователя" +msgstr "идентификатор пользователя" #: install.sh:2349 msgid "加密" @@ -954,11 +947,11 @@ msgstr "шифрование" #: install.sh:2350 msgid "传输协议" -msgstr "протокол передачи" +msgstr "протокол передачи данных" #: install.sh:2351 msgid "底层传输安全" -msgstr "безопасность основной передачи" +msgstr "нижний уровень транспортной безопасности" #: install.sh:2354 install.sh:2358 install.sh:2371 install.sh:2377 msgid "路径" @@ -966,7 +959,7 @@ msgstr "путь" #: install.sh:2354 install.sh:2358 install.sh:2371 install.sh:2377 msgid "不要落下" -msgstr "не упасть" +msgstr "не уходи" #: install.sh:2356 install.sh:2359 install.sh:2374 install.sh:2379 msgid "不需要加" @@ -978,19 +971,19 @@ msgstr "управление потоком" #: install.sh:2393 msgid "即将申请证书, 支持使用自定义证书" -msgstr "чтобы подать заявку в ближайшее время, поддержать использование пользовательских сертификатов" +msgstr "заявка на получение сертификата, поддержка использования пользовательского сертификата" #: install.sh:2394 msgid "如需使用自定义证书, 请按如下步骤:" -msgstr "если вам нужно использовать пользовательский сертификат, пожалуйста, выполните следующие шаги" +msgstr "если вы хотите использовать пользовательский сертификат, следуйте приведенным ниже инструкциям" #: install.sh:2395 msgid "1. 将证书文件重命名: 私钥(xray.key)、证书(xray.crt)" -msgstr "1. переименовать документ сертификата: ключ (xray.key), сертификат (xray.crt)" +msgstr "1. переименуйте файлы сертификата: приватный ключ (xray.key), сертификат (xray.crt)" #: install.sh:2396 msgid "2. 将重命名后的证书文件放入" -msgstr "2. поместите переименованный файл сертификата в" +msgstr "2. переименованный файл сертификата поместите" #: install.sh:2396 msgid "目录后再运行脚本" @@ -998,39 +991,39 @@ msgstr "запустите сценарий после каталога" #: install.sh:2397 msgid "3. 重新运行脚本" -msgstr "3. запустите сценарий снова" +msgstr "3. заново запустить сценарий" #: install.sh:2398 install.sh:2831 msgid "是否继续" -msgstr "продолжать" +msgstr "продолжить" #: install.sh:2406 msgid "所有证书文件均已存在, 是否保留" -msgstr "все документы сертификата уже существуют, будь то" +msgstr "все файлы сертификатов уже существуют, нужно ли сохранить" #: install.sh:2412 install.sh:2427 install.sh:2443 file_manager.sh:186 msgid "已删除" -msgstr "удален" +msgstr "удалено" #: install.sh:2418 install.sh:2433 install.sh:2450 msgid "证书应用" -msgstr "заявка на сертификат" +msgstr "сертификаты используются" #: install.sh:2422 msgid "证书文件已存在, 是否保留" -msgstr "документы сертификата существовали, будь то" +msgstr "файл сертификата уже существует, сохранить" #: install.sh:2438 msgid "证书签发残留文件已存在, 是否保留" -msgstr "выдача сертификатов остаточных документов существовало, сохраняется ли он" +msgstr "файлы оставшиеся от предыдущего выпуска сертификатов уже существуют, нужно ли сохранить их" #: install.sh:2480 install.sh:3570 msgid "添加" -msgstr "добавить в" +msgstr "добавить" #: install.sh:2487 msgid "请选择支持的 TLS 版本" -msgstr "пожалуйста, выберите поддерживаемую версию tls" +msgstr "выберите поддерживаемую версию tls" #: install.sh:2488 msgid "建议选择 TLS1.3 only (安全模式)" @@ -1038,57 +1031,56 @@ msgstr "рекомендуется выбрать только tls1.3 (режи #: install.sh:2489 msgid "兼容模式" -msgstr "совместимый режим" +msgstr "режим совместимости" #: install.sh:2490 msgid "安全模式" msgstr "режим безопасности" #: install.sh:2494 -msgid "" -"从 2.2.1 版本起, 由于启用 h3 仅支持 TLS1.3, 请选择 TLS1.3 only (安全模式)" -msgstr "" +msgid "由于 h3 仅支持 TLS1.3, 只支持 TLS1.3 only (安全模式)" +msgstr "поскольку h3 поддерживает только tls1.3, поддерживает только tls1.3 (безопасный режим)" #: install.sh:2498 msgid "已切换至" -msgstr "переключиться на" +msgstr "переключено на" #: install.sh:2504 msgid "Nginx/配置文件不存在 或 当前模式不支持" -msgstr "файл nginx/configuration не существует, или текущий режим не поддерживается" +msgstr "nginx/конфигурационный файл не существует или текущий режим не поддерживает" #: install.sh:2525 install.sh:2595 install.sh:2619 install.sh:2688 #: install.sh:2738 install.sh:2797 install.sh:2849 msgid "请先安装" -msgstr "пожалуйста, установите первым" +msgstr "пожалуйста, установите" #: install.sh:2536 msgid "连接端口号" -msgstr "соединять" +msgstr "номер порта подключения" #: install.sh:2617 msgid "此模式不支持修改" -msgstr "эта модель не поддерживает модификацию" +msgstr "этот режим не поддерживает изменения" #: install.sh:2626 msgid "即将显示用户, 一次仅能显示一个" -msgstr "пользователь должен быть отображен, только один может отображаться одновременно" +msgstr "скоро будет показан пользователь, отображается только один за раз" #: install.sh:2628 msgid "请选择显示用户使用的协议" -msgstr "пожалуйста, выберите протокол, используемый для отображения пользователя" +msgstr "пожалуйста, выберите протокол, используемый пользователем" #: install.sh:2638 msgid "请选择要显示的用户编号" -msgstr "пожалуйста, выберите номер пользователя, который хотите отобразить" +msgstr "пожалуйста, выберите номер пользователя, который должен быть отображен" #: install.sh:2643 install.sh:2654 install.sh:2763 install.sh:2786 msgid "选择错误" -msgstr "выберите ошибку" +msgstr "выбор ошибки" #: install.sh:2646 msgid "请直接在主菜单选择 [15] 显示主用户" -msgstr "пожалуйста, выберите основного пользователя непосредственно в главном меню [15]" +msgstr "пожалуйста, выберите [15] вывод основного пользователя в главном меню" #: install.sh:2647 install.sh:2658 install.sh:2768 install.sh:2790 #: install.sh:3679 install.sh:3684 install.sh:3689 install.sh:3734 @@ -1098,11 +1090,11 @@ msgstr "вернуться в меню" #: install.sh:2657 install.sh:2789 msgid "请先检测 Xray 是否正确安装" -msgstr "пожалуйста, проверьте, правильно ли установлен рентген" +msgstr "пожалуйста, проверьте, правильно ли установлен xray" #: install.sh:2677 msgid "是否继续显示用户" -msgstr "продолжать отображать пользователей" +msgstr "продолжить отображение пользователя" #: install.sh:2686 install.sh:2795 msgid "此模式不支持删除用户" @@ -1110,75 +1102,75 @@ msgstr "этот режим не поддерживает удаление по #: install.sh:2697 msgid "即将添加用户, 一次仅能添加一个" -msgstr "пользователь должен быть добавлен, только один может быть добавлен за раз" +msgstr "скоро добавим пользователя, один раз можно добавить только одного" #: install.sh:2699 msgid "请选择添加用户使用的协议" -msgstr "пожалуйста, выберите протокол, используемый пользователем" +msgstr "выберите протокол, используемый пользователем" #: install.sh:2721 msgid "添加用户" -msgstr "добавить пользователей" +msgstr "добавить пользователя" #: install.sh:2726 msgid "是否继续添加用户" -msgstr "вы продолжаете добавлять пользователей" +msgstr "продолжить добавление пользователей" #: install.sh:2736 msgid "此模式不支持添加用户" -msgstr "эта модель не поддерживает добавление пользователей" +msgstr "этот режим не поддерживает добавление пользователей" #: install.sh:2746 msgid "即将删除用户, 一次仅能删除一个" -msgstr "пользователь собирается удалить, только один может быть удален за раз" +msgstr "сoon the user will be deleted, only one user can be deleted at a time" #: install.sh:2748 msgid "请选择删除用户使用的协议" -msgstr "пожалуйста, выберите протокол, используемый пользователем" +msgstr "выберите удаление используемых пользователем протоколов" #: install.sh:2758 msgid "请选择要删除的用户编号" -msgstr "пожалуйста, выберите номер пользователя, который будет удален" +msgstr "пожалуйста, выберите номер пользователя для удаления" #: install.sh:2767 msgid "请直接在主菜单修改主用户的" -msgstr "пожалуйста, измените основного пользователя непосредственно в главном меню" +msgstr "пожалуйста, измените основного пользователя в главном меню" #: install.sh:2774 msgid "删除用户" -msgstr "удалить пользователей" +msgstr "удалить пользователя" #: install.sh:2777 msgid "是否继续删除用户" -msgstr "вы продолжаете удалять пользователя" +msgstr "продолжить удаление пользователя" #: install.sh:2802 install.sh:2806 msgid "文件不存在" -msgstr "файла не существует" +msgstr "файл не существует" #: install.sh:2813 msgid "已配置 Xray 流量统计" -msgstr "рассчитанная статистика рентгеновского трафика" +msgstr "настроен учёт трафика xray" #: install.sh:2814 msgid "是否需要关闭此功能" -msgstr "вам нужно закрыть эту функцию" +msgstr "необходимо ли отключить эту функцию" #: install.sh:2820 msgid "关闭 Xray 流量统计" -msgstr "закрыть рентгеновский трафик статистики" +msgstr "закрыть статистику трафика xray" #: install.sh:2829 msgid "流量统计需要使用" -msgstr "необходимо использовать статистику трафика" +msgstr "статистика трафика требует использования" #: install.sh:2830 msgid "可能会影响 Xray 性能" -msgstr "это может повлиять на производительность рентгеновских" +msgstr "может повлиять на производительность xray" #: install.sh:2841 msgid "设置 Xray 流量统计" -msgstr "установите статистику трафика рентгеновского движения" +msgstr "настройка учёта трафика xray" #: install.sh:2871 install.sh:2886 msgid "已卸载" @@ -1186,71 +1178,71 @@ msgstr "удаляется" #: install.sh:2874 msgid "是否卸载" -msgstr "разгрузить" +msgstr "вы хотите удалить" #: install.sh:2891 msgid "是否删除所有脚本文件" -msgstr "удалить все файлы сценариев" +msgstr "удалить все скриптовые файлы" #: install.sh:2898 msgid "已删除所有文件" -msgstr "все файлы были удалены" +msgstr "удалены все файлы" #: install.sh:2899 msgid "ヾ( ̄▽ ̄) 拜拜~" -msgstr "ヾ ( ̄ ▽  ̄) поклонение ~" +msgstr "прощай~" #: install.sh:2904 msgid "已保留脚本文件 (包含 SSL 证书等)" -msgstr "файл сценария был сохранен (включая сертификат ssl и т. д.)" +msgstr "зарезервированы скриптовые файлы (содержащие ssl-сертификаты и т. д.)" #: install.sh:2908 msgid "是否保留配置文件" -msgstr "хранить файл конфигурации" +msgstr "оставить профиль" #: install.sh:2925 msgid "已清空证书遗留文件" -msgstr "документы оставили сертификат" +msgstr "очистить файлы свидетельств" #: install.sh:2955 -msgid "秒后将" -msgstr "будет через секунду" +msgid "秒后" +msgstr "через секунду" #: install.sh:3118 msgid "检测最新版本失败" -msgstr "последняя версия не удалась" +msgstr "проверка последней версии не удалась" #: install.sh:3127 msgid "存在新版本, 但版本变化较大, 可能存在不兼容情况, 是否更新" -msgstr "есть новые версии, но версия сильно меняется и может быть несовместимой" +msgstr "есть новая версия, но версия сильно меняется, может быть несовместимость, обновляется ли обновление" #: install.sh:3130 msgid "存在新版本, 是否更新" -msgstr "есть ли новая версия, обновляется ли" +msgstr "существует новая версия, обновить её" #: install.sh:3134 msgid "检测 脚本 最新版本失败" -msgstr "последняя версия сценария обнаружения не удалась" +msgstr "проверка последней версии скрипта не удалась" #: install.sh:3135 msgid "脚本 版本差别过大, 跳过更新" -msgstr "версия скрипта слишком отличается, пропустите обновление" +msgstr "скрипт версий отличается слишком сильно, пропускаю обновление" #: install.sh:3145 msgid "更新完成" -msgstr "обновлять" +msgstr "обновление завершено" #: install.sh:3146 install.sh:3339 msgid "脚本版本变化较大, 若服务无法正常运行请卸载后重装" -msgstr "версия скрипта сильно меняется, если сервис не может работать нормально, пожалуйста, переустановите ее после удаления" +msgstr "скрипт претерпел значительные изменения. если сервис не работает, пожалуйста, удалите его и установите заново" #: install.sh:3152 msgid "当前版本为最新版本" -msgstr "текущая версия - последняя версия" +msgstr "текущая версия является последней версией" #: install.sh:3164 install.sh:3326 install.sh:3337 install.sh:3349 msgid "下载最新脚本" -msgstr "скачать последний сценарий" +msgstr "загрузите последний сценарий" #: install.sh:3178 msgid "该选项暂时无法使用" @@ -1258,38 +1250,38 @@ msgstr "этот вариант временно недоступен" #: install.sh:3197 install.sh:3633 msgid "此模式推荐用于负载均衡, 一般情况不推荐使用, 是否安装" -msgstr "эта модель рекомендуется для балансировки нагрузки" +msgstr "этот режим рекомендуется использовать для балансировки нагрузки, обычно не рекомендуется использовать, устанавливать или нет" #: install.sh:3292 install.sh:3293 install.sh:3302 install.sh:3305 #: install.sh:3309 install.sh:3562 install.sh:3563 install.sh:3564 #: install.sh:3565 install.sh:3566 install.sh:3567 install.sh:3647 #: install.sh:3652 install.sh:3657 install.sh:3662 msgid "变更" -msgstr "изменять" +msgstr "изменение" #: install.sh:3292 install.sh:3566 msgid "负载均衡配置" -msgstr "нагрузка балансировки конфигурации" +msgstr "балансировка нагрузки настроена" #: install.sh:3295 msgid "清除日志文件" -msgstr "очистить файл журнала" +msgstr "очистить файлы журнала" #: install.sh:3296 msgid "查看证书状态" -msgstr "просмотреть статус сертификата" +msgstr "проверить состояние сертификата" #: install.sh:3297 msgid "更新证书有效期" -msgstr "период достоверности сертификата об продлении" +msgstr "обновите срок действия сертификата" #: install.sh:3298 msgid "设置证书自动更新" -msgstr "установите автоматическое обновление сертификата" +msgstr "настройка автоматического обновления сертификатов" #: install.sh:3299 msgid "设置 Fail2ban 防暴力破解" -msgstr "set fail2 banban antivilentic cracking" +msgstr "настройка fail2ban brute-rypray cracking" #: install.sh:3300 msgid "显示帮助" @@ -1297,47 +1289,47 @@ msgstr "показать помощь" #: install.sh:3301 install.sh:3312 install.sh:3583 msgid "更新" -msgstr "обновлять" +msgstr "обновление" #: install.sh:3303 msgid "脚本卸载" -msgstr "скрипт удаляет" +msgstr "скрипт выгружен" #: install.sh:3304 msgid "显示安装信息" -msgstr "отображать информацию об установке" +msgstr "показать информацию об установке" #: install.sh:3306 install.sh:3587 msgid "加速" -msgstr "ускорить" +msgstr "ускорение" #: install.sh:3308 msgid "升级脚本" -msgstr "обновить скрипт" +msgstr "обновить сценарий" #: install.sh:3310 install.sh:3311 msgid "显示" -msgstr "показывать" +msgstr "показать" #: install.sh:3310 msgid "访问信息" -msgstr "доступ к информации" +msgstr "посетить информацию" #: install.sh:3311 msgid "错误信息" -msgstr "сообщение об ошибке" +msgstr "информация об ошибке" #: install.sh:3331 msgid "脚本版本变化较大, 可能存在不兼容情况, 是否继续使用" -msgstr "версия скрипта сильно меняется, и может быть несовместимость, будь то продолжать использовать" +msgstr "версия сценария сильно изменилась, и может быть несовместимость" #: install.sh:3356 msgid "检测失败" -msgstr "обнаружить сбой" +msgstr "проверка не удалась" #: install.sh:3360 install.sh:3370 install.sh:3380 msgid "有新版" -msgstr "иметь новую версию" +msgstr "есть новая версия" #: install.sh:3363 install.sh:3372 install.sh:3386 msgid "最新版" @@ -1345,59 +1337,59 @@ msgstr "последняя версия" #: install.sh:3378 msgid "版本未知" -msgstr "неизвестная версия" +msgstr "версия неизвестна" #: install.sh:3384 msgid "有测试版" -msgstr "тестовая версия" +msgstr "есть бета-версия" #: install.sh:3402 install.sh:3409 msgid "运行中" -msgstr "в эксплуатации" +msgstr "запуск" #: install.sh:3404 install.sh:3427 install.sh:3429 msgid "无需测试" -msgstr "нет теста" +msgstr "не требуется тестирование" #: install.sh:3406 install.sh:3411 msgid "未运行" -msgstr "не работает" +msgstr "не запущено" #: install.sh:3421 msgid "无法连通" -msgstr "невозможно подключиться" +msgstr "нет соединения" #: install.sh:3423 install.sh:3424 install.sh:3425 msgid "本地正常" -msgstr "местный нормальный" +msgstr "регион нормален" #: install.sh:3440 msgid "脚本维护中.. 请稍后再试" -msgstr "обслуживание сценария .. пожалуйста, попробуйте позже" +msgstr "скрипт находится в процессе обслуживания.. пожалуйста, попробуйте позже" #: install.sh:3442 msgid "无法检测所需依赖的在线版本, 请稍后再试" -msgstr "не могу обнаружить необходимую онлайн -версию, попробуйте еще раз позже" +msgstr "не удалось проверить онлайн-версию необходимых зависимостей, попробуйте пожалуйста позже" #: install.sh:3459 msgid "请输入数字" -msgstr "пожалуйста, введите номер" +msgstr "введите число" #: install.sh:3459 msgid "请输入 1 到 5 之间的有效数字" -msgstr "пожалуйста, введите действительный номер от 1 до 5" +msgstr "введитеeffective number from 1 to 5" #: install.sh:3480 msgid "无效的选择" -msgstr "неверный выбор" +msgstr "недопустимый выбор" #: install.sh:3513 msgid "检测存在到" -msgstr "обнаружение существует" +msgstr "проверка наличия до" #: install.sh:3514 msgid "来源于自动清理日志错误的设置" -msgstr "это происходит из настройки ошибки автоматического журнала очистки" +msgstr "из настроек автоматической очистки журнала ошибок" #: install.sh:3515 msgid "开始修复" @@ -1405,15 +1397,15 @@ msgstr "начать ремонт" #: install.sh:3519 msgid "错误的配置文件删除" -msgstr "удалить неправильный файл конфигурации" +msgstr "неправильный профиль удален" #: install.sh:3520 msgid "即将重新设置自动清理日志" -msgstr "автоматическое журнал очистки собирается перезапустить" +msgstr "скоро будет настроен автоматический сброс журнала" #: install.sh:3528 msgid "安装管理脚本" -msgstr "сценарий управления установкой" +msgstr "установка скриптов управления" #: install.sh:3529 msgid "作者" @@ -1429,15 +1421,15 @@ msgstr "текущий язык" #: install.sh:3537 msgid "可以使用" -msgstr "быть доступным" +msgstr "можно использовать" #: install.sh:3537 msgid "命令管理脚本" -msgstr "сценарий управления командами" +msgstr "командный скрипт управления" #: install.sh:3539 msgid "版本检测" -msgstr "обнаружение версии" +msgstr "версия обнаружена" #: install.sh:3540 install.sh:3548 install.sh:3593 msgid "脚本" @@ -1445,23 +1437,23 @@ msgstr "сценарий" #: install.sh:3543 msgid "运行状态" -msgstr "статус работы" +msgstr "рабочее состояние" #: install.sh:3546 msgid "连通性" -msgstr "подключение" +msgstr "связность" #: install.sh:3547 msgid "升级向导" -msgstr "руководство по обновлению" +msgstr "мастер обновления" #: install.sh:3557 msgid "安装向导" -msgstr "мастер установки" +msgstr "установочный мастер" #: install.sh:3561 msgid "配置变更" -msgstr "изменение конфигурации" +msgstr "настройка изменена" #: install.sh:3565 install.sh:3662 msgid "版本" @@ -1474,7 +1466,7 @@ msgstr "управление пользователями" #: install.sh:3569 install.sh:3573 install.sh:3574 install.sh:3575 #: install.sh:3580 install.sh:3582 fail2ban_manager.sh:14 msgid "查看" -msgstr "проверять" +msgstr "посмотреть" #: install.sh:3569 install.sh:3570 install.sh:3571 msgid "用户" @@ -1486,27 +1478,27 @@ msgstr "удалить" #: install.sh:3572 msgid "查看信息" -msgstr "проверьте информацию" +msgstr "просмотр информации" #: install.sh:3573 msgid "实时访问日志" -msgstr "реальное посещение журнала" +msgstr "доступ к журналам в режиме реального времени" #: install.sh:3574 msgid "实时错误日志" -msgstr "реальное время ошибки" +msgstr "реали-time ошибки лог" #: install.sh:3576 msgid "服务相关" -msgstr "сервис -связанный" +msgstr "служба" #: install.sh:3577 install.sh:3578 install.sh:3579 install.sh:3580 msgid "所有服务" -msgstr "все услуги" +msgstr "все сервисы" #: install.sh:3581 msgid "证书相关" -msgstr "сертификат -связанный" +msgstr "сертификаты" #: install.sh:3582 msgid "证书状态" @@ -1514,11 +1506,11 @@ msgstr "статус сертификата" #: install.sh:3583 msgid "证书有效期" -msgstr "период достоверности сертификатов" +msgstr "срок действия сертификата" #: install.sh:3584 msgid "证书自动更新" -msgstr "автоматическое обновление сертификата" +msgstr "сертификаты обновляются автоматически" #: install.sh:3585 msgid "其他选项" @@ -1530,31 +1522,31 @@ msgstr "автоматическое обновление" #: install.sh:3588 msgid "防暴力破解" -msgstr "против насилия трещины" +msgstr "защита от подбора паролей" #: install.sh:3589 msgid "流量统计" -msgstr "статистика потока" +msgstr "статистика трафика" #: install.sh:3590 msgid "清除" -msgstr "удалять" +msgstr "очистить" #: install.sh:3590 msgid "日志文件" -msgstr "файл журнала" +msgstr "файлы журнала" #: install.sh:3591 msgid "测试" -msgstr "тест" +msgstr "тестирование" #: install.sh:3591 msgid "服务器网速" -msgstr "серверная сеть скорости" +msgstr "скорость сервера" #: install.sh:3592 msgid "卸载向导" -msgstr "разгрузка" +msgstr "установить мастер" #: install.sh:3593 fail2ban_manager.sh:13 fail2ban_manager.sh:171 msgid "卸载" @@ -1562,7 +1554,7 @@ msgstr "удалить" #: install.sh:3594 msgid "清空" -msgstr "пустой" +msgstr "очистить" #: install.sh:3594 msgid "证书文件" @@ -1570,35 +1562,35 @@ msgstr "файл сертификата" #: install.sh:3595 fail2ban_manager.sh:15 file_manager.sh:217 msgid "退出" -msgstr "покидать" +msgstr "выйти" #: install.sh:3598 msgid "请输入选项" -msgstr "пожалуйста, введите вариант" +msgstr "введите опцию" #: install.sh:3598 msgid "请输入 0 到 34 之间的有效数字" -msgstr "пожалуйста, введите действительный номер от 0 до 34" +msgstr "введите действительное число от 0 до 34" #: install.sh:3612 msgid "不建议" -msgstr "нет рекомендации" +msgstr "не рекомендуется" #: install.sh:3612 msgid "频繁升级 Nginx, 请确认 Nginx 有升级的必要" -msgstr "частое обновление nginx, пожалуйста, подтвердите, что nginx необходим для обновления" +msgstr "частое обновление nginx, пожалуйста, убедитесь, что для nginx есть необходимость в обновлении" #: install.sh:3613 msgid "开始升级" -msgstr "запустить обновление" +msgstr "начать обновление" #: install.sh:3799 msgid "请输入正确的数字" -msgstr "пожалуйста, введите правильный номер" +msgstr "введите правильное число" #: fail2ban_manager.sh:12 msgid "管理" -msgstr "управлять" +msgstr "управление" #: fail2ban_manager.sh:14 msgid "状态" @@ -1606,79 +1598,75 @@ msgstr "состояние" #: fail2ban_manager.sh:27 fail2ban_manager.sh:122 msgid "无效的选择请重试" -msgstr "если неверный выбор, попробуйте" +msgstr "недопустимый ввод, попробуйте снова" #: fail2ban_manager.sh:34 msgid "已经安装, 跳过安装步骤" -msgstr "был установлен, пропустить шаги установки" +msgstr "установлено, пропустить этапы установки" #: fail2ban_manager.sh:52 fail2ban_manager.sh:92 fail2ban_manager.sh:195 msgid "未安装, 请先安装" -msgstr "не установлен, пожалуйста, установите его первым" +msgstr "не установлен, установите сначала" #: fail2ban_manager.sh:97 msgid "请选择" -msgstr "выбирать" +msgstr "пожалуйста, выберите" #: fail2ban_manager.sh:97 msgid "操作" -msgstr "работать" +msgstr "управление" #: fail2ban_manager.sh:101 msgid "添加自定义规则" -msgstr "добавьте пользовательские правила" +msgstr "добавить пользовательские правила" #: fail2ban_manager.sh:135 msgid "请输入新的" -msgstr "пожалуйста, введите новый" +msgstr "введите новые" #: fail2ban_manager.sh:135 fail2ban_manager.sh:136 msgid "名称" -msgstr "имя" +msgstr "название" #: fail2ban_manager.sh:137 msgid "请输入日志路径" -msgstr "пожалуйста, введите путь журнала" +msgstr "введите путь к журналу" #: fail2ban_manager.sh:138 msgid "请输入最大重试次数" -msgstr "пожалуйста, введите максимальное количество обзоров" +msgstr "введите максимальное количество попыток повтора" #: fail2ban_manager.sh:138 msgid "最大重试次数必须在 1 到 99 之间" -msgstr "максимальное количество повторений должно быть от 1 до 99" +msgstr "максимальное количество попыток должно быть между 1 и 99" #: fail2ban_manager.sh:139 msgid "请输入封禁时间" -msgstr "пожалуйста, введите время запрета" +msgstr "введите время блокировки" #: fail2ban_manager.sh:139 msgid "秒" -msgstr "второй" +msgstr "секунду" #: fail2ban_manager.sh:139 msgid "封禁时间必须在 1 到 8640000 秒之间" -msgstr "запрещенное время должно составлять от 1 до 86 40000 секунд" +msgstr "время блокировки должно находиться в диапазоне от 1 до 8640000 секунд" #: fail2ban_manager.sh:142 msgid "已存在" -msgstr "существовать" +msgstr "существует" #: fail2ban_manager.sh:147 msgid "自定义规则添加成功" -msgstr "индивидуальные правила успешно добавлены" +msgstr "пользовательские правила успешно добавлены" #: fail2ban_manager.sh:151 msgid "重启以应用新规则" -msgstr "перезапустить, чтобы применять новые правила" +msgstr "перезагрузите для применения новых правил" #: fail2ban_manager.sh:180 msgid "停止成功" -msgstr "остановить успех" - -#: fail2ban_manager.sh:189 -msgid "清空屏幕!" -msgstr "очистите экран" +msgstr "прекратить успех" #: fail2ban_manager.sh:199 msgid "总体状态" @@ -1686,11 +1674,11 @@ msgstr "общее состояние" #: fail2ban_manager.sh:203 msgid "默认启用的 Jail 状态" -msgstr "статус тюрьмы открывается по умолчанию" +msgstr "по умолчанию включено состояние jail" #: fail2ban_manager.sh:205 fail2ban_manager.sh:208 fail2ban_manager.sh:212 msgid "封锁情况" -msgstr "блокировка" +msgstr "блокада situation" #: fail2ban_manager.sh:226 file_manager.sh:242 msgid "新版本可用" @@ -1706,11 +1694,11 @@ msgstr "пожалуйста, посетите" #: fail2ban_manager.sh:227 file_manager.sh:243 msgid "查看更新说明" -msgstr "просмотреть инструкции обновления" +msgstr "просмотреть заметки о выпуске" #: fail2ban_manager.sh:229 file_manager.sh:245 msgid "是否要下载并安装新版本" -msgstr "хотите ли вы скачать и установить новую версию" +msgstr "необходимо загрузить и установить новую версию" #: fail2ban_manager.sh:233 file_manager.sh:249 msgid "正在下载新版本" @@ -1718,15 +1706,15 @@ msgstr "загрузка новой версии" #: fail2ban_manager.sh:238 file_manager.sh:254 msgid "下载完成, 正在重新运行脚本" -msgstr "загрузка завершена, а сценарий повторно" +msgstr "загрузка завершена, скрипт запускается заново" #: fail2ban_manager.sh:246 file_manager.sh:262 msgid "跳过更新" -msgstr "пропустите обновление" +msgstr "пропустить обновление" #: fail2ban_manager.sh:250 file_manager.sh:266 msgid "当前已经是最新版本" -msgstr "это уже последняя версия" +msgstr "текущая версия является самой последней" #: file_manager.sh:8 msgid "用法" @@ -1734,19 +1722,19 @@ msgstr "использование" #: file_manager.sh:8 msgid "文件扩展名" -msgstr "имя расширения файла" +msgstr "расширение файла" #: file_manager.sh:8 msgid "目录路径" -msgstr "путь каталога" +msgstr "путь к каталогу" #: file_manager.sh:18 msgid "目录" -msgstr "оглавление" +msgstr "содержание" #: file_manager.sh:18 msgid "不存在, 请检查路径" -msgstr "не существует, пожалуйста, проверьте путь" +msgstr "не существует, проверьте путь" #: file_manager.sh:31 file_manager.sh:213 msgid "列出所有" @@ -1757,7 +1745,7 @@ msgstr "список всех" #: file_manager.sh:213 file_manager.sh:214 file_manager.sh:215 #: file_manager.sh:216 msgid "文件" -msgstr "документ" +msgstr "файл" #: file_manager.sh:40 msgid "没有找到" @@ -1765,51 +1753,51 @@ msgstr "не найдено" #: file_manager.sh:64 msgid "文件名" -msgstr "имя файла" +msgstr "название файла" #: file_manager.sh:70 msgid "序号" -msgstr "серийный номер" +msgstr "номер" #: file_manager.sh:93 msgid "请输入网址 (例如 hey.run)" -msgstr "пожалуйста, введите url (например, hey.run)" +msgstr "введите адрес веб-сайта (например, hey.run)" #: file_manager.sh:94 msgid "不要包含 http:// 或 https:// 开头" -msgstr "не включайте http: // или https: //" +msgstr "не включайте начало с http:// или https://" #: file_manager.sh:98 msgid "网址不能包含 http:// 或 https:// 开头" -msgstr "url не могут включать http:/ или https: //" +msgstr "url не должен содержать в начале http:// или https://" #: file_manager.sh:102 file_manager.sh:117 msgid "已创建" -msgstr "создали" +msgstr "создан" #: file_manager.sh:111 msgid "请输入主机" -msgstr "пожалуйста, введите хост" +msgstr "введите хост" #: file_manager.sh:112 msgid "请输入端口" -msgstr "пожалуйста, введите порт" +msgstr "введите порт" #: file_manager.sh:113 msgid "请输入权重" -msgstr "пожалуйста, введите вес" +msgstr "введите вес" #: file_manager.sh:135 msgid "追加完成" -msgstr "дополнительное завершение" +msgstr "дополнение завершено" #: file_manager.sh:159 msgid "请输入要编辑的文件编号" -msgstr "пожалуйста, введите номер файла, который будет отредактирован" +msgstr "введите номер файла для редактирования" #: file_manager.sh:165 msgid "未安装, 正在尝试安装" -msgstr "не установлен, я пытаюсь установить" +msgstr "не установлен, попытка установки" #: file_manager.sh:169 msgid "已编辑" @@ -1817,44 +1805,44 @@ msgstr "отредактировано" #: file_manager.sh:181 msgid "请输入要删除的文件编号" -msgstr "пожалуйста, введите номер файла, который будет удален" +msgstr "введите номер файла для удаления" #: file_manager.sh:202 msgid "不支持的文件扩展名" -msgstr "недостатимое имя расширения файла" +msgstr "неподдерживаемое расширение файла" #: file_manager.sh:212 msgid "主菜单" -msgstr "основное меню" +msgstr "главное меню" #: file_manager.sh:214 msgid "创建一个新的" -msgstr "создать новый" +msgstr "создать новое" #: file_manager.sh:215 msgid "编辑一个已存在的" -msgstr "отредактировать существующее существование" +msgstr "редактировать существующий" #: file_manager.sh:216 msgid "删除一个已存在的" -msgstr "удалить один существующий" +msgstr "удалить существующий" #: file_manager.sh:219 msgid "请选择一个选项" -msgstr "пожалуйста, выберите опцию" +msgstr "пожалуйста, выберите один вариант" #: file_manager.sh:229 msgid "无效选项, 请重试" -msgstr "эффективные варианты, попробуйте еще раз" +msgstr "недопустимый вариант, попробуйте снова" #: file_manager.sh:275 msgid "重启成功" -msgstr "перезапустить успех" +msgstr "перезапуск успешно выполнен" #: file_manager.sh:278 msgid "重启失败" -msgstr "неспособность перезапустить" +msgstr "перезапуск не удался" #: file_manager.sh:278 msgid "请检查配置文件是否有误" -msgstr "пожалуйста, проверьте, неправильно ли файл конфигурации" +msgstr "проверьте, пожалуйста, на наличие ошибок файл конфигурации" diff --git a/po/xray_install.pot b/po/xray_install.pot index d6f93eb..95333dc 100644 --- a/po/xray_install.pot +++ b/po/xray_install.pot @@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: xray_install 1.0\n" "Report-Msgid-Bugs-To: https://github.com/hello-yunshu/Xray_bash_onekey/" "issues\n" -"POT-Creation-Date: 2025-01-29 17:17+0000\n" +"POT-Creation-Date: 2025-02-06 18:01+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -429,11 +429,11 @@ msgid "配置修改" msgstr "" #: install.sh:1094 -msgid "检测到 Xray 的权限控制, 启动擦屁股程序" +msgid "检测到 Xray 的权限控制, 启动修改程序" msgstr "" #: install.sh:1099 -msgid "擦屁股完成" +msgid "修改完成" msgstr "" #: install.sh:1116 @@ -456,20 +456,12 @@ msgstr "" msgid "是否更新" msgstr "" -#: install.sh:1132 -msgid "即将升级" -msgstr "" - -#: install.sh:1136 install.sh:1143 install.sh:1150 install.sh:1333 -#: install.sh:3548 install.sh:3549 install.sh:3550 +#: install.sh:1132 install.sh:1136 install.sh:1143 install.sh:1150 +#: install.sh:1333 install.sh:3548 install.sh:3549 install.sh:3550 msgid "升级" msgstr "" -#: install.sh:1139 -msgid "即将升级/重装" -msgstr "" - -#: install.sh:1147 +#: install.sh:1139 install.sh:1147 msgid "升级/重装" msgstr "" @@ -682,7 +674,7 @@ msgid "手动输入" msgstr "" #: install.sh:1519 -msgid "尝试自动 kill 占用进程" +msgid "尝试终止占用的进程" msgstr "" #: install.sh:1530 @@ -877,6 +869,7 @@ msgstr "" #: install.sh:3673 install.sh:3709 install.sh:3715 install.sh:3721 #: install.sh:3750 install.sh:3777 install.sh:3784 install.sh:3789 #: fail2ban_manager.sh:159 fail2ban_manager.sh:172 fail2ban_manager.sh:181 +#: fail2ban_manager.sh:189 msgid "清空屏幕" msgstr "" @@ -1044,8 +1037,7 @@ msgid "安全模式" msgstr "" #: install.sh:2494 -msgid "" -"从 2.2.1 版本起, 由于启用 h3 仅支持 TLS1.3, 请选择 TLS1.3 only (安全模式)" +msgid "由于 h3 仅支持 TLS1.3, 只支持 TLS1.3 only (安全模式)" msgstr "" #: install.sh:2498 @@ -1212,7 +1204,7 @@ msgid "已清空证书遗留文件" msgstr "" #: install.sh:2955 -msgid "秒后将" +msgid "秒后" msgstr "" #: install.sh:3118 @@ -1675,10 +1667,6 @@ msgstr "" msgid "停止成功" msgstr "" -#: fail2ban_manager.sh:189 -msgid "清空屏幕!" -msgstr "" - #: fail2ban_manager.sh:199 msgid "总体状态" msgstr "" diff --git a/po/zh_CN.po b/po/zh_CN.po index 0bd88b8..d7894ba 100644 --- a/po/zh_CN.po +++ b/po/zh_CN.po @@ -8,8 +8,8 @@ msgstr "" "Project-Id-Version: xray_install 1.0\n" "Report-Msgid-Bugs-To: https://github.com/hello-yunshu/Xray_bash_onekey/" "issues\n" -"POT-Creation-Date: 2025-01-29 17:17+0000\n" -"PO-Revision-Date: 2025-01-29 17:17+0000\n" +"POT-Creation-Date: 2025-02-06 18:01+0000\n" +"PO-Revision-Date: 2025-02-06 18:01+0000\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" "Language: zh_CN\n" @@ -428,11 +428,11 @@ msgid "配置修改" msgstr "" #: install.sh:1094 -msgid "检测到 Xray 的权限控制, 启动擦屁股程序" +msgid "检测到 Xray 的权限控制, 启动修改程序" msgstr "" #: install.sh:1099 -msgid "擦屁股完成" +msgid "修改完成" msgstr "" #: install.sh:1116 @@ -455,20 +455,12 @@ msgstr "" msgid "是否更新" msgstr "" -#: install.sh:1132 -msgid "即将升级" -msgstr "" - -#: install.sh:1136 install.sh:1143 install.sh:1150 install.sh:1333 -#: install.sh:3548 install.sh:3549 install.sh:3550 +#: install.sh:1132 install.sh:1136 install.sh:1143 install.sh:1150 +#: install.sh:1333 install.sh:3548 install.sh:3549 install.sh:3550 msgid "升级" msgstr "" -#: install.sh:1139 -msgid "即将升级/重装" -msgstr "" - -#: install.sh:1147 +#: install.sh:1139 install.sh:1147 msgid "升级/重装" msgstr "" @@ -681,7 +673,7 @@ msgid "手动输入" msgstr "" #: install.sh:1519 -msgid "尝试自动 kill 占用进程" +msgid "尝试终止占用的进程" msgstr "" #: install.sh:1530 @@ -876,6 +868,7 @@ msgstr "" #: install.sh:3673 install.sh:3709 install.sh:3715 install.sh:3721 #: install.sh:3750 install.sh:3777 install.sh:3784 install.sh:3789 #: fail2ban_manager.sh:159 fail2ban_manager.sh:172 fail2ban_manager.sh:181 +#: fail2ban_manager.sh:189 msgid "清空屏幕" msgstr "" @@ -1043,8 +1036,7 @@ msgid "安全模式" msgstr "" #: install.sh:2494 -msgid "" -"从 2.2.1 版本起, 由于启用 h3 仅支持 TLS1.3, 请选择 TLS1.3 only (安全模式)" +msgid "由于 h3 仅支持 TLS1.3, 只支持 TLS1.3 only (安全模式)" msgstr "" #: install.sh:2498 @@ -1211,7 +1203,7 @@ msgid "已清空证书遗留文件" msgstr "" #: install.sh:2955 -msgid "秒后将" +msgid "秒后" msgstr "" #: install.sh:3118 @@ -1674,10 +1666,6 @@ msgstr "" msgid "停止成功" msgstr "" -#: fail2ban_manager.sh:189 -msgid "清空屏幕!" -msgstr "" - #: fail2ban_manager.sh:199 msgid "总体状态" msgstr "" diff --git a/translate.py b/translate.py index 9487810..32cbfbd 100644 --- a/translate.py +++ b/translate.py @@ -4,6 +4,10 @@ import json import os from openai import OpenAI from googletrans import Translator +from langdetect import detect, DetectorFactory + +# 设置种子以确保结果一致 +DetectorFactory.seed = 0 def load_translation_cache(cache_file): if os.path.exists(cache_file): @@ -12,7 +16,7 @@ def load_translation_cache(cache_file): # 将缓存中的所有翻译结果首字母转为小写并去除末尾标点 for key in translations: - translations[key] = translations[key].capitalize().lower().rstrip('.,!?;:') + translations[key] = clean_translation(translations[key]) return translations return {} @@ -20,7 +24,7 @@ def load_translation_cache(cache_file): def save_translation_cache(cache_file, translations): # 在保存缓存前确保所有翻译结果首字母转为小写并去除末尾标点 for key in translations: - translations[key] = translations[key].capitalize().lower().rstrip('.,!?;:') + translations[key] = clean_translation(translations[key]) with open(cache_file, 'w', encoding='utf-8') as f: json.dump(translations, f, ensure_ascii=False, indent=2) @@ -40,6 +44,19 @@ def update_version(version_file): def contains_chinese(text): return any('\u4e00' <= char <= '\u9fff' for char in text) +def is_english_dominant(text, threshold=0.4): + english_count = sum(1 for char in text if char.isascii()) + total_count = len(text) + return english_count / total_count > threshold + +def contains_target_language_characters(text, target_lang): + try: + detected_lang = detect(text) + return detected_lang == target_lang + except Exception as e: + print(f"Language detection failed: {e}") + return False + def translate_text_qwen(text, target_lang): client = OpenAI( api_key=os.getenv("AI_API_KEY"), @@ -64,6 +81,12 @@ def translate_text_google(text, target_lang): translated_text = translation.text return translated_text.capitalize().lower().rstrip('.,!?;:') +def needs_fallback_translation(translated_text): + return '\n' in translated_text or '"' in translated_text + +def clean_translation(text): + return text.replace('\n', '').replace('"', '') + def translate_po_file(input_file, output_file, target_lang): # 获取目标语言目录 lang_dir = os.path.dirname(output_file) @@ -98,6 +121,8 @@ def translate_po_file(input_file, output_file, target_lang): # 检查缓存 if msgid_text in translations: translated_text = translations[msgid_text] + # 清理缓存中的翻译结果 + translated_text = clean_translation(translated_text) # 直接使用缓存的翻译,不再检查目标语言 if translated_text == "": print(f"Cached translation is empty for: {msgid_text}. Re-translating...") @@ -122,17 +147,17 @@ def translate_po_file(input_file, output_file, target_lang): time.sleep(0.1) # 增加延迟以避免请求过快 translated_text = translate_text_qwen(msgid_text, target_lang) - # 检查翻译结果是否仍包含中文 - chinese_retry_count = 0 - while contains_chinese(translated_text) and chinese_retry_count < 3: - print(f"Detected Chinese in translation for: {msgid_text}. Re-translating... (Attempt {chinese_retry_count + 1}/3)") - translated_text = translate_text_qwen(msgid_text, target_lang) - chinese_retry_count += 1 - - if contains_chinese(translated_text): - print(f"Failed to translate {msgid_text} after 3 attempts using Qwen. Using Google Translate...") + # 检查翻译结果是否仍包含中文或需要回退翻译 + if (contains_chinese(translated_text) or + needs_fallback_translation(translated_text) or + not contains_target_language_characters(translated_text, target_lang) or + is_english_dominant(translated_text)): + print(f"Translation does not meet criteria using Qwen. Using Google Translate...") translated_text = translate_text_google(msgid_text, target_lang) + # 清理Google翻译结果 + translated_text = clean_translation(translated_text) + # 检查翻译是否有变更 if msgid_text in translations and translations[msgid_text] != translated_text: print(f"Translation changed for: {msgid_text} -> {translated_text}")