From 1df5b0956aa4e4e3ea50cd96a45b5757a4a94ea0 Mon Sep 17 00:00:00 2001 From: Ing Date: Tue, 12 Mar 2024 21:24:31 +0800 Subject: [PATCH] modify advancedMenu --- files/initrd/opt/rr/init.sh | 7 +- .../opt/rr/lang/ko_KR/LC_MESSAGES/rr.mo | Bin 36501 -> 35830 bytes .../opt/rr/lang/ko_KR/LC_MESSAGES/rr.po | 1201 +++++++------ files/initrd/opt/rr/lang/rr.pot | 1159 ++++++------- .../opt/rr/lang/ru_RU/LC_MESSAGES/rr.mo | Bin 44448 -> 43679 bytes .../opt/rr/lang/ru_RU/LC_MESSAGES/rr.po | 1215 +++++++------ .../opt/rr/lang/zh_CN/LC_MESSAGES/rr.mo | Bin 31392 -> 30851 bytes .../opt/rr/lang/zh_CN/LC_MESSAGES/rr.po | 1172 ++++++------- .../opt/rr/lang/zh_HK/LC_MESSAGES/rr.mo | Bin 31390 -> 30850 bytes .../opt/rr/lang/zh_HK/LC_MESSAGES/rr.po | 1174 ++++++------- .../opt/rr/lang/zh_TW/LC_MESSAGES/rr.mo | Bin 32063 -> 31450 bytes .../opt/rr/lang/zh_TW/LC_MESSAGES/rr.po | 1360 ++++++++------- files/initrd/opt/rr/menu.sh | 1533 +++++++++-------- scripts/grub.sh | 5 + 14 files changed, 4425 insertions(+), 4401 deletions(-) diff --git a/files/initrd/opt/rr/init.sh b/files/initrd/opt/rr/init.sh index abb47d38..8a34e782 100755 --- a/files/initrd/opt/rr/init.sh +++ b/files/initrd/opt/rr/init.sh @@ -85,7 +85,12 @@ if [ "${BUS}" = "usb" ]; then PID="0x$(udevadm info --query property --name ${LOADER_DISK} 2>/dev/null | grep ID_MODEL_ID | cut -d= -f2)" TYPE="flashdisk" elif [ "${BUS}" != "sata" -a "${BUS}" != "scsi" -a "${BUS}" != "nvme" -a "${BUS}" != "mmc" ]; then - die "$(TEXT "Loader disk neither USB or SATA/SCSI/NVME/MMC DoM")" + if [ "LOCALBUILD" = "${LOADER_DISK}" ]; then + echo "LOCALBUILD MODE" + TYPE="PC" + else + die "$(TEXT "Loader disk neither USB or SATA/SCSI/NVME/MMC DoM")" + fi fi # Save variables to user config file diff --git a/files/initrd/opt/rr/lang/ko_KR/LC_MESSAGES/rr.mo b/files/initrd/opt/rr/lang/ko_KR/LC_MESSAGES/rr.mo index 2cb581ffbdf18a364c88bccabc0614634e1688bf..e95c8e2c2dff9e71bb9cb37207c91410673ff76e 100644 GIT binary patch delta 7315 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 delta 7853 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 LyQ^+3z7_T_J*!`P diff --git a/files/initrd/opt/rr/lang/ko_KR/LC_MESSAGES/rr.po b/files/initrd/opt/rr/lang/ko_KR/LC_MESSAGES/rr.po index 3d5ea9d8..c92d503a 100644 --- a/files/initrd/opt/rr/lang/ko_KR/LC_MESSAGES/rr.po +++ b/files/initrd/opt/rr/lang/ko_KR/LC_MESSAGES/rr.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: RR\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-03-08 19:17+0800\n" -"PO-Revision-Date: 2024-03-08 19:32+0800\n" +"POT-Creation-Date: 2024-03-12 21:16+0800\n" +"PO-Revision-Date: 2024-03-12 21:17+0800\n" "Last-Translator: EXP \n" "Language-Team: 한국인 (대한민국) \n" "Language: ko_KR\n" @@ -21,7 +21,7 @@ msgstr "" msgid "Loader is not init!" msgstr "로더가 초기화되지 않았습니다!" -#: boot.sh:10 init.sh:111 +#: boot.sh:10 init.sh:116 msgid "Loader is not configured!" msgstr "로더가 구성되지 않았습니다!" @@ -33,7 +33,7 @@ msgstr "Welcome to %s" msgid "DSM zImage changed" msgstr "DSM zImage 변경" -#: boot.sh:36 menu.sh:1269 +#: boot.sh:36 menu.sh:1277 msgid "" "zImage not patched,\\nPlease upgrade the bootloader version and try again." "\\nPatch error:\\n" @@ -45,7 +45,7 @@ msgstr "" msgid "DSM Ramdisk changed" msgstr "DSM Ramdisk 변경" -#: boot.sh:47 menu.sh:1275 +#: boot.sh:47 menu.sh:1283 msgid "" "Ramdisk not patched,\\nPlease upgrade the bootloader version and try again." "\\nPatch error:\\n" @@ -97,69 +97,69 @@ msgstr "" "부팅 디스크를 제외하고 시스템 설치를 위해 최소한 하나의 SATA/SCSI 디스크를 장" "착하세요." -#: boot.sh:169 +#: boot.sh:171 msgid "Cmdline:\\n" msgstr "Cmdline:\\n" -#: boot.sh:175 +#: boot.sh:177 msgid "Reboot to boot directly in DSM" msgstr "재부팅 후 DSM 부팅으로 바로 이동하기" -#: boot.sh:181 init.sh:124 +#: boot.sh:183 init.sh:129 msgid "Detected %s network cards." msgstr "%s개의 네트워크 카드가 감지되었습니다." -#: boot.sh:182 init.sh:125 +#: boot.sh:184 init.sh:130 msgid "Checking Connect." msgstr "연결을 확인하는 중입니다." -#: boot.sh:194 init.sh:135 +#: boot.sh:196 init.sh:140 msgid "connected." msgstr "연락이 왔습니다." -#: boot.sh:201 init.sh:142 +#: boot.sh:203 init.sh:147 msgid "Waiting IP." msgstr "IP 주소를 가져옵니다." -#: boot.sh:208 init.sh:149 +#: boot.sh:210 init.sh:154 msgid "DOWN" msgstr "닫기" -#: boot.sh:212 init.sh:153 +#: boot.sh:214 init.sh:158 msgid "NOT CONNECTED" msgstr "연결되지 않음" -#: boot.sh:216 init.sh:157 +#: boot.sh:218 init.sh:162 msgid "TIMEOUT (Please check the IP on the router.)" msgstr "시간 초과 (라우터에서 IP를 확인하세요!!)" -#: boot.sh:222 +#: boot.sh:224 msgid "Access \\033[1;34mhttp://%s:5000\\033[0m to connect the DSM via web." msgstr "웹브라우저에서 \\033[1;34mhttp://%s:5000\\033[0m DSM을 접속하세요." -#: boot.sh:234 +#: boot.sh:236 msgid "%2ds (Changing access(ssh/web) status will interrupt boot)" msgstr "%2ds (ssh/web) 연결 상태가 변경되면 부팅이 중단됩니다" -#: boot.sh:238 +#: boot.sh:240 msgid "access(ssh/web) status has changed and booting is interrupted." msgstr "(ssh/web) 연결 상태가 변경되어 부팅이 중단되었습니다." -#: boot.sh:248 +#: boot.sh:250 msgid "Loading DSM kernel ..." msgstr "DSM 커널 로드 중..." -#: boot.sh:264 +#: boot.sh:266 msgid "Warning, running kexec with --noefi param, strange things will happen!!" msgstr "" "경고, --noefi 매개 변수를 사용하여 kexec를 실행하면 오류가 발생할 수 있습니" "다!!!" -#: boot.sh:269 +#: boot.sh:271 msgid "Booting ..." msgstr "부팅 중..." -#: boot.sh:271 +#: boot.sh:273 msgid "" "[This interface will not be operational. Please wait a few minutes.\\nFind " "DSM via http://find.synology.com/ or Synology Assistant and connect.]" @@ -172,23 +172,23 @@ msgstr "" msgid "Network devices not found!" msgstr "네트워크 장치를 찾을 수 없습니다!" -#: init.sh:88 +#: init.sh:92 msgid "Loader disk neither USB or SATA/SCSI/NVME/MMC DoM" msgstr "부팅 디스크는 USB 또는 SATA/SCSI/NVME/MMC DoM만 지원됩니다" -#: init.sh:96 +#: init.sh:101 msgid "Loader disk:" msgstr "부팅 디스크:" -#: init.sh:104 +#: init.sh:109 msgid "Loading keymap" msgstr "키맵 로드 중" -#: init.sh:114 +#: init.sh:119 msgid "User requested edit settings." msgstr "사용자가 설정 변경을 요청했습니다." -#: init.sh:163 +#: init.sh:168 msgid "" "Access \\033[1;34mhttp://%s:7681\\033[0m to configure the loader via web " "terminal." @@ -196,77 +196,77 @@ msgstr "" "브라우저에서 \\033[1;34mhttp://%s:7681\\033[0m 로 이동하여,\n" "웹 터미널을 통해 로더를 구성할 수 있습니다." -#: init.sh:173 +#: init.sh:178 msgid "Call \\033[1;32mmenu.sh\\033[0m to configure loader" msgstr "" "\\033[1;32mmenu.sh\\033[0m 명령어를 사용하여 로더를 구성할 수 있습니다." -#: init.sh:175 +#: init.sh:180 msgid "User config is on" msgstr "사용자 구성이 활성화되어 있습니다." -#: init.sh:176 +#: init.sh:181 msgid "TTYD: \\033[1;34mhttp://rr:7681/\\033[0m" msgstr "TTYD: \\033[1;34mhttp://rr:7681\\033[0m" -#: init.sh:177 +#: init.sh:182 msgid "DUFS: \\033[1;34mhttp://rr:7304/\\033[0m" msgstr "DUFS: \\033[1;34mhttp://rr:7304\\033[0m" -#: init.sh:178 +#: init.sh:183 msgid "TTYD&DUFS: \\033[1;34mhttp://rr:80/\\033[0m" msgstr "TTYD&DUFS: \\033[1;34mhttp://rr:80\\033[0m" -#: init.sh:180 +#: init.sh:185 msgid "Default SSH \\033[1;31mroot\\033[0m password is" msgstr "기본 SSH \\033[1;31mroot\\033[0m 비밀번호는" -#: init.sh:197 +#: init.sh:202 msgid "" "You have less than 4GB of RAM, if errors occur in loader creation, please " "increase the amount of memory." msgstr "" "RAM이 4GB 미만인 경우 부팅을 생성할 때 오류가 발생하면 메모리를 늘리세요." -#: menu.sh:102 menu.sh:136 menu.sh:179 +#: menu.sh:106 menu.sh:140 menu.sh:183 msgid "Model" msgstr "모델" -#: menu.sh:103 +#: menu.sh:107 msgid "Reading models" msgstr "모델 읽기" -#: menu.sh:113 +#: menu.sh:117 msgid "Compatibility judgment" msgstr "호환성 검사" -#: menu.sh:134 +#: menu.sh:138 msgid "Disable flags restriction" msgstr "플래그 제한 비활성화" -#: menu.sh:135 +#: menu.sh:139 msgid "Show all models" msgstr "모든 모델 보기" -#: menu.sh:137 +#: menu.sh:141 msgid "Choose the model" msgstr "모델을 선택 하세요" -#: menu.sh:230 menu.sh:241 menu.sh:247 menu.sh:258 menu.sh:295 menu.sh:315 -#: menu.sh:365 +#: menu.sh:234 menu.sh:242 menu.sh:254 menu.sh:272 menu.sh:307 menu.sh:332 +#: menu.sh:384 msgid "Product Version" msgstr "DSM 버전" -#: menu.sh:231 +#: menu.sh:235 msgid "Choose a product version" msgstr "버전 선택" -#: menu.sh:242 +#: menu.sh:243 msgid "" "The current version has been set to %s. Do you want to reset the version?" msgstr "현재 버전이 %s 로 설정되었습니다. 버전을 재설정 하시겠습니까?" -#: menu.sh:248 +#: menu.sh:255 msgid "" "This version does not support UEFI startup, Please select another version or " "switch the startup mode." @@ -274,19 +274,19 @@ msgstr "" "이 버전은 UEFI 부팅이 지원되지 않습니다. 다른 버전을 선택하거나 부팅 모드를 " "전환하세요." -#: menu.sh:259 +#: menu.sh:273 msgid "Get pat data ..." msgstr "pat 데이터 가져오기.." -#: menu.sh:285 menu.sh:1033 menu.sh:1181 +#: menu.sh:297 menu.sh:1052 menu.sh:1200 msgid "Network error, please check the network connection and try again." msgstr "네트워크 오류입니다. 네트워크 연결을 확인하고 다시 시도하십시오." -#: menu.sh:286 +#: menu.sh:298 msgid "Or use 'Parse pat' function for installation." msgstr "또는 'Parse pat' 기능을 사용하여 설치합니다." -#: menu.sh:288 +#: menu.sh:300 msgid "" "Failed to get pat data,\\nPlease manually fill in the URL and md5sum of the " "corresponding version of pat.\\nOr click 'Retry'." @@ -294,7 +294,7 @@ msgstr "" "pat 데이터를 가져오지 못했습니다.\\n해당 pat 버전의 URL과 MD5를 수동으로 입력" "하세요.\\n또는 '재시도' 를 클릭합니다." -#: menu.sh:293 +#: menu.sh:305 msgid "" "Successfully to get pat data, Please confirm.\\nOr modify the URL and md5sum " "to you need." @@ -302,15 +302,15 @@ msgstr "" "pat 데이터를 성공적으로 가져왔습니다,\\n또는 필요에 따라 URL 및 md5sum을 수정" "합니다." -#: menu.sh:296 +#: menu.sh:308 msgid "Retry" msgstr "재시도" -#: menu.sh:316 menu.sh:418 +#: menu.sh:333 menu.sh:437 msgid "Reconfiguring Synoinfo, Addons and Modules" msgstr "synoinfo, 애드온 및 모듈 재구성" -#: menu.sh:350 +#: menu.sh:368 msgid "" "You have selected the %s and %s.\\n'Parse Pat' will overwrite the previous " "selection.\\nDo you want to continue?" @@ -318,15 +318,15 @@ msgstr "" "%s 및 %s를 선택했습니다.\\n'Parse pat'이 이전 선택 항목을 덮어씁니다.\\n계속" "하시겠습니까?" -#: menu.sh:351 +#: menu.sh:369 msgid "Parse Pat" msgstr "Parse pat" -#: menu.sh:359 +#: menu.sh:378 msgid "No pat file found in /tmp/pats/ folder!\\n" msgstr "/tmp/pats/ 폴더에 Pat 파일을 찾을 수 없습니다!\\n" -#: menu.sh:360 +#: menu.sh:379 msgid "" "Please upload the pat file to /tmp/pats/ folder via DUFS and re-enter this " "option.\\n" @@ -334,97 +334,97 @@ msgstr "" "DUFS를 통해 /tmp/pats/ 폴더에 Pat 파일을 업로드한 후 이 옵션을 다시 입력하세" "요.\\n" -#: menu.sh:361 menu.sh:371 menu.sh:2741 menu.sh:2742 menu.sh:2743 menu.sh:2744 -#: menu.sh:2745 menu.sh:2746 menu.sh:2752 menu.sh:2775 menu.sh:2786 -#: menu.sh:2797 menu.sh:2808 menu.sh:2822 menu.sh:2833 menu.sh:2850 -#: menu.sh:2869 +#: menu.sh:380 menu.sh:390 menu.sh:2808 menu.sh:2809 menu.sh:2810 menu.sh:2811 +#: menu.sh:2812 menu.sh:2813 menu.sh:2819 menu.sh:2842 menu.sh:2853 +#: menu.sh:2864 menu.sh:2875 menu.sh:2889 menu.sh:2900 menu.sh:2917 +#: menu.sh:2936 msgid "Update" msgstr "업데이트" -#: menu.sh:366 +#: menu.sh:385 msgid "Choose a pat file" msgstr "Pat 파일 선택" -#: menu.sh:372 menu.sh:384 menu.sh:1138 +#: menu.sh:391 menu.sh:403 menu.sh:1157 msgid "pat Invalid, try again!" msgstr "pat 파일이 유효하지 않습니다. 다시 시도하세요!" -#: menu.sh:377 +#: menu.sh:396 msgid "Parse %s ..." msgstr "%s 분석 ..." -#: menu.sh:402 +#: menu.sh:421 msgid "Currently, %s is not supported." msgstr "현재 %s는 지원되지 않습니다." -#: menu.sh:414 +#: menu.sh:433 msgid "Currently, %s of %s is not supported." msgstr "현재 %s-%s는 지원되지 않습니다." -#: menu.sh:475 menu.sh:1285 menu.sh:2951 menu.sh:2969 +#: menu.sh:494 menu.sh:1293 menu.sh:3021 menu.sh:3039 msgid "Main menu" msgstr "메인 메뉴" -#: menu.sh:476 menu.sh:1286 +#: menu.sh:495 menu.sh:1294 msgid "Making ..." msgstr "컴파일 중 ..." -#: menu.sh:478 menu.sh:1288 +#: menu.sh:497 menu.sh:1296 msgid "Error" msgstr "오류" -#: menu.sh:511 menu.sh:528 menu.sh:533 menu.sh:539 menu.sh:550 menu.sh:558 -#: menu.sh:581 menu.sh:588 menu.sh:592 menu.sh:606 menu.sh:610 menu.sh:618 -#: menu.sh:621 menu.sh:2562 menu.sh:2592 menu.sh:2743 menu.sh:2776 menu.sh:2780 +#: menu.sh:530 menu.sh:547 menu.sh:552 menu.sh:558 menu.sh:569 menu.sh:577 +#: menu.sh:600 menu.sh:607 menu.sh:611 menu.sh:625 menu.sh:629 menu.sh:637 +#: menu.sh:640 menu.sh:2629 menu.sh:2659 menu.sh:2810 menu.sh:2843 menu.sh:2847 msgid "Addons" msgstr "애드온" -#: menu.sh:512 menu.sh:642 menu.sh:818 menu.sh:953 menu.sh:1306 menu.sh:2952 +#: menu.sh:531 menu.sh:661 menu.sh:837 menu.sh:972 menu.sh:1314 menu.sh:3022 msgid "Choose a option" msgstr "옵션 선택" -#: menu.sh:513 +#: menu.sh:532 msgid "Add an addon" msgstr "애드온 추가" -#: menu.sh:514 +#: menu.sh:533 msgid "Delete addons" msgstr "애드온 제거" -#: menu.sh:515 +#: menu.sh:534 msgid "Show all addons" msgstr "모든 애드온 표시" -#: menu.sh:516 +#: menu.sh:535 msgid "Upload a external addon" msgstr "외부 애드온 업로드" -#: menu.sh:517 menu.sh:649 menu.sh:816 menu.sh:951 menu.sh:1311 menu.sh:1443 -#: menu.sh:2749 menu.sh:2949 menu.sh:3044 +#: menu.sh:536 menu.sh:668 menu.sh:835 menu.sh:970 menu.sh:1319 menu.sh:2134 +#: menu.sh:2816 menu.sh:3019 menu.sh:3114 msgid "Exit" msgstr "나가기" -#: menu.sh:529 +#: menu.sh:548 msgid "No available addons to add" msgstr "추가할 수 있는 애드온이 없습니다" -#: menu.sh:534 +#: menu.sh:553 msgid "Select an addon" msgstr "애드온 선택" -#: menu.sh:540 +#: menu.sh:559 msgid "Type a optional params to addon" msgstr "애드온에 추가할 환경 변수 입력합니다" -#: menu.sh:551 +#: menu.sh:570 msgid "No user addons to remove" msgstr "제거할 사용자 애드온이 없습니다" -#: menu.sh:559 +#: menu.sh:578 msgid "Select addon to remove" msgstr "제거할 애드온 선택 합니다" -#: menu.sh:572 +#: menu.sh:591 msgid "" "Name with color \"\\Z4blue\\Zn\" have been added, with color \"black\" are " "not added.\\n\\n" @@ -432,7 +432,7 @@ msgstr "" "이름 색상이 \"\\Z4파랑색\\Zn\"인 경우 추가됨, \"검은색\"인 경우 추가되지 않" "음.\\n\\n" -#: menu.sh:587 menu.sh:721 menu.sh:1319 menu.sh:2820 +#: menu.sh:606 menu.sh:740 menu.sh:1327 menu.sh:2887 msgid "" "This feature is only available when accessed via ssh (Requires a terminal " "that supports ZModem protocol).\\n" @@ -440,85 +440,85 @@ msgstr "" "이 기능은 ssh를 통해서만 액세스할 수 있습니다. (ZModem 프로토콜을 지원하는 터" "미널이 필요합니다.)\\n" -#: menu.sh:593 +#: menu.sh:612 msgid "Please upload the *.addons file." msgstr "*.addons 파일을 업로드하세요." -#: menu.sh:607 menu.sh:756 menu.sh:2851 menu.sh:2870 +#: menu.sh:626 menu.sh:775 menu.sh:2918 menu.sh:2937 msgid "Not a valid file, please try again!" msgstr "파일이 올바르지 않습니다. 다시 시도하세요!" -#: menu.sh:611 +#: menu.sh:630 msgid "The addon already exists. Do you want to overwrite it?" msgstr "애드온이 이미 존재합니다. 덮어쓰시겠습니까?" -#: menu.sh:619 +#: menu.sh:638 msgid "Addon '%s' added to loader, Please enable it in 'Add an addon' menu." msgstr "" "로더에 애드온 '%s'를 추가했습니다. '애드온 추가' 메뉴에서 활성화하세요." -#: menu.sh:622 +#: menu.sh:641 msgid "File format not recognized!" msgstr "파일 형식이 인식되지 않습니다!" -#: menu.sh:641 menu.sh:655 menu.sh:668 menu.sh:705 menu.sh:722 menu.sh:732 -#: menu.sh:735 menu.sh:751 menu.sh:755 menu.sh:769 menu.sh:775 menu.sh:2607 -#: menu.sh:2642 menu.sh:2744 menu.sh:2787 menu.sh:2791 +#: menu.sh:660 menu.sh:674 menu.sh:687 menu.sh:724 menu.sh:741 menu.sh:751 +#: menu.sh:754 menu.sh:770 menu.sh:774 menu.sh:788 menu.sh:794 menu.sh:2674 +#: menu.sh:2709 menu.sh:2811 menu.sh:2854 menu.sh:2858 msgid "Modules" msgstr "모듈" -#: menu.sh:643 +#: menu.sh:662 msgid "Show/Select modules" msgstr "모듈 표시/선택" -#: menu.sh:644 +#: menu.sh:663 msgid "Select loaded modules" msgstr "인식된 모듈 선택" -#: menu.sh:645 +#: menu.sh:664 msgid "Upload a external module" msgstr "외부 모듈 업로드" -#: menu.sh:646 +#: menu.sh:665 msgid "Deselect i915 with dependencies" msgstr "종속성이 있는 i915 선택 취소" -#: menu.sh:647 +#: menu.sh:666 msgid "Priority use of official drivers:" msgstr "공식 모듈 우선 사용:" -#: menu.sh:648 +#: menu.sh:667 msgid "Edit modules that need to be copied to DSM" msgstr "DSM 복사해야 하는 모듈 편집" -#: menu.sh:656 +#: menu.sh:675 msgid "Reading modules ..." msgstr "모듈을 읽는 중..." -#: menu.sh:669 +#: menu.sh:688 msgid "Select all" msgstr "모두 선택" -#: menu.sh:670 +#: menu.sh:689 msgid "Deselect all" msgstr "모두 선택 해제" -#: menu.sh:671 +#: menu.sh:690 msgid "Select modules to include" msgstr "포함할 모듈 선택" -#: menu.sh:706 +#: menu.sh:725 msgid "Selecting loaded modules" msgstr "인식된 모듈 선택" -#: menu.sh:727 +#: menu.sh:746 msgid "" "This function is experimental and dangerous. If you don't know much, please " "exit.\\n" msgstr "" "이 기능은 실험적이고 위험합니다. 모르는 내용이 있으면 종료하시기 바랍니다.\\n" -#: menu.sh:728 +#: menu.sh:747 msgid "" "The imported .ko of this function will be implanted into the corresponding " "arch's modules package, which will affect all models of the arch.\\n" @@ -526,7 +526,7 @@ msgstr "" ".ko 파일로 해당 기능을 가져오면 해당 아키텍처의 모듈 패키지에 삽입되어 해당 " "아키텍처의 모든 모델에 영향을 미칠 것입니다.\\n" -#: menu.sh:729 +#: menu.sh:748 msgid "" "This program will not determine the availability of imported modules or even " "make type judgments, as please double check if it is correct.\\n" @@ -534,7 +534,7 @@ msgstr "" "프로그램은 가져온 모듈의 사용 가능 여부를 확인하거나 유형 판단을 하지 않습니" "다. 올바른지 다시 확인하십시오.\\n" -#: menu.sh:730 +#: menu.sh:749 msgid "" "If you want to remove it, please go to the \"Update Menu\" -> \"Update " "modules\" to forcibly update the modules. All imports will be reset.\\n" @@ -542,56 +542,56 @@ msgstr "" "제거하려면 \"업데이트 메뉴\" -> \"모듈 업데이트\"로 이동하여 모듈을 강제로 업" "데이트하세요. 모든 가져오기가 초기화됩니다.\\n" -#: menu.sh:731 +#: menu.sh:750 msgid "Do you want to continue?" msgstr "계속하시겠습니까?" -#: menu.sh:736 +#: menu.sh:755 msgid "Please upload the *.ko file." msgstr ".ko 파일을 업로드하세요." -#: menu.sh:752 +#: menu.sh:771 msgid "Module '%s' added to %s-%s" msgstr "모듈 '%s'가 %s-%s에 추가됨" -#: menu.sh:770 +#: menu.sh:789 msgid "No i915 with dependencies module to deselect." msgstr "선택을 취소할 종속성 모듈이 있는 i915가 없습니다." -#: menu.sh:776 +#: menu.sh:795 msgid "Module %s deselected.\\n" msgstr "%s 모듈이 선택 취소되었습니다.\\n" -#: menu.sh:790 menu.sh:1373 menu.sh:2282 menu.sh:2289 menu.sh:2312 +#: menu.sh:809 menu.sh:1381 menu.sh:1408 menu.sh:1415 menu.sh:1438 msgid "Edit with caution" msgstr "신중하게 편집하세요" -#: menu.sh:810 +#: menu.sh:829 msgid "Add/Edit a cmdline item" msgstr "명령줄 추가/수정" -#: menu.sh:811 +#: menu.sh:830 msgid "Show/Delete cmdline items" msgstr "명령줄 보기/삭제" -#: menu.sh:813 +#: menu.sh:832 msgid "Define SN/MAC" msgstr "SN/MAC 사용자 지정" -#: menu.sh:815 +#: menu.sh:834 msgid "Show model inherent cmdline" msgstr "모델 기본 명령줄 보기" -#: menu.sh:817 menu.sh:836 menu.sh:845 menu.sh:869 menu.sh:877 menu.sh:894 -#: menu.sh:905 menu.sh:937 +#: menu.sh:836 menu.sh:855 menu.sh:864 menu.sh:888 menu.sh:896 menu.sh:913 +#: menu.sh:924 menu.sh:956 msgid "Cmdline" msgstr "명령줄" -#: menu.sh:824 +#: menu.sh:843 msgid "Commonly used cmdlines:\\n" msgstr "일반적으로 사용되는 명령줄:\\n" -#: menu.sh:825 +#: menu.sh:844 msgid "" " * \\Z4disable_mtrr_trim=\\Zn\\n disables kernel trim any uncacheable " "memory out.\\n" @@ -599,7 +599,7 @@ msgstr "" " * \\Z4disable_mtrr_trim=\\Zn\\n 커널이 캐시할 수 없는 메모리를 제거하는 " "것을 비활성화합니다.\\n" -#: menu.sh:826 +#: menu.sh:845 msgid "" " * \\Z4intel_idle.max_cstate=1\\Zn\\n Set the maximum C-state depth " "allowed by the intel_idle driver.\\n" @@ -607,29 +607,29 @@ msgstr "" " * \\Z4intel_idle.max_cstate=1\\Zn\\n intel_idle 드라이브에 허용되는 최대 " "C-state 깊이를 설정합니다.\\n" -#: menu.sh:827 +#: menu.sh:846 msgid "" " * \\Z4pcie_port_pm=off\\Zn\\n Turn off the power management of the PCIe " "port.\\n" msgstr " * \\Z4pcie_port_pm=off\\Zn\\n PCIe 포트의 전원 관리 끄기.\\n" -#: menu.sh:828 +#: menu.sh:847 msgid " * \\Z4libata.force=noncq\\Zn\\n Disable NCQ for all SATA ports.\\n" msgstr "" " * \\Z4libata.force=noncq\\Zn\\n 모든 SATA 포트에 대해 NCQ를 비활성화합니" "다.\\n" -#: menu.sh:829 +#: menu.sh:848 msgid " * \\Z4SataPortMap=??\\Zn\\n Sata Port Map.\\n" msgstr " * \\Z4SataPortMap=??\\Zn\\n Sata Port Map.\\n" -#: menu.sh:830 +#: menu.sh:849 msgid "" " * \\Z4DiskIdxMap=??\\Zn\\n Disk Index Map, Modify disk name sequence.\\n" msgstr "" " * \\Z4DiskIdxMap=??\\Zn\\n 디스크 인덱스 맵, 디스크 이름 순서 수정.\\n" -#: menu.sh:831 +#: menu.sh:850 msgid "" " * \\Z4i915.enable_guc=2\\Zn\\n Enable the GuC firmware on Intel graphics " "hardware.(value: 1,2 or 3)\\n" @@ -637,7 +637,7 @@ msgstr "" " * \\Z4i915.enable_guc=2\\Zn\\n Intel 그래픽 하드웨어에서 GuC 펌웨어를 활" "성화합니다(값: 1, 2 또는 3)\\n" -#: menu.sh:832 +#: menu.sh:851 msgid "" " * \\Z4i915.max_vfs=7\\Zn\\n Set the maximum number of virtual functions " "(VFs) that can be created for Intel graphics hardware.\\n" @@ -645,96 +645,96 @@ msgstr "" " * \\Z4i915.max_vfs=7\\Zn\\n Intel 그래픽 하드웨어에 대해 생성할 수 있는 " "최대 가상 기능(VF) 수를 설정합니다.\\n" -#: menu.sh:833 menu.sh:964 +#: menu.sh:852 menu.sh:983 msgid "\\nEnter the parameter name and value you need to add.\\n" msgstr "\\n추가해야 하는 매개변수 이름과 값을 입력합니다.\\n" -#: menu.sh:846 menu.sh:977 +#: menu.sh:865 menu.sh:996 msgid "Invalid parameter name, retry?" msgstr "잘못된 매개변수 이름입니다. 다시 시도하시겠습니까?" -#: menu.sh:870 +#: menu.sh:889 msgid "No user cmdline to remove" msgstr "제거할 사용자 명령줄이 없습니다." -#: menu.sh:878 +#: menu.sh:897 msgid "Select cmdline to remove" msgstr "제거할 명령줄 선택" -#: menu.sh:889 +#: menu.sh:908 msgid "Note: (MAC will not be set to NIC, Only for activation services.)" msgstr "" "참고: (MAC은 NIC로 설정되지 않으며 활성화 서비스에 대해서만 설정됩니다.)" -#: menu.sh:895 +#: menu.sh:914 msgid "Random" msgstr "랜덤생성" -#: menu.sh:906 +#: menu.sh:925 msgid "Invalid SN/MAC, retry?" msgstr "SN/MAC가 잘못되었습니다. 다시 시도하시겠습니까?" -#: menu.sh:949 +#: menu.sh:968 msgid "Add/edit a synoinfo item" msgstr "synoinfo 항목 추가/편집" -#: menu.sh:950 +#: menu.sh:969 msgid "Show/Delete synoinfo items" msgstr "synoinfo 항목 보기/삭제" -#: menu.sh:952 menu.sh:967 menu.sh:976 menu.sh:1001 menu.sh:1009 +#: menu.sh:971 menu.sh:986 menu.sh:995 menu.sh:1020 menu.sh:1028 msgid "Synoinfo" msgstr "synoinfo" -#: menu.sh:959 +#: menu.sh:978 msgid "Commonly used synoinfo:\\n" msgstr "일반적으로 사용되는 synoinfo:\\n" -#: menu.sh:960 +#: menu.sh:979 msgid " * \\Z4maxdisks=??\\Zn\\n Maximum number of disks supported.\\n" msgstr " * \\Z4maxdisks=??\\Zn\\n 지원되는 최대 하드 디스크 수\\n" -#: menu.sh:961 +#: menu.sh:980 msgid " * \\Z4internalportcfg=0x????\\Zn\\n Internal(sata) disks mask.\\n" msgstr " * \\Z4internalportcfg=0x????\\Zn\\n 내부(SATA) 디스크 마스크.\\n" -#: menu.sh:962 +#: menu.sh:981 msgid " * \\Z4esataportcfg=0x????\\Zn\\n Esata disks mask.\\n" msgstr " * \\Z4esataportcfg=0x????\\Zn\\n Esata 디스크 마스크.\\n" -#: menu.sh:963 +#: menu.sh:982 msgid " * \\Z4usbportcfg=0x????\\Zn\\n USB disks mask.\\n" msgstr " * \\Z4usbportcfg=0x????\\Zn\\n USB 디스크 마스크.\\n" -#: menu.sh:1002 +#: menu.sh:1021 msgid "No synoinfo entries to remove" msgstr "제거할 synoinfo 항목이 없습니다." -#: menu.sh:1010 +#: menu.sh:1029 msgid "Select synoinfo entry to remove" msgstr "제거할 synoinfo 항목 선택" -#: menu.sh:1045 +#: menu.sh:1064 msgid "Downloading old pat to extract synology .pat extractor..." msgstr "이전 Pat를 다운로드하여 synology .pat 추출기를 추출 중입니다..." -#: menu.sh:1051 menu.sh:1203 +#: menu.sh:1070 menu.sh:1222 msgid "Check internet or cache disk space.\\nError: %d:%d" msgstr "인터넷 또는 캐시 디스크 공간을 확인합니다.\\n오류: %d:%d" -#: menu.sh:1091 +#: menu.sh:1110 msgid "Uncompressed tar" msgstr "압축되지 않은 tar" -#: menu.sh:1095 +#: menu.sh:1114 msgid "Compressed tar" msgstr "압축된 tar" -#: menu.sh:1099 +#: menu.sh:1118 msgid "Encrypted" msgstr "암호화된" -#: menu.sh:1103 +#: menu.sh:1122 msgid "" "Could not determine if pat file is encrypted or not, maybe corrupted, try " "again!" @@ -742,55 +742,55 @@ msgstr "" "pat 파일이 암호화되었는지 여부를 확인할 수 없습니다. 손상되었을 수 있습니다. " "다시 시도하세요!" -#: menu.sh:1110 menu.sh:1219 +#: menu.sh:1129 menu.sh:1238 msgid "Disassembling %s: " msgstr "%s 압축 해제 중: " -#: menu.sh:1117 +#: menu.sh:1136 msgid "Extractor cached." msgstr "복호화 프로그램이 이미 존재합니다." -#: menu.sh:1123 menu.sh:1126 +#: menu.sh:1142 menu.sh:1145 msgid "Extracting ..." msgstr "압축 해제 중..." -#: menu.sh:1157 +#: menu.sh:1176 msgid "%s cached." msgstr "%s가 캐시되었습니다." -#: menu.sh:1160 +#: menu.sh:1179 msgid "The cache has been cleared. Please re 'Parse pat' before build." msgstr "캐시가 지워졌습니다. 빌드하기 전에 'Parse pat'을 다시 실행하세요." -#: menu.sh:1164 +#: menu.sh:1183 msgid "" "The cache has been cleared. Please re 'Try to recovery a installed DSM " "system' before build." msgstr "" "캐시가 지워졌습니다.생성하기 전에 설치된 DSM 시스템 복구를 다시 시도하세요." -#: menu.sh:1168 +#: menu.sh:1187 msgid "The pat url is empty. Please re 'Choose a version' before build." msgstr "pat url이 비어 있습니다. 생성하기 전에 버전 선택을 다시 하세요." -#: menu.sh:1173 +#: menu.sh:1192 msgid "Cleaning cache ..." msgstr "캐시 정리 중..." -#: menu.sh:1187 +#: menu.sh:1206 msgid "" "Based on the current network situation, switch to %s mirror to downloading." msgstr "현재 네트워크 상황에 따라 %s 미러로 전환하여 다운로드합니다." -#: menu.sh:1190 +#: menu.sh:1209 msgid "Downloading %s ..." msgstr "Downloading %s ..." -#: menu.sh:1209 +#: menu.sh:1228 msgid "Checking hash of %s: " msgstr "%s의 해시를 확인하는 중:" -#: menu.sh:1212 +#: menu.sh:1231 msgid "" "md5 hash of pat not match, Please reget pat data from the version menu and " "try again!" @@ -798,59 +798,55 @@ msgstr "" "PAT의 MD5 해시가 일치하지 않습니다. 버전 메뉴에서 PAT 데이터를 다시 가져와서 " "다시 시도하세요!" -#: menu.sh:1215 menu.sh:1231 menu.sh:1241 +#: menu.sh:1234 menu.sh:1250 menu.sh:1260 msgid "OK" msgstr "OK" -#: menu.sh:1226 +#: menu.sh:1245 msgid "Setting hash: " msgstr "해시 설정: " -#: menu.sh:1233 +#: menu.sh:1252 msgid "Copying files: " msgstr "파일 복사 중: " -#: menu.sh:1257 -msgid "Addon %s not found!" -msgstr "애드온 %s을 찾을 수 없습니다!" - -#: menu.sh:1279 +#: menu.sh:1287 msgid "Cleaning ..." msgstr "정리 중..." -#: menu.sh:1281 +#: menu.sh:1289 msgid "Ready!" msgstr "준비됨!" -#: menu.sh:1305 menu.sh:1321 menu.sh:1325 menu.sh:1342 menu.sh:1347 -#: menu.sh:1366 menu.sh:1378 menu.sh:1430 +#: menu.sh:1313 menu.sh:1329 menu.sh:1333 menu.sh:1350 menu.sh:1355 +#: menu.sh:1374 menu.sh:1386 menu.sh:2101 msgid "Custom DTS" msgstr "사용자 정의 DTS" -#: menu.sh:1307 +#: menu.sh:1315 msgid "Custom dts: " msgstr "사용자 정의 dts: " -#: menu.sh:1308 +#: menu.sh:1316 msgid "Upload dts file" msgstr "dts 파일 업로드" -#: menu.sh:1309 +#: menu.sh:1317 msgid "Delete dts file" msgstr "dts 파일 삭제" -#: menu.sh:1310 +#: menu.sh:1318 msgid "Edit dts file" msgstr "dts 파일 편집" -#: menu.sh:1320 +#: menu.sh:1328 msgid "" "Or upload the dts file to %s via DUFS, Will be automatically imported when " "building." msgstr "" "또는 DUFS를 통해 %s에 dts 파일을 업로드하면 빌드할 때 자동으로 가져옵니다." -#: menu.sh:1326 +#: menu.sh:1334 msgid "" "Currently, only dts format files are supported. Please prepare and click to " "confirm uploading.\\n(saved in /mnt/p3/users/)" @@ -858,181 +854,60 @@ msgstr "" "현재는 dts 형식의 파일만 지원됩니다. 준비 후 클릭하여 업로드를 확인해주세요." "\\n(/mnt/p3/users/에 저장됨)" -#: menu.sh:1343 menu.sh:1379 +#: menu.sh:1351 menu.sh:1387 msgid "Not a valid dts file, please try again!" msgstr "dts 파일이 유효하지 않습니다. 다시 시도하세요!" -#: menu.sh:1348 +#: menu.sh:1356 msgid "A valid dts file, Automatically import at compile time." msgstr "유효한 dts 파일로 컴파일 시 자동으로 가져옵니다." -#: menu.sh:1367 +#: menu.sh:1375 msgid "No dts file to edit. Please upload first!" msgstr "편집 가능한 dts 파일이 없습니다.먼저 올려주세요!" -#: menu.sh:1403 -msgid "Switch LKM version:" -msgstr "LKM 버전을 전환:" - -#: menu.sh:1404 -msgid "HDD sort(hotplug):" -msgstr "HDD 정렬(Hot Plug):" - -#: menu.sh:1407 -msgid "Switch direct boot:" -msgstr "직접 부팅 전환:" - -#: menu.sh:1409 -msgid "Timeout of get ip in boot:" -msgstr "IP 가져오기 시간(초):" - -#: menu.sh:1410 -msgid "Timeout of boot wait:" -msgstr "부팅 대기 시간(초):" - -#: menu.sh:1411 -msgid "kernel switching method:" -msgstr "커널 전환 방법:" - -#: menu.sh:1413 -msgid "Reboot on kernel panic:" -msgstr "커널패닉 시 재부팅(초):" - -#: menu.sh:1415 -msgid "Set static IP" -msgstr "고정 IP 설정" - -#: menu.sh:1416 -msgid "Set wireless account" -msgstr "무선 계정 설정" - -#: menu.sh:1417 -msgid "Edit user config file manually" -msgstr "사용자 구성 config 편집" - -#: menu.sh:1418 -msgid "Edit grub.cfg file manually" -msgstr "grub.cfg 파일을 수동으로 편집하기" - -#: menu.sh:1419 -msgid "Try to recovery a installed DSM system" -msgstr "설치된 DSM 시스템 복구 시도" - -#: menu.sh:1420 -msgid "Show disks information" -msgstr "디스크 정보 표시" - -#: menu.sh:1422 -msgid "show/modify the current pat data" -msgstr "현재 pat 다운로드 링크 표시/수정" - -#: menu.sh:1424 -msgid "Allow downgrade installation" -msgstr "다운그레이드 설치 허용" - -#: menu.sh:1425 -msgid "Format disk(s) # Without loader disk" -msgstr "포맷 디스크 # 로더 디스크 없음" - -#: menu.sh:1426 -msgid "Reset DSM system password" -msgstr "DSM 시스템 비밀번호 재설정" - -#: menu.sh:1427 -msgid "Force enable Telnet&SSH of DSM system" -msgstr "DSM 시스템의 Telnet&SSH를 강제로 활성화합니다" - -#: menu.sh:1428 -msgid "Save modifications of '/opt/rr'" -msgstr "'/opt/rr'의 수정 사항 저장" - -#: menu.sh:1432 -msgid "Custom patch script # Developer" -msgstr "사용자 정의 패치 스크립트 # 개발" - -#: menu.sh:1434 -msgid "Use EMMC as the system disk:" -msgstr "EMMC를 시스템 디스크로 사용:" - -#: menu.sh:1436 -msgid "Clone bootloader disk to another disk" -msgstr "부트로더 디스크를 다른 디스크에 복제" - -#: menu.sh:1437 -msgid "Report bugs to the author" -msgstr "개발자에게 버그 신고하기" - -#: menu.sh:1438 -msgid "Install development tools" -msgstr "개발자 도구 설치" - -#: menu.sh:1439 -msgid "Show QR logo:" -msgstr "QR 로고 표시:" - -#: menu.sh:1440 -msgid "Set global proxy" -msgstr "글로벌 프록시 설정" - -#: menu.sh:1441 -msgid "Set github proxy" -msgstr "Github 프록시 설정" - -#: menu.sh:1442 -msgid "Vigorously miracle" -msgstr "Vigorously miracle" - -#: menu.sh:1445 menu.sh:1469 menu.sh:1481 menu.sh:1501 menu.sh:1524 -#: menu.sh:1548 menu.sh:1553 menu.sh:1565 menu.sh:1574 menu.sh:1596 -#: menu.sh:1697 menu.sh:1704 menu.sh:1722 menu.sh:1735 menu.sh:1738 -#: menu.sh:1751 menu.sh:1755 menu.sh:1756 menu.sh:1761 menu.sh:1765 -#: menu.sh:1780 menu.sh:1782 menu.sh:1805 menu.sh:1809 menu.sh:1816 -#: menu.sh:1822 menu.sh:1840 menu.sh:1842 menu.sh:1846 menu.sh:1868 -#: menu.sh:1871 menu.sh:1875 menu.sh:1878 menu.sh:1893 menu.sh:1906 -#: menu.sh:1938 menu.sh:1942 menu.sh:1948 menu.sh:1954 menu.sh:1960 -#: menu.sh:1991 menu.sh:2004 menu.sh:2008 menu.sh:2018 menu.sh:2023 -#: menu.sh:2030 menu.sh:2032 menu.sh:2044 menu.sh:2055 menu.sh:2077 -#: menu.sh:2088 menu.sh:2105 -msgid "Advanced" -msgstr "고급" - -#: menu.sh:1446 -msgid "Advanced option" -msgstr "고급 설정" - -#: menu.sh:1470 menu.sh:1482 menu.sh:1502 -msgid "Choose a time(seconds)" -msgstr "시간(초) 선택" - -#: menu.sh:1512 +#: menu.sh:1450 msgid "Temporary IP: (UI will not refresh)" msgstr "임시 IP: (UI가 새로고침되지 않음)" -#: menu.sh:1549 +#: menu.sh:1462 menu.sh:1486 menu.sh:1494 menu.sh:1506 menu.sh:1515 +#: menu.sh:1537 menu.sh:1629 menu.sh:1646 menu.sh:1650 menu.sh:1651 +#: menu.sh:1656 menu.sh:1660 menu.sh:1675 menu.sh:1677 menu.sh:1854 +#: menu.sh:1868 menu.sh:1871 menu.sh:1899 menu.sh:1903 menu.sh:1910 +#: menu.sh:1916 menu.sh:1935 menu.sh:1937 menu.sh:1945 menu.sh:1968 +#: menu.sh:1971 menu.sh:1986 menu.sh:1990 menu.sh:1996 menu.sh:2002 +#: menu.sh:2008 menu.sh:2039 menu.sh:2055 menu.sh:2066 menu.sh:2136 +#: menu.sh:2157 menu.sh:2182 menu.sh:2194 menu.sh:2214 menu.sh:2251 +#: menu.sh:2306 menu.sh:2310 menu.sh:2320 menu.sh:2326 menu.sh:2329 +#: menu.sh:2344 menu.sh:2349 menu.sh:2356 menu.sh:2358 menu.sh:2379 +msgid "Advanced" +msgstr "고급" + +#: menu.sh:1487 msgid "Setting IP ..." msgstr "IP 설정 중..." -#: menu.sh:1554 +#: menu.sh:1495 msgid "Scanning ..." msgstr "검색 중..." -#: menu.sh:1557 +#: menu.sh:1498 msgid "Scanned SSIDs:\\n" msgstr "검색된 SSIDs:\\n" -#: menu.sh:1575 +#: menu.sh:1516 msgid "Invalid SSID/PSK, retry?" msgstr "SSID/PSK가 잘못되었습니다. 다시 시도하시겠습니까?" -#: menu.sh:1597 +#: menu.sh:1538 msgid "Setting ..." msgstr "설정 중..." -#: menu.sh:1695 +#: menu.sh:1627 msgid "\\nTotal of ports: %s\\n" msgstr "\\n총 포트 : %s\\n" -#: menu.sh:1696 +#: menu.sh:1628 msgid "" "\\nPorts with color \\Z1red\\Zn as DUMMY, color \\Z2\\Zbgreen\\Zn has drive " "connected." @@ -1040,23 +915,11 @@ msgstr "" "\\n\\Z1 빨간색\\Zn은 아날로그 포트, \\Z2\\Zb 녹색\\Zn은 구동되는 물리적 포트" "입니다." -#: menu.sh:1703 -msgid "pat: (editable)" -msgstr "pat: (편집가능)" +#: menu.sh:1647 menu.sh:1987 +msgid "No disk found!" +msgstr "디스크를 찾을 수 없습니다!" -#: menu.sh:1719 -msgid "" -"This feature will allow you to downgrade the installation by removing the " -"VERSION file from the first partition of all disks.\\n" -msgstr "" -"이 기능을 사용하면 모든 디스크의 첫 번째 파티션에서 버전 파일을 제거하여 설치" -"를 다운그레이드할 수 있습니다.\\n" - -#: menu.sh:1720 -msgid "Therefore, please insert all disks before continuing.\\n" -msgstr "따라서 모든 디스크를 삽입한 후 작업을 진행하십시오.\\n" - -#: menu.sh:1721 menu.sh:1762 +#: menu.sh:1657 menu.sh:1853 msgid "" "Warning:\\nThis operation is irreversible. Please backup important data. Do " "you want to continue?" @@ -1064,231 +927,37 @@ msgstr "" "경고:\\n이 작업은 되돌릴 수 없습니다. 중요한 데이터를 백업하십시오. 계속하시" "겠습니까?" -#: menu.sh:1736 -msgid "Removing ..." -msgstr "제거 중..." - -#: menu.sh:1737 -msgid "Remove VERSION file for all disks completed." -msgstr "모든 디스크의 버전 파일 제거가 완료되었습니다." - -#: menu.sh:1752 menu.sh:1939 -msgid "No disk found!" -msgstr "디스크를 찾을 수 없습니다!" - -#: menu.sh:1766 +#: menu.sh:1661 msgid "" "Warning:\\nThe current hds is in raid, do you still want to format them?" msgstr "경고:\\n현재 하드디스크가 RAID 상태입니다. 그래도 포맷하시겠습니까?" -#: menu.sh:1781 +#: menu.sh:1676 msgid "Formatting ..." msgstr "포맷 중..." -#: menu.sh:1783 +#: menu.sh:1678 msgid "Formatting is complete." msgstr "포맷이 완료되었습니다." -#: menu.sh:1806 -msgid "The installed Syno system not found in the currently inserted disks!" -msgstr "현재 삽입된 디스크에서 설치된 Synology 시스템을 찾을 수 없습니다!" - -#: menu.sh:1810 -msgid "Choose a user name" -msgstr "사용자 이름 선택" - -#: menu.sh:1817 -msgid "Type a new password for user '%s'" -msgstr "사용자 '%s'의 새 비밀번호를 입력하세요." - -#: menu.sh:1823 -msgid "Invalid password" -msgstr "잘못된 비밀번호" - -#: menu.sh:1841 -msgid "Resetting ..." -msgstr "재설정 중..." - -#: menu.sh:1843 -msgid "Password reset completed." -msgstr "비밀번호 재설정이 완료되었습니다." - -#: menu.sh:1847 -msgid "Please insert all disks before continuing.\\n" -msgstr "계속하기 전에 모든 디스크를 삽입하십시오.\\n" - -#: menu.sh:1869 -msgid "Enabling ..." -msgstr "활성화 중..." - -#: menu.sh:1870 -msgid "Telnet&SSH is enabled." -msgstr "Telnet&SSH가 활성화되었습니다." - -#: menu.sh:1870 -msgid "Telnet&SSH is not enabled." -msgstr "Telnet&SSH가 활성화되어 있지 않습니다." - -#: menu.sh:1876 -msgid "" -"Warning:\\nDo not terminate midway, otherwise it may cause damage to the RR. " -"Do you want to continue?" -msgstr "" -"경고:\\n중간에 종료하지 마십시오. 그렇지 않으면 RR 부팅이 손상이 발생할 수 있" -"습니다. 계속하시겠습니까?" - -#: menu.sh:1879 -msgid "" -"Saving ...\\n(It usually takes 5-10 minutes, please be patient and wait.)" -msgstr "저장 중...\\n(보통 5~10분 정도 소요되니 조금만 기다려 주세요.)" - -#: menu.sh:1894 -msgid "Save is complete." -msgstr "저장이 완료되었습니다." - -#: menu.sh:1902 -msgid "This option is only informative.\\n\\n" -msgstr "이 옵션은 정보 제공용입니다.\\n\\n" - -#: menu.sh:1903 -msgid "This program reserves an interface for ramdisk custom patch scripts.\\n" -msgstr "" -"이 프로그램은 램디스크 사용자 지정 패치 스크립트를 위한 인터페이스를 예약합니" -"다.\\n" - -#: menu.sh:1904 -msgid "Call timing: called before ramdisk packaging.\\n" -msgstr "호출 타이밍: 램디스크 패키징 전에 호출됩니다.\\n" - -#: menu.sh:1905 -msgid "Location: /mnt/p3/scripts/*.sh\\n" -msgstr "위치: /mnt/p3/scripts/*.sh\\n" - -#: menu.sh:1943 -msgid "Choose a disk to clone to" -msgstr "복제할 디스크를 선택합니다." - -#: menu.sh:1949 -msgid "No disk selected!" -msgstr "선택한 디스크가 없습니다!" - -#: menu.sh:1955 -msgid "Disk %s size is less than 1GB and cannot be cloned!" -msgstr "디스크 %s 크기가 1GB 미만이어서 복제할 수 없습니다!" - -#: menu.sh:1959 -msgid "" -"Warning:\\nDisk %s will be formatted and written to the bootloader. Please " -"confirm that important data has been backed up. \\nDo you want to continue?" -msgstr "" -"경고:\\n디스크 %s가 포맷되어 부트 로더에 기록됩니다. 중요한 데이터가 백업되었" -"는지 확인하십시오. \\n계속하시겠습니까?" - -#: menu.sh:1992 -msgid "Cloning ..." -msgstr "복제 중 ..." - -#: menu.sh:1994 -msgid "" -"Bootloader has been cloned to disk %s, please remove the current bootloader " -"disk!\\nReboot?" -msgstr "" -"부트로더가 %s 디스크에 복제되었습니다. 현재 부트로더 디스크를 제거하십시오!" -"\\n재부팅하시겠습니까?" - -#: menu.sh:2005 -msgid "" -"Please via %s to download the logs,\\nAnd go to github to create an issue " -"and upload the logs." -msgstr "" -"%s를 통해 로그를 다운로드하고, github로 이동하여 이슈를 생성하고 로그를 업로" -"드하세요." - -#: menu.sh:2009 -msgid "Please go to github to create an issue and upload the logs." -msgstr "Github로 이동하여 이슈를 생성하고 로그를 업로드하세요." - -#: menu.sh:2013 -msgid "\\Z1No logs found!\\Zn\\n\\n" -msgstr "\\Z1로그를 찾을 수 없습니다!\\Zn\\n\\n" - -#: menu.sh:2014 -msgid "Please do as follows:\\n" -msgstr "다음과 같이 하세요:\\n" - -#: menu.sh:2015 -msgid " 1. Add dbgutils in addons and rebuild.\\n" -msgstr "1. 애드온에 dbgutils를 추가하고 다시 빌드하세요.\\n" - -#: menu.sh:2016 -msgid " 2. Wait 10 minutes after booting.\\n" -msgstr " 2. 부팅 후 10분간 기다립니다.\\n" - -#: menu.sh:2017 -msgid " 3. Reboot into RR and go to this option.\\n" -msgstr " 3. RR로 재부팅하고 이 옵션으로 이동합니다.\\n" - -#: menu.sh:2024 -msgid "" -"This option only installs opkg package management, allowing you to install " -"more tools for use and debugging. Do you want to continue?" -msgstr "" -"이 옵션은 opkg 패키지 관리만 설치하므로 사용 및 디버깅을 위한 더 많은 도구를 " -"설치할 수 있습니다. 계속하시겠습니까?" - -#: menu.sh:2031 -msgid "opkg installing ..." -msgstr "opkg 설치 중 ..." - -#: menu.sh:2033 -msgid "" -"opkg install is complete. Please reconnect to ssh/web, or execute 'source ~/." -"bashrc'" -msgstr "" -"opkg 설치가 완료되었습니다. ssh/web에 다시 연결하거나 'source ~/.bashrc'를 실" -"행하세요." - -#: menu.sh:2045 -msgid "Please enter a proxy server url.(e.g., http://192.168.1.1:7981/)" -msgstr "프록시 서버 URL을 입력하세요(예: http://192.168.1.1:7981/)" - -#: menu.sh:2056 menu.sh:2089 -msgid "Invalid proxy server url, continue?" -msgstr "잘못된 프록시 서버 URL입니다. 계속하시겠습니까?" - -#: menu.sh:2078 -msgid "Please enter a proxy server url.(e.g., https://mirror.ghproxy.com/)" -msgstr "프록시 서버 URL을 입력하세요(예: https://mirror.ghproxy.com/)" - -#: menu.sh:2103 -msgid "It is expected that all restrictions on DSM will be lifted,\\n" -msgstr "DSM 에 대한 모든 제한이 해제될 것으로 예상됩니다.\\n" - -#: menu.sh:2104 -msgid "" -"But since upgrading is not supported, I don not want to implement it for the " -"time being.\\n" -msgstr "" -"하지만 업그레이드가 지원되지 않기 때문에 당분간 구현하고 싶지 않습니다.\\n" - -#: menu.sh:2116 menu.sh:2120 menu.sh:2134 menu.sh:2154 menu.sh:2170 -#: menu.sh:2178 menu.sh:2262 menu.sh:2267 menu.sh:2273 +#: menu.sh:1685 menu.sh:1689 menu.sh:1703 menu.sh:1723 menu.sh:1739 +#: menu.sh:1747 menu.sh:1831 menu.sh:1836 menu.sh:1842 msgid "Try recovery DSM" msgstr "복구 DSM 시도 중" -#: menu.sh:2117 +#: menu.sh:1686 msgid "Trying to recovery a installed DSM system ..." msgstr "설치된 DSM 시스템을 복구하려고 합니다..." -#: menu.sh:2121 +#: menu.sh:1690 msgid "Unfortunately I couldn't mount the DSM partition!" msgstr "안타깝게도 DSM 파티션을 마운트할 수 없었습니다!" -#: menu.sh:2135 +#: menu.sh:1704 msgid "Checking for backup of user's configuration for bootloader ..." msgstr "부트 로더의 사용자 구성 백업을 검사하는 중..." -#: menu.sh:2155 +#: menu.sh:1724 msgid "" "Found a backup of the user's configuration, but the system is damaged and " "will not be restored. Please reselect model and build." @@ -1296,21 +965,21 @@ msgstr "" "사용자 구성 백업을 찾았지만 시스템이 손상되어 복구할 수 없습니다.모델을 다시 " "선택하고 구성하십시오." -#: menu.sh:2171 +#: menu.sh:1740 msgid "" "Found a backup of the user's configuration, and restored it. Please rebuild " "and boot." msgstr "사용자가 구성한 백업을 찾아 복원했습니다. 다시 생성하여 시작하십시오." -#: menu.sh:2179 +#: menu.sh:1748 msgid "Checking for installed DSM system ..." msgstr "설치된 DSM 시스템을 확인하는 중..." -#: menu.sh:2263 +#: menu.sh:1832 msgid "Found a installed DSM system and restored it. Please rebuild and boot." msgstr "설치된 DSM 시스템을 찾아 복원합니다. 다시 생성하여 시작하십시오." -#: menu.sh:2268 +#: menu.sh:1837 msgid "" "Found a installed DSM system, but the system is damaged and will not be " "restored. Please reselect model and build." @@ -1318,7 +987,7 @@ msgstr "" "설치된 DSM 시스템을 찾았지만 시스템이 손상되어 복구할 수 없습니다.모델을 다" "시 선택하고 구성하십시오." -#: menu.sh:2274 +#: menu.sh:1843 msgid "" "The installed DSM system was not found, or the system is damaged and cannot " "be recovered. Please reselect model and build." @@ -1326,72 +995,383 @@ msgstr "" "설치된 DSM 시스템을 찾을 수 없거나 시스템이 손상되어 복구할 수 없습니다.모델" "을 다시 선택하고 구성하십시오." -#: menu.sh:2324 +#: menu.sh:1851 +msgid "" +"This feature will allow you to downgrade the installation by removing the " +"VERSION file from the first partition of all disks.\\n" +msgstr "" +"이 기능을 사용하면 모든 디스크의 첫 번째 파티션에서 버전 파일을 제거하여 설치" +"를 다운그레이드할 수 있습니다.\\n" + +#: menu.sh:1852 +msgid "Therefore, please insert all disks before continuing.\\n" +msgstr "따라서 모든 디스크를 삽입한 후 작업을 진행하십시오.\\n" + +#: menu.sh:1869 +msgid "Removing ..." +msgstr "제거 중..." + +#: menu.sh:1870 +msgid "Remove VERSION file for all disks completed." +msgstr "모든 디스크의 버전 파일 제거가 완료되었습니다." + +#: menu.sh:1900 +msgid "The installed Syno system not found in the currently inserted disks!" +msgstr "현재 삽입된 디스크에서 설치된 Synology 시스템을 찾을 수 없습니다!" + +#: menu.sh:1904 +msgid "Choose a user name" +msgstr "사용자 이름 선택" + +#: menu.sh:1911 +msgid "Type a new password for user '%s'" +msgstr "사용자 '%s'의 새 비밀번호를 입력하세요." + +#: menu.sh:1917 +msgid "Invalid password" +msgstr "잘못된 비밀번호" + +#: menu.sh:1936 +msgid "Resetting ..." +msgstr "재설정 중..." + +#: menu.sh:1938 +msgid "Password reset completed." +msgstr "비밀번호 재설정이 완료되었습니다." + +#: menu.sh:1946 +msgid "Please insert all disks before continuing.\\n" +msgstr "계속하기 전에 모든 디스크를 삽입하십시오.\\n" + +#: menu.sh:1969 +msgid "Enabling ..." +msgstr "활성화 중..." + +#: menu.sh:1970 +msgid "Telnet&SSH is enabled." +msgstr "Telnet&SSH가 활성화되었습니다." + +#: menu.sh:1970 +msgid "Telnet&SSH is not enabled." +msgstr "Telnet&SSH가 활성화되어 있지 않습니다." + +#: menu.sh:1991 +msgid "Choose a disk to clone to" +msgstr "복제할 디스크를 선택합니다." + +#: menu.sh:1997 +msgid "No disk selected!" +msgstr "선택한 디스크가 없습니다!" + +#: menu.sh:2003 +msgid "Disk %s size is less than 1GB and cannot be cloned!" +msgstr "디스크 %s 크기가 1GB 미만이어서 복제할 수 없습니다!" + +#: menu.sh:2007 +msgid "" +"Warning:\\nDisk %s will be formatted and written to the bootloader. Please " +"confirm that important data has been backed up. \\nDo you want to continue?" +msgstr "" +"경고:\\n디스크 %s가 포맷되어 부트 로더에 기록됩니다. 중요한 데이터가 백업되었" +"는지 확인하십시오. \\n계속하시겠습니까?" + +#: menu.sh:2040 +msgid "Cloning ..." +msgstr "복제 중 ..." + +#: menu.sh:2042 +msgid "" +"Bootloader has been cloned to disk %s, please remove the current bootloader " +"disk!\\nReboot?" +msgstr "" +"부트로더가 %s 디스크에 복제되었습니다. 현재 부트로더 디스크를 제거하십시오!" +"\\n재부팅하시겠습니까?" + +#: menu.sh:2056 +msgid "Please enter a proxy server url.(e.g., %s)" +msgstr "프록시 서버 URL을 입력하세요(예: %s)" + +#: menu.sh:2067 +msgid "Invalid proxy server url, continue?" +msgstr "잘못된 프록시 서버 URL입니다. 계속하시겠습니까?" + +#: menu.sh:2095 +msgid "Switch LKM version:" +msgstr "LKM 버전을 전환:" + +#: menu.sh:2096 +msgid "HDD sort(hotplug):" +msgstr "HDD 정렬(Hot Plug):" + +#: menu.sh:2098 +msgid "show/modify the current pat data" +msgstr "현재 pat 다운로드 링크 표시/수정" + +#: menu.sh:2103 +msgid "Switch direct boot:" +msgstr "직접 부팅 전환:" + +#: menu.sh:2105 +msgid "Timeout of get ip in boot:" +msgstr "IP 가져오기 시간(초):" + +#: menu.sh:2106 +msgid "Timeout of boot wait:" +msgstr "부팅 대기 시간(초):" + +#: menu.sh:2107 +msgid "kernel switching method:" +msgstr "커널 전환 방법:" + +#: menu.sh:2109 +msgid "Reboot on kernel panic:" +msgstr "커널패닉 시 재부팅(초):" + +#: menu.sh:2111 +msgid "Use EMMC as the system disk:" +msgstr "EMMC를 시스템 디스크로 사용:" + +#: menu.sh:2113 +msgid "Custom patch script # Developer" +msgstr "사용자 정의 패치 스크립트 # 개발" + +#: menu.sh:2114 +msgid "Edit user config file manually" +msgstr "사용자 구성 config 편집" + +#: menu.sh:2115 +msgid "Edit grub.cfg file manually" +msgstr "grub.cfg 파일을 수동으로 편집하기" + +#: menu.sh:2117 +msgid "Set static IP" +msgstr "고정 IP 설정" + +#: menu.sh:2118 +msgid "Set wireless account" +msgstr "무선 계정 설정" + +#: menu.sh:2119 +msgid "Show disks information" +msgstr "디스크 정보 표시" + +#: menu.sh:2120 +msgid "Format disk(s) # Without loader disk" +msgstr "포맷 디스크 # 로더 디스크 없음" + +#: menu.sh:2121 +msgid "Try to recovery a installed DSM system" +msgstr "설치된 DSM 시스템 복구 시도" + +#: menu.sh:2122 +msgid "Allow downgrade installation" +msgstr "다운그레이드 설치 허용" + +#: menu.sh:2123 +msgid "Reset DSM system password" +msgstr "DSM 시스템 비밀번호 재설정" + +#: menu.sh:2124 +msgid "Force enable Telnet&SSH of DSM system" +msgstr "DSM 시스템의 Telnet&SSH를 강제로 활성화합니다" + +#: menu.sh:2125 +msgid "Clone bootloader disk to another disk" +msgstr "부트로더 디스크를 다른 디스크에 복제" + +#: menu.sh:2126 +msgid "Report bugs to the author" +msgstr "개발자에게 버그 신고하기" + +#: menu.sh:2127 +msgid "Save modifications of '/opt/rr'" +msgstr "'/opt/rr'의 수정 사항 저장" + +#: menu.sh:2128 +msgid "Install development tools" +msgstr "개발자 도구 설치" + +#: menu.sh:2130 +msgid "Show QR logo:" +msgstr "QR 로고 표시:" + +#: menu.sh:2131 +msgid "Set global proxy" +msgstr "글로벌 프록시 설정" + +#: menu.sh:2132 +msgid "Set github proxy" +msgstr "Github 프록시 설정" + +#: menu.sh:2133 +msgid "Vigorously miracle" +msgstr "Vigorously miracle" + +#: menu.sh:2137 +msgid "Advanced option" +msgstr "고급 설정" + +#: menu.sh:2156 +msgid "pat: (editable)" +msgstr "pat: (편집가능)" + +#: menu.sh:2183 menu.sh:2195 menu.sh:2215 +msgid "Choose a time(seconds)" +msgstr "시간(초) 선택" + +#: menu.sh:2247 +msgid "This option is only informative.\\n\\n" +msgstr "이 옵션은 정보 제공용입니다.\\n\\n" + +#: menu.sh:2248 +msgid "This program reserves an interface for ramdisk custom patch scripts.\\n" +msgstr "" +"이 프로그램은 램디스크 사용자 지정 패치 스크립트를 위한 인터페이스를 예약합니" +"다.\\n" + +#: menu.sh:2249 +msgid "Call timing: called before ramdisk packaging.\\n" +msgstr "호출 타이밍: 램디스크 패키징 전에 호출됩니다.\\n" + +#: menu.sh:2250 +msgid "Location: /mnt/p3/scripts/*.sh\\n" +msgstr "위치: /mnt/p3/scripts/*.sh\\n" + +#: menu.sh:2307 +msgid "" +"Please via %s to download the logs,\\nAnd go to github to create an issue " +"and upload the logs." +msgstr "" +"%s를 통해 로그를 다운로드하고, github로 이동하여 이슈를 생성하고 로그를 업로" +"드하세요." + +#: menu.sh:2311 +msgid "Please go to github to create an issue and upload the logs." +msgstr "Github로 이동하여 이슈를 생성하고 로그를 업로드하세요." + +#: menu.sh:2315 +msgid "\\Z1No logs found!\\Zn\\n\\n" +msgstr "\\Z1로그를 찾을 수 없습니다!\\Zn\\n\\n" + +#: menu.sh:2316 +msgid "Please do as follows:\\n" +msgstr "다음과 같이 하세요:\\n" + +#: menu.sh:2317 +msgid " 1. Add dbgutils in addons and rebuild.\\n" +msgstr "1. 애드온에 dbgutils를 추가하고 다시 빌드하세요.\\n" + +#: menu.sh:2318 +msgid " 2. Wait 10 minutes after booting.\\n" +msgstr " 2. 부팅 후 10분간 기다립니다.\\n" + +#: menu.sh:2319 +msgid " 3. Reboot into RR and go to this option.\\n" +msgstr " 3. RR로 재부팅하고 이 옵션으로 이동합니다.\\n" + +#: menu.sh:2327 +msgid "" +"Warning:\\nDo not terminate midway, otherwise it may cause damage to the RR. " +"Do you want to continue?" +msgstr "" +"경고:\\n중간에 종료하지 마십시오. 그렇지 않으면 RR 부팅이 손상이 발생할 수 있" +"습니다. 계속하시겠습니까?" + +#: menu.sh:2330 +msgid "" +"Saving ...\\n(It usually takes 5-10 minutes, please be patient and wait.)" +msgstr "저장 중...\\n(보통 5~10분 정도 소요되니 조금만 기다려 주세요.)" + +#: menu.sh:2345 +msgid "Save is complete." +msgstr "저장이 완료되었습니다." + +#: menu.sh:2350 +msgid "" +"This option only installs opkg package management, allowing you to install " +"more tools for use and debugging. Do you want to continue?" +msgstr "" +"이 옵션은 opkg 패키지 관리만 설치하므로 사용 및 디버깅을 위한 더 많은 도구를 " +"설치할 수 있습니다. 계속하시겠습니까?" + +#: menu.sh:2357 +msgid "opkg installing ..." +msgstr "opkg 설치 중 ..." + +#: menu.sh:2359 +msgid "" +"opkg install is complete. Please reconnect to ssh/web, or execute 'source ~/." +"bashrc'" +msgstr "" +"opkg 설치가 완료되었습니다. ssh/web에 다시 연결하거나 'source ~/.bashrc'를 실" +"행하세요." + +#: menu.sh:2391 msgid "Alert" msgstr "알림" -#: menu.sh:2325 +#: menu.sh:2392 msgid "Config changed, would you like to rebuild the loader?" msgstr "구성이 변경되었습니다. 로더를 다시 빌드하시겠습니까?" -#: menu.sh:2342 menu.sh:2942 +#: menu.sh:2409 menu.sh:3012 msgid "Choose a language" msgstr "언어 선택" -#: menu.sh:2357 +#: menu.sh:2424 msgid "Choose a layout" msgstr "레이아웃 선택" -#: menu.sh:2369 +#: menu.sh:2436 msgid "Choice a keymap" msgstr "키맵 선택" -#: menu.sh:2388 menu.sh:2465 menu.sh:2562 menu.sh:2607 menu.sh:2657 -#: menu.sh:2696 +#: menu.sh:2455 menu.sh:2532 menu.sh:2629 menu.sh:2674 menu.sh:2724 +#: menu.sh:2763 msgid "Update %s" msgstr "업데이트 %s" -#: menu.sh:2389 +#: menu.sh:2456 msgid "Checking last version ..." msgstr "새 버전 확인 중..." -#: menu.sh:2405 +#: menu.sh:2472 msgid "Error checking new version.\\nError: TAG is %s" msgstr "새 버전을 확인하는 동안 오류가 발생했습니다.\\n오류: 태그는 %s입니다." -#: menu.sh:2418 +#: menu.sh:2485 msgid "No new version." msgstr "새 버전이 없습니다." -#: menu.sh:2422 +#: menu.sh:2489 msgid "Actual version is %s\\nForce update?" msgstr "실제 버전은 %s\\n강제로 업데이트하시겠습니까?" -#: menu.sh:2444 +#: menu.sh:2511 msgid "Downloading ..." msgstr "다운로드 중..." -#: menu.sh:2447 +#: menu.sh:2514 msgid "Error downloading new version.\\nError: %d:%d" msgstr "새 버전을 다운로드하는 동안 오류가 발생했습니다.\\n오류: %d:%d" -#: menu.sh:2465 menu.sh:2549 menu.sh:2742 menu.sh:2769 +#: menu.sh:2532 menu.sh:2616 menu.sh:2809 menu.sh:2836 msgid "RR" msgstr "RR" -#: menu.sh:2466 menu.sh:2563 menu.sh:2608 menu.sh:2658 menu.sh:2697 +#: menu.sh:2533 menu.sh:2630 menu.sh:2675 menu.sh:2725 menu.sh:2764 msgid "Extracting update file ..." msgstr "업데이트 파일 추출 중 ..." -#: menu.sh:2477 menu.sh:2574 menu.sh:2619 menu.sh:2669 menu.sh:2708 +#: menu.sh:2544 menu.sh:2641 menu.sh:2686 menu.sh:2736 menu.sh:2775 msgid "Error extracting update file." msgstr "업데이트 파일 추출 중 오류 발생." -#: menu.sh:2489 +#: menu.sh:2556 msgid "Checksum do not match!" msgstr "체크섬이 일치하지 않습니다!" -#: menu.sh:2503 +#: menu.sh:2570 msgid "" "The current version does not support upgrading to the latest update.zip. " "Please remake the bootloader disk!" @@ -1399,39 +1379,39 @@ msgstr "" "현재 버전은 최신 update.zip으로 업그레이드를 지원하지 않습니다. 부트로더 디스" "크를 다시 제작하세요!" -#: menu.sh:2513 +#: menu.sh:2580 msgid "Installing new files ..." msgstr "새 파일 설치 중 ..." -#: menu.sh:2549 menu.sh:2592 menu.sh:2642 menu.sh:2681 menu.sh:2720 +#: menu.sh:2616 menu.sh:2659 menu.sh:2709 menu.sh:2748 menu.sh:2787 msgid "%s updated with success!" msgstr "s가 성공적으로 업데이트되었습니다!" -#: menu.sh:2549 +#: menu.sh:2616 msgid "Reboot?" msgstr "재부팅?" -#: menu.sh:2657 menu.sh:2681 menu.sh:2745 menu.sh:2798 menu.sh:2802 +#: menu.sh:2724 menu.sh:2748 menu.sh:2812 menu.sh:2865 menu.sh:2869 msgid "LKMs" msgstr "LKMs" -#: menu.sh:2696 menu.sh:2720 menu.sh:2746 menu.sh:2809 menu.sh:2813 +#: menu.sh:2763 menu.sh:2787 menu.sh:2813 menu.sh:2876 menu.sh:2880 msgid "CKs" msgstr "CKs" -#: menu.sh:2741 menu.sh:2763 +#: menu.sh:2808 menu.sh:2830 msgid "All" msgstr "전부의" -#: menu.sh:2747 +#: menu.sh:2814 msgid "Local upload" msgstr "로컬 업로드" -#: menu.sh:2748 +#: menu.sh:2815 msgid "Pre Release:" msgstr "사전 릴리즈:" -#: menu.sh:2753 menu.sh:2821 +#: menu.sh:2820 menu.sh:2888 msgid "" "Manually uploading update*.zip,addons*.zip,modules*.zip,rp-lkms*.zip,rr-cks*." "zip to /tmp/ will skip the download." @@ -1439,133 +1419,124 @@ msgstr "" "update.zip, addons*.zip, modules*.zip, rp-lkms*.zip, rr-cks*.zip을 /tmp/에 수" "동으로 업로드하면 다운로드가 건너뛰게 됩니다." -#: menu.sh:2776 menu.sh:2787 menu.sh:2798 menu.sh:2809 +#: menu.sh:2843 menu.sh:2854 menu.sh:2865 menu.sh:2876 msgid "No longer supports update %s separately. Please choose to update All/RR" msgstr "%s 단독 업데이트는 더 이상 지원되지 않습니다.모든 /RR 업데이트 선택" -#: menu.sh:2827 +#: menu.sh:2894 msgid "" "Please keep the attachment name consistent with the attachment name on " "Github.\\n" msgstr "첨부 파일 이름은 Github의 첨부 파일 이름과 일치하도록 유지하세요.\\n" -#: menu.sh:2828 +#: menu.sh:2895 msgid "Upload update*.zip will update RR.\\n" msgstr "update*.zip을 업로드하면 RR이 업데이트됩니다.\\n" -#: menu.sh:2829 +#: menu.sh:2896 msgid "Upload addons*.zip will update Addons.\\n" msgstr "addons*.zip을 업로드하면 Addons 기능이 업데이트됩니다.\\n" -#: menu.sh:2830 +#: menu.sh:2897 msgid "Upload modules*.zip will update Modules.\\n" msgstr "modules*.zip을 업로드하면 Modules이 업데이트됩니다.\\n" -#: menu.sh:2831 +#: menu.sh:2898 msgid "Upload rp-lkms*.zip will update LKMs.\\n" msgstr "rp-lkms*.zip을 업로드하면 LKMs이 업데이트됩니다.\\n" -#: menu.sh:2832 +#: menu.sh:2899 msgid "Upload rr-cks*.zip will update CKs.\\n" msgstr "rr-cks*.zip을 업로드하면 CKs이 업데이트됩니다.\\n" -#: menu.sh:2888 +#: menu.sh:2955 msgid "This person is very lazy and hasn't written anything." msgstr "이 사람은 매우 게으르고 아무것도 쓰지 않았습니다." -#: menu.sh:2915 +#: menu.sh:2985 msgid "Choose a model" msgstr "모델 선택" -#: menu.sh:2917 +#: menu.sh:2987 msgid "Choose a version" msgstr "버전 선택" -#: menu.sh:2919 +#: menu.sh:2989 msgid "Parse pat" msgstr "Parse pat" -#: menu.sh:2926 +#: menu.sh:2996 msgid "Kernel:" msgstr "Kernel:" -#: menu.sh:2928 +#: menu.sh:2998 msgid "Addons menu" msgstr "애드온 설정" -#: menu.sh:2929 +#: menu.sh:2999 msgid "Modules menu" msgstr "모듈 설정" -#: menu.sh:2930 +#: menu.sh:3000 msgid "Cmdline menu" msgstr "명령줄 설정" -#: menu.sh:2931 +#: menu.sh:3001 msgid "Synoinfo menu" msgstr "synoinfo" -#: menu.sh:2933 +#: menu.sh:3003 msgid "Advanced menu" msgstr "고급 설정" -#: menu.sh:2936 +#: menu.sh:3006 msgid "Build the loader" msgstr "로더 빌드" -#: menu.sh:2940 +#: menu.sh:3010 msgid "Boot the loader" msgstr "로더 부팅" -#: menu.sh:2943 +#: menu.sh:3013 msgid "Choose a keymap" msgstr "키맵 선택" -#: menu.sh:2945 +#: menu.sh:3015 msgid "Clean disk cache" msgstr "디스크 캐시 지우기" -#: menu.sh:2947 +#: menu.sh:3017 msgid "Update menu" msgstr "업데이트" -#: menu.sh:2948 +#: menu.sh:3018 msgid "Notepad" msgstr "메모장" -#: menu.sh:2970 +#: menu.sh:3040 msgid "Change ..." msgstr "변화 ..." -#: menu.sh:3039 +#: menu.sh:3109 msgid "Choose a action" msgstr "작업 선택" -#: menu.sh:3040 +#: menu.sh:3110 msgid "Poweroff" msgstr "전원 끄기" -#: menu.sh:3041 +#: menu.sh:3111 msgid "Reboot" msgstr "재부팅" -#: menu.sh:3042 +#: menu.sh:3112 msgid "Reboot to RR" msgstr "RR로 재부팅" -#: menu.sh:3043 +#: menu.sh:3113 msgid "Back to shell" msgstr "Shell로 돌아가기" -#: menu.sh:3069 +#: menu.sh:3139 msgid "Call \\033[1;32mmenu.sh\\033[0m to return to menu" msgstr "\\033[1;32mmenu.sh\\033[0m 메뉴로 돌아가기" - -#~ msgid "Found a installation:\\nModel: %s\\nProductversion: %s" -#~ msgstr "설치를 찾았습니다:\\n모델: %s\\n제품 버전: %s" - -#~ msgid "\\nSerial: %s" -#~ msgstr "\\n일련번호: %s" - -#~ msgid "Waiting IP.(For reference only)" -#~ msgstr "대기 중인 IP.(참고용)" diff --git a/files/initrd/opt/rr/lang/rr.pot b/files/initrd/opt/rr/lang/rr.pot index 16c25588..b5403618 100644 --- a/files/initrd/opt/rr/lang/rr.pot +++ b/files/initrd/opt/rr/lang/rr.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-03-08 19:17+0800\n" +"POT-Creation-Date: 2024-03-12 21:16+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -21,7 +21,7 @@ msgstr "" msgid "Loader is not init!" msgstr "" -#: boot.sh:10 init.sh:111 +#: boot.sh:10 init.sh:116 msgid "Loader is not configured!" msgstr "" @@ -33,7 +33,7 @@ msgstr "" msgid "DSM zImage changed" msgstr "" -#: boot.sh:36 menu.sh:1269 +#: boot.sh:36 menu.sh:1277 msgid "" "zImage not patched,\\nPlease upgrade the bootloader version and try again." "\\nPatch error:\\n" @@ -43,7 +43,7 @@ msgstr "" msgid "DSM Ramdisk changed" msgstr "" -#: boot.sh:47 menu.sh:1275 +#: boot.sh:47 menu.sh:1283 msgid "" "Ramdisk not patched,\\nPlease upgrade the bootloader version and try again." "\\nPatch error:\\n" @@ -89,67 +89,67 @@ msgid "" "for the bootloader disk." msgstr "" -#: boot.sh:169 +#: boot.sh:171 msgid "Cmdline:\\n" msgstr "" -#: boot.sh:175 +#: boot.sh:177 msgid "Reboot to boot directly in DSM" msgstr "" -#: boot.sh:181 init.sh:124 +#: boot.sh:183 init.sh:129 msgid "Detected %s network cards." msgstr "" -#: boot.sh:182 init.sh:125 +#: boot.sh:184 init.sh:130 msgid "Checking Connect." msgstr "" -#: boot.sh:194 init.sh:135 +#: boot.sh:196 init.sh:140 msgid "connected." msgstr "" -#: boot.sh:201 init.sh:142 +#: boot.sh:203 init.sh:147 msgid "Waiting IP." msgstr "" -#: boot.sh:208 init.sh:149 +#: boot.sh:210 init.sh:154 msgid "DOWN" msgstr "" -#: boot.sh:212 init.sh:153 +#: boot.sh:214 init.sh:158 msgid "NOT CONNECTED" msgstr "" -#: boot.sh:216 init.sh:157 +#: boot.sh:218 init.sh:162 msgid "TIMEOUT (Please check the IP on the router.)" msgstr "" -#: boot.sh:222 +#: boot.sh:224 msgid "Access \\033[1;34mhttp://%s:5000\\033[0m to connect the DSM via web." msgstr "" -#: boot.sh:234 +#: boot.sh:236 msgid "%2ds (Changing access(ssh/web) status will interrupt boot)" msgstr "" -#: boot.sh:238 +#: boot.sh:240 msgid "access(ssh/web) status has changed and booting is interrupted." msgstr "" -#: boot.sh:248 +#: boot.sh:250 msgid "Loading DSM kernel ..." msgstr "" -#: boot.sh:264 +#: boot.sh:266 msgid "Warning, running kexec with --noefi param, strange things will happen!!" msgstr "" -#: boot.sh:269 +#: boot.sh:271 msgid "Booting ..." msgstr "" -#: boot.sh:271 +#: boot.sh:273 msgid "" "[This interface will not be operational. Please wait a few minutes.\\nFind " "DSM via http://find.synology.com/ or Synology Assistant and connect.]" @@ -159,1314 +159,1295 @@ msgstr "" msgid "Network devices not found!" msgstr "" -#: init.sh:88 +#: init.sh:92 msgid "Loader disk neither USB or SATA/SCSI/NVME/MMC DoM" msgstr "" -#: init.sh:96 +#: init.sh:101 msgid "Loader disk:" msgstr "" -#: init.sh:104 +#: init.sh:109 msgid "Loading keymap" msgstr "" -#: init.sh:114 +#: init.sh:119 msgid "User requested edit settings." msgstr "" -#: init.sh:163 +#: init.sh:168 msgid "" "Access \\033[1;34mhttp://%s:7681\\033[0m to configure the loader via web " "terminal." msgstr "" -#: init.sh:173 +#: init.sh:178 msgid "Call \\033[1;32mmenu.sh\\033[0m to configure loader" msgstr "" -#: init.sh:175 +#: init.sh:180 msgid "User config is on" msgstr "" -#: init.sh:176 +#: init.sh:181 msgid "TTYD: \\033[1;34mhttp://rr:7681/\\033[0m" msgstr "" -#: init.sh:177 +#: init.sh:182 msgid "DUFS: \\033[1;34mhttp://rr:7304/\\033[0m" msgstr "" -#: init.sh:178 +#: init.sh:183 msgid "TTYD&DUFS: \\033[1;34mhttp://rr:80/\\033[0m" msgstr "" -#: init.sh:180 +#: init.sh:185 msgid "Default SSH \\033[1;31mroot\\033[0m password is" msgstr "" -#: init.sh:197 +#: init.sh:202 msgid "" "You have less than 4GB of RAM, if errors occur in loader creation, please " "increase the amount of memory." msgstr "" -#: menu.sh:102 menu.sh:136 menu.sh:179 +#: menu.sh:106 menu.sh:140 menu.sh:183 msgid "Model" msgstr "" -#: menu.sh:103 +#: menu.sh:107 msgid "Reading models" msgstr "" -#: menu.sh:113 +#: menu.sh:117 msgid "Compatibility judgment" msgstr "" -#: menu.sh:134 +#: menu.sh:138 msgid "Disable flags restriction" msgstr "" -#: menu.sh:135 +#: menu.sh:139 msgid "Show all models" msgstr "" -#: menu.sh:137 +#: menu.sh:141 msgid "Choose the model" msgstr "" -#: menu.sh:230 menu.sh:241 menu.sh:247 menu.sh:258 menu.sh:295 menu.sh:315 -#: menu.sh:365 +#: menu.sh:234 menu.sh:242 menu.sh:254 menu.sh:272 menu.sh:307 menu.sh:332 +#: menu.sh:384 msgid "Product Version" msgstr "" -#: menu.sh:231 +#: menu.sh:235 msgid "Choose a product version" msgstr "" -#: menu.sh:242 +#: menu.sh:243 msgid "" "The current version has been set to %s. Do you want to reset the version?" msgstr "" -#: menu.sh:248 +#: menu.sh:255 msgid "" "This version does not support UEFI startup, Please select another version or " "switch the startup mode." msgstr "" -#: menu.sh:259 +#: menu.sh:273 msgid "Get pat data ..." msgstr "" -#: menu.sh:285 menu.sh:1033 menu.sh:1181 +#: menu.sh:297 menu.sh:1052 menu.sh:1200 msgid "Network error, please check the network connection and try again." msgstr "" -#: menu.sh:286 +#: menu.sh:298 msgid "Or use 'Parse pat' function for installation." msgstr "" -#: menu.sh:288 +#: menu.sh:300 msgid "" "Failed to get pat data,\\nPlease manually fill in the URL and md5sum of the " "corresponding version of pat.\\nOr click 'Retry'." msgstr "" -#: menu.sh:293 +#: menu.sh:305 msgid "" "Successfully to get pat data, Please confirm.\\nOr modify the URL and md5sum " "to you need." msgstr "" -#: menu.sh:296 +#: menu.sh:308 msgid "Retry" msgstr "" -#: menu.sh:316 menu.sh:418 +#: menu.sh:333 menu.sh:437 msgid "Reconfiguring Synoinfo, Addons and Modules" msgstr "" -#: menu.sh:350 +#: menu.sh:368 msgid "" "You have selected the %s and %s.\\n'Parse Pat' will overwrite the previous " "selection.\\nDo you want to continue?" msgstr "" -#: menu.sh:351 +#: menu.sh:369 msgid "Parse Pat" msgstr "" -#: menu.sh:359 +#: menu.sh:378 msgid "No pat file found in /tmp/pats/ folder!\\n" msgstr "" -#: menu.sh:360 +#: menu.sh:379 msgid "" "Please upload the pat file to /tmp/pats/ folder via DUFS and re-enter this " "option.\\n" msgstr "" -#: menu.sh:361 menu.sh:371 menu.sh:2741 menu.sh:2742 menu.sh:2743 menu.sh:2744 -#: menu.sh:2745 menu.sh:2746 menu.sh:2752 menu.sh:2775 menu.sh:2786 -#: menu.sh:2797 menu.sh:2808 menu.sh:2822 menu.sh:2833 menu.sh:2850 -#: menu.sh:2869 +#: menu.sh:380 menu.sh:390 menu.sh:2808 menu.sh:2809 menu.sh:2810 menu.sh:2811 +#: menu.sh:2812 menu.sh:2813 menu.sh:2819 menu.sh:2842 menu.sh:2853 +#: menu.sh:2864 menu.sh:2875 menu.sh:2889 menu.sh:2900 menu.sh:2917 +#: menu.sh:2936 msgid "Update" msgstr "" -#: menu.sh:366 +#: menu.sh:385 msgid "Choose a pat file" msgstr "" -#: menu.sh:372 menu.sh:384 menu.sh:1138 +#: menu.sh:391 menu.sh:403 menu.sh:1157 msgid "pat Invalid, try again!" msgstr "" -#: menu.sh:377 +#: menu.sh:396 msgid "Parse %s ..." msgstr "" -#: menu.sh:402 +#: menu.sh:421 msgid "Currently, %s is not supported." msgstr "" -#: menu.sh:414 +#: menu.sh:433 msgid "Currently, %s of %s is not supported." msgstr "" -#: menu.sh:475 menu.sh:1285 menu.sh:2951 menu.sh:2969 +#: menu.sh:494 menu.sh:1293 menu.sh:3021 menu.sh:3039 msgid "Main menu" msgstr "" -#: menu.sh:476 menu.sh:1286 +#: menu.sh:495 menu.sh:1294 msgid "Making ..." msgstr "" -#: menu.sh:478 menu.sh:1288 +#: menu.sh:497 menu.sh:1296 msgid "Error" msgstr "" -#: menu.sh:511 menu.sh:528 menu.sh:533 menu.sh:539 menu.sh:550 menu.sh:558 -#: menu.sh:581 menu.sh:588 menu.sh:592 menu.sh:606 menu.sh:610 menu.sh:618 -#: menu.sh:621 menu.sh:2562 menu.sh:2592 menu.sh:2743 menu.sh:2776 menu.sh:2780 +#: menu.sh:530 menu.sh:547 menu.sh:552 menu.sh:558 menu.sh:569 menu.sh:577 +#: menu.sh:600 menu.sh:607 menu.sh:611 menu.sh:625 menu.sh:629 menu.sh:637 +#: menu.sh:640 menu.sh:2629 menu.sh:2659 menu.sh:2810 menu.sh:2843 menu.sh:2847 msgid "Addons" msgstr "" -#: menu.sh:512 menu.sh:642 menu.sh:818 menu.sh:953 menu.sh:1306 menu.sh:2952 +#: menu.sh:531 menu.sh:661 menu.sh:837 menu.sh:972 menu.sh:1314 menu.sh:3022 msgid "Choose a option" msgstr "" -#: menu.sh:513 +#: menu.sh:532 msgid "Add an addon" msgstr "" -#: menu.sh:514 +#: menu.sh:533 msgid "Delete addons" msgstr "" -#: menu.sh:515 +#: menu.sh:534 msgid "Show all addons" msgstr "" -#: menu.sh:516 +#: menu.sh:535 msgid "Upload a external addon" msgstr "" -#: menu.sh:517 menu.sh:649 menu.sh:816 menu.sh:951 menu.sh:1311 menu.sh:1443 -#: menu.sh:2749 menu.sh:2949 menu.sh:3044 +#: menu.sh:536 menu.sh:668 menu.sh:835 menu.sh:970 menu.sh:1319 menu.sh:2134 +#: menu.sh:2816 menu.sh:3019 menu.sh:3114 msgid "Exit" msgstr "" -#: menu.sh:529 +#: menu.sh:548 msgid "No available addons to add" msgstr "" -#: menu.sh:534 +#: menu.sh:553 msgid "Select an addon" msgstr "" -#: menu.sh:540 +#: menu.sh:559 msgid "Type a optional params to addon" msgstr "" -#: menu.sh:551 +#: menu.sh:570 msgid "No user addons to remove" msgstr "" -#: menu.sh:559 +#: menu.sh:578 msgid "Select addon to remove" msgstr "" -#: menu.sh:572 +#: menu.sh:591 msgid "" "Name with color \"\\Z4blue\\Zn\" have been added, with color \"black\" are " "not added.\\n\\n" msgstr "" -#: menu.sh:587 menu.sh:721 menu.sh:1319 menu.sh:2820 +#: menu.sh:606 menu.sh:740 menu.sh:1327 menu.sh:2887 msgid "" "This feature is only available when accessed via ssh (Requires a terminal " "that supports ZModem protocol).\\n" msgstr "" -#: menu.sh:593 +#: menu.sh:612 msgid "Please upload the *.addons file." msgstr "" -#: menu.sh:607 menu.sh:756 menu.sh:2851 menu.sh:2870 +#: menu.sh:626 menu.sh:775 menu.sh:2918 menu.sh:2937 msgid "Not a valid file, please try again!" msgstr "" -#: menu.sh:611 +#: menu.sh:630 msgid "The addon already exists. Do you want to overwrite it?" msgstr "" -#: menu.sh:619 +#: menu.sh:638 msgid "Addon '%s' added to loader, Please enable it in 'Add an addon' menu." msgstr "" -#: menu.sh:622 +#: menu.sh:641 msgid "File format not recognized!" msgstr "" -#: menu.sh:641 menu.sh:655 menu.sh:668 menu.sh:705 menu.sh:722 menu.sh:732 -#: menu.sh:735 menu.sh:751 menu.sh:755 menu.sh:769 menu.sh:775 menu.sh:2607 -#: menu.sh:2642 menu.sh:2744 menu.sh:2787 menu.sh:2791 +#: menu.sh:660 menu.sh:674 menu.sh:687 menu.sh:724 menu.sh:741 menu.sh:751 +#: menu.sh:754 menu.sh:770 menu.sh:774 menu.sh:788 menu.sh:794 menu.sh:2674 +#: menu.sh:2709 menu.sh:2811 menu.sh:2854 menu.sh:2858 msgid "Modules" msgstr "" -#: menu.sh:643 +#: menu.sh:662 msgid "Show/Select modules" msgstr "" -#: menu.sh:644 +#: menu.sh:663 msgid "Select loaded modules" msgstr "" -#: menu.sh:645 +#: menu.sh:664 msgid "Upload a external module" msgstr "" -#: menu.sh:646 +#: menu.sh:665 msgid "Deselect i915 with dependencies" msgstr "" -#: menu.sh:647 +#: menu.sh:666 msgid "Priority use of official drivers:" msgstr "" -#: menu.sh:648 +#: menu.sh:667 msgid "Edit modules that need to be copied to DSM" msgstr "" -#: menu.sh:656 +#: menu.sh:675 msgid "Reading modules ..." msgstr "" -#: menu.sh:669 +#: menu.sh:688 msgid "Select all" msgstr "" -#: menu.sh:670 +#: menu.sh:689 msgid "Deselect all" msgstr "" -#: menu.sh:671 +#: menu.sh:690 msgid "Select modules to include" msgstr "" -#: menu.sh:706 +#: menu.sh:725 msgid "Selecting loaded modules" msgstr "" -#: menu.sh:727 +#: menu.sh:746 msgid "" "This function is experimental and dangerous. If you don't know much, please " "exit.\\n" msgstr "" -#: menu.sh:728 +#: menu.sh:747 msgid "" "The imported .ko of this function will be implanted into the corresponding " "arch's modules package, which will affect all models of the arch.\\n" msgstr "" -#: menu.sh:729 +#: menu.sh:748 msgid "" "This program will not determine the availability of imported modules or even " "make type judgments, as please double check if it is correct.\\n" msgstr "" -#: menu.sh:730 +#: menu.sh:749 msgid "" "If you want to remove it, please go to the \"Update Menu\" -> \"Update " "modules\" to forcibly update the modules. All imports will be reset.\\n" msgstr "" -#: menu.sh:731 +#: menu.sh:750 msgid "Do you want to continue?" msgstr "" -#: menu.sh:736 +#: menu.sh:755 msgid "Please upload the *.ko file." msgstr "" -#: menu.sh:752 +#: menu.sh:771 msgid "Module '%s' added to %s-%s" msgstr "" -#: menu.sh:770 +#: menu.sh:789 msgid "No i915 with dependencies module to deselect." msgstr "" -#: menu.sh:776 +#: menu.sh:795 msgid "Module %s deselected.\\n" msgstr "" -#: menu.sh:790 menu.sh:1373 menu.sh:2282 menu.sh:2289 menu.sh:2312 +#: menu.sh:809 menu.sh:1381 menu.sh:1408 menu.sh:1415 menu.sh:1438 msgid "Edit with caution" msgstr "" -#: menu.sh:810 +#: menu.sh:829 msgid "Add/Edit a cmdline item" msgstr "" -#: menu.sh:811 +#: menu.sh:830 msgid "Show/Delete cmdline items" msgstr "" -#: menu.sh:813 +#: menu.sh:832 msgid "Define SN/MAC" msgstr "" -#: menu.sh:815 +#: menu.sh:834 msgid "Show model inherent cmdline" msgstr "" -#: menu.sh:817 menu.sh:836 menu.sh:845 menu.sh:869 menu.sh:877 menu.sh:894 -#: menu.sh:905 menu.sh:937 +#: menu.sh:836 menu.sh:855 menu.sh:864 menu.sh:888 menu.sh:896 menu.sh:913 +#: menu.sh:924 menu.sh:956 msgid "Cmdline" msgstr "" -#: menu.sh:824 +#: menu.sh:843 msgid "Commonly used cmdlines:\\n" msgstr "" -#: menu.sh:825 +#: menu.sh:844 msgid "" " * \\Z4disable_mtrr_trim=\\Zn\\n disables kernel trim any uncacheable " "memory out.\\n" msgstr "" -#: menu.sh:826 +#: menu.sh:845 msgid "" " * \\Z4intel_idle.max_cstate=1\\Zn\\n Set the maximum C-state depth " "allowed by the intel_idle driver.\\n" msgstr "" -#: menu.sh:827 +#: menu.sh:846 msgid "" " * \\Z4pcie_port_pm=off\\Zn\\n Turn off the power management of the PCIe " "port.\\n" msgstr "" -#: menu.sh:828 +#: menu.sh:847 msgid " * \\Z4libata.force=noncq\\Zn\\n Disable NCQ for all SATA ports.\\n" msgstr "" -#: menu.sh:829 +#: menu.sh:848 msgid " * \\Z4SataPortMap=??\\Zn\\n Sata Port Map.\\n" msgstr "" -#: menu.sh:830 +#: menu.sh:849 msgid "" " * \\Z4DiskIdxMap=??\\Zn\\n Disk Index Map, Modify disk name sequence.\\n" msgstr "" -#: menu.sh:831 +#: menu.sh:850 msgid "" " * \\Z4i915.enable_guc=2\\Zn\\n Enable the GuC firmware on Intel graphics " "hardware.(value: 1,2 or 3)\\n" msgstr "" -#: menu.sh:832 +#: menu.sh:851 msgid "" " * \\Z4i915.max_vfs=7\\Zn\\n Set the maximum number of virtual functions " "(VFs) that can be created for Intel graphics hardware.\\n" msgstr "" -#: menu.sh:833 menu.sh:964 +#: menu.sh:852 menu.sh:983 msgid "\\nEnter the parameter name and value you need to add.\\n" msgstr "" -#: menu.sh:846 menu.sh:977 +#: menu.sh:865 menu.sh:996 msgid "Invalid parameter name, retry?" msgstr "" -#: menu.sh:870 +#: menu.sh:889 msgid "No user cmdline to remove" msgstr "" -#: menu.sh:878 +#: menu.sh:897 msgid "Select cmdline to remove" msgstr "" -#: menu.sh:889 +#: menu.sh:908 msgid "Note: (MAC will not be set to NIC, Only for activation services.)" msgstr "" -#: menu.sh:895 +#: menu.sh:914 msgid "Random" msgstr "" -#: menu.sh:906 +#: menu.sh:925 msgid "Invalid SN/MAC, retry?" msgstr "" -#: menu.sh:949 +#: menu.sh:968 msgid "Add/edit a synoinfo item" msgstr "" -#: menu.sh:950 +#: menu.sh:969 msgid "Show/Delete synoinfo items" msgstr "" -#: menu.sh:952 menu.sh:967 menu.sh:976 menu.sh:1001 menu.sh:1009 +#: menu.sh:971 menu.sh:986 menu.sh:995 menu.sh:1020 menu.sh:1028 msgid "Synoinfo" msgstr "" -#: menu.sh:959 +#: menu.sh:978 msgid "Commonly used synoinfo:\\n" msgstr "" -#: menu.sh:960 +#: menu.sh:979 msgid " * \\Z4maxdisks=??\\Zn\\n Maximum number of disks supported.\\n" msgstr "" -#: menu.sh:961 +#: menu.sh:980 msgid " * \\Z4internalportcfg=0x????\\Zn\\n Internal(sata) disks mask.\\n" msgstr "" -#: menu.sh:962 +#: menu.sh:981 msgid " * \\Z4esataportcfg=0x????\\Zn\\n Esata disks mask.\\n" msgstr "" -#: menu.sh:963 +#: menu.sh:982 msgid " * \\Z4usbportcfg=0x????\\Zn\\n USB disks mask.\\n" msgstr "" -#: menu.sh:1002 +#: menu.sh:1021 msgid "No synoinfo entries to remove" msgstr "" -#: menu.sh:1010 +#: menu.sh:1029 msgid "Select synoinfo entry to remove" msgstr "" -#: menu.sh:1045 +#: menu.sh:1064 msgid "Downloading old pat to extract synology .pat extractor..." msgstr "" -#: menu.sh:1051 menu.sh:1203 +#: menu.sh:1070 menu.sh:1222 msgid "Check internet or cache disk space.\\nError: %d:%d" msgstr "" -#: menu.sh:1091 +#: menu.sh:1110 msgid "Uncompressed tar" msgstr "" -#: menu.sh:1095 +#: menu.sh:1114 msgid "Compressed tar" msgstr "" -#: menu.sh:1099 +#: menu.sh:1118 msgid "Encrypted" msgstr "" -#: menu.sh:1103 +#: menu.sh:1122 msgid "" "Could not determine if pat file is encrypted or not, maybe corrupted, try " "again!" msgstr "" -#: menu.sh:1110 menu.sh:1219 +#: menu.sh:1129 menu.sh:1238 msgid "Disassembling %s: " msgstr "" -#: menu.sh:1117 +#: menu.sh:1136 msgid "Extractor cached." msgstr "" -#: menu.sh:1123 menu.sh:1126 +#: menu.sh:1142 menu.sh:1145 msgid "Extracting ..." msgstr "" -#: menu.sh:1157 +#: menu.sh:1176 msgid "%s cached." msgstr "" -#: menu.sh:1160 +#: menu.sh:1179 msgid "The cache has been cleared. Please re 'Parse pat' before build." msgstr "" -#: menu.sh:1164 +#: menu.sh:1183 msgid "" "The cache has been cleared. Please re 'Try to recovery a installed DSM " "system' before build." msgstr "" -#: menu.sh:1168 +#: menu.sh:1187 msgid "The pat url is empty. Please re 'Choose a version' before build." msgstr "" -#: menu.sh:1173 +#: menu.sh:1192 msgid "Cleaning cache ..." msgstr "" -#: menu.sh:1187 +#: menu.sh:1206 msgid "" "Based on the current network situation, switch to %s mirror to downloading." msgstr "" -#: menu.sh:1190 +#: menu.sh:1209 msgid "Downloading %s ..." msgstr "" -#: menu.sh:1209 +#: menu.sh:1228 msgid "Checking hash of %s: " msgstr "" -#: menu.sh:1212 +#: menu.sh:1231 msgid "" "md5 hash of pat not match, Please reget pat data from the version menu and " "try again!" msgstr "" -#: menu.sh:1215 menu.sh:1231 menu.sh:1241 +#: menu.sh:1234 menu.sh:1250 menu.sh:1260 msgid "OK" msgstr "" -#: menu.sh:1226 +#: menu.sh:1245 msgid "Setting hash: " msgstr "" -#: menu.sh:1233 +#: menu.sh:1252 msgid "Copying files: " msgstr "" -#: menu.sh:1257 -msgid "Addon %s not found!" -msgstr "" - -#: menu.sh:1279 +#: menu.sh:1287 msgid "Cleaning ..." msgstr "" -#: menu.sh:1281 +#: menu.sh:1289 msgid "Ready!" msgstr "" -#: menu.sh:1305 menu.sh:1321 menu.sh:1325 menu.sh:1342 menu.sh:1347 -#: menu.sh:1366 menu.sh:1378 menu.sh:1430 +#: menu.sh:1313 menu.sh:1329 menu.sh:1333 menu.sh:1350 menu.sh:1355 +#: menu.sh:1374 menu.sh:1386 menu.sh:2101 msgid "Custom DTS" msgstr "" -#: menu.sh:1307 +#: menu.sh:1315 msgid "Custom dts: " msgstr "" -#: menu.sh:1308 +#: menu.sh:1316 msgid "Upload dts file" msgstr "" -#: menu.sh:1309 +#: menu.sh:1317 msgid "Delete dts file" msgstr "" -#: menu.sh:1310 +#: menu.sh:1318 msgid "Edit dts file" msgstr "" -#: menu.sh:1320 +#: menu.sh:1328 msgid "" "Or upload the dts file to %s via DUFS, Will be automatically imported when " "building." msgstr "" -#: menu.sh:1326 +#: menu.sh:1334 msgid "" "Currently, only dts format files are supported. Please prepare and click to " "confirm uploading.\\n(saved in /mnt/p3/users/)" msgstr "" -#: menu.sh:1343 menu.sh:1379 +#: menu.sh:1351 menu.sh:1387 msgid "Not a valid dts file, please try again!" msgstr "" -#: menu.sh:1348 +#: menu.sh:1356 msgid "A valid dts file, Automatically import at compile time." msgstr "" -#: menu.sh:1367 +#: menu.sh:1375 msgid "No dts file to edit. Please upload first!" msgstr "" -#: menu.sh:1403 -msgid "Switch LKM version:" -msgstr "" - -#: menu.sh:1404 -msgid "HDD sort(hotplug):" -msgstr "" - -#: menu.sh:1407 -msgid "Switch direct boot:" -msgstr "" - -#: menu.sh:1409 -msgid "Timeout of get ip in boot:" -msgstr "" - -#: menu.sh:1410 -msgid "Timeout of boot wait:" -msgstr "" - -#: menu.sh:1411 -msgid "kernel switching method:" -msgstr "" - -#: menu.sh:1413 -msgid "Reboot on kernel panic:" -msgstr "" - -#: menu.sh:1415 -msgid "Set static IP" -msgstr "" - -#: menu.sh:1416 -msgid "Set wireless account" -msgstr "" - -#: menu.sh:1417 -msgid "Edit user config file manually" -msgstr "" - -#: menu.sh:1418 -msgid "Edit grub.cfg file manually" -msgstr "" - -#: menu.sh:1419 -msgid "Try to recovery a installed DSM system" -msgstr "" - -#: menu.sh:1420 -msgid "Show disks information" -msgstr "" - -#: menu.sh:1422 -msgid "show/modify the current pat data" -msgstr "" - -#: menu.sh:1424 -msgid "Allow downgrade installation" -msgstr "" - -#: menu.sh:1425 -msgid "Format disk(s) # Without loader disk" -msgstr "" - -#: menu.sh:1426 -msgid "Reset DSM system password" -msgstr "" - -#: menu.sh:1427 -msgid "Force enable Telnet&SSH of DSM system" -msgstr "" - -#: menu.sh:1428 -msgid "Save modifications of '/opt/rr'" -msgstr "" - -#: menu.sh:1432 -msgid "Custom patch script # Developer" -msgstr "" - -#: menu.sh:1434 -msgid "Use EMMC as the system disk:" -msgstr "" - -#: menu.sh:1436 -msgid "Clone bootloader disk to another disk" -msgstr "" - -#: menu.sh:1437 -msgid "Report bugs to the author" -msgstr "" - -#: menu.sh:1438 -msgid "Install development tools" -msgstr "" - -#: menu.sh:1439 -msgid "Show QR logo:" -msgstr "" - -#: menu.sh:1440 -msgid "Set global proxy" -msgstr "" - -#: menu.sh:1441 -msgid "Set github proxy" -msgstr "" - -#: menu.sh:1442 -msgid "Vigorously miracle" -msgstr "" - -#: menu.sh:1445 menu.sh:1469 menu.sh:1481 menu.sh:1501 menu.sh:1524 -#: menu.sh:1548 menu.sh:1553 menu.sh:1565 menu.sh:1574 menu.sh:1596 -#: menu.sh:1697 menu.sh:1704 menu.sh:1722 menu.sh:1735 menu.sh:1738 -#: menu.sh:1751 menu.sh:1755 menu.sh:1756 menu.sh:1761 menu.sh:1765 -#: menu.sh:1780 menu.sh:1782 menu.sh:1805 menu.sh:1809 menu.sh:1816 -#: menu.sh:1822 menu.sh:1840 menu.sh:1842 menu.sh:1846 menu.sh:1868 -#: menu.sh:1871 menu.sh:1875 menu.sh:1878 menu.sh:1893 menu.sh:1906 -#: menu.sh:1938 menu.sh:1942 menu.sh:1948 menu.sh:1954 menu.sh:1960 -#: menu.sh:1991 menu.sh:2004 menu.sh:2008 menu.sh:2018 menu.sh:2023 -#: menu.sh:2030 menu.sh:2032 menu.sh:2044 menu.sh:2055 menu.sh:2077 -#: menu.sh:2088 menu.sh:2105 -msgid "Advanced" -msgstr "" - -#: menu.sh:1446 -msgid "Advanced option" -msgstr "" - -#: menu.sh:1470 menu.sh:1482 menu.sh:1502 -msgid "Choose a time(seconds)" -msgstr "" - -#: menu.sh:1512 +#: menu.sh:1450 msgid "Temporary IP: (UI will not refresh)" msgstr "" -#: menu.sh:1549 +#: menu.sh:1462 menu.sh:1486 menu.sh:1494 menu.sh:1506 menu.sh:1515 +#: menu.sh:1537 menu.sh:1629 menu.sh:1646 menu.sh:1650 menu.sh:1651 +#: menu.sh:1656 menu.sh:1660 menu.sh:1675 menu.sh:1677 menu.sh:1854 +#: menu.sh:1868 menu.sh:1871 menu.sh:1899 menu.sh:1903 menu.sh:1910 +#: menu.sh:1916 menu.sh:1935 menu.sh:1937 menu.sh:1945 menu.sh:1968 +#: menu.sh:1971 menu.sh:1986 menu.sh:1990 menu.sh:1996 menu.sh:2002 +#: menu.sh:2008 menu.sh:2039 menu.sh:2055 menu.sh:2066 menu.sh:2136 +#: menu.sh:2157 menu.sh:2182 menu.sh:2194 menu.sh:2214 menu.sh:2251 +#: menu.sh:2306 menu.sh:2310 menu.sh:2320 menu.sh:2326 menu.sh:2329 +#: menu.sh:2344 menu.sh:2349 menu.sh:2356 menu.sh:2358 menu.sh:2379 +msgid "Advanced" +msgstr "" + +#: menu.sh:1487 msgid "Setting IP ..." msgstr "" -#: menu.sh:1554 +#: menu.sh:1495 msgid "Scanning ..." msgstr "" -#: menu.sh:1557 +#: menu.sh:1498 msgid "Scanned SSIDs:\\n" msgstr "" -#: menu.sh:1575 +#: menu.sh:1516 msgid "Invalid SSID/PSK, retry?" msgstr "" -#: menu.sh:1597 +#: menu.sh:1538 msgid "Setting ..." msgstr "" -#: menu.sh:1695 +#: menu.sh:1627 msgid "\\nTotal of ports: %s\\n" msgstr "" -#: menu.sh:1696 +#: menu.sh:1628 msgid "" "\\nPorts with color \\Z1red\\Zn as DUMMY, color \\Z2\\Zbgreen\\Zn has drive " "connected." msgstr "" -#: menu.sh:1703 -msgid "pat: (editable)" +#: menu.sh:1647 menu.sh:1987 +msgid "No disk found!" msgstr "" -#: menu.sh:1719 -msgid "" -"This feature will allow you to downgrade the installation by removing the " -"VERSION file from the first partition of all disks.\\n" -msgstr "" - -#: menu.sh:1720 -msgid "Therefore, please insert all disks before continuing.\\n" -msgstr "" - -#: menu.sh:1721 menu.sh:1762 +#: menu.sh:1657 menu.sh:1853 msgid "" "Warning:\\nThis operation is irreversible. Please backup important data. Do " "you want to continue?" msgstr "" -#: menu.sh:1736 -msgid "Removing ..." -msgstr "" - -#: menu.sh:1737 -msgid "Remove VERSION file for all disks completed." -msgstr "" - -#: menu.sh:1752 menu.sh:1939 -msgid "No disk found!" -msgstr "" - -#: menu.sh:1766 +#: menu.sh:1661 msgid "" "Warning:\\nThe current hds is in raid, do you still want to format them?" msgstr "" -#: menu.sh:1781 +#: menu.sh:1676 msgid "Formatting ..." msgstr "" -#: menu.sh:1783 +#: menu.sh:1678 msgid "Formatting is complete." msgstr "" -#: menu.sh:1806 -msgid "The installed Syno system not found in the currently inserted disks!" -msgstr "" - -#: menu.sh:1810 -msgid "Choose a user name" -msgstr "" - -#: menu.sh:1817 -msgid "Type a new password for user '%s'" -msgstr "" - -#: menu.sh:1823 -msgid "Invalid password" -msgstr "" - -#: menu.sh:1841 -msgid "Resetting ..." -msgstr "" - -#: menu.sh:1843 -msgid "Password reset completed." -msgstr "" - -#: menu.sh:1847 -msgid "Please insert all disks before continuing.\\n" -msgstr "" - -#: menu.sh:1869 -msgid "Enabling ..." -msgstr "" - -#: menu.sh:1870 -msgid "Telnet&SSH is enabled." -msgstr "" - -#: menu.sh:1870 -msgid "Telnet&SSH is not enabled." -msgstr "" - -#: menu.sh:1876 -msgid "" -"Warning:\\nDo not terminate midway, otherwise it may cause damage to the RR. " -"Do you want to continue?" -msgstr "" - -#: menu.sh:1879 -msgid "" -"Saving ...\\n(It usually takes 5-10 minutes, please be patient and wait.)" -msgstr "" - -#: menu.sh:1894 -msgid "Save is complete." -msgstr "" - -#: menu.sh:1902 -msgid "This option is only informative.\\n\\n" -msgstr "" - -#: menu.sh:1903 -msgid "This program reserves an interface for ramdisk custom patch scripts.\\n" -msgstr "" - -#: menu.sh:1904 -msgid "Call timing: called before ramdisk packaging.\\n" -msgstr "" - -#: menu.sh:1905 -msgid "Location: /mnt/p3/scripts/*.sh\\n" -msgstr "" - -#: menu.sh:1943 -msgid "Choose a disk to clone to" -msgstr "" - -#: menu.sh:1949 -msgid "No disk selected!" -msgstr "" - -#: menu.sh:1955 -msgid "Disk %s size is less than 1GB and cannot be cloned!" -msgstr "" - -#: menu.sh:1959 -msgid "" -"Warning:\\nDisk %s will be formatted and written to the bootloader. Please " -"confirm that important data has been backed up. \\nDo you want to continue?" -msgstr "" - -#: menu.sh:1992 -msgid "Cloning ..." -msgstr "" - -#: menu.sh:1994 -msgid "" -"Bootloader has been cloned to disk %s, please remove the current bootloader " -"disk!\\nReboot?" -msgstr "" - -#: menu.sh:2005 -msgid "" -"Please via %s to download the logs,\\nAnd go to github to create an issue " -"and upload the logs." -msgstr "" - -#: menu.sh:2009 -msgid "Please go to github to create an issue and upload the logs." -msgstr "" - -#: menu.sh:2013 -msgid "\\Z1No logs found!\\Zn\\n\\n" -msgstr "" - -#: menu.sh:2014 -msgid "Please do as follows:\\n" -msgstr "" - -#: menu.sh:2015 -msgid " 1. Add dbgutils in addons and rebuild.\\n" -msgstr "" - -#: menu.sh:2016 -msgid " 2. Wait 10 minutes after booting.\\n" -msgstr "" - -#: menu.sh:2017 -msgid " 3. Reboot into RR and go to this option.\\n" -msgstr "" - -#: menu.sh:2024 -msgid "" -"This option only installs opkg package management, allowing you to install " -"more tools for use and debugging. Do you want to continue?" -msgstr "" - -#: menu.sh:2031 -msgid "opkg installing ..." -msgstr "" - -#: menu.sh:2033 -msgid "" -"opkg install is complete. Please reconnect to ssh/web, or execute 'source ~/." -"bashrc'" -msgstr "" - -#: menu.sh:2045 -msgid "Please enter a proxy server url.(e.g., http://192.168.1.1:7981/)" -msgstr "" - -#: menu.sh:2056 menu.sh:2089 -msgid "Invalid proxy server url, continue?" -msgstr "" - -#: menu.sh:2078 -msgid "Please enter a proxy server url.(e.g., https://mirror.ghproxy.com/)" -msgstr "" - -#: menu.sh:2103 -msgid "It is expected that all restrictions on DSM will be lifted,\\n" -msgstr "" - -#: menu.sh:2104 -msgid "" -"But since upgrading is not supported, I don not want to implement it for the " -"time being.\\n" -msgstr "" - -#: menu.sh:2116 menu.sh:2120 menu.sh:2134 menu.sh:2154 menu.sh:2170 -#: menu.sh:2178 menu.sh:2262 menu.sh:2267 menu.sh:2273 +#: menu.sh:1685 menu.sh:1689 menu.sh:1703 menu.sh:1723 menu.sh:1739 +#: menu.sh:1747 menu.sh:1831 menu.sh:1836 menu.sh:1842 msgid "Try recovery DSM" msgstr "" -#: menu.sh:2117 +#: menu.sh:1686 msgid "Trying to recovery a installed DSM system ..." msgstr "" -#: menu.sh:2121 +#: menu.sh:1690 msgid "Unfortunately I couldn't mount the DSM partition!" msgstr "" -#: menu.sh:2135 +#: menu.sh:1704 msgid "Checking for backup of user's configuration for bootloader ..." msgstr "" -#: menu.sh:2155 +#: menu.sh:1724 msgid "" "Found a backup of the user's configuration, but the system is damaged and " "will not be restored. Please reselect model and build." msgstr "" -#: menu.sh:2171 +#: menu.sh:1740 msgid "" "Found a backup of the user's configuration, and restored it. Please rebuild " "and boot." msgstr "" -#: menu.sh:2179 +#: menu.sh:1748 msgid "Checking for installed DSM system ..." msgstr "" -#: menu.sh:2263 +#: menu.sh:1832 msgid "Found a installed DSM system and restored it. Please rebuild and boot." msgstr "" -#: menu.sh:2268 +#: menu.sh:1837 msgid "" "Found a installed DSM system, but the system is damaged and will not be " "restored. Please reselect model and build." msgstr "" -#: menu.sh:2274 +#: menu.sh:1843 msgid "" "The installed DSM system was not found, or the system is damaged and cannot " "be recovered. Please reselect model and build." msgstr "" -#: menu.sh:2324 -msgid "Alert" +#: menu.sh:1851 +msgid "" +"This feature will allow you to downgrade the installation by removing the " +"VERSION file from the first partition of all disks.\\n" msgstr "" -#: menu.sh:2325 -msgid "Config changed, would you like to rebuild the loader?" +#: menu.sh:1852 +msgid "Therefore, please insert all disks before continuing.\\n" msgstr "" -#: menu.sh:2342 menu.sh:2942 -msgid "Choose a language" +#: menu.sh:1869 +msgid "Removing ..." +msgstr "" + +#: menu.sh:1870 +msgid "Remove VERSION file for all disks completed." +msgstr "" + +#: menu.sh:1900 +msgid "The installed Syno system not found in the currently inserted disks!" +msgstr "" + +#: menu.sh:1904 +msgid "Choose a user name" +msgstr "" + +#: menu.sh:1911 +msgid "Type a new password for user '%s'" +msgstr "" + +#: menu.sh:1917 +msgid "Invalid password" +msgstr "" + +#: menu.sh:1936 +msgid "Resetting ..." +msgstr "" + +#: menu.sh:1938 +msgid "Password reset completed." +msgstr "" + +#: menu.sh:1946 +msgid "Please insert all disks before continuing.\\n" +msgstr "" + +#: menu.sh:1969 +msgid "Enabling ..." +msgstr "" + +#: menu.sh:1970 +msgid "Telnet&SSH is enabled." +msgstr "" + +#: menu.sh:1970 +msgid "Telnet&SSH is not enabled." +msgstr "" + +#: menu.sh:1991 +msgid "Choose a disk to clone to" +msgstr "" + +#: menu.sh:1997 +msgid "No disk selected!" +msgstr "" + +#: menu.sh:2003 +msgid "Disk %s size is less than 1GB and cannot be cloned!" +msgstr "" + +#: menu.sh:2007 +msgid "" +"Warning:\\nDisk %s will be formatted and written to the bootloader. Please " +"confirm that important data has been backed up. \\nDo you want to continue?" +msgstr "" + +#: menu.sh:2040 +msgid "Cloning ..." +msgstr "" + +#: menu.sh:2042 +msgid "" +"Bootloader has been cloned to disk %s, please remove the current bootloader " +"disk!\\nReboot?" +msgstr "" + +#: menu.sh:2056 +msgid "Please enter a proxy server url.(e.g., %s)" +msgstr "" + +#: menu.sh:2067 +msgid "Invalid proxy server url, continue?" +msgstr "" + +#: menu.sh:2095 +msgid "Switch LKM version:" +msgstr "" + +#: menu.sh:2096 +msgid "HDD sort(hotplug):" +msgstr "" + +#: menu.sh:2098 +msgid "show/modify the current pat data" +msgstr "" + +#: menu.sh:2103 +msgid "Switch direct boot:" +msgstr "" + +#: menu.sh:2105 +msgid "Timeout of get ip in boot:" +msgstr "" + +#: menu.sh:2106 +msgid "Timeout of boot wait:" +msgstr "" + +#: menu.sh:2107 +msgid "kernel switching method:" +msgstr "" + +#: menu.sh:2109 +msgid "Reboot on kernel panic:" +msgstr "" + +#: menu.sh:2111 +msgid "Use EMMC as the system disk:" +msgstr "" + +#: menu.sh:2113 +msgid "Custom patch script # Developer" +msgstr "" + +#: menu.sh:2114 +msgid "Edit user config file manually" +msgstr "" + +#: menu.sh:2115 +msgid "Edit grub.cfg file manually" +msgstr "" + +#: menu.sh:2117 +msgid "Set static IP" +msgstr "" + +#: menu.sh:2118 +msgid "Set wireless account" +msgstr "" + +#: menu.sh:2119 +msgid "Show disks information" +msgstr "" + +#: menu.sh:2120 +msgid "Format disk(s) # Without loader disk" +msgstr "" + +#: menu.sh:2121 +msgid "Try to recovery a installed DSM system" +msgstr "" + +#: menu.sh:2122 +msgid "Allow downgrade installation" +msgstr "" + +#: menu.sh:2123 +msgid "Reset DSM system password" +msgstr "" + +#: menu.sh:2124 +msgid "Force enable Telnet&SSH of DSM system" +msgstr "" + +#: menu.sh:2125 +msgid "Clone bootloader disk to another disk" +msgstr "" + +#: menu.sh:2126 +msgid "Report bugs to the author" +msgstr "" + +#: menu.sh:2127 +msgid "Save modifications of '/opt/rr'" +msgstr "" + +#: menu.sh:2128 +msgid "Install development tools" +msgstr "" + +#: menu.sh:2130 +msgid "Show QR logo:" +msgstr "" + +#: menu.sh:2131 +msgid "Set global proxy" +msgstr "" + +#: menu.sh:2132 +msgid "Set github proxy" +msgstr "" + +#: menu.sh:2133 +msgid "Vigorously miracle" +msgstr "" + +#: menu.sh:2137 +msgid "Advanced option" +msgstr "" + +#: menu.sh:2156 +msgid "pat: (editable)" +msgstr "" + +#: menu.sh:2183 menu.sh:2195 menu.sh:2215 +msgid "Choose a time(seconds)" +msgstr "" + +#: menu.sh:2247 +msgid "This option is only informative.\\n\\n" +msgstr "" + +#: menu.sh:2248 +msgid "This program reserves an interface for ramdisk custom patch scripts.\\n" +msgstr "" + +#: menu.sh:2249 +msgid "Call timing: called before ramdisk packaging.\\n" +msgstr "" + +#: menu.sh:2250 +msgid "Location: /mnt/p3/scripts/*.sh\\n" +msgstr "" + +#: menu.sh:2307 +msgid "" +"Please via %s to download the logs,\\nAnd go to github to create an issue " +"and upload the logs." +msgstr "" + +#: menu.sh:2311 +msgid "Please go to github to create an issue and upload the logs." +msgstr "" + +#: menu.sh:2315 +msgid "\\Z1No logs found!\\Zn\\n\\n" +msgstr "" + +#: menu.sh:2316 +msgid "Please do as follows:\\n" +msgstr "" + +#: menu.sh:2317 +msgid " 1. Add dbgutils in addons and rebuild.\\n" +msgstr "" + +#: menu.sh:2318 +msgid " 2. Wait 10 minutes after booting.\\n" +msgstr "" + +#: menu.sh:2319 +msgid " 3. Reboot into RR and go to this option.\\n" +msgstr "" + +#: menu.sh:2327 +msgid "" +"Warning:\\nDo not terminate midway, otherwise it may cause damage to the RR. " +"Do you want to continue?" +msgstr "" + +#: menu.sh:2330 +msgid "" +"Saving ...\\n(It usually takes 5-10 minutes, please be patient and wait.)" +msgstr "" + +#: menu.sh:2345 +msgid "Save is complete." +msgstr "" + +#: menu.sh:2350 +msgid "" +"This option only installs opkg package management, allowing you to install " +"more tools for use and debugging. Do you want to continue?" msgstr "" #: menu.sh:2357 +msgid "opkg installing ..." +msgstr "" + +#: menu.sh:2359 +msgid "" +"opkg install is complete. Please reconnect to ssh/web, or execute 'source ~/." +"bashrc'" +msgstr "" + +#: menu.sh:2391 +msgid "Alert" +msgstr "" + +#: menu.sh:2392 +msgid "Config changed, would you like to rebuild the loader?" +msgstr "" + +#: menu.sh:2409 menu.sh:3012 +msgid "Choose a language" +msgstr "" + +#: menu.sh:2424 msgid "Choose a layout" msgstr "" -#: menu.sh:2369 +#: menu.sh:2436 msgid "Choice a keymap" msgstr "" -#: menu.sh:2388 menu.sh:2465 menu.sh:2562 menu.sh:2607 menu.sh:2657 -#: menu.sh:2696 +#: menu.sh:2455 menu.sh:2532 menu.sh:2629 menu.sh:2674 menu.sh:2724 +#: menu.sh:2763 msgid "Update %s" msgstr "" -#: menu.sh:2389 +#: menu.sh:2456 msgid "Checking last version ..." msgstr "" -#: menu.sh:2405 +#: menu.sh:2472 msgid "Error checking new version.\\nError: TAG is %s" msgstr "" -#: menu.sh:2418 +#: menu.sh:2485 msgid "No new version." msgstr "" -#: menu.sh:2422 +#: menu.sh:2489 msgid "Actual version is %s\\nForce update?" msgstr "" -#: menu.sh:2444 +#: menu.sh:2511 msgid "Downloading ..." msgstr "" -#: menu.sh:2447 +#: menu.sh:2514 msgid "Error downloading new version.\\nError: %d:%d" msgstr "" -#: menu.sh:2465 menu.sh:2549 menu.sh:2742 menu.sh:2769 +#: menu.sh:2532 menu.sh:2616 menu.sh:2809 menu.sh:2836 msgid "RR" msgstr "" -#: menu.sh:2466 menu.sh:2563 menu.sh:2608 menu.sh:2658 menu.sh:2697 +#: menu.sh:2533 menu.sh:2630 menu.sh:2675 menu.sh:2725 menu.sh:2764 msgid "Extracting update file ..." msgstr "" -#: menu.sh:2477 menu.sh:2574 menu.sh:2619 menu.sh:2669 menu.sh:2708 +#: menu.sh:2544 menu.sh:2641 menu.sh:2686 menu.sh:2736 menu.sh:2775 msgid "Error extracting update file." msgstr "" -#: menu.sh:2489 +#: menu.sh:2556 msgid "Checksum do not match!" msgstr "" -#: menu.sh:2503 +#: menu.sh:2570 msgid "" "The current version does not support upgrading to the latest update.zip. " "Please remake the bootloader disk!" msgstr "" -#: menu.sh:2513 +#: menu.sh:2580 msgid "Installing new files ..." msgstr "" -#: menu.sh:2549 menu.sh:2592 menu.sh:2642 menu.sh:2681 menu.sh:2720 +#: menu.sh:2616 menu.sh:2659 menu.sh:2709 menu.sh:2748 menu.sh:2787 msgid "%s updated with success!" msgstr "" -#: menu.sh:2549 +#: menu.sh:2616 msgid "Reboot?" msgstr "" -#: menu.sh:2657 menu.sh:2681 menu.sh:2745 menu.sh:2798 menu.sh:2802 +#: menu.sh:2724 menu.sh:2748 menu.sh:2812 menu.sh:2865 menu.sh:2869 msgid "LKMs" msgstr "" -#: menu.sh:2696 menu.sh:2720 menu.sh:2746 menu.sh:2809 menu.sh:2813 +#: menu.sh:2763 menu.sh:2787 menu.sh:2813 menu.sh:2876 menu.sh:2880 msgid "CKs" msgstr "" -#: menu.sh:2741 menu.sh:2763 +#: menu.sh:2808 menu.sh:2830 msgid "All" msgstr "" -#: menu.sh:2747 +#: menu.sh:2814 msgid "Local upload" msgstr "" -#: menu.sh:2748 +#: menu.sh:2815 msgid "Pre Release:" msgstr "" -#: menu.sh:2753 menu.sh:2821 +#: menu.sh:2820 menu.sh:2888 msgid "" "Manually uploading update*.zip,addons*.zip,modules*.zip,rp-lkms*.zip,rr-cks*." "zip to /tmp/ will skip the download." msgstr "" -#: menu.sh:2776 menu.sh:2787 menu.sh:2798 menu.sh:2809 +#: menu.sh:2843 menu.sh:2854 menu.sh:2865 menu.sh:2876 msgid "No longer supports update %s separately. Please choose to update All/RR" msgstr "" -#: menu.sh:2827 +#: menu.sh:2894 msgid "" "Please keep the attachment name consistent with the attachment name on " "Github.\\n" msgstr "" -#: menu.sh:2828 +#: menu.sh:2895 msgid "Upload update*.zip will update RR.\\n" msgstr "" -#: menu.sh:2829 +#: menu.sh:2896 msgid "Upload addons*.zip will update Addons.\\n" msgstr "" -#: menu.sh:2830 +#: menu.sh:2897 msgid "Upload modules*.zip will update Modules.\\n" msgstr "" -#: menu.sh:2831 +#: menu.sh:2898 msgid "Upload rp-lkms*.zip will update LKMs.\\n" msgstr "" -#: menu.sh:2832 +#: menu.sh:2899 msgid "Upload rr-cks*.zip will update CKs.\\n" msgstr "" -#: menu.sh:2888 +#: menu.sh:2955 msgid "This person is very lazy and hasn't written anything." msgstr "" -#: menu.sh:2915 +#: menu.sh:2985 msgid "Choose a model" msgstr "" -#: menu.sh:2917 +#: menu.sh:2987 msgid "Choose a version" msgstr "" -#: menu.sh:2919 +#: menu.sh:2989 msgid "Parse pat" msgstr "" -#: menu.sh:2926 +#: menu.sh:2996 msgid "Kernel:" msgstr "" -#: menu.sh:2928 +#: menu.sh:2998 msgid "Addons menu" msgstr "" -#: menu.sh:2929 +#: menu.sh:2999 msgid "Modules menu" msgstr "" -#: menu.sh:2930 +#: menu.sh:3000 msgid "Cmdline menu" msgstr "" -#: menu.sh:2931 +#: menu.sh:3001 msgid "Synoinfo menu" msgstr "" -#: menu.sh:2933 +#: menu.sh:3003 msgid "Advanced menu" msgstr "" -#: menu.sh:2936 +#: menu.sh:3006 msgid "Build the loader" msgstr "" -#: menu.sh:2940 +#: menu.sh:3010 msgid "Boot the loader" msgstr "" -#: menu.sh:2943 +#: menu.sh:3013 msgid "Choose a keymap" msgstr "" -#: menu.sh:2945 +#: menu.sh:3015 msgid "Clean disk cache" msgstr "" -#: menu.sh:2947 +#: menu.sh:3017 msgid "Update menu" msgstr "" -#: menu.sh:2948 +#: menu.sh:3018 msgid "Notepad" msgstr "" -#: menu.sh:2970 +#: menu.sh:3040 msgid "Change ..." msgstr "" -#: menu.sh:3039 +#: menu.sh:3109 msgid "Choose a action" msgstr "" -#: menu.sh:3040 +#: menu.sh:3110 msgid "Poweroff" msgstr "" -#: menu.sh:3041 +#: menu.sh:3111 msgid "Reboot" msgstr "" -#: menu.sh:3042 +#: menu.sh:3112 msgid "Reboot to RR" msgstr "" -#: menu.sh:3043 +#: menu.sh:3113 msgid "Back to shell" msgstr "" -#: menu.sh:3069 +#: menu.sh:3139 msgid "Call \\033[1;32mmenu.sh\\033[0m to return to menu" msgstr "" diff --git a/files/initrd/opt/rr/lang/ru_RU/LC_MESSAGES/rr.mo b/files/initrd/opt/rr/lang/ru_RU/LC_MESSAGES/rr.mo index 21a25a5febdaa1a7c73e8d21d06bbe86a70b29d7..ee56dd007c85fbfcf16e1af11a0eb177391c3d92 100644 GIT binary patch delta 7224 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 \"Update " "modules\" to forcibly update the modules. All imports will be reset.\\n" @@ -545,56 +545,56 @@ msgstr "" "Если вы хотите удалить его, перейдите в \"Меню обновления\" -> \"Обновить " "модули\", чтобы принудительно обновить модули. Все импорты будут сброшены.\\n" -#: menu.sh:731 +#: menu.sh:750 msgid "Do you want to continue?" msgstr "Хотите продолжить?" -#: menu.sh:736 +#: menu.sh:755 msgid "Please upload the *.ko file." msgstr "Пожалуйста, загрузите файл *.ko." -#: menu.sh:752 +#: menu.sh:771 msgid "Module '%s' added to %s-%s" msgstr "Модуль '%s' добавлен к %s-%s" -#: menu.sh:770 +#: menu.sh:789 msgid "No i915 with dependencies module to deselect." msgstr "Нет i915 с модулем зависимостей, который нужно отменить." -#: menu.sh:776 +#: menu.sh:795 msgid "Module %s deselected.\\n" msgstr "Выбор модуля %s отменен.\\n" -#: menu.sh:790 menu.sh:1373 menu.sh:2282 menu.sh:2289 menu.sh:2312 +#: menu.sh:809 menu.sh:1381 menu.sh:1408 menu.sh:1415 menu.sh:1438 msgid "Edit with caution" msgstr "Редактируйте с осторожностью" -#: menu.sh:810 +#: menu.sh:829 msgid "Add/Edit a cmdline item" msgstr "Добавить/Изменить параметр cmdline" -#: menu.sh:811 +#: menu.sh:830 msgid "Show/Delete cmdline items" msgstr "Показать/Удалить параметры cmdline" -#: menu.sh:813 +#: menu.sh:832 msgid "Define SN/MAC" msgstr "Определить SN/MAC" -#: menu.sh:815 +#: menu.sh:834 msgid "Show model inherent cmdline" msgstr "Показать стандартные параметры cmdline модели" -#: menu.sh:817 menu.sh:836 menu.sh:845 menu.sh:869 menu.sh:877 menu.sh:894 -#: menu.sh:905 menu.sh:937 +#: menu.sh:836 menu.sh:855 menu.sh:864 menu.sh:888 menu.sh:896 menu.sh:913 +#: menu.sh:924 menu.sh:956 msgid "Cmdline" msgstr "Cmdline" -#: menu.sh:824 +#: menu.sh:843 msgid "Commonly used cmdlines:\\n" msgstr "Часто используемые cmdlines:\\n" -#: menu.sh:825 +#: menu.sh:844 msgid "" " * \\Z4disable_mtrr_trim=\\Zn\\n disables kernel trim any uncacheable " "memory out.\\n" @@ -602,7 +602,7 @@ msgstr "" " * \\Z4disable_mtrr_trim=\\Zn\\n отключает обрезку ядром любой " "некэшируемой памяти.\\n" -#: menu.sh:826 +#: menu.sh:845 msgid "" " * \\Z4intel_idle.max_cstate=1\\Zn\\n Set the maximum C-state depth " "allowed by the intel_idle driver.\\n" @@ -610,7 +610,7 @@ msgstr "" " * \\Z4intel_idle.max_cstate=1\\Zn\\n Установить максимальную глубину " "состояния C, разрешенную драйвером intel_idle.\\n" -#: menu.sh:827 +#: menu.sh:846 msgid "" " * \\Z4pcie_port_pm=off\\Zn\\n Turn off the power management of the PCIe " "port.\\n" @@ -618,23 +618,23 @@ msgstr "" " * \\Z4pcie_port_pm=off\\Zn\\n Отключите управление питанием порта PCIe.." "\\n" -#: menu.sh:828 +#: menu.sh:847 msgid " * \\Z4libata.force=noncq\\Zn\\n Disable NCQ for all SATA ports.\\n" msgstr "" " * \\Z4libata.force=noncq\\Zn\\n Отключите NCQ для всех портов SATA.\\n" -#: menu.sh:829 +#: menu.sh:848 msgid " * \\Z4SataPortMap=??\\Zn\\n Sata Port Map.\\n" msgstr " * \\Z4SataPortMap=??\\Zn\\n Карта портов Sata.\\n" -#: menu.sh:830 +#: menu.sh:849 msgid "" " * \\Z4DiskIdxMap=??\\Zn\\n Disk Index Map, Modify disk name sequence.\\n" msgstr "" " * \\Z4DiskIdxMap=??\\Zn\\n Карта индексов дисков, изменить " "последовательность имен дисков.\\n" -#: menu.sh:831 +#: menu.sh:850 msgid "" " * \\Z4i915.enable_guc=2\\Zn\\n Enable the GuC firmware on Intel graphics " "hardware.(value: 1,2 or 3)\\n" @@ -642,7 +642,7 @@ msgstr "" " * \\Z4i915.enable_guc=2\\Zn\\n Включить прошивку GuC на графическом " "оборудовании Intel.(значение: 1,2 или 3)\\n" -#: menu.sh:832 +#: menu.sh:851 msgid "" " * \\Z4i915.max_vfs=7\\Zn\\n Set the maximum number of virtual functions " "(VFs) that can be created for Intel graphics hardware.\\n" @@ -651,99 +651,99 @@ msgstr "" "виртуальных функций (VFs), которые могут быть созданы для графического " "оборудования Intel.\\n" -#: menu.sh:833 menu.sh:964 +#: menu.sh:852 menu.sh:983 msgid "\\nEnter the parameter name and value you need to add.\\n" msgstr "\\nВведите имя параметра и значение, которое вы хотите добавить.\\n" -#: menu.sh:846 menu.sh:977 +#: menu.sh:865 menu.sh:996 msgid "Invalid parameter name, retry?" msgstr "Недопустимое имя параметра, повторить?" -#: menu.sh:870 +#: menu.sh:889 msgid "No user cmdline to remove" msgstr "Нет пользовательских параметров cmdline для удаления" -#: menu.sh:878 +#: menu.sh:897 msgid "Select cmdline to remove" msgstr "Выберите параметр cmdline для удаления" -#: menu.sh:889 +#: menu.sh:908 msgid "Note: (MAC will not be set to NIC, Only for activation services.)" msgstr "" "Примечание: (MAC не будет установлен на NIC, только для активационных услуг.)" -#: menu.sh:895 +#: menu.sh:914 msgid "Random" msgstr "Случайный" -#: menu.sh:906 +#: menu.sh:925 msgid "Invalid SN/MAC, retry?" msgstr "Недействительный SN/MAC, повторить?" -#: menu.sh:949 +#: menu.sh:968 msgid "Add/edit a synoinfo item" msgstr "Добавить/изменить элемент synoinfo" -#: menu.sh:950 +#: menu.sh:969 msgid "Show/Delete synoinfo items" msgstr "Показать/Удалить элементы synoinfo" -#: menu.sh:952 menu.sh:967 menu.sh:976 menu.sh:1001 menu.sh:1009 +#: menu.sh:971 menu.sh:986 menu.sh:995 menu.sh:1020 menu.sh:1028 msgid "Synoinfo" msgstr "Synoinfo" -#: menu.sh:959 +#: menu.sh:978 msgid "Commonly used synoinfo:\\n" msgstr "Частоиспользуемые synoinfo:\\n" -#: menu.sh:960 +#: menu.sh:979 msgid " * \\Z4maxdisks=??\\Zn\\n Maximum number of disks supported.\\n" msgstr "" " * \\Z4maxdisks=??\\Zn\\n Максимальное количество поддерживаемых дисков." "\\n" -#: menu.sh:961 +#: menu.sh:980 msgid " * \\Z4internalportcfg=0x????\\Zn\\n Internal(sata) disks mask.\\n" msgstr "" " * \\Z4internalportcfg=0x????\\Zn\\n Маска внутренних (sata) дисков.\\n" -#: menu.sh:962 +#: menu.sh:981 msgid " * \\Z4esataportcfg=0x????\\Zn\\n Esata disks mask.\\n" msgstr " * \\Z4esataportcfg=0x????\\Zn\\n Маска дисков Esata.\\n" -#: menu.sh:963 +#: menu.sh:982 msgid " * \\Z4usbportcfg=0x????\\Zn\\n USB disks mask.\\n" msgstr " * \\Z4usbportcfg=0x????\\Zn\\n Маска USB дисков.\\n" -#: menu.sh:1002 +#: menu.sh:1021 msgid "No synoinfo entries to remove" msgstr "Нет элементов synoinfo для удаления" -#: menu.sh:1010 +#: menu.sh:1029 msgid "Select synoinfo entry to remove" msgstr "Выберите элемент synoinfo для удаления" -#: menu.sh:1045 +#: menu.sh:1064 msgid "Downloading old pat to extract synology .pat extractor..." msgstr "Загрузка старого pat для извлечения экстрактора .pat Synology..." -#: menu.sh:1051 menu.sh:1203 +#: menu.sh:1070 menu.sh:1222 msgid "Check internet or cache disk space.\\nError: %d:%d" msgstr "Проверьте интернет или место на диске кэша.\\nОшибка: %d:%d" -#: menu.sh:1091 +#: menu.sh:1110 msgid "Uncompressed tar" msgstr "Несжатый tar" -#: menu.sh:1095 +#: menu.sh:1114 msgid "Compressed tar" msgstr "Сжатый tar" -#: menu.sh:1099 +#: menu.sh:1118 msgid "Encrypted" msgstr "Зашифровано" -#: menu.sh:1103 +#: menu.sh:1122 msgid "" "Could not determine if pat file is encrypted or not, maybe corrupted, try " "again!" @@ -751,29 +751,29 @@ msgstr "" "Не удалось определить, зашифрован ли файл pat или нет, возможно, он " "поврежден, попробуйте снова!" -#: menu.sh:1110 menu.sh:1219 +#: menu.sh:1129 menu.sh:1238 msgid "Disassembling %s: " msgstr "Разборка %s: " -#: menu.sh:1117 +#: menu.sh:1136 msgid "Extractor cached." msgstr "Экстрактор закэширован." -#: menu.sh:1123 menu.sh:1126 +#: menu.sh:1142 menu.sh:1145 msgid "Extracting ..." msgstr "Извлечение ..." -#: menu.sh:1157 +#: menu.sh:1176 msgid "%s cached." msgstr "%s закэшировано." -#: menu.sh:1160 +#: menu.sh:1179 msgid "The cache has been cleared. Please re 'Parse pat' before build." msgstr "" "Кэш был очищен. Пожалуйста, повторно \"проанализируйте pat\" перед " "генерацией." -#: menu.sh:1164 +#: menu.sh:1183 msgid "" "The cache has been cleared. Please re 'Try to recovery a installed DSM " "system' before build." @@ -781,31 +781,31 @@ msgstr "" "Кэш был очищен. Перед генерацией « попробуйте восстановить установленную " "систему DSM»." -#: menu.sh:1168 +#: menu.sh:1187 msgid "The pat url is empty. Please re 'Choose a version' before build." msgstr "" "Пустой PAT URL. Пожалуйста, заново \"выберите версию\" перед генерацией." -#: menu.sh:1173 +#: menu.sh:1192 msgid "Cleaning cache ..." msgstr "Очистка кэша ..." -#: menu.sh:1187 +#: menu.sh:1206 msgid "" "Based on the current network situation, switch to %s mirror to downloading." msgstr "" "В зависимости от текущей сетевой ситуации переключитесь на зеркало %s для " "загрузки." -#: menu.sh:1190 +#: menu.sh:1209 msgid "Downloading %s ..." msgstr "Загрузка %s ..." -#: menu.sh:1209 +#: menu.sh:1228 msgid "Checking hash of %s: " msgstr "Проверка хэша %s: " -#: menu.sh:1212 +#: menu.sh:1231 msgid "" "md5 hash of pat not match, Please reget pat data from the version menu and " "try again!" @@ -813,52 +813,48 @@ msgstr "" "md5 хэш pat не совпадает, пожалуйста, получите данные pat заново из меню " "версий и попробуйте снова!" -#: menu.sh:1215 menu.sh:1231 menu.sh:1241 +#: menu.sh:1234 menu.sh:1250 menu.sh:1260 msgid "OK" msgstr "ОК" -#: menu.sh:1226 +#: menu.sh:1245 msgid "Setting hash: " msgstr "Установка хэша: " -#: menu.sh:1233 +#: menu.sh:1252 msgid "Copying files: " msgstr "Копирование файлов: " -#: menu.sh:1257 -msgid "Addon %s not found!" -msgstr "Дополнение %s не найдено!" - -#: menu.sh:1279 +#: menu.sh:1287 msgid "Cleaning ..." msgstr "Очистка ..." -#: menu.sh:1281 +#: menu.sh:1289 msgid "Ready!" msgstr "Готово!" -#: menu.sh:1305 menu.sh:1321 menu.sh:1325 menu.sh:1342 menu.sh:1347 -#: menu.sh:1366 menu.sh:1378 menu.sh:1430 +#: menu.sh:1313 menu.sh:1329 menu.sh:1333 menu.sh:1350 menu.sh:1355 +#: menu.sh:1374 menu.sh:1386 menu.sh:2101 msgid "Custom DTS" msgstr "Настройка DTS" -#: menu.sh:1307 +#: menu.sh:1315 msgid "Custom dts: " msgstr "Настройка dts: " -#: menu.sh:1308 +#: menu.sh:1316 msgid "Upload dts file" msgstr "Загрузить файл dts" -#: menu.sh:1309 +#: menu.sh:1317 msgid "Delete dts file" msgstr "Удалить файл dts" -#: menu.sh:1310 +#: menu.sh:1318 msgid "Edit dts file" msgstr "Редактирование файлов dts" -#: menu.sh:1320 +#: menu.sh:1328 msgid "" "Or upload the dts file to %s via DUFS, Will be automatically imported when " "building." @@ -866,7 +862,7 @@ msgstr "" "Или загрузите файл dts на %s через DUFS, он будет автоматически импортирован " "при сборке." -#: menu.sh:1326 +#: menu.sh:1334 msgid "" "Currently, only dts format files are supported. Please prepare and click to " "confirm uploading.\\n(saved in /mnt/p3/users/)" @@ -875,182 +871,61 @@ msgstr "" "подготовьте и нажмите, чтобы подтвердить загрузку.\\n(сохранено в /mnt/p3/" "users/)" -#: menu.sh:1343 menu.sh:1379 +#: menu.sh:1351 menu.sh:1387 msgid "Not a valid dts file, please try again!" msgstr "Недействительный файл dts, пожалуйста, попробуйте снова!" -#: menu.sh:1348 +#: menu.sh:1356 msgid "A valid dts file, Automatically import at compile time." msgstr "" "Действительный файл dts, автоматически импортируется во время компиляции." -#: menu.sh:1367 +#: menu.sh:1375 msgid "No dts file to edit. Please upload first!" msgstr "Нет отредактированных dts файлов. Пожалуйста, сначала загрузите!" -#: menu.sh:1403 -msgid "Switch LKM version:" -msgstr "Переключить версию LKM:" - -#: menu.sh:1404 -msgid "HDD sort(hotplug):" -msgstr "Сортировка HDD(hotplug):" - -#: menu.sh:1407 -msgid "Switch direct boot:" -msgstr "Переключить прямую загрузку:" - -#: menu.sh:1409 -msgid "Timeout of get ip in boot:" -msgstr "Тайм-аут получения ip при загрузке:" - -#: menu.sh:1410 -msgid "Timeout of boot wait:" -msgstr "Тайм-аут ожидания загрузки:" - -#: menu.sh:1411 -msgid "kernel switching method:" -msgstr "Метод переключения ядра:" - -#: menu.sh:1413 -msgid "Reboot on kernel panic:" -msgstr "Перезагрузка при панике ядра:" - -#: menu.sh:1415 -msgid "Set static IP" -msgstr "Установить статический IP" - -#: menu.sh:1416 -msgid "Set wireless account" -msgstr "Установить беспроводной аккаунт" - -#: menu.sh:1417 -msgid "Edit user config file manually" -msgstr "Вручную отредактировать файл конфигурации пользователя" - -#: menu.sh:1418 -msgid "Edit grub.cfg file manually" -msgstr "Вручную отредактировать файл grub.cfg" - -#: menu.sh:1419 -msgid "Try to recovery a installed DSM system" -msgstr "Восстановление установленной системы DSM" - -#: menu.sh:1420 -msgid "Show disks information" -msgstr "Показать информацию о дисках" - -#: menu.sh:1422 -msgid "show/modify the current pat data" -msgstr "показать/изменить текущие данные pat" - -#: menu.sh:1424 -msgid "Allow downgrade installation" -msgstr "Разрешить установку более ранней версии" - -#: menu.sh:1425 -msgid "Format disk(s) # Without loader disk" -msgstr "Форматировать диск(и) # Без диска загрузчика" - -#: menu.sh:1426 -msgid "Reset DSM system password" -msgstr "Сбросить пароль системы DSM" - -#: menu.sh:1427 -msgid "Force enable Telnet&SSH of DSM system" -msgstr "Принудительно включить Telnet&SSH системы DSM" - -#: menu.sh:1428 -msgid "Save modifications of '/opt/rr'" -msgstr "Сохранить изменения в '/opt/rr'" - -#: menu.sh:1432 -msgid "Custom patch script # Developer" -msgstr "Пользовательский скрипт патча # Разработчик" - -#: menu.sh:1434 -msgid "Use EMMC as the system disk:" -msgstr "Использовать EMMC в качестве системного диска:" - -#: menu.sh:1436 -msgid "Clone bootloader disk to another disk" -msgstr "Клонировать диск загрузчика на другой диск" - -#: menu.sh:1437 -msgid "Report bugs to the author" -msgstr "Сообщить об ошибках автору" - -#: menu.sh:1438 -msgid "Install development tools" -msgstr "Установить инструменты разработки" - -#: menu.sh:1439 -msgid "Show QR logo:" -msgstr "Показать QR-логотип:" - -#: menu.sh:1440 -msgid "Set global proxy" -msgstr "Установить глобальный прокси" - -#: menu.sh:1441 -msgid "Set github proxy" -msgstr "Установить прокси GitHub" - -#: menu.sh:1442 -msgid "Vigorously miracle" -msgstr "Энергичное чудо" - -#: menu.sh:1445 menu.sh:1469 menu.sh:1481 menu.sh:1501 menu.sh:1524 -#: menu.sh:1548 menu.sh:1553 menu.sh:1565 menu.sh:1574 menu.sh:1596 -#: menu.sh:1697 menu.sh:1704 menu.sh:1722 menu.sh:1735 menu.sh:1738 -#: menu.sh:1751 menu.sh:1755 menu.sh:1756 menu.sh:1761 menu.sh:1765 -#: menu.sh:1780 menu.sh:1782 menu.sh:1805 menu.sh:1809 menu.sh:1816 -#: menu.sh:1822 menu.sh:1840 menu.sh:1842 menu.sh:1846 menu.sh:1868 -#: menu.sh:1871 menu.sh:1875 menu.sh:1878 menu.sh:1893 menu.sh:1906 -#: menu.sh:1938 menu.sh:1942 menu.sh:1948 menu.sh:1954 menu.sh:1960 -#: menu.sh:1991 menu.sh:2004 menu.sh:2008 menu.sh:2018 menu.sh:2023 -#: menu.sh:2030 menu.sh:2032 menu.sh:2044 menu.sh:2055 menu.sh:2077 -#: menu.sh:2088 menu.sh:2105 -msgid "Advanced" -msgstr "Расширенные настройки" - -#: menu.sh:1446 -msgid "Advanced option" -msgstr "Расширенные настройки" - -#: menu.sh:1470 menu.sh:1482 menu.sh:1502 -msgid "Choose a time(seconds)" -msgstr "Выберите опцию" - -#: menu.sh:1512 +#: menu.sh:1450 msgid "Temporary IP: (UI will not refresh)" msgstr "Временный IP: (UI не будет обновляться)" -#: menu.sh:1549 +#: menu.sh:1462 menu.sh:1486 menu.sh:1494 menu.sh:1506 menu.sh:1515 +#: menu.sh:1537 menu.sh:1629 menu.sh:1646 menu.sh:1650 menu.sh:1651 +#: menu.sh:1656 menu.sh:1660 menu.sh:1675 menu.sh:1677 menu.sh:1854 +#: menu.sh:1868 menu.sh:1871 menu.sh:1899 menu.sh:1903 menu.sh:1910 +#: menu.sh:1916 menu.sh:1935 menu.sh:1937 menu.sh:1945 menu.sh:1968 +#: menu.sh:1971 menu.sh:1986 menu.sh:1990 menu.sh:1996 menu.sh:2002 +#: menu.sh:2008 menu.sh:2039 menu.sh:2055 menu.sh:2066 menu.sh:2136 +#: menu.sh:2157 menu.sh:2182 menu.sh:2194 menu.sh:2214 menu.sh:2251 +#: menu.sh:2306 menu.sh:2310 menu.sh:2320 menu.sh:2326 menu.sh:2329 +#: menu.sh:2344 menu.sh:2349 menu.sh:2356 menu.sh:2358 menu.sh:2379 +msgid "Advanced" +msgstr "Расширенные настройки" + +#: menu.sh:1487 msgid "Setting IP ..." msgstr "Сброс ..." -#: menu.sh:1554 +#: menu.sh:1495 msgid "Scanning ..." msgstr "Очистка ..." -#: menu.sh:1557 +#: menu.sh:1498 msgid "Scanned SSIDs:\\n" msgstr "Сканированные SSID:\\n" -#: menu.sh:1575 +#: menu.sh:1516 msgid "Invalid SSID/PSK, retry?" msgstr "Недействительный SN/MAC, повторить?" -#: menu.sh:1597 +#: menu.sh:1538 msgid "Setting ..." msgstr "Сброс ..." -#: menu.sh:1695 +#: menu.sh:1627 msgid "\\nTotal of ports: %s\\n" msgstr "\\nВсего портов: %s\\n" -#: menu.sh:1696 +#: menu.sh:1628 msgid "" "\\nPorts with color \\Z1red\\Zn as DUMMY, color \\Z2\\Zbgreen\\Zn has drive " "connected." @@ -1058,23 +933,11 @@ msgstr "" "\\nПорты цвета \\Z1red\\Zn указаны как DUMMY, цвет \\Z2\\Zbgreen\\Zn " "подключен к диску." -#: menu.sh:1703 -msgid "pat: (editable)" -msgstr "pat: (редактируется)" +#: menu.sh:1647 menu.sh:1987 +msgid "No disk found!" +msgstr "Диски не найдены!" -#: menu.sh:1719 -msgid "" -"This feature will allow you to downgrade the installation by removing the " -"VERSION file from the first partition of all disks.\\n" -msgstr "" -"Эта функция позволит вам понизить версию установки, удалив файл VERSION из " -"первого раздела всех дисков.\\n" - -#: menu.sh:1720 -msgid "Therefore, please insert all disks before continuing.\\n" -msgstr "Пожалуйста, вставьте все диски перед продолжением.\\n" - -#: menu.sh:1721 menu.sh:1762 +#: menu.sh:1657 menu.sh:1853 msgid "" "Warning:\\nThis operation is irreversible. Please backup important data. Do " "you want to continue?" @@ -1083,242 +946,39 @@ msgstr "" "Пожалуйста, подтвердите, что важные данные были сохранены. \\nХотите " "продолжить?" -#: menu.sh:1736 -msgid "Removing ..." -msgstr "Сброс ..." - -#: menu.sh:1737 -msgid "Remove VERSION file for all disks completed." -msgstr "Удаление файла VERSION для всех дисков завершено." - -#: menu.sh:1752 menu.sh:1939 -msgid "No disk found!" -msgstr "Диски не найдены!" - -#: menu.sh:1766 +#: menu.sh:1661 msgid "" "Warning:\\nThe current hds is in raid, do you still want to format them?" msgstr "" "Предупреждение:\\nТекущие hds находятся в рейде, вы все еще хотите их " "отформатировать?" -#: menu.sh:1781 +#: menu.sh:1676 msgid "Formatting ..." msgstr "Форматирование ..." -#: menu.sh:1783 +#: menu.sh:1678 msgid "Formatting is complete." msgstr "Форматирование завершено." -#: menu.sh:1806 -msgid "The installed Syno system not found in the currently inserted disks!" -msgstr "Установленная система Syno не найдена на вставленных дисках!" - -#: menu.sh:1810 -msgid "Choose a user name" -msgstr "Выберите имя пользователя" - -#: menu.sh:1817 -msgid "Type a new password for user '%s'" -msgstr "Введите новый пароль для пользователя '%s'" - -#: menu.sh:1823 -msgid "Invalid password" -msgstr "Неверный пароль" - -#: menu.sh:1841 -msgid "Resetting ..." -msgstr "Сброс ..." - -#: menu.sh:1843 -msgid "Password reset completed." -msgstr "Сброс пароля завершен." - -#: menu.sh:1847 -msgid "Please insert all disks before continuing.\\n" -msgstr "Пожалуйста, вставьте все диски перед продолжением.\\n" - -#: menu.sh:1869 -msgid "Enabling ..." -msgstr "Включение ..." - -#: menu.sh:1870 -msgid "Telnet&SSH is enabled." -msgstr "Telnet&SSH включен." - -#: menu.sh:1870 -msgid "Telnet&SSH is not enabled." -msgstr "Telnet&SSH не включен." - -#: menu.sh:1876 -msgid "" -"Warning:\\nDo not terminate midway, otherwise it may cause damage to the RR. " -"Do you want to continue?" -msgstr "" -"Предупреждение:\\nНе прерывайте процесс, иначе это может повредить RR. " -"Хотите продолжить?" - -#: menu.sh:1879 -msgid "" -"Saving ...\\n(It usually takes 5-10 minutes, please be patient and wait.)" -msgstr "" -"Сохранение ...\\n(Обычно занимает 5-10 минут, пожалуйста, будьте терпеливы и " -"подождите.)" - -#: menu.sh:1894 -msgid "Save is complete." -msgstr "Сохранение завершено." - -#: menu.sh:1902 -msgid "This option is only informative.\\n\\n" -msgstr "Эта опция только информативная.\\n\\n" - -#: menu.sh:1903 -msgid "This program reserves an interface for ramdisk custom patch scripts.\\n" -msgstr "" -"Эта программа резервирует интерфейс для пользовательских скриптов патчей " -"ramdisk.\\n" - -#: menu.sh:1904 -msgid "Call timing: called before ramdisk packaging.\\n" -msgstr "Время вызова: вызывается перед упаковкой ramdisk.\\n" - -#: menu.sh:1905 -msgid "Location: /mnt/p3/scripts/*.sh\\n" -msgstr "Расположение: /mnt/p3/scripts/*.sh\\n" - -#: menu.sh:1943 -msgid "Choose a disk to clone to" -msgstr "Выберите диск для клонирования" - -#: menu.sh:1949 -msgid "No disk selected!" -msgstr "Диск не выбран!" - -#: menu.sh:1955 -msgid "Disk %s size is less than 1GB and cannot be cloned!" -msgstr "Размер диска %s меньше 1 ГБ и не может быть клонирован!" - -#: menu.sh:1959 -msgid "" -"Warning:\\nDisk %s will be formatted and written to the bootloader. Please " -"confirm that important data has been backed up. \\nDo you want to continue?" -msgstr "" -"Предупреждение:\\nДиск %s будет отформатирован и записан в загрузчик. " -"Пожалуйста, подтвердите, что важные данные были сохранены. \\nХотите " -"продолжить?" - -#: menu.sh:1992 -msgid "Cloning ..." -msgstr "Клонирование ..." - -#: menu.sh:1994 -msgid "" -"Bootloader has been cloned to disk %s, please remove the current bootloader " -"disk!\\nReboot?" -msgstr "" -"Загрузчик был клонирован на диск %s, пожалуйста, удалите текущий диск " -"загрузчика!\\nПерезагрузить?" - -#: menu.sh:2005 -msgid "" -"Please via %s to download the logs,\\nAnd go to github to create an issue " -"and upload the logs." -msgstr "" -"Пожалуйста, используйте %s для загрузки логов,\\nи перейдите на github, " -"чтобы создать проблему и загрузить логи." - -#: menu.sh:2009 -msgid "Please go to github to create an issue and upload the logs." -msgstr "" -"Пожалуйста, перейдите на github, чтобы создать проблему и загрузить логи." - -#: menu.sh:2013 -msgid "\\Z1No logs found!\\Zn\\n\\n" -msgstr "\\Z1Логи не найдены!\\Zn\\n\\n" - -#: menu.sh:2014 -msgid "Please do as follows:\\n" -msgstr "Пожалуйста, сделайте следующее:\\n" - -#: menu.sh:2015 -msgid " 1. Add dbgutils in addons and rebuild.\\n" -msgstr " 1. Добавьте dbgutils в дополнения и пересоберите.\\n" - -#: menu.sh:2016 -msgid " 2. Wait 10 minutes after booting.\\n" -msgstr " 2. Подождите 10 минут после загрузки.\\n" - -#: menu.sh:2017 -msgid " 3. Reboot into RR and go to this option.\\n" -msgstr " 3. Перезагрузитесь в RR и перейдите к этому варианту.\\n" - -#: menu.sh:2024 -msgid "" -"This option only installs opkg package management, allowing you to install " -"more tools for use and debugging. Do you want to continue?" -msgstr "" -"Этот вариант устанавливает только управление пакетами opkg, позволяя вам " -"устанавливать больше инструментов для использования и отладки. Хотите " -"продолжить?" - -#: menu.sh:2031 -msgid "opkg installing ..." -msgstr "Установка opkg ..." - -#: menu.sh:2033 -msgid "" -"opkg install is complete. Please reconnect to ssh/web, or execute 'source ~/." -"bashrc'" -msgstr "" -"Установка opkg завершена. Пожалуйста, переподключитесь к ssh/web или " -"выполните 'source ~/.bashrc'" - -#: menu.sh:2045 -msgid "Please enter a proxy server url.(e.g., http://192.168.1.1:7981/)" -msgstr "" -"Пожалуйста, введите URL прокси-сервера (например, http://192.168.1.1:7981/)" - -#: menu.sh:2056 menu.sh:2089 -msgid "Invalid proxy server url, continue?" -msgstr "Недействительный URL прокси-сервера, продолжить?" - -#: menu.sh:2078 -msgid "Please enter a proxy server url.(e.g., https://mirror.ghproxy.com/)" -msgstr "" -"Пожалуйста, введите URL прокси-сервера (например, https://mirror.ghproxy." -"com/)" - -#: menu.sh:2103 -msgid "It is expected that all restrictions on DSM will be lifted,\\n" -msgstr "Ожидается, что все ограничения на DSM будут сняты,\\n" - -#: menu.sh:2104 -msgid "" -"But since upgrading is not supported, I don not want to implement it for the " -"time being.\\n" -msgstr "" -"Но поскольку обновление не поддерживается, я пока не хочу его реализовывать." -"\\n" - -#: menu.sh:2116 menu.sh:2120 menu.sh:2134 menu.sh:2154 menu.sh:2170 -#: menu.sh:2178 menu.sh:2262 menu.sh:2267 menu.sh:2273 +#: menu.sh:1685 menu.sh:1689 menu.sh:1703 menu.sh:1723 menu.sh:1739 +#: menu.sh:1747 menu.sh:1831 menu.sh:1836 menu.sh:1842 msgid "Try recovery DSM" msgstr "Попытка восстановления DSM" -#: menu.sh:2117 +#: menu.sh:1686 msgid "Trying to recovery a installed DSM system ..." msgstr "Предпринимаются попытки восстановить установленную систему DSM." -#: menu.sh:2121 +#: menu.sh:1690 msgid "Unfortunately I couldn't mount the DSM partition!" msgstr "К сожалению, не удалось смонтировать раздел DSM!" -#: menu.sh:2135 +#: menu.sh:1704 msgid "Checking for backup of user's configuration for bootloader ..." msgstr "Проверяется настройка резервного копирования пользователя загрузчика." -#: menu.sh:2155 +#: menu.sh:1724 msgid "" "Found a backup of the user's configuration, but the system is damaged and " "will not be restored. Please reselect model and build." @@ -1327,7 +987,7 @@ msgstr "" "повреждена и не будет восстановлена. Пожалуйста, выберите модель и создайте " "ее заново." -#: menu.sh:2171 +#: menu.sh:1740 msgid "" "Found a backup of the user's configuration, and restored it. Please rebuild " "and boot." @@ -1335,17 +995,17 @@ msgstr "" "Найдена резервная копия конфигурации пользователя и восстановлена. " "Пожалуйста, создайте ее заново и запустите." -#: menu.sh:2179 +#: menu.sh:1748 msgid "Checking for installed DSM system ..." msgstr "Проводится проверка установленных систем DSM." -#: menu.sh:2263 +#: menu.sh:1832 msgid "Found a installed DSM system and restored it. Please rebuild and boot." msgstr "" "Найдите установленную систему DSM и восстановите ее. Создайте ее заново и " "запустите." -#: menu.sh:2268 +#: menu.sh:1837 msgid "" "Found a installed DSM system, but the system is damaged and will not be " "restored. Please reselect model and build." @@ -1353,7 +1013,7 @@ msgstr "" "Найдите установленную систему DSM, но система повреждена и не будет " "восстановлена. Пожалуйста, выберите модель и создайте ее заново." -#: menu.sh:2274 +#: menu.sh:1843 msgid "" "The installed DSM system was not found, or the system is damaged and cannot " "be recovered. Please reselect model and build." @@ -1361,72 +1021,388 @@ msgstr "" "Найдите установленную систему DSM, но система повреждена и не будет " "восстановлена. Пожалуйста, выберите модель и создайте ее заново." -#: menu.sh:2324 +#: menu.sh:1851 +msgid "" +"This feature will allow you to downgrade the installation by removing the " +"VERSION file from the first partition of all disks.\\n" +msgstr "" +"Эта функция позволит вам понизить версию установки, удалив файл VERSION из " +"первого раздела всех дисков.\\n" + +#: menu.sh:1852 +msgid "Therefore, please insert all disks before continuing.\\n" +msgstr "Пожалуйста, вставьте все диски перед продолжением.\\n" + +#: menu.sh:1869 +msgid "Removing ..." +msgstr "Сброс ..." + +#: menu.sh:1870 +msgid "Remove VERSION file for all disks completed." +msgstr "Удаление файла VERSION для всех дисков завершено." + +#: menu.sh:1900 +msgid "The installed Syno system not found in the currently inserted disks!" +msgstr "Установленная система Syno не найдена на вставленных дисках!" + +#: menu.sh:1904 +msgid "Choose a user name" +msgstr "Выберите имя пользователя" + +#: menu.sh:1911 +msgid "Type a new password for user '%s'" +msgstr "Введите новый пароль для пользователя '%s'" + +#: menu.sh:1917 +msgid "Invalid password" +msgstr "Неверный пароль" + +#: menu.sh:1936 +msgid "Resetting ..." +msgstr "Сброс ..." + +#: menu.sh:1938 +msgid "Password reset completed." +msgstr "Сброс пароля завершен." + +#: menu.sh:1946 +msgid "Please insert all disks before continuing.\\n" +msgstr "Пожалуйста, вставьте все диски перед продолжением.\\n" + +#: menu.sh:1969 +msgid "Enabling ..." +msgstr "Включение ..." + +#: menu.sh:1970 +msgid "Telnet&SSH is enabled." +msgstr "Telnet&SSH включен." + +#: menu.sh:1970 +msgid "Telnet&SSH is not enabled." +msgstr "Telnet&SSH не включен." + +#: menu.sh:1991 +msgid "Choose a disk to clone to" +msgstr "Выберите диск для клонирования" + +#: menu.sh:1997 +msgid "No disk selected!" +msgstr "Диск не выбран!" + +#: menu.sh:2003 +msgid "Disk %s size is less than 1GB and cannot be cloned!" +msgstr "Размер диска %s меньше 1 ГБ и не может быть клонирован!" + +#: menu.sh:2007 +msgid "" +"Warning:\\nDisk %s will be formatted and written to the bootloader. Please " +"confirm that important data has been backed up. \\nDo you want to continue?" +msgstr "" +"Предупреждение:\\nДиск %s будет отформатирован и записан в загрузчик. " +"Пожалуйста, подтвердите, что важные данные были сохранены. \\nХотите " +"продолжить?" + +#: menu.sh:2040 +msgid "Cloning ..." +msgstr "Клонирование ..." + +#: menu.sh:2042 +msgid "" +"Bootloader has been cloned to disk %s, please remove the current bootloader " +"disk!\\nReboot?" +msgstr "" +"Загрузчик был клонирован на диск %s, пожалуйста, удалите текущий диск " +"загрузчика!\\nПерезагрузить?" + +#: menu.sh:2056 +msgid "Please enter a proxy server url.(e.g., %s)" +msgstr "Пожалуйста, введите URL прокси-сервера (например, %s)" + +#: menu.sh:2067 +msgid "Invalid proxy server url, continue?" +msgstr "Недействительный URL прокси-сервера, продолжить?" + +#: menu.sh:2095 +msgid "Switch LKM version:" +msgstr "Переключить версию LKM:" + +#: menu.sh:2096 +msgid "HDD sort(hotplug):" +msgstr "Сортировка HDD(hotplug):" + +#: menu.sh:2098 +msgid "show/modify the current pat data" +msgstr "показать/изменить текущие данные pat" + +#: menu.sh:2103 +msgid "Switch direct boot:" +msgstr "Переключить прямую загрузку:" + +#: menu.sh:2105 +msgid "Timeout of get ip in boot:" +msgstr "Тайм-аут получения ip при загрузке:" + +#: menu.sh:2106 +msgid "Timeout of boot wait:" +msgstr "Тайм-аут ожидания загрузки:" + +#: menu.sh:2107 +msgid "kernel switching method:" +msgstr "Метод переключения ядра:" + +#: menu.sh:2109 +msgid "Reboot on kernel panic:" +msgstr "Перезагрузка при панике ядра:" + +#: menu.sh:2111 +msgid "Use EMMC as the system disk:" +msgstr "Использовать EMMC в качестве системного диска:" + +#: menu.sh:2113 +msgid "Custom patch script # Developer" +msgstr "Пользовательский скрипт патча # Разработчик" + +#: menu.sh:2114 +msgid "Edit user config file manually" +msgstr "Вручную отредактировать файл конфигурации пользователя" + +#: menu.sh:2115 +msgid "Edit grub.cfg file manually" +msgstr "Вручную отредактировать файл grub.cfg" + +#: menu.sh:2117 +msgid "Set static IP" +msgstr "Установить статический IP" + +#: menu.sh:2118 +msgid "Set wireless account" +msgstr "Установить беспроводной аккаунт" + +#: menu.sh:2119 +msgid "Show disks information" +msgstr "Показать информацию о дисках" + +#: menu.sh:2120 +msgid "Format disk(s) # Without loader disk" +msgstr "Форматировать диск(и) # Без диска загрузчика" + +#: menu.sh:2121 +msgid "Try to recovery a installed DSM system" +msgstr "Восстановление установленной системы DSM" + +#: menu.sh:2122 +msgid "Allow downgrade installation" +msgstr "Разрешить установку более ранней версии" + +#: menu.sh:2123 +msgid "Reset DSM system password" +msgstr "Сбросить пароль системы DSM" + +#: menu.sh:2124 +msgid "Force enable Telnet&SSH of DSM system" +msgstr "Принудительно включить Telnet&SSH системы DSM" + +#: menu.sh:2125 +msgid "Clone bootloader disk to another disk" +msgstr "Клонировать диск загрузчика на другой диск" + +#: menu.sh:2126 +msgid "Report bugs to the author" +msgstr "Сообщить об ошибках автору" + +#: menu.sh:2127 +msgid "Save modifications of '/opt/rr'" +msgstr "Сохранить изменения в '/opt/rr'" + +#: menu.sh:2128 +msgid "Install development tools" +msgstr "Установить инструменты разработки" + +#: menu.sh:2130 +msgid "Show QR logo:" +msgstr "Показать QR-логотип:" + +#: menu.sh:2131 +msgid "Set global proxy" +msgstr "Установить глобальный прокси" + +#: menu.sh:2132 +msgid "Set github proxy" +msgstr "Установить прокси GitHub" + +#: menu.sh:2133 +msgid "Vigorously miracle" +msgstr "Энергичное чудо" + +#: menu.sh:2137 +msgid "Advanced option" +msgstr "Расширенные настройки" + +#: menu.sh:2156 +msgid "pat: (editable)" +msgstr "pat: (редактируется)" + +#: menu.sh:2183 menu.sh:2195 menu.sh:2215 +msgid "Choose a time(seconds)" +msgstr "Выберите опцию" + +#: menu.sh:2247 +msgid "This option is only informative.\\n\\n" +msgstr "Эта опция только информативная.\\n\\n" + +#: menu.sh:2248 +msgid "This program reserves an interface for ramdisk custom patch scripts.\\n" +msgstr "" +"Эта программа резервирует интерфейс для пользовательских скриптов патчей " +"ramdisk.\\n" + +#: menu.sh:2249 +msgid "Call timing: called before ramdisk packaging.\\n" +msgstr "Время вызова: вызывается перед упаковкой ramdisk.\\n" + +#: menu.sh:2250 +msgid "Location: /mnt/p3/scripts/*.sh\\n" +msgstr "Расположение: /mnt/p3/scripts/*.sh\\n" + +#: menu.sh:2307 +msgid "" +"Please via %s to download the logs,\\nAnd go to github to create an issue " +"and upload the logs." +msgstr "" +"Пожалуйста, используйте %s для загрузки логов,\\nи перейдите на github, " +"чтобы создать проблему и загрузить логи." + +#: menu.sh:2311 +msgid "Please go to github to create an issue and upload the logs." +msgstr "" +"Пожалуйста, перейдите на github, чтобы создать проблему и загрузить логи." + +#: menu.sh:2315 +msgid "\\Z1No logs found!\\Zn\\n\\n" +msgstr "\\Z1Логи не найдены!\\Zn\\n\\n" + +#: menu.sh:2316 +msgid "Please do as follows:\\n" +msgstr "Пожалуйста, сделайте следующее:\\n" + +#: menu.sh:2317 +msgid " 1. Add dbgutils in addons and rebuild.\\n" +msgstr " 1. Добавьте dbgutils в дополнения и пересоберите.\\n" + +#: menu.sh:2318 +msgid " 2. Wait 10 minutes after booting.\\n" +msgstr " 2. Подождите 10 минут после загрузки.\\n" + +#: menu.sh:2319 +msgid " 3. Reboot into RR and go to this option.\\n" +msgstr " 3. Перезагрузитесь в RR и перейдите к этому варианту.\\n" + +#: menu.sh:2327 +msgid "" +"Warning:\\nDo not terminate midway, otherwise it may cause damage to the RR. " +"Do you want to continue?" +msgstr "" +"Предупреждение:\\nНе прерывайте процесс, иначе это может повредить RR. " +"Хотите продолжить?" + +#: menu.sh:2330 +msgid "" +"Saving ...\\n(It usually takes 5-10 minutes, please be patient and wait.)" +msgstr "" +"Сохранение ...\\n(Обычно занимает 5-10 минут, пожалуйста, будьте терпеливы и " +"подождите.)" + +#: menu.sh:2345 +msgid "Save is complete." +msgstr "Сохранение завершено." + +#: menu.sh:2350 +msgid "" +"This option only installs opkg package management, allowing you to install " +"more tools for use and debugging. Do you want to continue?" +msgstr "" +"Этот вариант устанавливает только управление пакетами opkg, позволяя вам " +"устанавливать больше инструментов для использования и отладки. Хотите " +"продолжить?" + +#: menu.sh:2357 +msgid "opkg installing ..." +msgstr "Установка opkg ..." + +#: menu.sh:2359 +msgid "" +"opkg install is complete. Please reconnect to ssh/web, or execute 'source ~/." +"bashrc'" +msgstr "" +"Установка opkg завершена. Пожалуйста, переподключитесь к ssh/web или " +"выполните 'source ~/.bashrc'" + +#: menu.sh:2391 msgid "Alert" msgstr "Предупреждение" -#: menu.sh:2325 +#: menu.sh:2392 msgid "Config changed, would you like to rebuild the loader?" msgstr "Конфигурация изменена, хотите пересобрать загрузчик?" -#: menu.sh:2342 menu.sh:2942 +#: menu.sh:2409 menu.sh:3012 msgid "Choose a language" msgstr "Выберите язык" -#: menu.sh:2357 +#: menu.sh:2424 msgid "Choose a layout" msgstr "Выберите раскладку" -#: menu.sh:2369 +#: menu.sh:2436 msgid "Choice a keymap" msgstr "Выберите карту клавиш" -#: menu.sh:2388 menu.sh:2465 menu.sh:2562 menu.sh:2607 menu.sh:2657 -#: menu.sh:2696 +#: menu.sh:2455 menu.sh:2532 menu.sh:2629 menu.sh:2674 menu.sh:2724 +#: menu.sh:2763 msgid "Update %s" msgstr "Обновление %s" -#: menu.sh:2389 +#: menu.sh:2456 msgid "Checking last version ..." msgstr "Проверка последней версии ..." -#: menu.sh:2405 +#: menu.sh:2472 msgid "Error checking new version.\\nError: TAG is %s" msgstr "Ошибка проверки новой версии.\\nОшибка: TAG is %s" -#: menu.sh:2418 +#: menu.sh:2485 msgid "No new version." msgstr "Новых версий нет." -#: menu.sh:2422 +#: menu.sh:2489 msgid "Actual version is %s\\nForce update?" msgstr "Текущая версия %s\\nПринудительное обновление?" -#: menu.sh:2444 +#: menu.sh:2511 msgid "Downloading ..." msgstr "Загрузка ..." -#: menu.sh:2447 +#: menu.sh:2514 msgid "Error downloading new version.\\nError: %d:%d" msgstr "Ошибка загрузки новой версии.\\nОшибка: %d:%d" -#: menu.sh:2465 menu.sh:2549 menu.sh:2742 menu.sh:2769 +#: menu.sh:2532 menu.sh:2616 menu.sh:2809 menu.sh:2836 msgid "RR" msgstr "RR" -#: menu.sh:2466 menu.sh:2563 menu.sh:2608 menu.sh:2658 menu.sh:2697 +#: menu.sh:2533 menu.sh:2630 menu.sh:2675 menu.sh:2725 menu.sh:2764 msgid "Extracting update file ..." msgstr "Извлекается файл обновления ..." -#: menu.sh:2477 menu.sh:2574 menu.sh:2619 menu.sh:2669 menu.sh:2708 +#: menu.sh:2544 menu.sh:2641 menu.sh:2686 menu.sh:2736 menu.sh:2775 msgid "Error extracting update file." msgstr "Ошибка извлечения файла обновления." -#: menu.sh:2489 +#: menu.sh:2556 msgid "Checksum do not match!" msgstr "Контрольные суммы не совпадают!" -#: menu.sh:2503 +#: menu.sh:2570 msgid "" "The current version does not support upgrading to the latest update.zip. " "Please remake the bootloader disk!" @@ -1434,39 +1410,39 @@ msgstr "" "Текущая версия не поддерживает обновление до последней версии update.zip. " "Пожалуйста, пересоздайте диск загрузчика!" -#: menu.sh:2513 +#: menu.sh:2580 msgid "Installing new files ..." msgstr "Установка новых файлов ..." -#: menu.sh:2549 menu.sh:2592 menu.sh:2642 menu.sh:2681 menu.sh:2720 +#: menu.sh:2616 menu.sh:2659 menu.sh:2709 menu.sh:2748 menu.sh:2787 msgid "%s updated with success!" msgstr "%s успешно обновлен!" -#: menu.sh:2549 +#: menu.sh:2616 msgid "Reboot?" msgstr "Перезагрузка?" -#: menu.sh:2657 menu.sh:2681 menu.sh:2745 menu.sh:2798 menu.sh:2802 +#: menu.sh:2724 menu.sh:2748 menu.sh:2812 menu.sh:2865 menu.sh:2869 msgid "LKMs" msgstr "LKMs" -#: menu.sh:2696 menu.sh:2720 menu.sh:2746 menu.sh:2809 menu.sh:2813 +#: menu.sh:2763 menu.sh:2787 menu.sh:2813 menu.sh:2876 menu.sh:2880 msgid "CKs" msgstr "CKs" -#: menu.sh:2741 menu.sh:2763 +#: menu.sh:2808 menu.sh:2830 msgid "All" msgstr "Все" -#: menu.sh:2747 +#: menu.sh:2814 msgid "Local upload" msgstr "Локальная загрузка" -#: menu.sh:2748 +#: menu.sh:2815 msgid "Pre Release:" msgstr "Предварительный выпуск:" -#: menu.sh:2753 menu.sh:2821 +#: menu.sh:2820 menu.sh:2888 msgid "" "Manually uploading update*.zip,addons*.zip,modules*.zip,rp-lkms*.zip,rr-cks*." "zip to /tmp/ will skip the download." @@ -1474,12 +1450,12 @@ msgstr "" "Ручная загрузка update*.zip, addons*.zip, modules*.zip, rp-lkms*.zip, rr-" "cks*.zip в /tmp/ позволит пропустить скачивание." -#: menu.sh:2776 menu.sh:2787 menu.sh:2798 menu.sh:2809 +#: menu.sh:2843 menu.sh:2854 menu.sh:2865 menu.sh:2876 msgid "No longer supports update %s separately. Please choose to update All/RR" msgstr "" "Отдельное обновление%s больше не поддерживается. Выберите Обновить все/RR" -#: menu.sh:2827 +#: menu.sh:2894 msgid "" "Please keep the attachment name consistent with the attachment name on " "Github.\\n" @@ -1487,123 +1463,114 @@ msgstr "" "Пожалуйста, сохраните имя вложения в соответствии с именем вложения на " "Github.\\n" -#: menu.sh:2828 +#: menu.sh:2895 msgid "Upload update*.zip will update RR.\\n" msgstr "Загрузка update*.zip обновит RR.\\n" -#: menu.sh:2829 +#: menu.sh:2896 msgid "Upload addons*.zip will update Addons.\\n" msgstr "Загрузка addons*.zip обновит дополнения.\\n" -#: menu.sh:2830 +#: menu.sh:2897 msgid "Upload modules*.zip will update Modules.\\n" msgstr "Загрузка modules*.zip обновит модули.\\n" -#: menu.sh:2831 +#: menu.sh:2898 msgid "Upload rp-lkms*.zip will update LKMs.\\n" msgstr "Загрузка rp-lkms*.zip обновит LKMs.\\n" -#: menu.sh:2832 +#: menu.sh:2899 msgid "Upload rr-cks*.zip will update CKs.\\n" msgstr "Загрузка rr-cks*.zip обновит CKs.\\n" -#: menu.sh:2888 +#: menu.sh:2955 msgid "This person is very lazy and hasn't written anything." msgstr "Этот человек очень ленив и ничего не написал." -#: menu.sh:2915 +#: menu.sh:2985 msgid "Choose a model" msgstr "Выберите модель" -#: menu.sh:2917 +#: menu.sh:2987 msgid "Choose a version" msgstr "Выберите версию" -#: menu.sh:2919 +#: menu.sh:2989 msgid "Parse pat" msgstr "Разобрать pat" -#: menu.sh:2926 +#: menu.sh:2996 msgid "Kernel:" msgstr "Ядро:" -#: menu.sh:2928 +#: menu.sh:2998 msgid "Addons menu" msgstr "Меню дополнений" -#: menu.sh:2929 +#: menu.sh:2999 msgid "Modules menu" msgstr "Меню модулей" -#: menu.sh:2930 +#: menu.sh:3000 msgid "Cmdline menu" msgstr "Настройка Cmdline" -#: menu.sh:2931 +#: menu.sh:3001 msgid "Synoinfo menu" msgstr "Настройка Synoinfo" -#: menu.sh:2933 +#: menu.sh:3003 msgid "Advanced menu" msgstr "Расширенные настройки" -#: menu.sh:2936 +#: menu.sh:3006 msgid "Build the loader" msgstr "Сборка загрузчика" -#: menu.sh:2940 +#: menu.sh:3010 msgid "Boot the loader" msgstr "Загрузить загрузчик" -#: menu.sh:2943 +#: menu.sh:3013 msgid "Choose a keymap" msgstr "Выбрать карту клавиш" -#: menu.sh:2945 +#: menu.sh:3015 msgid "Clean disk cache" msgstr "Очистить кэш диска" -#: menu.sh:2947 +#: menu.sh:3017 msgid "Update menu" msgstr "Меню обновлений" -#: menu.sh:2948 +#: menu.sh:3018 msgid "Notepad" msgstr "Блокнот" -#: menu.sh:2970 +#: menu.sh:3040 msgid "Change ..." msgstr "Изменять ..." -#: menu.sh:3039 +#: menu.sh:3109 msgid "Choose a action" msgstr "Выберите действие" -#: menu.sh:3040 +#: menu.sh:3110 msgid "Poweroff" msgstr "Выключение" -#: menu.sh:3041 +#: menu.sh:3111 msgid "Reboot" msgstr "Перезагрузка" -#: menu.sh:3042 +#: menu.sh:3112 msgid "Reboot to RR" msgstr "Перезагрузка в RR" -#: menu.sh:3043 +#: menu.sh:3113 msgid "Back to shell" msgstr "Вернуться в shell" -#: menu.sh:3069 +#: menu.sh:3139 msgid "Call \\033[1;32mmenu.sh\\033[0m to return to menu" msgstr "Вызовите \\033[1;32mmenu.sh\\033[0m для возврата в меню" - -#~ msgid "Found a installation:\\nModel: %s\\nProductversion: %s" -#~ msgstr "Найдена установка:\\nМодель: %s\\nВерсия продукта: %s" - -#~ msgid "\\nSerial: %s" -#~ msgstr "\\nСерийный номер: %s" - -#~ msgid "Waiting IP.(For reference only)" -#~ msgstr "Ожидание IP.(Только для справки)" diff --git a/files/initrd/opt/rr/lang/zh_CN/LC_MESSAGES/rr.mo b/files/initrd/opt/rr/lang/zh_CN/LC_MESSAGES/rr.mo index 49917b42b6ac2d22efd09053e90f5ed0205e3e20..8d8c2b1927c5ba0dbcd22ddf06b882f5dea54b6b 100644 GIT binary patch delta 7218 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\n" "Language-Team: Chinese (simplified) \n" "Language: zh_CN\n" @@ -21,7 +21,7 @@ msgstr "" msgid "Loader is not init!" msgstr "引导未初始化!" -#: boot.sh:10 init.sh:111 +#: boot.sh:10 init.sh:116 msgid "Loader is not configured!" msgstr "引导未配置!" @@ -33,7 +33,7 @@ msgstr "Welcome to %s" msgid "DSM zImage changed" msgstr "DSM zImage 已更改" -#: boot.sh:36 menu.sh:1269 +#: boot.sh:36 menu.sh:1277 msgid "" "zImage not patched,\\nPlease upgrade the bootloader version and try again." "\\nPatch error:\\n" @@ -43,7 +43,7 @@ msgstr "zImage 打补丁失败,\\n请升级引导版本并重试.\\nPatch 错误 msgid "DSM Ramdisk changed" msgstr "DSM Ramdisk 已更改" -#: boot.sh:47 menu.sh:1275 +#: boot.sh:47 menu.sh:1283 msgid "" "Ramdisk not patched,\\nPlease upgrade the bootloader version and try again." "\\nPatch error:\\n" @@ -89,67 +89,67 @@ msgid "" "for the bootloader disk." msgstr "除引导盘外, 请至少插入一块 sata/scsi 磁盘进行系统安装." -#: boot.sh:169 +#: boot.sh:171 msgid "Cmdline:\\n" msgstr "Cmdline:\\n" -#: boot.sh:175 +#: boot.sh:177 msgid "Reboot to boot directly in DSM" msgstr "重启并直接进入 DSM 引导" -#: boot.sh:181 init.sh:124 +#: boot.sh:183 init.sh:129 msgid "Detected %s network cards." msgstr "检测到 %s 个网卡." -#: boot.sh:182 init.sh:125 +#: boot.sh:184 init.sh:130 msgid "Checking Connect." msgstr "检查连接." -#: boot.sh:194 init.sh:135 +#: boot.sh:196 init.sh:140 msgid "connected." msgstr "已连接." -#: boot.sh:201 init.sh:142 +#: boot.sh:203 init.sh:147 msgid "Waiting IP." msgstr "获取 IP." -#: boot.sh:208 init.sh:149 +#: boot.sh:210 init.sh:154 msgid "DOWN" msgstr "关闭" -#: boot.sh:212 init.sh:153 +#: boot.sh:214 init.sh:158 msgid "NOT CONNECTED" msgstr "未连接" -#: boot.sh:216 init.sh:157 +#: boot.sh:218 init.sh:162 msgid "TIMEOUT (Please check the IP on the router.)" msgstr "超时 (请检查路由器上的IP.)" -#: boot.sh:222 +#: boot.sh:224 msgid "Access \\033[1;34mhttp://%s:5000\\033[0m to connect the DSM via web." msgstr "在浏览器中访问 \\033[1;34mhttp://%s:5000\\033[0m 链接 DSM." -#: boot.sh:234 +#: boot.sh:236 msgid "%2ds (Changing access(ssh/web) status will interrupt boot)" msgstr "%2ds ((ssh/web)连接状态改变将中断启动)" -#: boot.sh:238 +#: boot.sh:240 msgid "access(ssh/web) status has changed and booting is interrupted." msgstr "(ssh/web)连接状态已改变, 启动被中断." -#: boot.sh:248 +#: boot.sh:250 msgid "Loading DSM kernel ..." msgstr "加载 DSM 内核 ..." -#: boot.sh:264 +#: boot.sh:266 msgid "Warning, running kexec with --noefi param, strange things will happen!!" msgstr "警告, 使用'--noefi'参数运行'kexec', 可能有不好的事情发生!!" -#: boot.sh:269 +#: boot.sh:271 msgid "Booting ..." msgstr "引导中 ..." -#: boot.sh:271 +#: boot.sh:273 msgid "" "[This interface will not be operational. Please wait a few minutes.\\nFind " "DSM via http://find.synology.com/ or Synology Assistant and connect.]" @@ -161,343 +161,343 @@ msgstr "" msgid "Network devices not found!" msgstr "未找到网卡!" -#: init.sh:88 +#: init.sh:92 msgid "Loader disk neither USB or SATA/SCSI/NVME/MMC DoM" msgstr "引导磁盘仅支持 USB 或者 SATA/SCSI/NVME/MMC DoM" -#: init.sh:96 +#: init.sh:101 msgid "Loader disk:" msgstr "引导盘:" -#: init.sh:104 +#: init.sh:109 msgid "Loading keymap" msgstr "加载键盘映射" -#: init.sh:114 +#: init.sh:119 msgid "User requested edit settings." msgstr "用户触发编辑设置." -#: init.sh:163 +#: init.sh:168 msgid "" "Access \\033[1;34mhttp://%s:7681\\033[0m to configure the loader via web " "terminal." msgstr "" "在浏览器中访问 \\033[1;34mhttp://%s:7681\\033[0m 进入 WEB 终端进行配置." -#: init.sh:173 +#: init.sh:178 msgid "Call \\033[1;32mmenu.sh\\033[0m to configure loader" msgstr "执行 \\033[1;32mmenu.sh\\033[0m 进入设置菜单" -#: init.sh:175 +#: init.sh:180 msgid "User config is on" msgstr "用户配置文件位于" -#: init.sh:176 +#: init.sh:181 msgid "TTYD: \\033[1;34mhttp://rr:7681/\\033[0m" msgstr "TTYD: \\033[1;34mhttp://rr:7681/\\033[0m" -#: init.sh:177 +#: init.sh:182 msgid "DUFS: \\033[1;34mhttp://rr:7304/\\033[0m" msgstr "DUFS: \\033[1;34mhttp://rr:7304/\\033[0m" -#: init.sh:178 +#: init.sh:183 msgid "TTYD&DUFS: \\033[1;34mhttp://rr:80/\\033[0m" msgstr "TTYD&DUFS: \\033[1;34mhttp://rr:80/\\033[0m" -#: init.sh:180 +#: init.sh:185 msgid "Default SSH \\033[1;31mroot\\033[0m password is" msgstr "默认 SSH 的 \\033[1;31mroot\\033[0m 密码为" -#: init.sh:197 +#: init.sh:202 msgid "" "You have less than 4GB of RAM, if errors occur in loader creation, please " "increase the amount of memory." msgstr "您的 RAM 不足 4GB, 如果在创建引导时出现错误, 请增加内存." -#: menu.sh:102 menu.sh:136 menu.sh:179 +#: menu.sh:106 menu.sh:140 menu.sh:183 msgid "Model" msgstr "型号" -#: menu.sh:103 +#: menu.sh:107 msgid "Reading models" msgstr "读取型号" -#: menu.sh:113 +#: menu.sh:117 msgid "Compatibility judgment" msgstr "兼容性判断" -#: menu.sh:134 +#: menu.sh:138 msgid "Disable flags restriction" msgstr "禁用标志限制" -#: menu.sh:135 +#: menu.sh:139 msgid "Show all models" msgstr "显示所有型号" -#: menu.sh:137 +#: menu.sh:141 msgid "Choose the model" msgstr "选择型号" -#: menu.sh:230 menu.sh:241 menu.sh:247 menu.sh:258 menu.sh:295 menu.sh:315 -#: menu.sh:365 +#: menu.sh:234 menu.sh:242 menu.sh:254 menu.sh:272 menu.sh:307 menu.sh:332 +#: menu.sh:384 msgid "Product Version" msgstr "版本" -#: menu.sh:231 +#: menu.sh:235 msgid "Choose a product version" msgstr "选择版本" -#: menu.sh:242 +#: menu.sh:243 msgid "" "The current version has been set to %s. Do you want to reset the version?" msgstr "当前版本已设置为 %s. 是否要重置版本?" -#: menu.sh:248 +#: menu.sh:255 msgid "" "This version does not support UEFI startup, Please select another version or " "switch the startup mode." msgstr "该版本不支持 UEFI 启动, 请选择其他版本或者切换启动模式." -#: menu.sh:259 +#: menu.sh:273 msgid "Get pat data ..." msgstr "获取 pat 数据 ..." -#: menu.sh:285 menu.sh:1033 menu.sh:1181 +#: menu.sh:297 menu.sh:1052 menu.sh:1200 msgid "Network error, please check the network connection and try again." msgstr "网络错误, 请检查网络连接并重试." -#: menu.sh:286 +#: menu.sh:298 msgid "Or use 'Parse pat' function for installation." msgstr "或者使用 '解析 Pat' 功能进行安装." -#: menu.sh:288 +#: menu.sh:300 msgid "" "Failed to get pat data,\\nPlease manually fill in the URL and md5sum of the " "corresponding version of pat.\\nOr click 'Retry'." msgstr "" "获取 pat 数据失败,\\n请手动填写相应版本 pat 的 URL 和 MD5.\\n或者点击 '重试'." -#: menu.sh:293 +#: menu.sh:305 msgid "" "Successfully to get pat data, Please confirm.\\nOr modify the URL and md5sum " "to you need." msgstr "获取 pat 数据成功,\\n请确认.\\n或者按需修改 URL 和 MD5." -#: menu.sh:296 +#: menu.sh:308 msgid "Retry" msgstr "重试" -#: menu.sh:316 menu.sh:418 +#: menu.sh:333 menu.sh:437 msgid "Reconfiguring Synoinfo, Addons and Modules" msgstr "重新配置 Syninfo, 插件和模块" -#: menu.sh:350 +#: menu.sh:368 msgid "" "You have selected the %s and %s.\\n'Parse Pat' will overwrite the previous " "selection.\\nDo you want to continue?" msgstr "你已经选择了 %s 和 %s.\\n‘解析 Pat' 将覆盖之前的选择.\\n是否继续?" -#: menu.sh:351 +#: menu.sh:369 msgid "Parse Pat" msgstr "解析 Pat" -#: menu.sh:359 +#: menu.sh:378 msgid "No pat file found in /tmp/pats/ folder!\\n" msgstr "在 /tmp/pats/ 文件夹中找不到 pat 文件!\\n" -#: menu.sh:360 +#: menu.sh:379 msgid "" "Please upload the pat file to /tmp/pats/ folder via DUFS and re-enter this " "option.\\n" msgstr "" "请通过 DUFS 将 pat 文件上传到 /tmp/pats/ 文件夹,然后重新输入此选项.\\n" -#: menu.sh:361 menu.sh:371 menu.sh:2741 menu.sh:2742 menu.sh:2743 menu.sh:2744 -#: menu.sh:2745 menu.sh:2746 menu.sh:2752 menu.sh:2775 menu.sh:2786 -#: menu.sh:2797 menu.sh:2808 menu.sh:2822 menu.sh:2833 menu.sh:2850 -#: menu.sh:2869 +#: menu.sh:380 menu.sh:390 menu.sh:2808 menu.sh:2809 menu.sh:2810 menu.sh:2811 +#: menu.sh:2812 menu.sh:2813 menu.sh:2819 menu.sh:2842 menu.sh:2853 +#: menu.sh:2864 menu.sh:2875 menu.sh:2889 menu.sh:2900 menu.sh:2917 +#: menu.sh:2936 msgid "Update" msgstr "更新" -#: menu.sh:366 +#: menu.sh:385 msgid "Choose a pat file" msgstr "选择一个 pat 文件" -#: menu.sh:372 menu.sh:384 menu.sh:1138 +#: menu.sh:391 menu.sh:403 menu.sh:1157 msgid "pat Invalid, try again!" msgstr "无效的 pat, 请重试!" -#: menu.sh:377 +#: menu.sh:396 msgid "Parse %s ..." msgstr "解析 %s ..." -#: menu.sh:402 +#: menu.sh:421 msgid "Currently, %s is not supported." msgstr "目前,不支持 %s." -#: menu.sh:414 +#: menu.sh:433 msgid "Currently, %s of %s is not supported." msgstr "目前,不支持 %s-%s." -#: menu.sh:475 menu.sh:1285 menu.sh:2951 menu.sh:2969 +#: menu.sh:494 menu.sh:1293 menu.sh:3021 menu.sh:3039 msgid "Main menu" msgstr "主菜单" -#: menu.sh:476 menu.sh:1286 +#: menu.sh:495 menu.sh:1294 msgid "Making ..." msgstr "编译中 ..." -#: menu.sh:478 menu.sh:1288 +#: menu.sh:497 menu.sh:1296 msgid "Error" msgstr "错误" -#: menu.sh:511 menu.sh:528 menu.sh:533 menu.sh:539 menu.sh:550 menu.sh:558 -#: menu.sh:581 menu.sh:588 menu.sh:592 menu.sh:606 menu.sh:610 menu.sh:618 -#: menu.sh:621 menu.sh:2562 menu.sh:2592 menu.sh:2743 menu.sh:2776 menu.sh:2780 +#: menu.sh:530 menu.sh:547 menu.sh:552 menu.sh:558 menu.sh:569 menu.sh:577 +#: menu.sh:600 menu.sh:607 menu.sh:611 menu.sh:625 menu.sh:629 menu.sh:637 +#: menu.sh:640 menu.sh:2629 menu.sh:2659 menu.sh:2810 menu.sh:2843 menu.sh:2847 msgid "Addons" msgstr "插件" -#: menu.sh:512 menu.sh:642 menu.sh:818 menu.sh:953 menu.sh:1306 menu.sh:2952 +#: menu.sh:531 menu.sh:661 menu.sh:837 menu.sh:972 menu.sh:1314 menu.sh:3022 msgid "Choose a option" msgstr "选择一个选项" -#: menu.sh:513 +#: menu.sh:532 msgid "Add an addon" msgstr "添加插件" -#: menu.sh:514 +#: menu.sh:533 msgid "Delete addons" msgstr "删除插件" -#: menu.sh:515 +#: menu.sh:534 msgid "Show all addons" msgstr "显示所有插件" -#: menu.sh:516 +#: menu.sh:535 msgid "Upload a external addon" msgstr "上传外部插件" -#: menu.sh:517 menu.sh:649 menu.sh:816 menu.sh:951 menu.sh:1311 menu.sh:1443 -#: menu.sh:2749 menu.sh:2949 menu.sh:3044 +#: menu.sh:536 menu.sh:668 menu.sh:835 menu.sh:970 menu.sh:1319 menu.sh:2134 +#: menu.sh:2816 menu.sh:3019 menu.sh:3114 msgid "Exit" msgstr "退出" -#: menu.sh:529 +#: menu.sh:548 msgid "No available addons to add" msgstr "没有可用的插件可添加" -#: menu.sh:534 +#: menu.sh:553 msgid "Select an addon" msgstr "选择插件" -#: menu.sh:540 +#: menu.sh:559 msgid "Type a optional params to addon" msgstr "输入插件的加载参数" -#: menu.sh:551 +#: menu.sh:570 msgid "No user addons to remove" msgstr "没有要删除的用户插件" -#: menu.sh:559 +#: menu.sh:578 msgid "Select addon to remove" msgstr "选择要删除的插件" -#: menu.sh:572 +#: menu.sh:591 msgid "" "Name with color \"\\Z4blue\\Zn\" have been added, with color \"black\" are " "not added.\\n\\n" msgstr "名称颜色为\"\\Z4蓝色\\Zn\"的为已添加, 颜色为\"黑色\"的为未添加.\\n\\n" -#: menu.sh:587 menu.sh:721 menu.sh:1319 menu.sh:2820 +#: menu.sh:606 menu.sh:740 menu.sh:1327 menu.sh:2887 msgid "" "This feature is only available when accessed via ssh (Requires a terminal " "that supports ZModem protocol).\\n" msgstr "此功能仅在通过 ssh 访问时可用(需要支持 ZModem 协议的终端).\\n" -#: menu.sh:593 +#: menu.sh:612 msgid "Please upload the *.addons file." msgstr "请上传 *.addons 文件." -#: menu.sh:607 menu.sh:756 menu.sh:2851 menu.sh:2870 +#: menu.sh:626 menu.sh:775 menu.sh:2918 menu.sh:2937 msgid "Not a valid file, please try again!" msgstr "不是有效的文件, 请重试!" -#: menu.sh:611 +#: menu.sh:630 msgid "The addon already exists. Do you want to overwrite it?" msgstr "该插件已存在, 是否覆盖?" -#: menu.sh:619 +#: menu.sh:638 msgid "Addon '%s' added to loader, Please enable it in 'Add an addon' menu." msgstr "插件 '%s' 已添加到引导中, 请在'添加插件' 菜单中开启." -#: menu.sh:622 +#: menu.sh:641 msgid "File format not recognized!" msgstr "文件格式无法识别!" -#: menu.sh:641 menu.sh:655 menu.sh:668 menu.sh:705 menu.sh:722 menu.sh:732 -#: menu.sh:735 menu.sh:751 menu.sh:755 menu.sh:769 menu.sh:775 menu.sh:2607 -#: menu.sh:2642 menu.sh:2744 menu.sh:2787 menu.sh:2791 +#: menu.sh:660 menu.sh:674 menu.sh:687 menu.sh:724 menu.sh:741 menu.sh:751 +#: menu.sh:754 menu.sh:770 menu.sh:774 menu.sh:788 menu.sh:794 menu.sh:2674 +#: menu.sh:2709 menu.sh:2811 menu.sh:2854 menu.sh:2858 msgid "Modules" msgstr "模块" -#: menu.sh:643 +#: menu.sh:662 msgid "Show/Select modules" msgstr "显示/选择模块" -#: menu.sh:644 +#: menu.sh:663 msgid "Select loaded modules" msgstr "选择已识别的模块" -#: menu.sh:645 +#: menu.sh:664 msgid "Upload a external module" msgstr "上传一个外部模块" -#: menu.sh:646 +#: menu.sh:665 msgid "Deselect i915 with dependencies" msgstr "取消选择 i915 及其依赖模块" -#: menu.sh:647 +#: menu.sh:666 msgid "Priority use of official drivers:" msgstr "优先使用官方模块:" -#: menu.sh:648 +#: menu.sh:667 msgid "Edit modules that need to be copied to DSM" msgstr "编辑需要拷贝到 DSM 的模块" -#: menu.sh:656 +#: menu.sh:675 msgid "Reading modules ..." msgstr "读取模块中 ..." -#: menu.sh:669 +#: menu.sh:688 msgid "Select all" msgstr "选择全部" -#: menu.sh:670 +#: menu.sh:689 msgid "Deselect all" msgstr "取消全选" -#: menu.sh:671 +#: menu.sh:690 msgid "Select modules to include" msgstr "选择要加载的模块" -#: menu.sh:706 +#: menu.sh:725 msgid "Selecting loaded modules" msgstr "选择已识别的模块" -#: menu.sh:727 +#: menu.sh:746 msgid "" "This function is experimental and dangerous. If you don't know much, please " "exit.\\n" msgstr "这个功能是实验性的, 很危险. 如果你知道的不多, 请退出. \\n" -#: menu.sh:728 +#: menu.sh:747 msgid "" "The imported .ko of this function will be implanted into the corresponding " "arch's modules package, which will affect all models of the arch.\\n" msgstr "" "该功能导入 .ko 将被植入相应的架构的模块包中, 这将影响该架构的所有型号.\\n" -#: menu.sh:729 +#: menu.sh:748 msgid "" "This program will not determine the availability of imported modules or even " "make type judgments, as please double check if it is correct.\\n" @@ -505,7 +505,7 @@ msgstr "" "该程序不会判断导入的驱动模块的可用性, 甚至不会做类型判断, 因从请你再三确认是" "否正确.\\n" -#: menu.sh:730 +#: menu.sh:749 msgid "" "If you want to remove it, please go to the \"Update Menu\" -> \"Update " "modules\" to forcibly update the modules. All imports will be reset.\\n" @@ -513,62 +513,62 @@ msgstr "" "如果您想删除它, 请转到 \"更新\"->\"更新模块\" 强制更新模块, 所有导入都将被重" "置.\\n" -#: menu.sh:731 +#: menu.sh:750 msgid "Do you want to continue?" msgstr "是否继续?" -#: menu.sh:736 +#: menu.sh:755 msgid "Please upload the *.ko file." msgstr "请上传 *.ko 文件." -#: menu.sh:752 +#: menu.sh:771 msgid "Module '%s' added to %s-%s" msgstr "模块 '%s' 已添加到 %s-%s" -#: menu.sh:770 +#: menu.sh:789 msgid "No i915 with dependencies module to deselect." msgstr "没有 i915 及其依赖模块取消选择." -#: menu.sh:776 +#: menu.sh:795 msgid "Module %s deselected.\\n" msgstr "模块 %s 已取消选择.\\n" -#: menu.sh:790 menu.sh:1373 menu.sh:2282 menu.sh:2289 menu.sh:2312 +#: menu.sh:809 menu.sh:1381 menu.sh:1408 menu.sh:1415 menu.sh:1438 msgid "Edit with caution" msgstr "请谨慎编辑" -#: menu.sh:810 +#: menu.sh:829 msgid "Add/Edit a cmdline item" msgstr "添加/编辑 cmdline 参数" -#: menu.sh:811 +#: menu.sh:830 msgid "Show/Delete cmdline items" msgstr "显示/删除 cmdline 参数" -#: menu.sh:813 +#: menu.sh:832 msgid "Define SN/MAC" msgstr "自定义 SN/MAC" -#: menu.sh:815 +#: menu.sh:834 msgid "Show model inherent cmdline" msgstr "显示型号默认的 cmdline 参数" -#: menu.sh:817 menu.sh:836 menu.sh:845 menu.sh:869 menu.sh:877 menu.sh:894 -#: menu.sh:905 menu.sh:937 +#: menu.sh:836 menu.sh:855 menu.sh:864 menu.sh:888 menu.sh:896 menu.sh:913 +#: menu.sh:924 menu.sh:956 msgid "Cmdline" msgstr "Cmdline" -#: menu.sh:824 +#: menu.sh:843 msgid "Commonly used cmdlines:\\n" msgstr "常用 cmdlines:\\n" -#: menu.sh:825 +#: menu.sh:844 msgid "" " * \\Z4disable_mtrr_trim=\\Zn\\n disables kernel trim any uncacheable " "memory out.\\n" msgstr " * \\Z4disable_mtrr_trim=\\Zn\\n 禁用内核修剪任何不可缓存的内存.\\n" -#: menu.sh:826 +#: menu.sh:845 msgid "" " * \\Z4intel_idle.max_cstate=1\\Zn\\n Set the maximum C-state depth " "allowed by the intel_idle driver.\\n" @@ -576,26 +576,26 @@ msgstr "" " * \\Z4intel_idle.max_cstate=1\\Zn\\n 设置 intel_idle 驱动允许使用的最大 " "C-state 深度.\\n" -#: menu.sh:827 +#: menu.sh:846 msgid "" " * \\Z4pcie_port_pm=off\\Zn\\n Turn off the power management of the PCIe " "port.\\n" msgstr " * \\Z4pcie_port_pm=off\\Zn\\n 关闭 PCIe 端口的电源管理.\\n" -#: menu.sh:828 +#: menu.sh:847 msgid " * \\Z4libata.force=noncq\\Zn\\n Disable NCQ for all SATA ports.\\n" msgstr " * \\Z4libata.force=noncq\\Zn\\n 禁用硬盘的 NCQ 功能.\\n" -#: menu.sh:829 +#: menu.sh:848 msgid " * \\Z4SataPortMap=??\\Zn\\n Sata Port Map.\\n" msgstr " * \\Z4SataPortMap=??\\Zn\\n Sata Port Map.\\n" -#: menu.sh:830 +#: menu.sh:849 msgid "" " * \\Z4DiskIdxMap=??\\Zn\\n Disk Index Map, Modify disk name sequence.\\n" msgstr " * \\Z4DiskIdxMap=??\\Zn\\n Disk Index Map, 修改磁盘名称顺序.\\n" -#: menu.sh:831 +#: menu.sh:850 msgid "" " * \\Z4i915.enable_guc=2\\Zn\\n Enable the GuC firmware on Intel graphics " "hardware.(value: 1,2 or 3)\\n" @@ -603,212 +603,208 @@ msgstr "" " * \\Z4i915.enable_guc=2\\Zn\\n 启用 Intel 核显上的 GuC 固件.(值: 1,2 or " "3)\\n" -#: menu.sh:832 +#: menu.sh:851 msgid "" " * \\Z4i915.max_vfs=7\\Zn\\n Set the maximum number of virtual functions " "(VFs) that can be created for Intel graphics hardware.\\n" msgstr "" " * \\Z4i915.max_vfs=7\\Zn\\n 设置可创建虚拟核显 (VFs) 的最大数量.\\n" -#: menu.sh:833 menu.sh:964 +#: menu.sh:852 menu.sh:983 msgid "\\nEnter the parameter name and value you need to add.\\n" msgstr "\\n输入需要添加的参数名称和值.\\n" -#: menu.sh:846 menu.sh:977 +#: menu.sh:865 menu.sh:996 msgid "Invalid parameter name, retry?" msgstr "无效参数名称, 重试?" -#: menu.sh:870 +#: menu.sh:889 msgid "No user cmdline to remove" msgstr "没有用户参数被删除" -#: menu.sh:878 +#: menu.sh:897 msgid "Select cmdline to remove" msgstr "选择要删除的参数" -#: menu.sh:889 +#: menu.sh:908 msgid "Note: (MAC will not be set to NIC, Only for activation services.)" msgstr "注意: (MAC 不会设置到 NIC, 仅用于激活服务.)" -#: menu.sh:895 +#: menu.sh:914 msgid "Random" msgstr "随机" -#: menu.sh:906 +#: menu.sh:925 msgid "Invalid SN/MAC, retry?" msgstr "无效 SN/MAC, 重试?" -#: menu.sh:949 +#: menu.sh:968 msgid "Add/edit a synoinfo item" msgstr "添加/编辑 Synoinfo 参数" -#: menu.sh:950 +#: menu.sh:969 msgid "Show/Delete synoinfo items" msgstr "显示/删除 Synoinfo 参数" -#: menu.sh:952 menu.sh:967 menu.sh:976 menu.sh:1001 menu.sh:1009 +#: menu.sh:971 menu.sh:986 menu.sh:995 menu.sh:1020 menu.sh:1028 msgid "Synoinfo" msgstr "Synoinfo" -#: menu.sh:959 +#: menu.sh:978 msgid "Commonly used synoinfo:\\n" msgstr "常用 synoinfo:\\n" -#: menu.sh:960 +#: menu.sh:979 msgid " * \\Z4maxdisks=??\\Zn\\n Maximum number of disks supported.\\n" msgstr " * \\Z4maxdisks=??\\Zn\\n 最大硬盘数.\\n" -#: menu.sh:961 +#: menu.sh:980 msgid " * \\Z4internalportcfg=0x????\\Zn\\n Internal(sata) disks mask.\\n" msgstr " * \\Z4internalportcfg=0x????\\Zn\\n Internal(sata) 磁盘掩码.\\n" -#: menu.sh:962 +#: menu.sh:981 msgid " * \\Z4esataportcfg=0x????\\Zn\\n Esata disks mask.\\n" msgstr " * \\Z4esataportcfg=0x????\\Zn\\n Esata 磁盘掩码.\\n" -#: menu.sh:963 +#: menu.sh:982 msgid " * \\Z4usbportcfg=0x????\\Zn\\n USB disks mask.\\n" msgstr " * \\Z4usbportcfg=0x????\\Zn\\n USB 磁盘掩码.\\n" -#: menu.sh:1002 +#: menu.sh:1021 msgid "No synoinfo entries to remove" msgstr "没有 Synoinfo 参数被删除" -#: menu.sh:1010 +#: menu.sh:1029 msgid "Select synoinfo entry to remove" msgstr "选择要删除的参数" -#: menu.sh:1045 +#: menu.sh:1064 msgid "Downloading old pat to extract synology .pat extractor..." msgstr "下载旧 pat, 提取 .pat 解密程序中..." -#: menu.sh:1051 menu.sh:1203 +#: menu.sh:1070 menu.sh:1222 msgid "Check internet or cache disk space.\\nError: %d:%d" msgstr "请检查网络连接或磁盘空间.\\nError: %d:%d" -#: menu.sh:1091 +#: menu.sh:1110 msgid "Uncompressed tar" msgstr "未压缩 tar" -#: menu.sh:1095 +#: menu.sh:1114 msgid "Compressed tar" msgstr "已压缩 tar" -#: menu.sh:1099 +#: menu.sh:1118 msgid "Encrypted" msgstr "已加密" -#: menu.sh:1103 +#: menu.sh:1122 msgid "" "Could not determine if pat file is encrypted or not, maybe corrupted, try " "again!" msgstr "无法确定 pat 文件是否加密, 可能已损坏, 请重试!" -#: menu.sh:1110 menu.sh:1219 +#: menu.sh:1129 menu.sh:1238 msgid "Disassembling %s: " msgstr "解压缩 %s: " -#: menu.sh:1117 +#: menu.sh:1136 msgid "Extractor cached." msgstr "已存在解密程序." -#: menu.sh:1123 menu.sh:1126 +#: menu.sh:1142 menu.sh:1145 msgid "Extracting ..." msgstr "解压中 ..." -#: menu.sh:1157 +#: menu.sh:1176 msgid "%s cached." msgstr "%s 已缓存." -#: menu.sh:1160 +#: menu.sh:1179 msgid "The cache has been cleared. Please re 'Parse pat' before build." msgstr "缓存已被清除. 请在编译前重新 \"解析 pat\"." -#: menu.sh:1164 +#: menu.sh:1183 msgid "" "The cache has been cleared. Please re 'Try to recovery a installed DSM " "system' before build." msgstr "缓存已被清除. 请在编译前重新 \"尝试恢复已安装的 DSM 系统\"." -#: menu.sh:1168 +#: menu.sh:1187 msgid "The pat url is empty. Please re 'Choose a version' before build." msgstr "pat 的 url 为空. 请在编译前重新 \"选择版本\"." -#: menu.sh:1173 +#: menu.sh:1192 msgid "Cleaning cache ..." msgstr "清除缓存 ..." -#: menu.sh:1187 +#: menu.sh:1206 msgid "" "Based on the current network situation, switch to %s mirror to downloading." msgstr "根据当前的网络状况, 已切换到 %s 镜像服务器进行下载." -#: menu.sh:1190 +#: menu.sh:1209 msgid "Downloading %s ..." msgstr "下载 %s 中 ..." -#: menu.sh:1209 +#: menu.sh:1228 msgid "Checking hash of %s: " msgstr "检查 %s 的 hash: " -#: menu.sh:1212 +#: menu.sh:1231 msgid "" "md5 hash of pat not match, Please reget pat data from the version menu and " "try again!" msgstr "pat 的 md5 Hash 不匹配, 请在版本菜单中重新获取 pat 数据后重试!" -#: menu.sh:1215 menu.sh:1231 menu.sh:1241 +#: menu.sh:1234 menu.sh:1250 menu.sh:1260 msgid "OK" msgstr "OK" -#: menu.sh:1226 +#: menu.sh:1245 msgid "Setting hash: " msgstr "设置 hash: " -#: menu.sh:1233 +#: menu.sh:1252 msgid "Copying files: " msgstr "拷贝文件: " -#: menu.sh:1257 -msgid "Addon %s not found!" -msgstr "插件 %s 未找到!" - -#: menu.sh:1279 +#: menu.sh:1287 msgid "Cleaning ..." msgstr "清除中 ..." -#: menu.sh:1281 +#: menu.sh:1289 msgid "Ready!" msgstr "已就绪!" -#: menu.sh:1305 menu.sh:1321 menu.sh:1325 menu.sh:1342 menu.sh:1347 -#: menu.sh:1366 menu.sh:1378 menu.sh:1430 +#: menu.sh:1313 menu.sh:1329 menu.sh:1333 menu.sh:1350 menu.sh:1355 +#: menu.sh:1374 menu.sh:1386 menu.sh:2101 msgid "Custom DTS" msgstr "自定义 DTS" -#: menu.sh:1307 +#: menu.sh:1315 msgid "Custom dts: " msgstr "自定义 dts: " -#: menu.sh:1308 +#: menu.sh:1316 msgid "Upload dts file" msgstr "上传 dts 文件" -#: menu.sh:1309 +#: menu.sh:1317 msgid "Delete dts file" msgstr "删除 dts 文件" -#: menu.sh:1310 +#: menu.sh:1318 msgid "Edit dts file" msgstr "编辑 dts 文件" -#: menu.sh:1320 +#: menu.sh:1328 msgid "" "Or upload the dts file to %s via DUFS, Will be automatically imported when " "building." msgstr "或者通过 DUFS 上传 dts 文件到 %s, 编译时会自动导入." -#: menu.sh:1326 +#: menu.sh:1334 msgid "" "Currently, only dts format files are supported. Please prepare and click to " "confirm uploading.\\n(saved in /mnt/p3/users/)" @@ -816,554 +812,539 @@ msgstr "" "目前, 只支持 dts 格式的文件, 请准备并点击确认上传.\\n(保存于 /mnt/p3/users/ " "中)" -#: menu.sh:1343 menu.sh:1379 +#: menu.sh:1351 menu.sh:1387 msgid "Not a valid dts file, please try again!" msgstr "dts 文件无效, 请重试!" -#: menu.sh:1348 +#: menu.sh:1356 msgid "A valid dts file, Automatically import at compile time." msgstr "dts 文件有效, 将在编译时自动导入." -#: menu.sh:1367 +#: menu.sh:1375 msgid "No dts file to edit. Please upload first!" msgstr "没有可编辑的 dts 文件, 请先上传!" -#: menu.sh:1403 -msgid "Switch LKM version:" -msgstr "选择 LKM 版本:" - -#: menu.sh:1404 -msgid "HDD sort(hotplug):" -msgstr "HDD 排序(hotplug):" - -#: menu.sh:1407 -msgid "Switch direct boot:" -msgstr "切换直接启动:" - -#: menu.sh:1409 -msgid "Timeout of get ip in boot:" -msgstr "启动时获取 IP 的超时时间:" - -#: menu.sh:1410 -msgid "Timeout of boot wait:" -msgstr "启动超时时间:" - -#: menu.sh:1411 -msgid "kernel switching method:" -msgstr "内核切换的方式:" - -#: menu.sh:1413 -msgid "Reboot on kernel panic:" -msgstr "内核恐慌时重新启动:" - -#: menu.sh:1415 -msgid "Set static IP" -msgstr "设置静态 IP" - -#: menu.sh:1416 -msgid "Set wireless account" -msgstr "设置无线帐号" - -#: menu.sh:1417 -msgid "Edit user config file manually" -msgstr "手动编辑用户配置文件" - -#: menu.sh:1418 -msgid "Edit grub.cfg file manually" -msgstr "手动编辑 grub.cfg 文件" - -#: menu.sh:1419 -msgid "Try to recovery a installed DSM system" -msgstr "尝试恢复已安装的 DSM 系统" - -#: menu.sh:1420 -msgid "Show disks information" -msgstr "显示磁盘信息" - -#: menu.sh:1422 -msgid "show/modify the current pat data" -msgstr "显示/修改当前 pat 下载链接" - -#: menu.sh:1424 -msgid "Allow downgrade installation" -msgstr "允许降级安装" - -#: menu.sh:1425 -msgid "Format disk(s) # Without loader disk" -msgstr "格式化磁盘(s) # 不含启动盘" - -#: menu.sh:1426 -msgid "Reset DSM system password" -msgstr "重置 DSM 系统密码" - -#: menu.sh:1427 -msgid "Force enable Telnet&SSH of DSM system" -msgstr "强制打开 DSM 的 Telnet&SSH" - -#: menu.sh:1428 -msgid "Save modifications of '/opt/rr'" -msgstr "保存'/opt/rr'的修改" - -#: menu.sh:1432 -msgid "Custom patch script # Developer" -msgstr "自定义补丁脚本 # 开发" - -#: menu.sh:1434 -msgid "Use EMMC as the system disk:" -msgstr "使用 EMMC 作为系统磁盘:" - -#: menu.sh:1436 -msgid "Clone bootloader disk to another disk" -msgstr "克隆引导盘到另一个磁盘" - -#: menu.sh:1437 -msgid "Report bugs to the author" -msgstr "向作者报告错误" - -#: menu.sh:1438 -msgid "Install development tools" -msgstr "安装开发者工具" - -#: menu.sh:1439 -msgid "Show QR logo:" -msgstr "显示 QR logo:" - -#: menu.sh:1440 -msgid "Set global proxy" -msgstr "设置全局代理" - -#: menu.sh:1441 -msgid "Set github proxy" -msgstr "设置 GitHub 代理" - -#: menu.sh:1442 -msgid "Vigorously miracle" -msgstr "大力出奇迹" - -#: menu.sh:1445 menu.sh:1469 menu.sh:1481 menu.sh:1501 menu.sh:1524 -#: menu.sh:1548 menu.sh:1553 menu.sh:1565 menu.sh:1574 menu.sh:1596 -#: menu.sh:1697 menu.sh:1704 menu.sh:1722 menu.sh:1735 menu.sh:1738 -#: menu.sh:1751 menu.sh:1755 menu.sh:1756 menu.sh:1761 menu.sh:1765 -#: menu.sh:1780 menu.sh:1782 menu.sh:1805 menu.sh:1809 menu.sh:1816 -#: menu.sh:1822 menu.sh:1840 menu.sh:1842 menu.sh:1846 menu.sh:1868 -#: menu.sh:1871 menu.sh:1875 menu.sh:1878 menu.sh:1893 menu.sh:1906 -#: menu.sh:1938 menu.sh:1942 menu.sh:1948 menu.sh:1954 menu.sh:1960 -#: menu.sh:1991 menu.sh:2004 menu.sh:2008 menu.sh:2018 menu.sh:2023 -#: menu.sh:2030 menu.sh:2032 menu.sh:2044 menu.sh:2055 menu.sh:2077 -#: menu.sh:2088 menu.sh:2105 -msgid "Advanced" -msgstr "高级" - -#: menu.sh:1446 -msgid "Advanced option" -msgstr "高级设置" - -#: menu.sh:1470 menu.sh:1482 menu.sh:1502 -msgid "Choose a time(seconds)" -msgstr "选择一个时间(秒)" - -#: menu.sh:1512 +#: menu.sh:1450 msgid "Temporary IP: (UI will not refresh)" msgstr "临时 IP: (UI 不会刷新)" -#: menu.sh:1549 +#: menu.sh:1462 menu.sh:1486 menu.sh:1494 menu.sh:1506 menu.sh:1515 +#: menu.sh:1537 menu.sh:1629 menu.sh:1646 menu.sh:1650 menu.sh:1651 +#: menu.sh:1656 menu.sh:1660 menu.sh:1675 menu.sh:1677 menu.sh:1854 +#: menu.sh:1868 menu.sh:1871 menu.sh:1899 menu.sh:1903 menu.sh:1910 +#: menu.sh:1916 menu.sh:1935 menu.sh:1937 menu.sh:1945 menu.sh:1968 +#: menu.sh:1971 menu.sh:1986 menu.sh:1990 menu.sh:1996 menu.sh:2002 +#: menu.sh:2008 menu.sh:2039 menu.sh:2055 menu.sh:2066 menu.sh:2136 +#: menu.sh:2157 menu.sh:2182 menu.sh:2194 menu.sh:2214 menu.sh:2251 +#: menu.sh:2306 menu.sh:2310 menu.sh:2320 menu.sh:2326 menu.sh:2329 +#: menu.sh:2344 menu.sh:2349 menu.sh:2356 menu.sh:2358 menu.sh:2379 +msgid "Advanced" +msgstr "高级" + +#: menu.sh:1487 msgid "Setting IP ..." msgstr "设置 IP ..." -#: menu.sh:1554 +#: menu.sh:1495 msgid "Scanning ..." msgstr "扫描中 ..." -#: menu.sh:1557 +#: menu.sh:1498 msgid "Scanned SSIDs:\\n" msgstr "扫描到的 SSIDs:\\n" -#: menu.sh:1575 +#: menu.sh:1516 msgid "Invalid SSID/PSK, retry?" msgstr "无效 SSID/PSK, 重试?" -#: menu.sh:1597 +#: menu.sh:1538 msgid "Setting ..." msgstr "设置中 ..." -#: menu.sh:1695 +#: menu.sh:1627 msgid "\\nTotal of ports: %s\\n" msgstr "\\n端口总数: %s\\n" -#: menu.sh:1696 +#: menu.sh:1628 msgid "" "\\nPorts with color \\Z1red\\Zn as DUMMY, color \\Z2\\Zbgreen\\Zn has drive " "connected." msgstr "\\n\\Z1红色\\Zn 为模拟端口, \\Z2\\Zb绿色\\Zn 为已驱动的物理端口." -#: menu.sh:1703 -msgid "pat: (editable)" -msgstr "pat: (可编辑)" +#: menu.sh:1647 menu.sh:1987 +msgid "No disk found!" +msgstr "未找到磁盘!" -#: menu.sh:1719 -msgid "" -"This feature will allow you to downgrade the installation by removing the " -"VERSION file from the first partition of all disks.\\n" -msgstr "此功能通过删除所有磁盘的第一个分区的 VERSION 文件来允许你降级安装.\\n" - -#: menu.sh:1720 -msgid "Therefore, please insert all disks before continuing.\\n" -msgstr "因此, 请插入所有磁盘后再进行操作.\\n" - -#: menu.sh:1721 menu.sh:1762 +#: menu.sh:1657 menu.sh:1853 msgid "" "Warning:\\nThis operation is irreversible. Please backup important data. Do " "you want to continue?" msgstr "警告:\\n该操作不可逆, 请提前备份重要数据. 是否继续?" -#: menu.sh:1736 -msgid "Removing ..." -msgstr "删除中 ..." - -#: menu.sh:1737 -msgid "Remove VERSION file for all disks completed." -msgstr "已移除所有磁盘的 VERSION 文件." - -#: menu.sh:1752 menu.sh:1939 -msgid "No disk found!" -msgstr "未找到磁盘!" - -#: menu.sh:1766 +#: menu.sh:1661 msgid "" "Warning:\\nThe current hds is in raid, do you still want to format them?" msgstr "警告:\\n当前的硬盘处于 raid 中,是否仍要格式化?" -#: menu.sh:1781 +#: menu.sh:1676 msgid "Formatting ..." msgstr "格式化中 ..." -#: menu.sh:1783 +#: menu.sh:1678 msgid "Formatting is complete." msgstr "格式化完成." -#: menu.sh:1806 -msgid "The installed Syno system not found in the currently inserted disks!" -msgstr "未在当前插入的硬盘中找到已安装的 syno 系统!" - -#: menu.sh:1810 -msgid "Choose a user name" -msgstr "选择一个用户" - -#: menu.sh:1817 -msgid "Type a new password for user '%s'" -msgstr "输入用户 '%s' 的新密码" - -#: menu.sh:1823 -msgid "Invalid password" -msgstr "无效密码" - -#: menu.sh:1841 -msgid "Resetting ..." -msgstr "重置中 ..." - -#: menu.sh:1843 -msgid "Password reset completed." -msgstr "重置密码完成." - -#: menu.sh:1847 -msgid "Please insert all disks before continuing.\\n" -msgstr "请插入所有磁盘后再进行操作.\\n" - -#: menu.sh:1869 -msgid "Enabling ..." -msgstr "开启中 ..." - -#: menu.sh:1870 -msgid "Telnet&SSH is enabled." -msgstr "Telnet&SSH 已开启." - -#: menu.sh:1870 -msgid "Telnet&SSH is not enabled." -msgstr "Telnet&SSH 未开启." - -#: menu.sh:1876 -msgid "" -"Warning:\\nDo not terminate midway, otherwise it may cause damage to the RR. " -"Do you want to continue?" -msgstr "警告:\\n请不要中途停止, 否则将导致 RR 引导损毁, 是否继续?" - -#: menu.sh:1879 -msgid "" -"Saving ...\\n(It usually takes 5-10 minutes, please be patient and wait.)" -msgstr "保存中 ...\\n(一般需要 5~10 分钟,请耐心等待.)" - -#: menu.sh:1894 -msgid "Save is complete." -msgstr "保存完成." - -#: menu.sh:1902 -msgid "This option is only informative.\\n\\n" -msgstr "此选项仅为提示.\\n\\n" - -#: menu.sh:1903 -msgid "This program reserves an interface for ramdisk custom patch scripts.\\n" -msgstr "此程序为 ramdisk 自定义补丁脚本保留了一个接口.\\n" - -#: menu.sh:1904 -msgid "Call timing: called before ramdisk packaging.\\n" -msgstr "调用时机: 在 ramdisk 打包前调用.\\n" - -#: menu.sh:1905 -msgid "Location: /mnt/p3/scripts/*.sh\\n" -msgstr "位置: /mnt/p3/scripts/*.sh\\n" - -#: menu.sh:1943 -msgid "Choose a disk to clone to" -msgstr "选择要克隆到的磁盘" - -#: menu.sh:1949 -msgid "No disk selected!" -msgstr "未选择磁盘!" - -#: menu.sh:1955 -msgid "Disk %s size is less than 1GB and cannot be cloned!" -msgstr "磁盘 %s 的大小小于 1GB,无法克隆!" - -#: menu.sh:1959 -msgid "" -"Warning:\\nDisk %s will be formatted and written to the bootloader. Please " -"confirm that important data has been backed up. \\nDo you want to continue?" -msgstr "" -"警告:\\n磁盘 %s 将被格式化并写入引导程序. 请确认重要数据已备份. \\n是否继续?" - -#: menu.sh:1992 -msgid "Cloning ..." -msgstr "克隆中 ..." - -#: menu.sh:1994 -msgid "" -"Bootloader has been cloned to disk %s, please remove the current bootloader " -"disk!\\nReboot?" -msgstr "引导程序已克隆到磁盘 %s, 请移除当前引导盘! \\n重启?" - -#: menu.sh:2005 -msgid "" -"Please via %s to download the logs,\\nAnd go to github to create an issue " -"and upload the logs." -msgstr "请通过 %s 下载日志 logs,\\n并前往 github 创建问题并上传日志 logs." - -#: menu.sh:2009 -msgid "Please go to github to create an issue and upload the logs." -msgstr "请前往 github 创建问题并上传日志 logs." - -#: menu.sh:2013 -msgid "\\Z1No logs found!\\Zn\\n\\n" -msgstr "\\Z1日志 logs 未找到!\\Zn\\n\\n" - -#: menu.sh:2014 -msgid "Please do as follows:\\n" -msgstr "请按如下操作:\\n" - -#: menu.sh:2015 -msgid " 1. Add dbgutils in addons and rebuild.\\n" -msgstr " 1. 在插件中添加 dbgutils 并重新编译.\\n" - -#: menu.sh:2016 -msgid " 2. Wait 10 minutes after booting.\\n" -msgstr " 2. 启动后等待10分钟.\\n" - -#: menu.sh:2017 -msgid " 3. Reboot into RR and go to this option.\\n" -msgstr " 3. 重启到 RR 并回到该选项.\\n" - -#: menu.sh:2024 -msgid "" -"This option only installs opkg package management, allowing you to install " -"more tools for use and debugging. Do you want to continue?" -msgstr "" -"该选项仅安装 opkg 包管理工具, 使你能够安装更多的工具以供使用和调试, 是否继续?" - -#: menu.sh:2031 -msgid "opkg installing ..." -msgstr "opkg 安装中 ..." - -#: menu.sh:2033 -msgid "" -"opkg install is complete. Please reconnect to ssh/web, or execute 'source ~/." -"bashrc'" -msgstr "opkg 安装完成. 请重新链接 ssh/web, 或者执行 'source ~/.bashrc'" - -#: menu.sh:2045 -msgid "Please enter a proxy server url.(e.g., http://192.168.1.1:7981/)" -msgstr "请输入代理服务器 url.(e.g., http://192.168.1.1:7981/)" - -#: menu.sh:2056 menu.sh:2089 -msgid "Invalid proxy server url, continue?" -msgstr "无效的代理服务器 url, 是否继续?" - -#: menu.sh:2078 -msgid "Please enter a proxy server url.(e.g., https://mirror.ghproxy.com/)" -msgstr "请输入代理服务器 url.(e.g., https://mirror.ghproxy.com/)" - -#: menu.sh:2103 -msgid "It is expected that all restrictions on DSM will be lifted,\\n" -msgstr "预计将解除DSM一切限制,\\n" - -#: menu.sh:2104 -msgid "" -"But since upgrading is not supported, I don not want to implement it for the " -"time being.\\n" -msgstr "但由于不支持升级, 暂时不想实现.\\n" - -#: menu.sh:2116 menu.sh:2120 menu.sh:2134 menu.sh:2154 menu.sh:2170 -#: menu.sh:2178 menu.sh:2262 menu.sh:2267 menu.sh:2273 +#: menu.sh:1685 menu.sh:1689 menu.sh:1703 menu.sh:1723 menu.sh:1739 +#: menu.sh:1747 menu.sh:1831 menu.sh:1836 menu.sh:1842 msgid "Try recovery DSM" msgstr "尝试恢复 DSM 系统" -#: menu.sh:2117 +#: menu.sh:1686 msgid "Trying to recovery a installed DSM system ..." msgstr "尝试恢复已安装的 DSM 系统中 ..." -#: menu.sh:2121 +#: menu.sh:1690 msgid "Unfortunately I couldn't mount the DSM partition!" msgstr "很遗憾, 我无法挂载 DSM 分区!" -#: menu.sh:2135 +#: menu.sh:1704 msgid "Checking for backup of user's configuration for bootloader ..." msgstr "检查引导程序的用户配置备份中 ..." -#: menu.sh:2155 +#: menu.sh:1724 msgid "" "Found a backup of the user's configuration, but the system is damaged and " "will not be restored. Please reselect model and build." msgstr "找到用户配置的备份, 但系统已损坏, 将无法恢复. 请重新选择模型并构建." -#: menu.sh:2171 +#: menu.sh:1740 msgid "" "Found a backup of the user's configuration, and restored it. Please rebuild " "and boot." msgstr "找到用户配置的备份, 并已还原. 请重新编译并启动." -#: menu.sh:2179 +#: menu.sh:1748 msgid "Checking for installed DSM system ..." msgstr "检查已安装的 DSM 系统中 ..." -#: menu.sh:2263 +#: menu.sh:1832 msgid "Found a installed DSM system and restored it. Please rebuild and boot." msgstr "找到已安装的DSM系统, 并已还原. 请重新编译并启动." -#: menu.sh:2268 +#: menu.sh:1837 msgid "" "Found a installed DSM system, but the system is damaged and will not be " "restored. Please reselect model and build." msgstr "找到已安装的DSM系统, 但系统已损坏, 将无法恢复. 请重新选择模型并构建." -#: menu.sh:2274 +#: menu.sh:1843 msgid "" "The installed DSM system was not found, or the system is damaged and cannot " "be recovered. Please reselect model and build." msgstr "" "未找到已安装的DSM系统, 或者系统已损坏, 将无法恢复. 请重新选择模型并构建." -#: menu.sh:2324 +#: menu.sh:1851 +msgid "" +"This feature will allow you to downgrade the installation by removing the " +"VERSION file from the first partition of all disks.\\n" +msgstr "此功能通过删除所有磁盘的第一个分区的 VERSION 文件来允许你降级安装.\\n" + +#: menu.sh:1852 +msgid "Therefore, please insert all disks before continuing.\\n" +msgstr "因此, 请插入所有磁盘后再进行操作.\\n" + +#: menu.sh:1869 +msgid "Removing ..." +msgstr "删除中 ..." + +#: menu.sh:1870 +msgid "Remove VERSION file for all disks completed." +msgstr "已移除所有磁盘的 VERSION 文件." + +#: menu.sh:1900 +msgid "The installed Syno system not found in the currently inserted disks!" +msgstr "未在当前插入的硬盘中找到已安装的 syno 系统!" + +#: menu.sh:1904 +msgid "Choose a user name" +msgstr "选择一个用户" + +#: menu.sh:1911 +msgid "Type a new password for user '%s'" +msgstr "输入用户 '%s' 的新密码" + +#: menu.sh:1917 +msgid "Invalid password" +msgstr "无效密码" + +#: menu.sh:1936 +msgid "Resetting ..." +msgstr "重置中 ..." + +#: menu.sh:1938 +msgid "Password reset completed." +msgstr "重置密码完成." + +#: menu.sh:1946 +msgid "Please insert all disks before continuing.\\n" +msgstr "请插入所有磁盘后再进行操作.\\n" + +#: menu.sh:1969 +msgid "Enabling ..." +msgstr "开启中 ..." + +#: menu.sh:1970 +msgid "Telnet&SSH is enabled." +msgstr "Telnet&SSH 已开启." + +#: menu.sh:1970 +msgid "Telnet&SSH is not enabled." +msgstr "Telnet&SSH 未开启." + +#: menu.sh:1991 +msgid "Choose a disk to clone to" +msgstr "选择要克隆到的磁盘" + +#: menu.sh:1997 +msgid "No disk selected!" +msgstr "未选择磁盘!" + +#: menu.sh:2003 +msgid "Disk %s size is less than 1GB and cannot be cloned!" +msgstr "磁盘 %s 的大小小于 1GB,无法克隆!" + +#: menu.sh:2007 +msgid "" +"Warning:\\nDisk %s will be formatted and written to the bootloader. Please " +"confirm that important data has been backed up. \\nDo you want to continue?" +msgstr "" +"警告:\\n磁盘 %s 将被格式化并写入引导程序. 请确认重要数据已备份. \\n是否继续?" + +#: menu.sh:2040 +msgid "Cloning ..." +msgstr "克隆中 ..." + +#: menu.sh:2042 +msgid "" +"Bootloader has been cloned to disk %s, please remove the current bootloader " +"disk!\\nReboot?" +msgstr "引导程序已克隆到磁盘 %s, 请移除当前引导盘! \\n重启?" + +#: menu.sh:2056 +msgid "Please enter a proxy server url.(e.g., %s)" +msgstr "请输入代理服务器 url.(e.g., %s)" + +#: menu.sh:2067 +msgid "Invalid proxy server url, continue?" +msgstr "无效的代理服务器 url, 是否继续?" + +#: menu.sh:2095 +msgid "Switch LKM version:" +msgstr "选择 LKM 版本:" + +#: menu.sh:2096 +msgid "HDD sort(hotplug):" +msgstr "HDD 排序(hotplug):" + +#: menu.sh:2098 +msgid "show/modify the current pat data" +msgstr "显示/修改当前 pat 下载链接" + +#: menu.sh:2103 +msgid "Switch direct boot:" +msgstr "切换直接启动:" + +#: menu.sh:2105 +msgid "Timeout of get ip in boot:" +msgstr "启动时获取 IP 的超时时间:" + +#: menu.sh:2106 +msgid "Timeout of boot wait:" +msgstr "启动超时时间:" + +#: menu.sh:2107 +msgid "kernel switching method:" +msgstr "内核切换的方式:" + +#: menu.sh:2109 +msgid "Reboot on kernel panic:" +msgstr "内核恐慌时重新启动:" + +#: menu.sh:2111 +msgid "Use EMMC as the system disk:" +msgstr "使用 EMMC 作为系统磁盘:" + +#: menu.sh:2113 +msgid "Custom patch script # Developer" +msgstr "自定义补丁脚本 # 开发" + +#: menu.sh:2114 +msgid "Edit user config file manually" +msgstr "手动编辑用户配置文件" + +#: menu.sh:2115 +msgid "Edit grub.cfg file manually" +msgstr "手动编辑 grub.cfg 文件" + +#: menu.sh:2117 +msgid "Set static IP" +msgstr "设置静态 IP" + +#: menu.sh:2118 +msgid "Set wireless account" +msgstr "设置无线帐号" + +#: menu.sh:2119 +msgid "Show disks information" +msgstr "显示磁盘信息" + +#: menu.sh:2120 +msgid "Format disk(s) # Without loader disk" +msgstr "格式化磁盘(s) # 不含启动盘" + +#: menu.sh:2121 +msgid "Try to recovery a installed DSM system" +msgstr "尝试恢复已安装的 DSM 系统" + +#: menu.sh:2122 +msgid "Allow downgrade installation" +msgstr "允许降级安装" + +#: menu.sh:2123 +msgid "Reset DSM system password" +msgstr "重置 DSM 系统密码" + +#: menu.sh:2124 +msgid "Force enable Telnet&SSH of DSM system" +msgstr "强制打开 DSM 的 Telnet&SSH" + +#: menu.sh:2125 +msgid "Clone bootloader disk to another disk" +msgstr "克隆引导盘到另一个磁盘" + +#: menu.sh:2126 +msgid "Report bugs to the author" +msgstr "向作者报告错误" + +#: menu.sh:2127 +msgid "Save modifications of '/opt/rr'" +msgstr "保存'/opt/rr'的修改" + +#: menu.sh:2128 +msgid "Install development tools" +msgstr "安装开发者工具" + +#: menu.sh:2130 +msgid "Show QR logo:" +msgstr "显示 QR logo:" + +#: menu.sh:2131 +msgid "Set global proxy" +msgstr "设置全局代理" + +#: menu.sh:2132 +msgid "Set github proxy" +msgstr "设置 GitHub 代理" + +#: menu.sh:2133 +msgid "Vigorously miracle" +msgstr "大力出奇迹" + +#: menu.sh:2137 +msgid "Advanced option" +msgstr "高级设置" + +#: menu.sh:2156 +msgid "pat: (editable)" +msgstr "pat: (可编辑)" + +#: menu.sh:2183 menu.sh:2195 menu.sh:2215 +msgid "Choose a time(seconds)" +msgstr "选择一个时间(秒)" + +#: menu.sh:2247 +msgid "This option is only informative.\\n\\n" +msgstr "此选项仅为提示.\\n\\n" + +#: menu.sh:2248 +msgid "This program reserves an interface for ramdisk custom patch scripts.\\n" +msgstr "此程序为 ramdisk 自定义补丁脚本保留了一个接口.\\n" + +#: menu.sh:2249 +msgid "Call timing: called before ramdisk packaging.\\n" +msgstr "调用时机: 在 ramdisk 打包前调用.\\n" + +#: menu.sh:2250 +msgid "Location: /mnt/p3/scripts/*.sh\\n" +msgstr "位置: /mnt/p3/scripts/*.sh\\n" + +#: menu.sh:2307 +msgid "" +"Please via %s to download the logs,\\nAnd go to github to create an issue " +"and upload the logs." +msgstr "请通过 %s 下载日志 logs,\\n并前往 github 创建问题并上传日志 logs." + +#: menu.sh:2311 +msgid "Please go to github to create an issue and upload the logs." +msgstr "请前往 github 创建问题并上传日志 logs." + +#: menu.sh:2315 +msgid "\\Z1No logs found!\\Zn\\n\\n" +msgstr "\\Z1日志 logs 未找到!\\Zn\\n\\n" + +#: menu.sh:2316 +msgid "Please do as follows:\\n" +msgstr "请按如下操作:\\n" + +#: menu.sh:2317 +msgid " 1. Add dbgutils in addons and rebuild.\\n" +msgstr " 1. 在插件中添加 dbgutils 并重新编译.\\n" + +#: menu.sh:2318 +msgid " 2. Wait 10 minutes after booting.\\n" +msgstr " 2. 启动后等待10分钟.\\n" + +#: menu.sh:2319 +msgid " 3. Reboot into RR and go to this option.\\n" +msgstr " 3. 重启到 RR 并回到该选项.\\n" + +#: menu.sh:2327 +msgid "" +"Warning:\\nDo not terminate midway, otherwise it may cause damage to the RR. " +"Do you want to continue?" +msgstr "警告:\\n请不要中途停止, 否则将导致 RR 引导损毁, 是否继续?" + +#: menu.sh:2330 +msgid "" +"Saving ...\\n(It usually takes 5-10 minutes, please be patient and wait.)" +msgstr "保存中 ...\\n(一般需要 5~10 分钟,请耐心等待.)" + +#: menu.sh:2345 +msgid "Save is complete." +msgstr "保存完成." + +#: menu.sh:2350 +msgid "" +"This option only installs opkg package management, allowing you to install " +"more tools for use and debugging. Do you want to continue?" +msgstr "" +"该选项仅安装 opkg 包管理工具, 使你能够安装更多的工具以供使用和调试, 是否继续?" + +#: menu.sh:2357 +msgid "opkg installing ..." +msgstr "opkg 安装中 ..." + +#: menu.sh:2359 +msgid "" +"opkg install is complete. Please reconnect to ssh/web, or execute 'source ~/." +"bashrc'" +msgstr "opkg 安装完成. 请重新链接 ssh/web, 或者执行 'source ~/.bashrc'" + +#: menu.sh:2391 msgid "Alert" msgstr "警告" -#: menu.sh:2325 +#: menu.sh:2392 msgid "Config changed, would you like to rebuild the loader?" msgstr "配置已更改, 是否重新编译引导?" -#: menu.sh:2342 menu.sh:2942 +#: menu.sh:2409 menu.sh:3012 msgid "Choose a language" msgstr "选择语言" -#: menu.sh:2357 +#: menu.sh:2424 msgid "Choose a layout" msgstr "选择布局" -#: menu.sh:2369 +#: menu.sh:2436 msgid "Choice a keymap" msgstr "选择键盘映射" -#: menu.sh:2388 menu.sh:2465 menu.sh:2562 menu.sh:2607 menu.sh:2657 -#: menu.sh:2696 +#: menu.sh:2455 menu.sh:2532 menu.sh:2629 menu.sh:2674 menu.sh:2724 +#: menu.sh:2763 msgid "Update %s" msgstr "更新 %s" -#: menu.sh:2389 +#: menu.sh:2456 msgid "Checking last version ..." msgstr "检测新版本中 ..." -#: menu.sh:2405 +#: menu.sh:2472 msgid "Error checking new version.\\nError: TAG is %s" msgstr "检测新版本错误.\\nError: TAG is %s" -#: menu.sh:2418 +#: menu.sh:2485 msgid "No new version." msgstr "没有新版本." -#: menu.sh:2422 +#: menu.sh:2489 msgid "Actual version is %s\\nForce update?" msgstr "实际版本为 %s\\n强制更新?" -#: menu.sh:2444 +#: menu.sh:2511 msgid "Downloading ..." msgstr "下载中 ..." -#: menu.sh:2447 +#: menu.sh:2514 msgid "Error downloading new version.\\nError: %d:%d" msgstr "下载新版本错误.\\nError: %d:%d" -#: menu.sh:2465 menu.sh:2549 menu.sh:2742 menu.sh:2769 +#: menu.sh:2532 menu.sh:2616 menu.sh:2809 menu.sh:2836 msgid "RR" msgstr "RR" -#: menu.sh:2466 menu.sh:2563 menu.sh:2608 menu.sh:2658 menu.sh:2697 +#: menu.sh:2533 menu.sh:2630 menu.sh:2675 menu.sh:2725 menu.sh:2764 msgid "Extracting update file ..." msgstr "解压更新文件 ..." -#: menu.sh:2477 menu.sh:2574 menu.sh:2619 menu.sh:2669 menu.sh:2708 +#: menu.sh:2544 menu.sh:2641 menu.sh:2686 menu.sh:2736 menu.sh:2775 msgid "Error extracting update file." msgstr "更新文件解压错误." -#: menu.sh:2489 +#: menu.sh:2556 msgid "Checksum do not match!" msgstr "Checksum 不匹配!" -#: menu.sh:2503 +#: menu.sh:2570 msgid "" "The current version does not support upgrading to the latest update.zip. " "Please remake the bootloader disk!" msgstr "当前版本不支持最新的 update.zip 升级, 请重新制作引导盘!" -#: menu.sh:2513 +#: menu.sh:2580 msgid "Installing new files ..." msgstr "安装更新中 ..." -#: menu.sh:2549 menu.sh:2592 menu.sh:2642 menu.sh:2681 menu.sh:2720 +#: menu.sh:2616 menu.sh:2659 menu.sh:2709 menu.sh:2748 menu.sh:2787 msgid "%s updated with success!" msgstr "%s 更新成功!" -#: menu.sh:2549 +#: menu.sh:2616 msgid "Reboot?" msgstr "重启?" -#: menu.sh:2657 menu.sh:2681 menu.sh:2745 menu.sh:2798 menu.sh:2802 +#: menu.sh:2724 menu.sh:2748 menu.sh:2812 menu.sh:2865 menu.sh:2869 msgid "LKMs" msgstr "LKMs" -#: menu.sh:2696 menu.sh:2720 menu.sh:2746 menu.sh:2809 menu.sh:2813 +#: menu.sh:2763 menu.sh:2787 menu.sh:2813 menu.sh:2876 menu.sh:2880 msgid "CKs" msgstr "CKs" -#: menu.sh:2741 menu.sh:2763 +#: menu.sh:2808 menu.sh:2830 msgid "All" msgstr "全部" -#: menu.sh:2747 +#: menu.sh:2814 msgid "Local upload" msgstr "本地上传" -#: menu.sh:2748 +#: menu.sh:2815 msgid "Pre Release:" msgstr "预发布:" -#: menu.sh:2753 menu.sh:2821 +#: menu.sh:2820 menu.sh:2888 msgid "" "Manually uploading update*.zip,addons*.zip,modules*.zip,rp-lkms*.zip,rr-cks*." "zip to /tmp/ will skip the download." @@ -1371,133 +1352,124 @@ msgstr "" "手动上传 update*.zip,addons*.zip,modules*.zip,rp-lkms*.zip,rr-cks*.zip 到 /" "tmp/ 将跳过下载." -#: menu.sh:2776 menu.sh:2787 menu.sh:2798 menu.sh:2809 +#: menu.sh:2843 menu.sh:2854 menu.sh:2865 menu.sh:2876 msgid "No longer supports update %s separately. Please choose to update All/RR" msgstr "不再支持单独更新%s. 请选择更新全部/RR" -#: menu.sh:2827 +#: menu.sh:2894 msgid "" "Please keep the attachment name consistent with the attachment name on " "Github.\\n" msgstr "请保持附件名称与 github 上附件名称一致.\\n" -#: menu.sh:2828 +#: menu.sh:2895 msgid "Upload update*.zip will update RR.\\n" msgstr "上传 update*.zip 将更新 RR.\\n" -#: menu.sh:2829 +#: menu.sh:2896 msgid "Upload addons*.zip will update Addons.\\n" msgstr "上传 addons*.zip 将更新 插件.\\n" -#: menu.sh:2830 +#: menu.sh:2897 msgid "Upload modules*.zip will update Modules.\\n" msgstr "上传 modules*.zip 将更新 模块.\\n" -#: menu.sh:2831 +#: menu.sh:2898 msgid "Upload rp-lkms*.zip will update LKMs.\\n" msgstr "上传 rp-lkms*.zip 将更新 LKMs.\\n" -#: menu.sh:2832 +#: menu.sh:2899 msgid "Upload rr-cks*.zip will update CKs.\\n" msgstr "上传 rr-cks*.zip 将更新 CKs.\\n" -#: menu.sh:2888 +#: menu.sh:2955 msgid "This person is very lazy and hasn't written anything." msgstr "这个人很懒, 什么也没有写." -#: menu.sh:2915 +#: menu.sh:2985 msgid "Choose a model" msgstr "选择型号" -#: menu.sh:2917 +#: menu.sh:2987 msgid "Choose a version" msgstr "选择版本" -#: menu.sh:2919 +#: menu.sh:2989 msgid "Parse pat" msgstr "解析 pat" -#: menu.sh:2926 +#: menu.sh:2996 msgid "Kernel:" msgstr "内核:" -#: menu.sh:2928 +#: menu.sh:2998 msgid "Addons menu" msgstr "插件" -#: menu.sh:2929 +#: menu.sh:2999 msgid "Modules menu" msgstr "模块" -#: menu.sh:2930 +#: menu.sh:3000 msgid "Cmdline menu" msgstr "设置 Cmdline" -#: menu.sh:2931 +#: menu.sh:3001 msgid "Synoinfo menu" msgstr "设置 Synoinfo" -#: menu.sh:2933 +#: menu.sh:3003 msgid "Advanced menu" msgstr "高级设置" -#: menu.sh:2936 +#: menu.sh:3006 msgid "Build the loader" msgstr "编译引导" -#: menu.sh:2940 +#: menu.sh:3010 msgid "Boot the loader" msgstr "启动" -#: menu.sh:2943 +#: menu.sh:3013 msgid "Choose a keymap" msgstr "选择键盘" -#: menu.sh:2945 +#: menu.sh:3015 msgid "Clean disk cache" msgstr "清除磁盘缓存" -#: menu.sh:2947 +#: menu.sh:3017 msgid "Update menu" msgstr "更新" -#: menu.sh:2948 +#: menu.sh:3018 msgid "Notepad" msgstr "备注" -#: menu.sh:2970 +#: menu.sh:3040 msgid "Change ..." msgstr "改变 ..." -#: menu.sh:3039 +#: menu.sh:3109 msgid "Choose a action" msgstr "选择动作" -#: menu.sh:3040 +#: menu.sh:3110 msgid "Poweroff" msgstr "关机" -#: menu.sh:3041 +#: menu.sh:3111 msgid "Reboot" msgstr "重启" -#: menu.sh:3042 +#: menu.sh:3112 msgid "Reboot to RR" msgstr "重启到 RR" -#: menu.sh:3043 +#: menu.sh:3113 msgid "Back to shell" msgstr "退出到 shell" -#: menu.sh:3069 +#: menu.sh:3139 msgid "Call \\033[1;32mmenu.sh\\033[0m to return to menu" msgstr "执行 \\033[1;32mmenu.sh\\033[0m 重新进入设置菜单" - -#~ msgid "Found a installation:\\nModel: %s\\nProductversion: %s" -#~ msgstr "找到已安装:\\n型号: %s\\n版本: %s" - -#~ msgid "\\nSerial: %s" -#~ msgstr "\\nSN: %s" - -#~ msgid "Waiting IP.(For reference only)" -#~ msgstr "获取 IP.(仅供参考)" diff --git a/files/initrd/opt/rr/lang/zh_HK/LC_MESSAGES/rr.mo b/files/initrd/opt/rr/lang/zh_HK/LC_MESSAGES/rr.mo index 4abdd762559f53ac8fc648dbc104dea34c5b757f..b90f89a6e24c8a25b41506399a5eace7b67f39db 100644 GIT binary patch delta 7235 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 delta 7662 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 diff --git a/files/initrd/opt/rr/lang/zh_HK/LC_MESSAGES/rr.po b/files/initrd/opt/rr/lang/zh_HK/LC_MESSAGES/rr.po index 3b2074da..0230fc07 100644 --- a/files/initrd/opt/rr/lang/zh_HK/LC_MESSAGES/rr.po +++ b/files/initrd/opt/rr/lang/zh_HK/LC_MESSAGES/rr.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: RR\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-03-08 19:05+0800\n" -"PO-Revision-Date: 2024-03-08 19:23+0800\n" +"POT-Creation-Date: 2024-03-12 21:16+0800\n" +"PO-Revision-Date: 2024-03-12 21:20+0800\n" "Last-Translator: Ing \n" "Language-Team: Chinese (HongKong) \n" "Language: zh_HK\n" @@ -21,7 +21,7 @@ msgstr "" msgid "Loader is not init!" msgstr "引導未初始化!" -#: boot.sh:10 init.sh:111 +#: boot.sh:10 init.sh:116 msgid "Loader is not configured!" msgstr "引導未設置!" @@ -33,7 +33,7 @@ msgstr "Welcome to %s" msgid "DSM zImage changed" msgstr "DSM zImage 已變更" -#: boot.sh:36 menu.sh:1269 +#: boot.sh:36 menu.sh:1277 msgid "" "zImage not patched,\\nPlease upgrade the bootloader version and try again." "\\nPatch error:\\n" @@ -43,7 +43,7 @@ msgstr "zImage patch 失敗,\\n請升級引導版本並重試.\\nPatch 錯誤:\\ msgid "DSM Ramdisk changed" msgstr "DSM Ramdisk 已變更" -#: boot.sh:47 menu.sh:1275 +#: boot.sh:47 menu.sh:1283 msgid "" "Ramdisk not patched,\\nPlease upgrade the bootloader version and try again." "\\nPatch error:\\n" @@ -89,67 +89,67 @@ msgid "" "for the bootloader disk." msgstr "除引導盤外, 請至少插入一塊 sata/scsi 磁片進行系統安裝." -#: boot.sh:169 +#: boot.sh:171 msgid "Cmdline:\\n" msgstr "Cmdline:\\n" -#: boot.sh:175 +#: boot.sh:177 msgid "Reboot to boot directly in DSM" msgstr "重啓並直接進入 DSM 引導" -#: boot.sh:181 init.sh:124 +#: boot.sh:183 init.sh:129 msgid "Detected %s network cards." msgstr "檢測到 %s 個網卡." -#: boot.sh:182 init.sh:125 +#: boot.sh:184 init.sh:130 msgid "Checking Connect." msgstr "檢查連接." -#: boot.sh:194 init.sh:135 +#: boot.sh:196 init.sh:140 msgid "connected." msgstr "已連接." -#: boot.sh:201 init.sh:142 +#: boot.sh:203 init.sh:147 msgid "Waiting IP." msgstr "獲取 IP." -#: boot.sh:208 init.sh:149 +#: boot.sh:210 init.sh:154 msgid "DOWN" msgstr "關閉" -#: boot.sh:212 init.sh:153 +#: boot.sh:214 init.sh:158 msgid "NOT CONNECTED" msgstr "未連接" -#: boot.sh:216 init.sh:157 +#: boot.sh:218 init.sh:162 msgid "TIMEOUT (Please check the IP on the router.)" msgstr "超時 (請檢查路由器上的 IP.)" -#: boot.sh:222 +#: boot.sh:224 msgid "Access \\033[1;34mhttp://%s:5000\\033[0m to connect the DSM via web." msgstr "在瀏覽器中訪問 \\033[1;34mhttp://%s:5000\\033[0m 連結 DSM." -#: boot.sh:234 +#: boot.sh:236 msgid "%2ds (Changing access(ssh/web) status will interrupt boot)" msgstr "%2ds ((ssh/web)链接状态改變將中斷啟動)" -#: boot.sh:238 +#: boot.sh:240 msgid "access(ssh/web) status has changed and booting is interrupted." msgstr "(ssh/web)链接狀態已改變, 啟動被中斷." -#: boot.sh:248 +#: boot.sh:250 msgid "Loading DSM kernel ..." msgstr "加載 DSM kernel ..." -#: boot.sh:264 +#: boot.sh:266 msgid "Warning, running kexec with --noefi param, strange things will happen!!" msgstr "警告, 使用'--noefi'參數運行'kexec', 可能有不好的事情發生!!" -#: boot.sh:269 +#: boot.sh:271 msgid "Booting ..." msgstr "引導中 ..." -#: boot.sh:271 +#: boot.sh:273 msgid "" "[This interface will not be operational. Please wait a few minutes.\\nFind " "DSM via http://find.synology.com/ or Synology Assistant and connect.]" @@ -161,343 +161,343 @@ msgstr "" msgid "Network devices not found!" msgstr "網卡未找到!" -#: init.sh:88 +#: init.sh:92 msgid "Loader disk neither USB or SATA/SCSI/NVME/MMC DoM" msgstr "引導磁碟僅支持 USB 或者 SATA/SCSI/NVME/MMC DoM" -#: init.sh:96 +#: init.sh:101 msgid "Loader disk:" msgstr "引導盤:" -#: init.sh:104 +#: init.sh:109 msgid "Loading keymap" msgstr "加載 keymap" -#: init.sh:114 +#: init.sh:119 msgid "User requested edit settings." msgstr "用戶觸發編輯設定." -#: init.sh:163 +#: init.sh:168 msgid "" "Access \\033[1;34mhttp://%s:7681\\033[0m to configure the loader via web " "terminal." msgstr "" "在瀏覽器中訪問 \\033[1;34mhttp://%s:7681\\033[0m 進入 WEB 終端進行配寘." -#: init.sh:173 +#: init.sh:178 msgid "Call \\033[1;32mmenu.sh\\033[0m to configure loader" msgstr "執行 \\033[1;32mmenu.sh\\033[0m 進入設定選單" -#: init.sh:175 +#: init.sh:180 msgid "User config is on" msgstr "用戶設定檔位於" -#: init.sh:176 +#: init.sh:181 msgid "TTYD: \\033[1;34mhttp://rr:7681/\\033[0m" msgstr "TTYD: \\033[1;34mhttp://rr:7681/\\033[0m" -#: init.sh:177 +#: init.sh:182 msgid "DUFS: \\033[1;34mhttp://rr:7304/\\033[0m" msgstr "DUFS: \\033[1;34mhttp://rr:7304/\\033[0m" -#: init.sh:178 +#: init.sh:183 msgid "TTYD&DUFS: \\033[1;34mhttp://rr:80/\\033[0m" msgstr "TTYD&DUFS: \\033[1;34mhttp://rr:80/\\033[0m" -#: init.sh:180 +#: init.sh:185 msgid "Default SSH \\033[1;31mroot\\033[0m password is" msgstr "默認 SSH 的 \\033[1;31mroot\\033[0m 密碼為" -#: init.sh:197 +#: init.sh:202 msgid "" "You have less than 4GB of RAM, if errors occur in loader creation, please " "increase the amount of memory." msgstr "您的 RAM 不足 4GB, 如果在創建引導時出現錯誤, 請新增記憶體." -#: menu.sh:102 menu.sh:136 menu.sh:179 +#: menu.sh:106 menu.sh:140 menu.sh:183 msgid "Model" msgstr "型號" -#: menu.sh:103 +#: menu.sh:107 msgid "Reading models" msgstr "讀取型號" -#: menu.sh:113 +#: menu.sh:117 msgid "Compatibility judgment" msgstr "相容性判斷" -#: menu.sh:134 +#: menu.sh:138 msgid "Disable flags restriction" msgstr "禁用標誌限制" -#: menu.sh:135 +#: menu.sh:139 msgid "Show all models" msgstr "顯示所有型號" -#: menu.sh:137 +#: menu.sh:141 msgid "Choose the model" msgstr "選擇型號" -#: menu.sh:230 menu.sh:241 menu.sh:247 menu.sh:258 menu.sh:295 menu.sh:315 -#: menu.sh:365 +#: menu.sh:234 menu.sh:242 menu.sh:254 menu.sh:272 menu.sh:307 menu.sh:332 +#: menu.sh:384 msgid "Product Version" msgstr "版本" -#: menu.sh:231 +#: menu.sh:235 msgid "Choose a product version" msgstr "選擇版本" -#: menu.sh:242 +#: menu.sh:243 msgid "" "The current version has been set to %s. Do you want to reset the version?" msgstr "當前版本已設定為 %s. 是否要重置版本?" -#: menu.sh:248 +#: menu.sh:255 msgid "" "This version does not support UEFI startup, Please select another version or " "switch the startup mode." msgstr "該版本不支持 UEFI 啟動, 請選擇其他版本或者切換啟動模式." -#: menu.sh:259 +#: menu.sh:273 msgid "Get pat data ..." msgstr "獲取 pat 數據 ..." -#: menu.sh:285 menu.sh:1033 menu.sh:1181 +#: menu.sh:297 menu.sh:1052 menu.sh:1200 msgid "Network error, please check the network connection and try again." msgstr "網絡錯誤, 請檢查網絡連接然後重試." -#: menu.sh:286 +#: menu.sh:298 msgid "Or use 'Parse pat' function for installation." msgstr "或者使用 '解析 Pat' 功能進行安裝." -#: menu.sh:288 +#: menu.sh:300 msgid "" "Failed to get pat data,\\nPlease manually fill in the URL and md5sum of the " "corresponding version of pat.\\nOr click 'Retry'." msgstr "" "獲取 pat 數據失敗,\\n請手動填寫相應版本 pat 的 URL 和 MD5.\\n或者按 '重試'." -#: menu.sh:293 +#: menu.sh:305 msgid "" "Successfully to get pat data, Please confirm.\\nOr modify the URL and md5sum " "to you need." msgstr "獲取 pat 數據成功,\\n請確認或者按需修改 URL 和 MD5." -#: menu.sh:296 +#: menu.sh:308 msgid "Retry" msgstr "重試" -#: menu.sh:316 menu.sh:418 +#: menu.sh:333 menu.sh:437 msgid "Reconfiguring Synoinfo, Addons and Modules" msgstr "重新配寘 Syninfo, 挿件和模塊" -#: menu.sh:350 +#: menu.sh:368 msgid "" "You have selected the %s and %s.\\n'Parse Pat' will overwrite the previous " "selection.\\nDo you want to continue?" msgstr "你已經選擇了 %s 和 %s\\n‘解析 Pat' 將覆蓋先前的選擇.\\n是否繼續?" -#: menu.sh:351 +#: menu.sh:369 msgid "Parse Pat" msgstr "解析 Pat" -#: menu.sh:359 +#: menu.sh:378 msgid "No pat file found in /tmp/pats/ folder!\\n" msgstr "在 /tmp/pats/ 資料夾中找不到 pat 檔案!\\n" -#: menu.sh:360 +#: menu.sh:379 msgid "" "Please upload the pat file to /tmp/pats/ folder via DUFS and re-enter this " "option.\\n" msgstr "" "請透過 DUFS 將 pat 檔案上傳到 /tmp/pats/ 資料夾,然後重新进入此選項.\\n" -#: menu.sh:361 menu.sh:371 menu.sh:2741 menu.sh:2742 menu.sh:2743 menu.sh:2744 -#: menu.sh:2745 menu.sh:2746 menu.sh:2752 menu.sh:2775 menu.sh:2786 -#: menu.sh:2797 menu.sh:2808 menu.sh:2822 menu.sh:2833 menu.sh:2850 -#: menu.sh:2869 +#: menu.sh:380 menu.sh:390 menu.sh:2808 menu.sh:2809 menu.sh:2810 menu.sh:2811 +#: menu.sh:2812 menu.sh:2813 menu.sh:2819 menu.sh:2842 menu.sh:2853 +#: menu.sh:2864 menu.sh:2875 menu.sh:2889 menu.sh:2900 menu.sh:2917 +#: menu.sh:2936 msgid "Update" msgstr "更新" -#: menu.sh:366 +#: menu.sh:385 msgid "Choose a pat file" msgstr "選擇一个 pat 檔案" -#: menu.sh:372 menu.sh:384 menu.sh:1138 +#: menu.sh:391 menu.sh:403 menu.sh:1157 msgid "pat Invalid, try again!" msgstr "無效的 pat, 請重試!" -#: menu.sh:377 +#: menu.sh:396 msgid "Parse %s ..." msgstr "解析 %s ..." -#: menu.sh:402 +#: menu.sh:421 msgid "Currently, %s is not supported." msgstr "目前,不支援 %s." -#: menu.sh:414 +#: menu.sh:433 msgid "Currently, %s of %s is not supported." msgstr "目前,不支援 %s-%s." -#: menu.sh:475 menu.sh:1285 menu.sh:2951 menu.sh:2969 +#: menu.sh:494 menu.sh:1293 menu.sh:3021 menu.sh:3039 msgid "Main menu" msgstr "主選單" -#: menu.sh:476 menu.sh:1286 +#: menu.sh:495 menu.sh:1294 msgid "Making ..." msgstr "編譯中 ..." -#: menu.sh:478 menu.sh:1288 +#: menu.sh:497 menu.sh:1296 msgid "Error" msgstr "錯誤" -#: menu.sh:511 menu.sh:528 menu.sh:533 menu.sh:539 menu.sh:550 menu.sh:558 -#: menu.sh:581 menu.sh:588 menu.sh:592 menu.sh:606 menu.sh:610 menu.sh:618 -#: menu.sh:621 menu.sh:2562 menu.sh:2592 menu.sh:2743 menu.sh:2776 menu.sh:2780 +#: menu.sh:530 menu.sh:547 menu.sh:552 menu.sh:558 menu.sh:569 menu.sh:577 +#: menu.sh:600 menu.sh:607 menu.sh:611 menu.sh:625 menu.sh:629 menu.sh:637 +#: menu.sh:640 menu.sh:2629 menu.sh:2659 menu.sh:2810 menu.sh:2843 menu.sh:2847 msgid "Addons" msgstr "挿件" -#: menu.sh:512 menu.sh:642 menu.sh:818 menu.sh:953 menu.sh:1306 menu.sh:2952 +#: menu.sh:531 menu.sh:661 menu.sh:837 menu.sh:972 menu.sh:1314 menu.sh:3022 msgid "Choose a option" msgstr "設定" -#: menu.sh:513 +#: menu.sh:532 msgid "Add an addon" msgstr "添加挿件" -#: menu.sh:514 +#: menu.sh:533 msgid "Delete addons" msgstr "删除挿件" -#: menu.sh:515 +#: menu.sh:534 msgid "Show all addons" msgstr "顯示所有挿件" -#: menu.sh:516 +#: menu.sh:535 msgid "Upload a external addon" msgstr "上傳外部挿件" -#: menu.sh:517 menu.sh:649 menu.sh:816 menu.sh:951 menu.sh:1311 menu.sh:1443 -#: menu.sh:2749 menu.sh:2949 menu.sh:3044 +#: menu.sh:536 menu.sh:668 menu.sh:835 menu.sh:970 menu.sh:1319 menu.sh:2134 +#: menu.sh:2816 menu.sh:3019 menu.sh:3114 msgid "Exit" msgstr "退出" -#: menu.sh:529 +#: menu.sh:548 msgid "No available addons to add" msgstr "沒有可用的挿件可添加" -#: menu.sh:534 +#: menu.sh:553 msgid "Select an addon" msgstr "選擇挿件" -#: menu.sh:540 +#: menu.sh:559 msgid "Type a optional params to addon" msgstr "輸入挿件的加載參數" -#: menu.sh:551 +#: menu.sh:570 msgid "No user addons to remove" msgstr "沒有要删除的用戶挿件" -#: menu.sh:559 +#: menu.sh:578 msgid "Select addon to remove" msgstr "選擇要删除的挿件" -#: menu.sh:572 +#: menu.sh:591 msgid "" "Name with color \"\\Z4blue\\Zn\" have been added, with color \"black\" are " "not added.\\n\\n" msgstr "名稱顏色為\"\\Z4藍色\\Zn\"的為已添加, 顏色為\"黑色\"的為未添加..\\n\\n" -#: menu.sh:587 menu.sh:721 menu.sh:1319 menu.sh:2820 +#: menu.sh:606 menu.sh:740 menu.sh:1327 menu.sh:2887 msgid "" "This feature is only available when accessed via ssh (Requires a terminal " "that supports ZModem protocol).\\n" msgstr "此功能僅通過 ssh 訪問時可用(需要支援 ZModem 協定的終端).\\n" -#: menu.sh:593 +#: menu.sh:612 msgid "Please upload the *.addons file." msgstr "請上傳 *.addons 檔案." -#: menu.sh:607 menu.sh:756 menu.sh:2851 menu.sh:2870 +#: menu.sh:626 menu.sh:775 menu.sh:2918 menu.sh:2937 msgid "Not a valid file, please try again!" msgstr "不是有效的檔案, 請重試!" -#: menu.sh:611 +#: menu.sh:630 msgid "The addon already exists. Do you want to overwrite it?" msgstr "該挿件已存在, 是否覆盖?" -#: menu.sh:619 +#: menu.sh:638 msgid "Addon '%s' added to loader, Please enable it in 'Add an addon' menu." msgstr "挿件 '%s' 已添加到引導中, 請在'添加挿件'選單中開啟." -#: menu.sh:622 +#: menu.sh:641 msgid "File format not recognized!" msgstr "檔案格式無法識別!" -#: menu.sh:641 menu.sh:655 menu.sh:668 menu.sh:705 menu.sh:722 menu.sh:732 -#: menu.sh:735 menu.sh:751 menu.sh:755 menu.sh:769 menu.sh:775 menu.sh:2607 -#: menu.sh:2642 menu.sh:2744 menu.sh:2787 menu.sh:2791 +#: menu.sh:660 menu.sh:674 menu.sh:687 menu.sh:724 menu.sh:741 menu.sh:751 +#: menu.sh:754 menu.sh:770 menu.sh:774 menu.sh:788 menu.sh:794 menu.sh:2674 +#: menu.sh:2709 menu.sh:2811 menu.sh:2854 menu.sh:2858 msgid "Modules" msgstr "模塊" -#: menu.sh:643 +#: menu.sh:662 msgid "Show/Select modules" msgstr "顯示/選擇模塊" -#: menu.sh:644 +#: menu.sh:663 msgid "Select loaded modules" msgstr "選擇已識別的模塊" -#: menu.sh:645 +#: menu.sh:664 msgid "Upload a external module" msgstr "上傳一個外部模塊" -#: menu.sh:646 +#: menu.sh:665 msgid "Deselect i915 with dependencies" msgstr "取消選擇 i915 及其依賴模組" -#: menu.sh:647 +#: menu.sh:666 msgid "Priority use of official drivers:" msgstr "優先使用官方驅動:" -#: menu.sh:648 +#: menu.sh:667 msgid "Edit modules that need to be copied to DSM" msgstr "編輯需要複製到 DSM 的模塊" -#: menu.sh:656 +#: menu.sh:675 msgid "Reading modules ..." msgstr "讀取模塊中 ..." -#: menu.sh:669 +#: menu.sh:688 msgid "Select all" msgstr "全選全部" -#: menu.sh:670 +#: menu.sh:689 msgid "Deselect all" msgstr "取消全選" -#: menu.sh:671 +#: menu.sh:690 msgid "Select modules to include" msgstr "選擇要加載的模塊" -#: menu.sh:706 +#: menu.sh:725 msgid "Selecting loaded modules" msgstr "選擇已識別的模塊" -#: menu.sh:727 +#: menu.sh:746 msgid "" "This function is experimental and dangerous. If you don't know much, please " "exit.\\n" msgstr "該功能是實驗性的且危險的, 如果你不瞭解, 請退出.\\n" -#: menu.sh:728 +#: menu.sh:747 msgid "" "The imported .ko of this function will be implanted into the corresponding " "arch's modules package, which will affect all models of the arch.\\n" msgstr "" "該功能導入 .ko 將被植入相應的架構的模塊包中, 這將影響該架構的所有型號.\\n" -#: menu.sh:729 +#: menu.sh:748 msgid "" "This program will not determine the availability of imported modules or even " "make type judgments, as please double check if it is correct.\\n" @@ -505,7 +505,7 @@ msgstr "" "該程式不會判斷導入的驅動模塊的可用性, 甚至不會做類型判斷, 因從請你再三確認是" "否正確.\\n" -#: menu.sh:730 +#: menu.sh:749 msgid "" "If you want to remove it, please go to the \"Update Menu\" -> \"Update " "modules\" to forcibly update the modules. All imports will be reset.\\n" @@ -513,62 +513,62 @@ msgstr "" "如果您想删除它, 請轉到 \"更新\"->\"更新模塊\" 強制更新模塊, 所有導入都將被重" "置.\\n" -#: menu.sh:731 +#: menu.sh:750 msgid "Do you want to continue?" msgstr "是否繼續?" -#: menu.sh:736 +#: menu.sh:755 msgid "Please upload the *.ko file." msgstr "請上傳 *.ko 檔案." -#: menu.sh:752 +#: menu.sh:771 msgid "Module '%s' added to %s-%s" msgstr "模塊 '%s' 已添加到 %s-%s" -#: menu.sh:770 +#: menu.sh:789 msgid "No i915 with dependencies module to deselect." msgstr "沒有 i915 及其依賴模組取消選擇." -#: menu.sh:776 +#: menu.sh:795 msgid "Module %s deselected.\\n" msgstr "模組 %s 已取消選擇.\\n" -#: menu.sh:790 menu.sh:1373 menu.sh:2282 menu.sh:2289 menu.sh:2312 +#: menu.sh:809 menu.sh:1381 menu.sh:1408 menu.sh:1415 menu.sh:1438 msgid "Edit with caution" msgstr "請謹慎編輯" -#: menu.sh:810 +#: menu.sh:829 msgid "Add/Edit a cmdline item" msgstr "添加/編輯 cmdline 參數" -#: menu.sh:811 +#: menu.sh:830 msgid "Show/Delete cmdline items" msgstr "顯示/删除 cmdline 參數" -#: menu.sh:813 +#: menu.sh:832 msgid "Define SN/MAC" msgstr "自定義 SN/MAC" -#: menu.sh:815 +#: menu.sh:834 msgid "Show model inherent cmdline" msgstr "顯示型號默認的 cmdline 參數" -#: menu.sh:817 menu.sh:836 menu.sh:845 menu.sh:869 menu.sh:877 menu.sh:894 -#: menu.sh:905 menu.sh:937 +#: menu.sh:836 menu.sh:855 menu.sh:864 menu.sh:888 menu.sh:896 menu.sh:913 +#: menu.sh:924 menu.sh:956 msgid "Cmdline" msgstr "Cmdline" -#: menu.sh:824 +#: menu.sh:843 msgid "Commonly used cmdlines:\\n" msgstr "常用 cmdlines:\\n" -#: menu.sh:825 +#: menu.sh:844 msgid "" " * \\Z4disable_mtrr_trim=\\Zn\\n disables kernel trim any uncacheable " "memory out.\\n" msgstr " * \\Z4disable_mtrr_trim=\\Zn\\n 禁用內核修剪任何不可緩存的內存.\\n" -#: menu.sh:826 +#: menu.sh:845 msgid "" " * \\Z4intel_idle.max_cstate=1\\Zn\\n Set the maximum C-state depth " "allowed by the intel_idle driver.\\n" @@ -576,26 +576,26 @@ msgstr "" " * \\Z4intel_idle.max_cstate=1\\Zn\\n 設定 intel_idle 驅動程式允許使用的最" "大 C-state 深度.\\n" -#: menu.sh:827 +#: menu.sh:846 msgid "" " * \\Z4pcie_port_pm=off\\Zn\\n Turn off the power management of the PCIe " "port.\\n" msgstr " * \\Z4pcie_port_pm=off\\Zn\\n 關閉 PCIe 連接埠的電源管理.\\n" -#: menu.sh:828 +#: menu.sh:847 msgid " * \\Z4libata.force=noncq\\Zn\\n Disable NCQ for all SATA ports.\\n" msgstr " * \\Z4libata.force=noncq\\Zn\\n 停用磁碟的 NCQ 功能.\\n" -#: menu.sh:829 +#: menu.sh:848 msgid " * \\Z4SataPortMap=??\\Zn\\n Sata Port Map.\\n" msgstr " * \\Z4SataPortMap=??\\Zn\\n Sata Port Map.\\n" -#: menu.sh:830 +#: menu.sh:849 msgid "" " * \\Z4DiskIdxMap=??\\Zn\\n Disk Index Map, Modify disk name sequence.\\n" msgstr " * \\Z4DiskIdxMap=??\\Zn\\n Disk Index Map, 修改磁碟名稱順序.\\n" -#: menu.sh:831 +#: menu.sh:850 msgid "" " * \\Z4i915.enable_guc=2\\Zn\\n Enable the GuC firmware on Intel graphics " "hardware.(value: 1,2 or 3)\\n" @@ -603,212 +603,208 @@ msgstr "" " * \\Z4i915.enable_guc=2\\Zn\\n 啟用 Intel 核顯上的 GuC 韌體.(值: 1,2 or " "3)\\n" -#: menu.sh:832 +#: menu.sh:851 msgid "" " * \\Z4i915.max_vfs=7\\Zn\\n Set the maximum number of virtual functions " "(VFs) that can be created for Intel graphics hardware.\\n" msgstr "" " * \\Z4i915.max_vfs=7\\Zn\\n 設定可建立虛擬核顯 (VFs) 的最大數量.\\n" -#: menu.sh:833 menu.sh:964 +#: menu.sh:852 menu.sh:983 msgid "\\nEnter the parameter name and value you need to add.\\n" msgstr "\\n輸入需要新增的參數名稱和值.\\n" -#: menu.sh:846 menu.sh:977 +#: menu.sh:865 menu.sh:996 msgid "Invalid parameter name, retry?" msgstr "無效的數名稱, 重試?" -#: menu.sh:870 +#: menu.sh:889 msgid "No user cmdline to remove" msgstr "沒有 cmdline 參數被删除" -#: menu.sh:878 +#: menu.sh:897 msgid "Select cmdline to remove" msgstr "選擇要删除的參數" -#: menu.sh:889 +#: menu.sh:908 msgid "Note: (MAC will not be set to NIC, Only for activation services.)" msgstr "注意: (MAC 不會設定到 NIC,僅用於啟動服務.)" -#: menu.sh:895 +#: menu.sh:914 msgid "Random" msgstr "隨機" -#: menu.sh:906 +#: menu.sh:925 msgid "Invalid SN/MAC, retry?" msgstr "無效的 SN/MAC, 重試?" -#: menu.sh:949 +#: menu.sh:968 msgid "Add/edit a synoinfo item" msgstr "添加/編輯 Synoinfo 參數" -#: menu.sh:950 +#: menu.sh:969 msgid "Show/Delete synoinfo items" msgstr "顯示/删除 Synoinfo 參數" -#: menu.sh:952 menu.sh:967 menu.sh:976 menu.sh:1001 menu.sh:1009 +#: menu.sh:971 menu.sh:986 menu.sh:995 menu.sh:1020 menu.sh:1028 msgid "Synoinfo" msgstr "Synoinfo" -#: menu.sh:959 +#: menu.sh:978 msgid "Commonly used synoinfo:\\n" msgstr "常用 synoinfo:\\n" -#: menu.sh:960 +#: menu.sh:979 msgid " * \\Z4maxdisks=??\\Zn\\n Maximum number of disks supported.\\n" msgstr " * \\Z4maxdisks=??\\Zn\\n 最大硬碟數.\\n" -#: menu.sh:961 +#: menu.sh:980 msgid " * \\Z4internalportcfg=0x????\\Zn\\n Internal(sata) disks mask.\\n" msgstr " * \\Z4internalportcfg=0x????\\Zn\\n Internal(sata) 磁碟遮罩.\\n" -#: menu.sh:962 +#: menu.sh:981 msgid " * \\Z4esataportcfg=0x????\\Zn\\n Esata disks mask.\\n" msgstr " * \\Z4esataportcfg=0x????\\Zn\\n Esata 磁碟遮罩.\\n" -#: menu.sh:963 +#: menu.sh:982 msgid " * \\Z4usbportcfg=0x????\\Zn\\n USB disks mask.\\n" msgstr " * \\Z4usbportcfg=0x????\\Zn\\n USB 磁碟遮罩.\\n" -#: menu.sh:1002 +#: menu.sh:1021 msgid "No synoinfo entries to remove" msgstr "沒有 Synoinfo 參數被删除" -#: menu.sh:1010 +#: menu.sh:1029 msgid "Select synoinfo entry to remove" msgstr "選擇要删除的參數" -#: menu.sh:1045 +#: menu.sh:1064 msgid "Downloading old pat to extract synology .pat extractor..." msgstr "下載舊 pat, 選取 .pat 解密程式中..." -#: menu.sh:1051 menu.sh:1203 +#: menu.sh:1070 menu.sh:1222 msgid "Check internet or cache disk space.\\nError: %d:%d" msgstr "請檢查網際網路或磁碟空間.\\n錯誤: %d:%d" -#: menu.sh:1091 +#: menu.sh:1110 msgid "Uncompressed tar" msgstr "未壓縮 tar" -#: menu.sh:1095 +#: menu.sh:1114 msgid "Compressed tar" msgstr "已壓縮 tar" -#: menu.sh:1099 +#: menu.sh:1118 msgid "Encrypted" msgstr "已加密" -#: menu.sh:1103 +#: menu.sh:1122 msgid "" "Could not determine if pat file is encrypted or not, maybe corrupted, try " "again!" msgstr "無法確定 pat 檔案是否加密, 可能已損壞, 請重試!" -#: menu.sh:1110 menu.sh:1219 +#: menu.sh:1129 menu.sh:1238 msgid "Disassembling %s: " msgstr "解壓縮 %s: " -#: menu.sh:1117 +#: menu.sh:1136 msgid "Extractor cached." msgstr "已存在解密程式." -#: menu.sh:1123 menu.sh:1126 +#: menu.sh:1142 menu.sh:1145 msgid "Extracting ..." msgstr "解壓中 ..." -#: menu.sh:1157 +#: menu.sh:1176 msgid "%s cached." msgstr "%s 已緩存." -#: menu.sh:1160 +#: menu.sh:1179 msgid "The cache has been cleared. Please re 'Parse pat' before build." msgstr "緩存已被清除. 請在生成之前重新 \"解析 pat\"." -#: menu.sh:1164 +#: menu.sh:1183 msgid "" -"The cache has been cleared. Please re 'Try to ecovery a installed DSM " +"The cache has been cleared. Please re 'Try to recovery a installed DSM " "system' before build." msgstr "緩存已被清除. 請在生成之前重新 \"嘗試恢復已安裝 DSM 的系統\"." -#: menu.sh:1168 +#: menu.sh:1187 msgid "The pat url is empty. Please re 'Choose a version' before build." msgstr "pat 的 url 为空. 請在生成之前重新 \"選擇版本\"." -#: menu.sh:1173 +#: menu.sh:1192 msgid "Cleaning cache ..." msgstr "清除緩存 ..." -#: menu.sh:1187 +#: menu.sh:1206 msgid "" "Based on the current network situation, switch to %s mirror to downloading." msgstr "根據當前的網絡狀況, 已切換到 %s 鏡像伺服器進行下載." -#: menu.sh:1190 +#: menu.sh:1209 msgid "Downloading %s ..." msgstr "下載 %s 中 ..." -#: menu.sh:1209 +#: menu.sh:1228 msgid "Checking hash of %s: " msgstr "檢查 %s 的 hash: " -#: menu.sh:1212 +#: menu.sh:1231 msgid "" "md5 hash of pat not match, Please reget pat data from the version menu and " "try again!" msgstr "pat 的 md5 Hash 不匹配, 請在版本選單中重新獲取 pat 數據後重試!" -#: menu.sh:1215 menu.sh:1231 menu.sh:1241 +#: menu.sh:1234 menu.sh:1250 menu.sh:1260 msgid "OK" msgstr "OK" -#: menu.sh:1226 +#: menu.sh:1245 msgid "Setting hash: " msgstr "設定 hash: " -#: menu.sh:1233 +#: menu.sh:1252 msgid "Copying files: " msgstr "拷貝檔案: " -#: menu.sh:1257 -msgid "Addon %s not found!" -msgstr "挿件 %s 未找到!" - -#: menu.sh:1279 +#: menu.sh:1287 msgid "Cleaning ..." msgstr "清除中 ..." -#: menu.sh:1281 +#: menu.sh:1289 msgid "Ready!" msgstr "已就绪!" -#: menu.sh:1305 menu.sh:1321 menu.sh:1325 menu.sh:1342 menu.sh:1347 -#: menu.sh:1366 menu.sh:1378 menu.sh:1430 +#: menu.sh:1313 menu.sh:1329 menu.sh:1333 menu.sh:1350 menu.sh:1355 +#: menu.sh:1374 menu.sh:1386 menu.sh:2101 msgid "Custom DTS" msgstr "自定義 DTS" -#: menu.sh:1307 +#: menu.sh:1315 msgid "Custom dts: " msgstr "自定義 dts: " -#: menu.sh:1308 +#: menu.sh:1316 msgid "Upload dts file" msgstr "上傳 dts 檔案" -#: menu.sh:1309 +#: menu.sh:1317 msgid "Delete dts file" msgstr "删除 dts 檔案" -#: menu.sh:1310 +#: menu.sh:1318 msgid "Edit dts file" msgstr "編輯 dts 檔案" -#: menu.sh:1320 +#: menu.sh:1328 msgid "" "Or upload the dts file to %s via DUFS, Will be automatically imported when " "building." msgstr "或透過 DUFS 上傳 dts 檔案到 %s,編譯時會自動匯入。" -#: menu.sh:1326 +#: menu.sh:1334 msgid "" "Currently, only dts format files are supported. Please prepare and click to " "confirm uploading.\\n(saved in /mnt/p3/users/)" @@ -816,554 +812,539 @@ msgstr "" "現時, 只支持 dts 格式的檔案, 請準備並點擊確認上傳.\\n(保存於 /mnt/p3/users/ " "中)" -#: menu.sh:1343 menu.sh:1379 +#: menu.sh:1351 menu.sh:1387 msgid "Not a valid dts file, please try again!" msgstr "dts 檔案無效, 請重試!" -#: menu.sh:1348 +#: menu.sh:1356 msgid "A valid dts file, Automatically import at compile time." msgstr "dts 檔案有效, 將在編譯時自動導入." -#: menu.sh:1367 +#: menu.sh:1375 msgid "No dts file to edit. Please upload first!" msgstr "沒有可編輯的 dts 檔案,請先上傳!" -#: menu.sh:1403 -msgid "Switch LKM version:" -msgstr "選擇 LKM 版本:" - -#: menu.sh:1404 -msgid "HDD sort(hotplug):" -msgstr "HDD 排序(hotplug):" - -#: menu.sh:1407 -msgid "Switch direct boot:" -msgstr "切換直接啟動:" - -#: menu.sh:1409 -msgid "Timeout of get ip in boot:" -msgstr "啟動時取得 IP 的超時時間:" - -#: menu.sh:1410 -msgid "Timeout of boot wait:" -msgstr "啟動超時時間:" - -#: menu.sh:1411 -msgid "kernel switching method:" -msgstr "內核切換的管道:" - -#: menu.sh:1413 -msgid "Reboot on kernel panic:" -msgstr "內核恐慌時重新啟動:" - -#: menu.sh:1415 -msgid "Set static IP" -msgstr "設定靜態 IP" - -#: menu.sh:1416 -msgid "Set wireless account" -msgstr "設定無線帳號" - -#: menu.sh:1417 -msgid "Edit user config file manually" -msgstr "編輯用戶設定檔" - -#: menu.sh:1418 -msgid "Edit grub.cfg file manually" -msgstr "編輯 grub.cfg" - -#: menu.sh:1419 -msgid "Try to recovery a installed DSM system" -msgstr "嘗試恢復已安裝 DSM 的系統" - -#: menu.sh:1420 -msgid "Show disks information" -msgstr "顯示磁片資訊" - -#: menu.sh:1422 -msgid "show/modify the current pat data" -msgstr "顯示/修改當前 pat 下載連結" - -#: menu.sh:1424 -msgid "Allow downgrade installation" -msgstr "允許降級安裝" - -#: menu.sh:1425 -msgid "Format disk(s) # Without loader disk" -msgstr "格式化磁碟(s) # 不含開機磁碟" - -#: menu.sh:1426 -msgid "Reset DSM system password" -msgstr "重置 DSM 系統密碼" - -#: menu.sh:1427 -msgid "Force enable Telnet&SSH of DSM system" -msgstr "強制開啟 DSM 的 Telnet&SSH" - -#: menu.sh:1428 -msgid "Save modifications of '/opt/rr'" -msgstr "保存'/opt/rr'的修改" - -#: menu.sh:1432 -msgid "Custom patch script # Developer" -msgstr "自定義補丁腳本 # 開發" - -#: menu.sh:1434 -msgid "Use EMMC as the system disk:" -msgstr "使用EMMC作為系統磁片:" - -#: menu.sh:1436 -msgid "Clone bootloader disk to another disk" -msgstr "克隆引導盤到另一個磁碟" - -#: menu.sh:1437 -msgid "Report bugs to the author" -msgstr "向作者报告错误" - -#: menu.sh:1438 -msgid "Install development tools" -msgstr "安裝開發者工具" - -#: menu.sh:1439 -msgid "Show QR logo:" -msgstr "顯示 QR logo:" - -#: menu.sh:1440 -msgid "Set global proxy" -msgstr "設定全域代理" - -#: menu.sh:1441 -msgid "Set github proxy" -msgstr "設定 GitHub 代理" - -#: menu.sh:1442 -msgid "Vigorously miracle" -msgstr "大力出奇蹟" - -#: menu.sh:1445 menu.sh:1469 menu.sh:1481 menu.sh:1501 menu.sh:1524 -#: menu.sh:1548 menu.sh:1553 menu.sh:1565 menu.sh:1574 menu.sh:1596 -#: menu.sh:1697 menu.sh:1704 menu.sh:1722 menu.sh:1735 menu.sh:1738 -#: menu.sh:1751 menu.sh:1755 menu.sh:1756 menu.sh:1761 menu.sh:1765 -#: menu.sh:1780 menu.sh:1782 menu.sh:1805 menu.sh:1809 menu.sh:1816 -#: menu.sh:1822 menu.sh:1840 menu.sh:1842 menu.sh:1846 menu.sh:1868 -#: menu.sh:1871 menu.sh:1875 menu.sh:1878 menu.sh:1893 menu.sh:1906 -#: menu.sh:1938 menu.sh:1942 menu.sh:1948 menu.sh:1954 menu.sh:1960 -#: menu.sh:1991 menu.sh:2004 menu.sh:2008 menu.sh:2018 menu.sh:2023 -#: menu.sh:2030 menu.sh:2032 menu.sh:2044 menu.sh:2055 menu.sh:2077 -#: menu.sh:2088 menu.sh:2105 -msgid "Advanced" -msgstr "高級" - -#: menu.sh:1446 -msgid "Advanced option" -msgstr "高級設定" - -#: menu.sh:1470 menu.sh:1482 menu.sh:1502 -msgid "Choose a time(seconds)" -msgstr "選擇一個時間(秒)" - -#: menu.sh:1512 +#: menu.sh:1450 msgid "Temporary IP: (UI will not refresh)" msgstr "臨時 IP: (UI 不會重繪)" -#: menu.sh:1549 +#: menu.sh:1462 menu.sh:1486 menu.sh:1494 menu.sh:1506 menu.sh:1515 +#: menu.sh:1537 menu.sh:1629 menu.sh:1646 menu.sh:1650 menu.sh:1651 +#: menu.sh:1656 menu.sh:1660 menu.sh:1675 menu.sh:1677 menu.sh:1854 +#: menu.sh:1868 menu.sh:1871 menu.sh:1899 menu.sh:1903 menu.sh:1910 +#: menu.sh:1916 menu.sh:1935 menu.sh:1937 menu.sh:1945 menu.sh:1968 +#: menu.sh:1971 menu.sh:1986 menu.sh:1990 menu.sh:1996 menu.sh:2002 +#: menu.sh:2008 menu.sh:2039 menu.sh:2055 menu.sh:2066 menu.sh:2136 +#: menu.sh:2157 menu.sh:2182 menu.sh:2194 menu.sh:2214 menu.sh:2251 +#: menu.sh:2306 menu.sh:2310 menu.sh:2320 menu.sh:2326 menu.sh:2329 +#: menu.sh:2344 menu.sh:2349 menu.sh:2356 menu.sh:2358 menu.sh:2379 +msgid "Advanced" +msgstr "高級" + +#: menu.sh:1487 msgid "Setting IP ..." msgstr "設定 IP..." -#: menu.sh:1554 +#: menu.sh:1495 msgid "Scanning ..." msgstr "掃描中 ..." -#: menu.sh:1557 +#: menu.sh:1498 msgid "Scanned SSIDs:\\n" msgstr "掃描的 SSID:\\n" -#: menu.sh:1575 +#: menu.sh:1516 msgid "Invalid SSID/PSK, retry?" msgstr "無效的 SSID/PSK, 重試?" -#: menu.sh:1597 +#: menu.sh:1538 msgid "Setting ..." msgstr "設定中 ..." -#: menu.sh:1695 +#: menu.sh:1627 msgid "\\nTotal of ports: %s\\n" msgstr "\\n埠總數: %s\\n" -#: menu.sh:1696 +#: menu.sh:1628 msgid "" "\\nPorts with color \\Z1red\\Zn as DUMMY, color \\Z2\\Zbgreen\\Zn has drive " "connected." msgstr "\\n\\Z1红色\\Zn 為類比埠, \\Z2\\Zb绿色\\Zn 為已驅動的物理埠." -#: menu.sh:1703 -msgid "pat: (editable)" -msgstr "pat: (可編輯)" +#: menu.sh:1647 menu.sh:1987 +msgid "No disk found!" +msgstr "未找到磁碟!" -#: menu.sh:1719 -msgid "" -"This feature will allow you to downgrade the installation by removing the " -"VERSION file from the first partition of all disks.\\n" -msgstr "此功能通過删除所有磁碟的第一個分區的 VERSION 檔案來允許你降級安裝.\\n" - -#: menu.sh:1720 -msgid "Therefore, please insert all disks before continuing.\\n" -msgstr "囙此, 請插入所有磁碟後再進行操作.\\n" - -#: menu.sh:1721 menu.sh:1762 +#: menu.sh:1657 menu.sh:1853 msgid "" "Warning:\\nThis operation is irreversible. Please backup important data. Do " "you want to continue?" msgstr "警告:\\n該操作不可逆, 請提前備份重要數據. 是否繼續?" -#: menu.sh:1736 -msgid "Removing ..." -msgstr "删除中..." - -#: menu.sh:1737 -msgid "Remove VERSION file for all disks completed." -msgstr "已移除所有磁碟的 VERSION 檔案." - -#: menu.sh:1752 menu.sh:1939 -msgid "No disk found!" -msgstr "未找到磁碟!" - -#: menu.sh:1766 +#: menu.sh:1661 msgid "" "Warning:\\nThe current hds is in raid, do you still want to format them?" msgstr "警告:\\n當前的硬碟處於 raid 中, 是否仍要格式化?" -#: menu.sh:1781 +#: menu.sh:1676 msgid "Formatting ..." msgstr "格式化中..." -#: menu.sh:1783 +#: menu.sh:1678 msgid "Formatting is complete." msgstr "格式化完成." -#: menu.sh:1806 -msgid "The installed Syno system not found in the currently inserted disks!" -msgstr "未在當前插入的硬碟中找到已安裝的 syno 系統!" - -#: menu.sh:1810 -msgid "Choose a user name" -msgstr "選擇一個用戶" - -#: menu.sh:1817 -msgid "Type a new password for user '%s'" -msgstr "輸入用戶 '%s' 的新密碼" - -#: menu.sh:1823 -msgid "Invalid password" -msgstr "無效密碼" - -#: menu.sh:1841 -msgid "Resetting ..." -msgstr "重置中 ..." - -#: menu.sh:1843 -msgid "Password reset completed." -msgstr "重置密碼完成." - -#: menu.sh:1847 -msgid "Please insert all disks before continuing.\\n" -msgstr "請插入所有磁碟後再進行操作.\\n" - -#: menu.sh:1869 -msgid "Enabling ..." -msgstr "開啟中 ..." - -#: menu.sh:1870 -msgid "Telnet&SSH is enabled." -msgstr "Telnet&SSH 已開啟." - -#: menu.sh:1870 -msgid "Telnet&SSH is not enabled." -msgstr "Telnet&SSH 未開啟." - -#: menu.sh:1876 -msgid "" -"Warning:\\nDo not terminate midway, otherwise it may cause damage to the RR. " -"Do you want to continue?" -msgstr "警告:\\n請不要中途停止, 否則將導致 RR 引導損毀, 是否繼續?" - -#: menu.sh:1879 -msgid "" -"Saving ...\\n(It usually takes 5-10 minutes, please be patient and wait.)" -msgstr "保存中...\\n(一般需要5~10分鐘,請耐心等待.)" - -#: menu.sh:1894 -msgid "Save is complete." -msgstr "保存完成." - -#: menu.sh:1902 -msgid "This option is only informative.\\n\\n" -msgstr "此選項僅為提示. \\n\\n" - -#: menu.sh:1903 -msgid "This program reserves an interface for ramdisk custom patch scripts.\\n" -msgstr "此程式為 ramdisk 自定義補丁腳本保留了一個介面. \\n" - -#: menu.sh:1904 -msgid "Call timing: called before ramdisk packaging.\\n" -msgstr "調用時機:在 ramdisk 打包前調用. \\n" - -#: menu.sh:1905 -msgid "Location: /mnt/p3/scripts/*.sh\\n" -msgstr "位置:/mnt/p3/scripts/*.sh\\n" - -#: menu.sh:1943 -msgid "Choose a disk to clone to" -msgstr "選擇要克隆到的磁碟" - -#: menu.sh:1949 -msgid "No disk selected!" -msgstr "未選擇磁碟!" - -#: menu.sh:1955 -msgid "Disk %s size is less than 1GB and cannot be cloned!" -msgstr "磁碟 %s 的大小小於 1GB,無法克隆!" - -#: menu.sh:1959 -msgid "" -"Warning:\\nDisk %s will be formatted and written to the bootloader. Please " -"confirm that important data has been backed up. \\nDo you want to continue?" -msgstr "" -"警告:\\n磁碟 %s 將被格式化並寫入引導程式. 請確認重要資料已備份. \\n是否繼續?" - -#: menu.sh:1992 -msgid "Cloning ..." -msgstr "克隆中 ..." - -#: menu.sh:1994 -msgid "" -"Bootloader has been cloned to disk %s, please remove the current bootloader " -"disk!\\nReboot?" -msgstr "引導程式已克隆到磁碟 %s, 請移除目前引導磁碟! \\n重新啟動?" - -#: menu.sh:2005 -msgid "" -"Please via %s to download the logs,\\nAnd go to github to create an issue " -"and upload the logs." -msgstr "請透過 %s 下載日誌 logs,\\n並前往 github 建立問題並上傳日誌 logs." - -#: menu.sh:2009 -msgid "Please go to github to create an issue and upload the logs." -msgstr "請前往 github 建立問題並上傳日誌 logs." - -#: menu.sh:2013 -msgid "\\Z1No logs found!\\Zn\\n\\n" -msgstr "\\Z1日誌 logs 找不到!\\Zn\\n\\n" - -#: menu.sh:2014 -msgid "Please do as follows:\\n" -msgstr "請按如下操作:\\n" - -#: menu.sh:2015 -msgid " 1. Add dbgutils in addons and rebuild.\\n" -msgstr "1. 在外掛程式中加入 dbgutils 並重新編譯.\\n" - -#: menu.sh:2016 -msgid " 2. Wait 10 minutes after booting.\\n" -msgstr "2. 啟動後等待10分鐘.\\n" - -#: menu.sh:2017 -msgid " 3. Reboot into RR and go to this option.\\n" -msgstr "3. 重啟到 RR 並回到該選項.\\n" - -#: menu.sh:2024 -msgid "" -"This option only installs opkg package management, allowing you to install " -"more tools for use and debugging. Do you want to continue?" -msgstr "" -"該選項僅安裝 opkg 包管理工具, 使你能够安裝更多的工具以供使用和調試, 是否繼續?" - -#: menu.sh:2031 -msgid "opkg installing ..." -msgstr "opkg 安裝中 ..." - -#: menu.sh:2033 -msgid "" -"opkg install is complete. Please reconnect to ssh/web, or execute 'source ~/." -"bashrc'" -msgstr "opkg 安裝完成. 請重新連結 ssh/web, 或者執行 'source ~/.bashrc'" - -#: menu.sh:2045 -msgid "Please enter a proxy server url.(e.g., http://192.168.1.1:7981/)" -msgstr "請輸入代理伺服器 url.(e.g., http://192.168.1.1:7981/)" - -#: menu.sh:2056 menu.sh:2089 -msgid "Invalid proxy server url, continue?" -msgstr "無效的代理伺服器 url, 是否繼續?" - -#: menu.sh:2078 -msgid "Please enter a proxy server url.(e.g., https://mirror.ghproxy.com/)" -msgstr "請輸入代理伺服器 url.(e.g., https://mirror.ghproxy.com/)" - -#: menu.sh:2103 -msgid "It is expected that all restrictions on DSM will be lifted,\\n" -msgstr "預計将解除DSM一切限制,\\n" - -#: menu.sh:2104 -msgid "" -"But since upgrading is not supported, I don not want to implement it for the " -"time being.\\n" -msgstr "但由於不支援升級, 暫時不想實現.\\n" - -#: menu.sh:2116 menu.sh:2120 menu.sh:2134 menu.sh:2154 menu.sh:2170 -#: menu.sh:2178 menu.sh:2262 menu.sh:2267 menu.sh:2273 +#: menu.sh:1685 menu.sh:1689 menu.sh:1703 menu.sh:1723 menu.sh:1739 +#: menu.sh:1747 menu.sh:1831 menu.sh:1836 menu.sh:1842 msgid "Try recovery DSM" msgstr "嘗試恢復 DSM 系統" -#: menu.sh:2117 +#: menu.sh:1686 msgid "Trying to recovery a installed DSM system ..." msgstr "嘗試恢復已安裝的 DSM 系統中 ..." -#: menu.sh:2121 +#: menu.sh:1690 msgid "Unfortunately I couldn't mount the DSM partition!" msgstr "很遺憾, 我無法掛載 DSM 分區!" -#: menu.sh:2135 +#: menu.sh:1704 msgid "Checking for backup of user's configuration for bootloader ..." msgstr "檢查引導加載程式的用戶配寘備份中 ..." -#: menu.sh:2155 +#: menu.sh:1724 msgid "" "Found a backup of the user's configuration, but the system is damaged and " "will not be restored. Please reselect model and build." msgstr "找到用戶配寘的備份, 但系統已損壞, 將無法恢復. 請重新選擇模型並構建." -#: menu.sh:2171 +#: menu.sh:1740 msgid "" "Found a backup of the user's configuration, and restored it. Please rebuild " "and boot." msgstr "找到用戶配寘的備份, 並已還原. 請重新編譯引導並啟動." -#: menu.sh:2179 +#: menu.sh:1748 msgid "Checking for installed DSM system ..." msgstr "檢查已安裝的 DSM 系統中 ..." -#: menu.sh:2263 +#: menu.sh:1832 msgid "Found a installed DSM system and restored it. Please rebuild and boot." msgstr "找到已安裝的 DSM 系統, 並已還原. 請重新編譯引導並啟動." -#: menu.sh:2268 +#: menu.sh:1837 msgid "" "Found a installed DSM system, but the system is damaged and will not be " "restored. Please reselect model and build." msgstr "找到已安裝的 DSM 系統, 但系統已損壞, 將無法恢復. 請重新選擇模型並構建." -#: menu.sh:2274 +#: menu.sh:1843 msgid "" "The installed DSM system was not found, or the system is damaged and cannot " "be recovered. Please reselect model and build." msgstr "" "找不到已安裝的DSM系統, 或者該系統已損壞, 無法恢復. 請重新選擇模型並構建." -#: menu.sh:2324 +#: menu.sh:1851 +msgid "" +"This feature will allow you to downgrade the installation by removing the " +"VERSION file from the first partition of all disks.\\n" +msgstr "此功能通過删除所有磁碟的第一個分區的 VERSION 檔案來允許你降級安裝.\\n" + +#: menu.sh:1852 +msgid "Therefore, please insert all disks before continuing.\\n" +msgstr "囙此, 請插入所有磁碟後再進行操作.\\n" + +#: menu.sh:1869 +msgid "Removing ..." +msgstr "删除中..." + +#: menu.sh:1870 +msgid "Remove VERSION file for all disks completed." +msgstr "已移除所有磁碟的 VERSION 檔案." + +#: menu.sh:1900 +msgid "The installed Syno system not found in the currently inserted disks!" +msgstr "未在當前插入的硬碟中找到已安裝的 syno 系統!" + +#: menu.sh:1904 +msgid "Choose a user name" +msgstr "選擇一個用戶" + +#: menu.sh:1911 +msgid "Type a new password for user '%s'" +msgstr "輸入用戶 '%s' 的新密碼" + +#: menu.sh:1917 +msgid "Invalid password" +msgstr "無效密碼" + +#: menu.sh:1936 +msgid "Resetting ..." +msgstr "重置中 ..." + +#: menu.sh:1938 +msgid "Password reset completed." +msgstr "重置密碼完成." + +#: menu.sh:1946 +msgid "Please insert all disks before continuing.\\n" +msgstr "請插入所有磁碟後再進行操作.\\n" + +#: menu.sh:1969 +msgid "Enabling ..." +msgstr "開啟中 ..." + +#: menu.sh:1970 +msgid "Telnet&SSH is enabled." +msgstr "Telnet&SSH 已開啟." + +#: menu.sh:1970 +msgid "Telnet&SSH is not enabled." +msgstr "Telnet&SSH 未開啟." + +#: menu.sh:1991 +msgid "Choose a disk to clone to" +msgstr "選擇要克隆到的磁碟" + +#: menu.sh:1997 +msgid "No disk selected!" +msgstr "未選擇磁碟!" + +#: menu.sh:2003 +msgid "Disk %s size is less than 1GB and cannot be cloned!" +msgstr "磁碟 %s 的大小小於 1GB,無法克隆!" + +#: menu.sh:2007 +msgid "" +"Warning:\\nDisk %s will be formatted and written to the bootloader. Please " +"confirm that important data has been backed up. \\nDo you want to continue?" +msgstr "" +"警告:\\n磁碟 %s 將被格式化並寫入引導程式. 請確認重要資料已備份. \\n是否繼續?" + +#: menu.sh:2040 +msgid "Cloning ..." +msgstr "克隆中 ..." + +#: menu.sh:2042 +msgid "" +"Bootloader has been cloned to disk %s, please remove the current bootloader " +"disk!\\nReboot?" +msgstr "引導程式已克隆到磁碟 %s, 請移除目前引導磁碟! \\n重新啟動?" + +#: menu.sh:2056 +msgid "Please enter a proxy server url.(e.g., %s)" +msgstr "請輸入代理伺服器 url.(e.g., %s)" + +#: menu.sh:2067 +msgid "Invalid proxy server url, continue?" +msgstr "無效的代理伺服器 url, 是否繼續?" + +#: menu.sh:2095 +msgid "Switch LKM version:" +msgstr "選擇 LKM 版本:" + +#: menu.sh:2096 +msgid "HDD sort(hotplug):" +msgstr "HDD 排序(hotplug):" + +#: menu.sh:2098 +msgid "show/modify the current pat data" +msgstr "顯示/修改當前 pat 下載連結" + +#: menu.sh:2103 +msgid "Switch direct boot:" +msgstr "切換直接啟動:" + +#: menu.sh:2105 +msgid "Timeout of get ip in boot:" +msgstr "啟動時取得 IP 的超時時間:" + +#: menu.sh:2106 +msgid "Timeout of boot wait:" +msgstr "啟動超時時間:" + +#: menu.sh:2107 +msgid "kernel switching method:" +msgstr "內核切換的管道:" + +#: menu.sh:2109 +msgid "Reboot on kernel panic:" +msgstr "內核恐慌時重新啟動:" + +#: menu.sh:2111 +msgid "Use EMMC as the system disk:" +msgstr "使用EMMC作為系統磁片:" + +#: menu.sh:2113 +msgid "Custom patch script # Developer" +msgstr "自定義補丁腳本 # 開發" + +#: menu.sh:2114 +msgid "Edit user config file manually" +msgstr "編輯用戶設定檔" + +#: menu.sh:2115 +msgid "Edit grub.cfg file manually" +msgstr "編輯 grub.cfg" + +#: menu.sh:2117 +msgid "Set static IP" +msgstr "設定靜態 IP" + +#: menu.sh:2118 +msgid "Set wireless account" +msgstr "設定無線帳號" + +#: menu.sh:2119 +msgid "Show disks information" +msgstr "顯示磁片資訊" + +#: menu.sh:2120 +msgid "Format disk(s) # Without loader disk" +msgstr "格式化磁碟(s) # 不含開機磁碟" + +#: menu.sh:2121 +msgid "Try to recovery a installed DSM system" +msgstr "嘗試恢復已安裝 DSM 的系統" + +#: menu.sh:2122 +msgid "Allow downgrade installation" +msgstr "允許降級安裝" + +#: menu.sh:2123 +msgid "Reset DSM system password" +msgstr "重置 DSM 系統密碼" + +#: menu.sh:2124 +msgid "Force enable Telnet&SSH of DSM system" +msgstr "強制開啟 DSM 的 Telnet&SSH" + +#: menu.sh:2125 +msgid "Clone bootloader disk to another disk" +msgstr "克隆引導盤到另一個磁碟" + +#: menu.sh:2126 +msgid "Report bugs to the author" +msgstr "向作者报告错误" + +#: menu.sh:2127 +msgid "Save modifications of '/opt/rr'" +msgstr "保存'/opt/rr'的修改" + +#: menu.sh:2128 +msgid "Install development tools" +msgstr "安裝開發者工具" + +#: menu.sh:2130 +msgid "Show QR logo:" +msgstr "顯示 QR logo:" + +#: menu.sh:2131 +msgid "Set global proxy" +msgstr "設定全域代理" + +#: menu.sh:2132 +msgid "Set github proxy" +msgstr "設定 GitHub 代理" + +#: menu.sh:2133 +msgid "Vigorously miracle" +msgstr "大力出奇蹟" + +#: menu.sh:2137 +msgid "Advanced option" +msgstr "高級設定" + +#: menu.sh:2156 +msgid "pat: (editable)" +msgstr "pat: (可編輯)" + +#: menu.sh:2183 menu.sh:2195 menu.sh:2215 +msgid "Choose a time(seconds)" +msgstr "選擇一個時間(秒)" + +#: menu.sh:2247 +msgid "This option is only informative.\\n\\n" +msgstr "此選項僅為提示. \\n\\n" + +#: menu.sh:2248 +msgid "This program reserves an interface for ramdisk custom patch scripts.\\n" +msgstr "此程式為 ramdisk 自定義補丁腳本保留了一個介面. \\n" + +#: menu.sh:2249 +msgid "Call timing: called before ramdisk packaging.\\n" +msgstr "調用時機:在 ramdisk 打包前調用. \\n" + +#: menu.sh:2250 +msgid "Location: /mnt/p3/scripts/*.sh\\n" +msgstr "位置:/mnt/p3/scripts/*.sh\\n" + +#: menu.sh:2307 +msgid "" +"Please via %s to download the logs,\\nAnd go to github to create an issue " +"and upload the logs." +msgstr "請透過 %s 下載日誌 logs,\\n並前往 github 建立問題並上傳日誌 logs." + +#: menu.sh:2311 +msgid "Please go to github to create an issue and upload the logs." +msgstr "請前往 github 建立問題並上傳日誌 logs." + +#: menu.sh:2315 +msgid "\\Z1No logs found!\\Zn\\n\\n" +msgstr "\\Z1日誌 logs 找不到!\\Zn\\n\\n" + +#: menu.sh:2316 +msgid "Please do as follows:\\n" +msgstr "請按如下操作:\\n" + +#: menu.sh:2317 +msgid " 1. Add dbgutils in addons and rebuild.\\n" +msgstr "1. 在外掛程式中加入 dbgutils 並重新編譯.\\n" + +#: menu.sh:2318 +msgid " 2. Wait 10 minutes after booting.\\n" +msgstr "2. 啟動後等待10分鐘.\\n" + +#: menu.sh:2319 +msgid " 3. Reboot into RR and go to this option.\\n" +msgstr "3. 重啟到 RR 並回到該選項.\\n" + +#: menu.sh:2327 +msgid "" +"Warning:\\nDo not terminate midway, otherwise it may cause damage to the RR. " +"Do you want to continue?" +msgstr "警告:\\n請不要中途停止, 否則將導致 RR 引導損毀, 是否繼續?" + +#: menu.sh:2330 +msgid "" +"Saving ...\\n(It usually takes 5-10 minutes, please be patient and wait.)" +msgstr "保存中...\\n(一般需要5~10分鐘,請耐心等待.)" + +#: menu.sh:2345 +msgid "Save is complete." +msgstr "保存完成." + +#: menu.sh:2350 +msgid "" +"This option only installs opkg package management, allowing you to install " +"more tools for use and debugging. Do you want to continue?" +msgstr "" +"該選項僅安裝 opkg 包管理工具, 使你能够安裝更多的工具以供使用和調試, 是否繼續?" + +#: menu.sh:2357 +msgid "opkg installing ..." +msgstr "opkg 安裝中 ..." + +#: menu.sh:2359 +msgid "" +"opkg install is complete. Please reconnect to ssh/web, or execute 'source ~/." +"bashrc'" +msgstr "opkg 安裝完成. 請重新連結 ssh/web, 或者執行 'source ~/.bashrc'" + +#: menu.sh:2391 msgid "Alert" msgstr "警告" -#: menu.sh:2325 +#: menu.sh:2392 msgid "Config changed, would you like to rebuild the loader?" msgstr "配寘已更改, 是否重新編譯引導?" -#: menu.sh:2342 menu.sh:2942 +#: menu.sh:2409 menu.sh:3012 msgid "Choose a language" msgstr "選擇語言" -#: menu.sh:2357 +#: menu.sh:2424 msgid "Choose a layout" msgstr "選擇佈局" -#: menu.sh:2369 +#: menu.sh:2436 msgid "Choice a keymap" msgstr "選擇鍵盤" -#: menu.sh:2388 menu.sh:2465 menu.sh:2562 menu.sh:2607 menu.sh:2657 -#: menu.sh:2696 +#: menu.sh:2455 menu.sh:2532 menu.sh:2629 menu.sh:2674 menu.sh:2724 +#: menu.sh:2763 msgid "Update %s" msgstr "更新 %s" -#: menu.sh:2389 +#: menu.sh:2456 msgid "Checking last version ..." msgstr "檢測新版本中 ..." -#: menu.sh:2405 +#: menu.sh:2472 msgid "Error checking new version.\\nError: TAG is %s" msgstr "檢測新版本錯誤.\\nError: TAG is %s" -#: menu.sh:2418 +#: menu.sh:2485 msgid "No new version." msgstr "沒有新版本." -#: menu.sh:2422 +#: menu.sh:2489 msgid "Actual version is %s\\nForce update?" msgstr "實際版本為 %s\\n強制更新?" -#: menu.sh:2444 +#: menu.sh:2511 msgid "Downloading ..." msgstr "下載中 ..." -#: menu.sh:2447 +#: menu.sh:2514 msgid "Error downloading new version.\\nError: %d:%d" msgstr "下載新版本錯誤.\\nError: %d:%d" -#: menu.sh:2465 menu.sh:2549 menu.sh:2742 menu.sh:2769 +#: menu.sh:2532 menu.sh:2616 menu.sh:2809 menu.sh:2836 msgid "RR" msgstr "RR" -#: menu.sh:2466 menu.sh:2563 menu.sh:2608 menu.sh:2658 menu.sh:2697 +#: menu.sh:2533 menu.sh:2630 menu.sh:2675 menu.sh:2725 menu.sh:2764 msgid "Extracting update file ..." msgstr "解壓更新檔案 ..." -#: menu.sh:2477 menu.sh:2574 menu.sh:2619 menu.sh:2669 menu.sh:2708 +#: menu.sh:2544 menu.sh:2641 menu.sh:2686 menu.sh:2736 menu.sh:2775 msgid "Error extracting update file." msgstr "更新檔案解壓錯誤." -#: menu.sh:2489 +#: menu.sh:2556 msgid "Checksum do not match!" msgstr "Checksum 不匹配!" -#: menu.sh:2503 +#: menu.sh:2570 msgid "" "The current version does not support upgrading to the latest update.zip. " "Please remake the bootloader disk!" msgstr "當前版本不支持最新的 update.zip 陞級, 請重新製作引導盤!" -#: menu.sh:2513 +#: menu.sh:2580 msgid "Installing new files ..." msgstr "安裝更新中 ..." -#: menu.sh:2549 menu.sh:2592 menu.sh:2642 menu.sh:2681 menu.sh:2720 +#: menu.sh:2616 menu.sh:2659 menu.sh:2709 menu.sh:2748 menu.sh:2787 msgid "%s updated with success!" msgstr "%s 更新成功!" -#: menu.sh:2549 +#: menu.sh:2616 msgid "Reboot?" msgstr "重啓?" -#: menu.sh:2657 menu.sh:2681 menu.sh:2745 menu.sh:2798 menu.sh:2802 +#: menu.sh:2724 menu.sh:2748 menu.sh:2812 menu.sh:2865 menu.sh:2869 msgid "LKMs" msgstr "LKMs" -#: menu.sh:2696 menu.sh:2720 menu.sh:2746 menu.sh:2809 menu.sh:2813 +#: menu.sh:2763 menu.sh:2787 menu.sh:2813 menu.sh:2876 menu.sh:2880 msgid "CKs" msgstr "CKs" -#: menu.sh:2741 menu.sh:2763 +#: menu.sh:2808 menu.sh:2830 msgid "All" msgstr "全部" -#: menu.sh:2747 +#: menu.sh:2814 msgid "Local upload" msgstr "本地上傳" -#: menu.sh:2748 +#: menu.sh:2815 msgid "Pre Release:" msgstr "預發佈:" -#: menu.sh:2753 menu.sh:2821 +#: menu.sh:2820 menu.sh:2888 msgid "" "Manually uploading update*.zip,addons*.zip,modules*.zip,rp-lkms*.zip,rr-cks*." "zip to /tmp/ will skip the download." @@ -1371,133 +1352,124 @@ msgstr "" "手動上傳 update*.zip,addons*.zip,modules*.zip,rp-lkms*.zip,rr-cks*.zip 到 /" "tmp/ 將跳過下載." -#: menu.sh:2776 menu.sh:2787 menu.sh:2798 menu.sh:2809 +#: menu.sh:2843 menu.sh:2854 menu.sh:2865 menu.sh:2876 msgid "No longer supports update %s separately. Please choose to update All/RR" msgstr "不再支持單獨更新%s. 請選擇更新全部/RR" -#: menu.sh:2827 +#: menu.sh:2894 msgid "" "Please keep the attachment name consistent with the attachment name on " "Github.\\n" msgstr "請保持附件名稱與 github 上附件名稱一致.\\n" -#: menu.sh:2828 +#: menu.sh:2895 msgid "Upload update*.zip will update RR.\\n" msgstr "上傳 update*.zip 将更新 RR.\\n" -#: menu.sh:2829 +#: menu.sh:2896 msgid "Upload addons*.zip will update Addons.\\n" msgstr "上傳 addons*.zip 将更新 挿件.\\n" -#: menu.sh:2830 +#: menu.sh:2897 msgid "Upload modules*.zip will update Modules.\\n" msgstr "上傳 modules*.zip 将更新 模塊.\\n" -#: menu.sh:2831 +#: menu.sh:2898 msgid "Upload rp-lkms*.zip will update LKMs.\\n" msgstr "上傳 rp-lkms*.zip 将更新 LKMs.\\n" -#: menu.sh:2832 +#: menu.sh:2899 msgid "Upload rr-cks*.zip will update CKs.\\n" msgstr "上傳 rr-cks*.zip 将更新 CKs.\\n" -#: menu.sh:2888 +#: menu.sh:2955 msgid "This person is very lazy and hasn't written anything." msgstr "這個人很懶, 什麼也沒有寫." -#: menu.sh:2915 +#: menu.sh:2985 msgid "Choose a model" msgstr "選擇型號" -#: menu.sh:2917 +#: menu.sh:2987 msgid "Choose a version" msgstr "選擇版本" -#: menu.sh:2919 +#: menu.sh:2989 msgid "Parse pat" msgstr "解析 pat" -#: menu.sh:2926 +#: menu.sh:2996 msgid "Kernel:" msgstr "核心:" -#: menu.sh:2928 +#: menu.sh:2998 msgid "Addons menu" msgstr "挿件" -#: menu.sh:2929 +#: menu.sh:2999 msgid "Modules menu" msgstr "模塊" -#: menu.sh:2930 +#: menu.sh:3000 msgid "Cmdline menu" msgstr "設定 Cmdline" -#: menu.sh:2931 +#: menu.sh:3001 msgid "Synoinfo menu" msgstr "設定 Synoinfo" -#: menu.sh:2933 +#: menu.sh:3003 msgid "Advanced menu" msgstr "高級設定" -#: menu.sh:2936 +#: menu.sh:3006 msgid "Build the loader" msgstr "編譯引導" -#: menu.sh:2940 +#: menu.sh:3010 msgid "Boot the loader" msgstr "啟動" -#: menu.sh:2943 +#: menu.sh:3013 msgid "Choose a keymap" msgstr "選擇鍵盤" -#: menu.sh:2945 +#: menu.sh:3015 msgid "Clean disk cache" msgstr "清除磁碟緩存" -#: menu.sh:2947 +#: menu.sh:3017 msgid "Update menu" msgstr "更新" -#: menu.sh:2948 +#: menu.sh:3018 msgid "Notepad" msgstr "備註" -#: menu.sh:2970 +#: menu.sh:3040 msgid "Change ..." msgstr "改變 ..." -#: menu.sh:3039 +#: menu.sh:3109 msgid "Choose a action" msgstr "選擇動作" -#: menu.sh:3040 +#: menu.sh:3110 msgid "Poweroff" msgstr "關機" -#: menu.sh:3041 +#: menu.sh:3111 msgid "Reboot" msgstr "重啓" -#: menu.sh:3042 +#: menu.sh:3112 msgid "Reboot to RR" msgstr "重啓到 RR" -#: menu.sh:3043 +#: menu.sh:3113 msgid "Back to shell" msgstr "退出到 shell" -#: menu.sh:3069 +#: menu.sh:3139 msgid "Call \\033[1;32mmenu.sh\\033[0m to return to menu" msgstr "執行 \\033[1;32mmenu.sh\\033[0m 重新進入設定選單" - -#~ msgid "Found a installation:\\nModel: %s\\nProductversion: %s" -#~ msgstr "找到已安裝:\\n型號: %s\\n版本: %s" - -#~ msgid "\\nSerial: %s" -#~ msgstr "\\nSN: %s" - -#~ msgid "Waiting IP.(For reference only)" -#~ msgstr "獲取 IP.(僅供參考)" diff --git a/files/initrd/opt/rr/lang/zh_TW/LC_MESSAGES/rr.mo b/files/initrd/opt/rr/lang/zh_TW/LC_MESSAGES/rr.mo index bcdcd01502c9402bcd55e212665f62d2461b01e4..4b4515965ec45142190c16541bb61d49216527d2 100644 GIT binary patch delta 8203 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 Ym35ANX2xPyxhFHDjw`%;X13e)UtR7<9smFU diff --git a/files/initrd/opt/rr/lang/zh_TW/LC_MESSAGES/rr.po b/files/initrd/opt/rr/lang/zh_TW/LC_MESSAGES/rr.po index 14012914..6625f841 100644 --- a/files/initrd/opt/rr/lang/zh_TW/LC_MESSAGES/rr.po +++ b/files/initrd/opt/rr/lang/zh_TW/LC_MESSAGES/rr.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: RR\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-02-18 21:57+0800\n" -"PO-Revision-Date: 2024-03-09 16:58+0800\n" +"POT-Creation-Date: 2024-03-12 21:16+0800\n" +"PO-Revision-Date: 2024-03-12 21:21+0800\n" "Last-Translator: March Fun \n" "Language-Team: Chinese (Taiwan) \n" "Language: zh_TW\n" @@ -21,7 +21,7 @@ msgstr "" msgid "Loader is not init!" msgstr "開機程式未初始化!" -#: boot.sh:10 init.sh:111 +#: boot.sh:10 init.sh:116 msgid "Loader is not configured!" msgstr "開機檔未設置!" @@ -33,16 +33,20 @@ msgstr "歡迎使用 %s" msgid "DSM zImage changed" msgstr "DSM zImage 已變更" -#: boot.sh:36 menu.sh:1269 -msgid "zImage not patched,\\nPlease upgrade the bootloader version and try again.\\nPatch error:\\n" +#: boot.sh:36 menu.sh:1277 +msgid "" +"zImage not patched,\\nPlease upgrade the bootloader version and try again." +"\\nPatch error:\\n" msgstr "zImage 未修補,\\n請升級開機載入程式版本然後重試。\\n修補錯誤:\\n" #: boot.sh:44 msgid "DSM Ramdisk changed" msgstr "DSM Ramdisk 已變更" -#: boot.sh:47 menu.sh:1275 -msgid "Ramdisk not patched,\\nPlease upgrade the bootloader version and try again.\\nPatch error:\\n" +#: boot.sh:47 menu.sh:1283 +msgid "" +"Ramdisk not patched,\\nPlease upgrade the bootloader version and try again." +"\\nPatch error:\\n" msgstr "Ramdisk 未修補,\\n請升級開機載入程式版本然後重試。\\n修補錯誤:\\n" #: boot.sh:65 @@ -74,1313 +78,1401 @@ msgid "MEM: " msgstr "MEM: " #: boot.sh:74 -msgid "The current version of bootloader does not support booting %s-%s, please upgrade and rebuild." +msgid "" +"The current version of bootloader does not support booting %s-%s, please " +"upgrade and rebuild." msgstr "目前版本的開機載入程式不支援啟動 %s-%s,請升級並重建。" #: boot.sh:86 -msgid "Please insert at least one sata/scsi disk for system installation, except for the bootloader disk." +msgid "" +"Please insert at least one sata/scsi disk for system installation, except " +"for the bootloader disk." msgstr "除了開機碟之外,請至少插入一個 sata/scsi 磁碟以進行系統安裝。" -#: boot.sh:169 +#: boot.sh:171 msgid "Cmdline:\\n" msgstr "Cmdline:\\n" -#: boot.sh:175 +#: boot.sh:177 msgid "Reboot to boot directly in DSM" msgstr "重新開機以直接啟動 DSM" -#: boot.sh:181 init.sh:124 +#: boot.sh:183 init.sh:129 msgid "Detected %s network cards." msgstr "檢測到 %s 個網路卡。" -#: boot.sh:182 init.sh:125 +#: boot.sh:184 init.sh:130 msgid "Checking Connect." msgstr "檢查連線。" -#: boot.sh:194 init.sh:135 +#: boot.sh:196 init.sh:140 msgid "connected." msgstr "已連線。" -#: boot.sh:201 init.sh:142 +#: boot.sh:203 init.sh:147 msgid "Waiting IP." msgstr "正在取得 IP。" -#: boot.sh:208 init.sh:149 +#: boot.sh:210 init.sh:154 msgid "DOWN" msgstr "關機" -#: boot.sh:212 init.sh:153 +#: boot.sh:214 init.sh:158 msgid "NOT CONNECTED" msgstr "未連線" -#: boot.sh:216 init.sh:157 +#: boot.sh:218 init.sh:162 msgid "TIMEOUT (Please check the IP on the router.)" msgstr "逾時 (請檢查路由器上的IP.)" -#: boot.sh:222 +#: boot.sh:224 msgid "Access \\033[1;34mhttp://%s:5000\\033[0m to connect the DSM via web." msgstr "在瀏覽器中瀏覽 \\033[1;34mhttp://%s:5000\\033[0m 連線 DSM。" -#: boot.sh:234 +#: boot.sh:236 msgid "%2ds (Changing access(ssh/web) status will interrupt boot)" msgstr "%2ds (變更存取 (ssh/web) 狀態將中斷開機)" -#: boot.sh:238 +#: boot.sh:240 msgid "access(ssh/web) status has changed and booting is interrupted." msgstr "存取 (ssh/web) 狀態已變更,開機已中斷。" -#: boot.sh:248 +#: boot.sh:250 msgid "Loading DSM kernel ..." msgstr "載入 DSM 核心..." -#: boot.sh:264 +#: boot.sh:266 msgid "Warning, running kexec with --noefi param, strange things will happen!!" msgstr "警告,使用'--noefi'參數執行'kexec',可能有意外事情發生!" -#: boot.sh:269 +#: boot.sh:271 msgid "Booting ..." msgstr "開機中..." -#: boot.sh:271 -msgid "[This interface will not be operational. Please wait a few minutes.\\nFind DSM via http://find.synology.com/ or Synology Assistant and connect.]" -msgstr "[該介面已無法操作。請於數分鐘後透過\\n http://find.synology.com/ 或者 Synology Assistant 搜尋 DSM 並連線。]" +#: boot.sh:273 +msgid "" +"[This interface will not be operational. Please wait a few minutes.\\nFind " +"DSM via http://find.synology.com/ or Synology Assistant and connect.]" +msgstr "" +"[該介面已無法操作。請於數分鐘後透過\\n http://find.synology.com/ 或者 " +"Synology Assistant 搜尋 DSM 並連線。]" #: init.sh:23 msgid "Network devices not found!" msgstr "未找到網路卡!" -#: init.sh:88 +#: init.sh:92 msgid "Loader disk neither USB or SATA/SCSI/NVME/MMC DoM" msgstr "開機碟僅支援 USB 或者 SATA/SCSI/NVME/MMC DoM" -#: init.sh:96 +#: init.sh:101 msgid "Loader disk:" msgstr "開機碟:" -#: init.sh:104 +#: init.sh:109 msgid "Loading keymap" msgstr "載入 keymap" -#: init.sh:114 +#: init.sh:119 msgid "User requested edit settings." msgstr "使用者要求編輯設定。" -#: init.sh:163 -msgid "Access \\033[1;34mhttp://%s:7681\\033[0m to configure the loader via web terminal." -msgstr "在瀏覽器中瀏覽 \\033[1;34mhttp://%s:7681\\033[0m 進入 WEB 終端進行設置。" +#: init.sh:168 +msgid "" +"Access \\033[1;34mhttp://%s:7681\\033[0m to configure the loader via web " +"terminal." +msgstr "" +"在瀏覽器中瀏覽 \\033[1;34mhttp://%s:7681\\033[0m 進入 WEB 終端進行設置。" -#: init.sh:173 +#: init.sh:178 msgid "Call \\033[1;32mmenu.sh\\033[0m to configure loader" msgstr "執行 \\033[1;32mmenu.sh\\033[0m 進入設定選單" -#: init.sh:175 +#: init.sh:180 msgid "User config is on" msgstr "使用者設定已開啟" -#: init.sh:176 +#: init.sh:181 msgid "TTYD: \\033[1;34mhttp://rr:7681/\\033[0m" msgstr "TTYD: \\033[1;34mhttp://rr:7681/\\033[0m" -#: init.sh:177 +#: init.sh:182 msgid "DUFS: \\033[1;34mhttp://rr:7304/\\033[0m" msgstr "DUFS: \\033[1;34mhttp://rr:7304/\\033[0m" -#: init.sh:178 +#: init.sh:183 msgid "TTYD&DUFS: \\033[1;34mhttp://rr:80/\\033[0m" msgstr "TTYD&DUFS: \\033[1;34mhttp://rr:80/\\033[0m" -#: init.sh:180 +#: init.sh:185 msgid "Default SSH \\033[1;31mroot\\033[0m password is" msgstr "預設 SSH 的 \\033[1;31mroot\\033[0m 密碼為" -#: init.sh:197 -msgid "You have less than 4GB of RAM, if errors occur in loader creation, please increase the amount of memory." +#: init.sh:202 +msgid "" +"You have less than 4GB of RAM, if errors occur in loader creation, please " +"increase the amount of memory." msgstr "您的記憶體不足 4GB,如果在建立開機檔時出現錯誤,請增加記憶體。" -#: menu.sh:102 menu.sh:136 menu.sh:179 +#: menu.sh:106 menu.sh:140 menu.sh:183 msgid "Model" msgstr "型號" -#: menu.sh:103 +#: menu.sh:107 msgid "Reading models" msgstr "讀取型號" -#: menu.sh:113 +#: menu.sh:117 msgid "Compatibility judgment" msgstr "相容性判斷" -#: menu.sh:134 +#: menu.sh:138 msgid "Disable flags restriction" msgstr "停用標誌限制" -#: menu.sh:135 +#: menu.sh:139 msgid "Show all models" msgstr "顯示全部模組" -#: menu.sh:137 +#: menu.sh:141 msgid "Choose the model" msgstr "選擇型號" -#: menu.sh:230 menu.sh:241 menu.sh:247 menu.sh:258 menu.sh:295 menu.sh:315 -#: menu.sh:365 +#: menu.sh:234 menu.sh:242 menu.sh:254 menu.sh:272 menu.sh:307 menu.sh:332 +#: menu.sh:384 msgid "Product Version" msgstr "產品版本" -#: menu.sh:231 +#: menu.sh:235 msgid "Choose a product version" msgstr "選擇產品版本" -#: menu.sh:242 -msgid "The current version has been set to %s. Do you want to reset the version?" +#: menu.sh:243 +msgid "" +"The current version has been set to %s. Do you want to reset the version?" msgstr "目前版本已設定為 %s。是否要重設版本?" -#: menu.sh:248 -msgid "This version does not support UEFI startup, Please select another version or switch the startup mode." +#: menu.sh:255 +msgid "" +"This version does not support UEFI startup, Please select another version or " +"switch the startup mode." msgstr "該版本不支援 UEFI 開機,請選擇其他版本或者切換開機模式。" -#: menu.sh:259 +#: menu.sh:273 msgid "Get pat data ..." msgstr "取得 pat 資料..." -#: menu.sh:285 menu.sh:1033 menu.sh:1181 +#: menu.sh:297 menu.sh:1052 menu.sh:1200 msgid "Network error, please check the network connection and try again." msgstr "網路錯誤,請檢查網路連線,然後重試。" -#: menu.sh:286 +#: menu.sh:298 msgid "Or use 'Parse pat' function for installation." msgstr "或使用「解析 Pat 」功能進行安裝。" -#: menu.sh:288 -msgid "Failed to get pat data,\\nPlease manually fill in the URL and md5sum of the corresponding version of pat.\\nOr click 'Retry'." -msgstr "取得 pat 資料失敗,\\n請手動填寫相對版本 pat 的 URL 和 md5sum。\\n或點選重試。" +#: menu.sh:300 +msgid "" +"Failed to get pat data,\\nPlease manually fill in the URL and md5sum of the " +"corresponding version of pat.\\nOr click 'Retry'." +msgstr "" +"取得 pat 資料失敗,\\n請手動填寫相對版本 pat 的 URL 和 md5sum。\\n或點選重" +"試。" -#: menu.sh:293 -msgid "Successfully to get pat data, Please confirm.\\nOr modify the URL and md5sum to you need." +#: menu.sh:305 +msgid "" +"Successfully to get pat data, Please confirm.\\nOr modify the URL and md5sum " +"to you need." msgstr "成功取得 pat 資料,請確認\\n或者根據需要修改 URL 和 md5sum。" -#: menu.sh:296 +#: menu.sh:308 msgid "Retry" msgstr "重試" -#: menu.sh:316 menu.sh:418 +#: menu.sh:333 menu.sh:437 msgid "Reconfiguring Synoinfo, Addons and Modules" msgstr "重新設置 Syninfo、增益集和模組" -#: menu.sh:350 -msgid "You have selected the %s and %s.\\n'Parse Pat' will overwrite the previous selection.\\nDo you want to continue?" +#: menu.sh:368 +msgid "" +"You have selected the %s and %s.\\n'Parse Pat' will overwrite the previous " +"selection.\\nDo you want to continue?" msgstr "您已選擇 %s 和 %s。\\n\"解析 Pat\" 將覆蓋之前的選擇。\\n是否要繼續 ?" -#: menu.sh:351 +#: menu.sh:369 msgid "Parse Pat" msgstr "解析 pat" -#: menu.sh:359 +#: menu.sh:378 msgid "No pat file found in /tmp/pats/ folder!\\n" msgstr "在 /tmp/pats/ 資料夾中找不到 pat 檔 !\\n" -#: menu.sh:360 -msgid "Please upload the pat file to /tmp/pats/ folder via DUFS and re-enter this option.\\n" +#: menu.sh:379 +msgid "" +"Please upload the pat file to /tmp/pats/ folder via DUFS and re-enter this " +"option.\\n" msgstr "請透過 DUFS 將 pat 檔上傳到 /tmp/pats/ 資料夾,然後重新進入此選項。\\n" -#: menu.sh:361 menu.sh:371 menu.sh:2741 menu.sh:2742 menu.sh:2743 menu.sh:2744 -#: menu.sh:2745 menu.sh:2746 menu.sh:2752 menu.sh:2775 menu.sh:2786 -#: menu.sh:2797 menu.sh:2808 menu.sh:2822 menu.sh:2833 menu.sh:2850 -#: menu.sh:2869 +#: menu.sh:380 menu.sh:390 menu.sh:2808 menu.sh:2809 menu.sh:2810 menu.sh:2811 +#: menu.sh:2812 menu.sh:2813 menu.sh:2819 menu.sh:2842 menu.sh:2853 +#: menu.sh:2864 menu.sh:2875 menu.sh:2889 menu.sh:2900 menu.sh:2917 +#: menu.sh:2936 msgid "Update" msgstr "更新" -#: menu.sh:366 +#: menu.sh:385 msgid "Choose a pat file" msgstr "選擇 pat 檔案" -#: menu.sh:372 menu.sh:384 menu.sh:1138 +#: menu.sh:391 menu.sh:403 menu.sh:1157 msgid "pat Invalid, try again!" msgstr "無效的 pat,請重試!" -#: menu.sh:377 +#: menu.sh:396 msgid "Parse %s ..." msgstr "解析 %s ..." -#: menu.sh:402 +#: menu.sh:421 msgid "Currently, %s is not supported." msgstr "目前不支援 %s。" -#: menu.sh:414 +#: menu.sh:433 msgid "Currently, %s of %s is not supported." msgstr "目前不支援 %s 中的 %s。" -#: menu.sh:475 menu.sh:1285 menu.sh:2951 menu.sh:2969 +#: menu.sh:494 menu.sh:1293 menu.sh:3021 menu.sh:3039 msgid "Main menu" msgstr "主功能表" -#: menu.sh:476 menu.sh:1286 +#: menu.sh:495 menu.sh:1294 msgid "Making ..." msgstr "製作中 ..." -#: menu.sh:478 menu.sh:1288 +#: menu.sh:497 menu.sh:1296 msgid "Error" msgstr "錯誤" -#: menu.sh:511 menu.sh:528 menu.sh:533 menu.sh:539 menu.sh:550 menu.sh:558 -#: menu.sh:581 menu.sh:588 menu.sh:592 menu.sh:606 menu.sh:610 menu.sh:618 -#: menu.sh:621 menu.sh:2562 menu.sh:2592 menu.sh:2743 menu.sh:2776 menu.sh:2780 +#: menu.sh:530 menu.sh:547 menu.sh:552 menu.sh:558 menu.sh:569 menu.sh:577 +#: menu.sh:600 menu.sh:607 menu.sh:611 menu.sh:625 menu.sh:629 menu.sh:637 +#: menu.sh:640 menu.sh:2629 menu.sh:2659 menu.sh:2810 menu.sh:2843 menu.sh:2847 msgid "Addons" msgstr "增益集" -#: menu.sh:512 menu.sh:642 menu.sh:818 menu.sh:953 menu.sh:1306 menu.sh:2952 +#: menu.sh:531 menu.sh:661 menu.sh:837 menu.sh:972 menu.sh:1314 menu.sh:3022 msgid "Choose a option" msgstr "選擇選項" -#: menu.sh:513 +#: menu.sh:532 msgid "Add an addon" msgstr "加入增益集" -#: menu.sh:514 +#: menu.sh:533 msgid "Delete addons" msgstr "删除增益集" -#: menu.sh:515 +#: menu.sh:534 msgid "Show all addons" msgstr "顯示所有增益集" -#: menu.sh:516 +#: menu.sh:535 msgid "Upload a external addon" msgstr "上傳外部增益集" -#: menu.sh:517 menu.sh:649 menu.sh:816 menu.sh:951 menu.sh:1311 menu.sh:1443 -#: menu.sh:2749 menu.sh:2949 menu.sh:3044 +#: menu.sh:536 menu.sh:668 menu.sh:835 menu.sh:970 menu.sh:1319 menu.sh:2134 +#: menu.sh:2816 menu.sh:3019 menu.sh:3114 msgid "Exit" msgstr "退出" -#: menu.sh:529 +#: menu.sh:548 msgid "No available addons to add" msgstr "沒有可用的增益集可加入" -#: menu.sh:534 +#: menu.sh:553 msgid "Select an addon" msgstr "選擇增益集" -#: menu.sh:540 +#: menu.sh:559 msgid "Type a optional params to addon" msgstr "輸入增益集的選用參數" -#: menu.sh:551 +#: menu.sh:570 msgid "No user addons to remove" msgstr "沒有要删除的使用者增益集" -#: menu.sh:559 +#: menu.sh:578 msgid "Select addon to remove" msgstr "選擇要删除的增益集" -#: menu.sh:572 -msgid "Name with color \"\\Z4blue\\Zn\" have been added, with color \"black\" are not added.\\n\\n" -msgstr "名稱色彩為 \"\\Z4藍色\\Zn\" 者為已加入,色彩為 \"黑色\" 者為未加入。\\n\\n" +#: menu.sh:591 +msgid "" +"Name with color \"\\Z4blue\\Zn\" have been added, with color \"black\" are " +"not added.\\n\\n" +msgstr "" +"名稱色彩為 \"\\Z4藍色\\Zn\" 者為已加入,色彩為 \"黑色\" 者為未加入。\\n\\n" -#: menu.sh:587 menu.sh:721 menu.sh:1319 menu.sh:2820 -msgid "This feature is only available when accessed via ssh (Requires a terminal that supports ZModem protocol).\\n" +#: menu.sh:606 menu.sh:740 menu.sh:1327 menu.sh:2887 +msgid "" +"This feature is only available when accessed via ssh (Requires a terminal " +"that supports ZModem protocol).\\n" msgstr "此功能僅在透過 ssh 存取時可用。(需要支援 ZModem 協定的終端)。\\n" -#: menu.sh:593 +#: menu.sh:612 msgid "Please upload the *.addons file." msgstr "請上傳 *.addons 檔案。" -#: menu.sh:607 menu.sh:756 menu.sh:2851 menu.sh:2870 +#: menu.sh:626 menu.sh:775 menu.sh:2918 menu.sh:2937 msgid "Not a valid file, please try again!" msgstr "不是有效的檔案,請重試!" -#: menu.sh:611 +#: menu.sh:630 msgid "The addon already exists. Do you want to overwrite it?" msgstr "該增益集已存在,是否覆寫?" -#: menu.sh:619 +#: menu.sh:638 msgid "Addon '%s' added to loader, Please enable it in 'Add an addon' menu." msgstr "增益集 '%s' 已加入到開機中,請在「加入增益集」選單中開啟。" -#: menu.sh:622 +#: menu.sh:641 msgid "File format not recognized!" msgstr "檔案格式無法識別!" -#: menu.sh:641 menu.sh:655 menu.sh:668 menu.sh:705 menu.sh:722 menu.sh:732 -#: menu.sh:735 menu.sh:751 menu.sh:755 menu.sh:769 menu.sh:775 menu.sh:2607 -#: menu.sh:2642 menu.sh:2744 menu.sh:2787 menu.sh:2791 +#: menu.sh:660 menu.sh:674 menu.sh:687 menu.sh:724 menu.sh:741 menu.sh:751 +#: menu.sh:754 menu.sh:770 menu.sh:774 menu.sh:788 menu.sh:794 menu.sh:2674 +#: menu.sh:2709 menu.sh:2811 menu.sh:2854 menu.sh:2858 msgid "Modules" msgstr "模組" -#: menu.sh:643 +#: menu.sh:662 msgid "Show/Select modules" msgstr "顯示/選擇模組" -#: menu.sh:644 +#: menu.sh:663 msgid "Select loaded modules" msgstr "選擇已識別的模組" -#: menu.sh:645 +#: menu.sh:664 msgid "Upload a external module" msgstr "上傳一個外部模組" -#: menu.sh:646 +#: menu.sh:665 msgid "Deselect i915 with dependencies" msgstr "取消選擇具有依賴項目的 i915" -#: menu.sh:647 +#: menu.sh:666 msgid "Priority use of official drivers:" msgstr "優先使用官方驅動程式:" -#: menu.sh:648 +#: menu.sh:667 msgid "Edit modules that need to be copied to DSM" msgstr "編輯需要複製到 DSM 的模組" -#: menu.sh:656 +#: menu.sh:675 msgid "Reading modules ..." msgstr "讀取模組中..." -#: menu.sh:669 +#: menu.sh:688 msgid "Select all" msgstr "全選" -#: menu.sh:670 +#: menu.sh:689 msgid "Deselect all" msgstr "全部不選" -#: menu.sh:671 +#: menu.sh:690 msgid "Select modules to include" msgstr "選擇要載入的增益集" -#: menu.sh:706 +#: menu.sh:725 msgid "Selecting loaded modules" msgstr "選擇已識別的模組" -#: menu.sh:727 -msgid "This function is experimental and dangerous. If you don't know much, please exit.\\n" +#: menu.sh:746 +msgid "" +"This function is experimental and dangerous. If you don't know much, please " +"exit.\\n" msgstr "該功能是實驗性質且具有風險,如果你不瞭解,請退出。\\n" -#: menu.sh:728 -msgid "The imported .ko of this function will be implanted into the corresponding arch's modules package, which will affect all models of the arch.\\n" +#: menu.sh:747 +msgid "" +"The imported .ko of this function will be implanted into the corresponding " +"arch's modules package, which will affect all models of the arch.\\n" msgstr "該功能匯入 .ko 將植入相對架構的模組套件。這將影響該架構的所有型號。\\n" -#: menu.sh:729 -msgid "This program will not determine the availability of imported modules or even make type judgments, as please double check if it is correct.\\n" -msgstr "該程式不會判斷匯入的驅動模組的可用性,甚至不會做類型判斷,因此請再三確認是否正確。\\n" +#: menu.sh:748 +msgid "" +"This program will not determine the availability of imported modules or even " +"make type judgments, as please double check if it is correct.\\n" +msgstr "" +"該程式不會判斷匯入的驅動模組的可用性,甚至不會做類型判斷,因此請再三確認是否" +"正確。\\n" -#: menu.sh:730 -msgid "If you want to remove it, please go to the \"Update Menu\" -> \"Update modules\" to forcibly update the modules. All imports will be reset.\\n" -msgstr "如果您想删除它,請前往「更新 -> 更新模組」強制更新模組。所有匯入都將被重設。\\n" +#: menu.sh:749 +msgid "" +"If you want to remove it, please go to the \"Update Menu\" -> \"Update " +"modules\" to forcibly update the modules. All imports will be reset.\\n" +msgstr "" +"如果您想删除它,請前往「更新 -> 更新模組」強制更新模組。所有匯入都將被重" +"設。\\n" -#: menu.sh:731 +#: menu.sh:750 msgid "Do you want to continue?" msgstr "是否繼續?" -#: menu.sh:736 +#: menu.sh:755 msgid "Please upload the *.ko file." msgstr "請上傳 *.ko 檔案。" -#: menu.sh:752 +#: menu.sh:771 msgid "Module '%s' added to %s-%s" msgstr "模組 '%s' 已加入到 %s-%s" -#: menu.sh:770 +#: menu.sh:789 msgid "No i915 with dependencies module to deselect." msgstr "沒有且依賴項模組的 i915 可以取消選擇。" -#: menu.sh:776 +#: menu.sh:795 msgid "Module %s deselected.\\n" msgstr "已取消選擇模組 %s。\\n" -#: menu.sh:790 menu.sh:1373 menu.sh:2282 menu.sh:2289 menu.sh:2312 +#: menu.sh:809 menu.sh:1381 menu.sh:1408 menu.sh:1415 menu.sh:1438 msgid "Edit with caution" msgstr "請謹慎編輯" -#: menu.sh:810 +#: menu.sh:829 msgid "Add/Edit a cmdline item" msgstr "加入/編輯 cmdline 項目" -#: menu.sh:811 +#: menu.sh:830 msgid "Show/Delete cmdline items" msgstr "顯示/刪除 cmdline 項目" -#: menu.sh:813 +#: menu.sh:832 msgid "Define SN/MAC" msgstr "自訂 SN/MAC" -#: menu.sh:815 +#: menu.sh:834 msgid "Show model inherent cmdline" msgstr "顯示型號預設的 cmdline" -#: menu.sh:817 menu.sh:836 menu.sh:845 menu.sh:869 menu.sh:877 menu.sh:894 -#: menu.sh:905 menu.sh:937 +#: menu.sh:836 menu.sh:855 menu.sh:864 menu.sh:888 menu.sh:896 menu.sh:913 +#: menu.sh:924 menu.sh:956 msgid "Cmdline" msgstr "Cmdline" -#: menu.sh:824 +#: menu.sh:843 msgid "Commonly used cmdlines:\\n" msgstr "常用的 cmdlines:\\n" -#: menu.sh:825 -msgid " * \\Z4disable_mtrr_trim=\\Zn\\n disables kernel trim any uncacheable memory out.\\n" -msgstr " * \\Z4disable_mtrr_trim=\\Zn\\n 停用核心修剪任何不可快取的記憶體。\\n" +#: menu.sh:844 +msgid "" +" * \\Z4disable_mtrr_trim=\\Zn\\n disables kernel trim any uncacheable " +"memory out.\\n" +msgstr "" +" * \\Z4disable_mtrr_trim=\\Zn\\n 停用核心修剪任何不可快取的記憶體。\\n" -#: menu.sh:826 -msgid " * \\Z4intel_idle.max_cstate=1\\Zn\\n Set the maximum C-state depth allowed by the intel_idle driver.\\n" -msgstr " * \\Z4intel_idle.max_cstate=1\\Zn\\n 設定 intel_idle 驅動程式允許的最大 C-狀態 深度。\\n" +#: menu.sh:845 +msgid "" +" * \\Z4intel_idle.max_cstate=1\\Zn\\n Set the maximum C-state depth " +"allowed by the intel_idle driver.\\n" +msgstr "" +" * \\Z4intel_idle.max_cstate=1\\Zn\\n 設定 intel_idle 驅動程式允許的最大 C-" +"狀態 深度。\\n" -#: menu.sh:827 -msgid " * \\Z4pcie_port_pm=off\\Zn\\n Turn off the power management of the PCIe port.\\n" +#: menu.sh:846 +msgid "" +" * \\Z4pcie_port_pm=off\\Zn\\n Turn off the power management of the PCIe " +"port.\\n" msgstr " * \\Z4pcie_port_pm=off\\Zn\\n 關閉 PCIe 埠的電源管理。\\n" -#: menu.sh:828 +#: menu.sh:847 msgid " * \\Z4libata.force=noncq\\Zn\\n Disable NCQ for all SATA ports.\\n" msgstr " * \\Z4libata.force=noncq\\Zn\\n 停用所有 SATA 埠的 NCQ。\\n" -#: menu.sh:829 +#: menu.sh:848 msgid " * \\Z4SataPortMap=??\\Zn\\n Sata Port Map.\\n" msgstr " * \\Z4SataPortMap=??\\Zn\\n Sata 埠地圖。\\n" -#: menu.sh:830 -msgid " * \\Z4DiskIdxMap=??\\Zn\\n Disk Index Map, Modify disk name sequence.\\n" +#: menu.sh:849 +msgid "" +" * \\Z4DiskIdxMap=??\\Zn\\n Disk Index Map, Modify disk name sequence.\\n" msgstr " * \\Z4DiskIdxMap=??\\Zn\\n 磁碟索引地圖,修改磁碟名稱順序。\\n" -#: menu.sh:831 -msgid " * \\Z4i915.enable_guc=2\\Zn\\n Enable the GuC firmware on Intel graphics hardware.(value: 1,2 or 3)\\n" -msgstr " * \\Z4i915.enable_guc=2\\Zn\\n 在 Intel 圖形硬體上啟用 GuC 韌體。(值:1、2 或 3)\\n" +#: menu.sh:850 +msgid "" +" * \\Z4i915.enable_guc=2\\Zn\\n Enable the GuC firmware on Intel graphics " +"hardware.(value: 1,2 or 3)\\n" +msgstr "" +" * \\Z4i915.enable_guc=2\\Zn\\n 在 Intel 圖形硬體上啟用 GuC 韌體。(值:1、" +"2 或 3)\\n" -#: menu.sh:832 -msgid " * \\Z4i915.max_vfs=7\\Zn\\n Set the maximum number of virtual functions (VFs) that can be created for Intel graphics hardware.\\n" -msgstr " * \\Z4i915.max_vfs=7\\Zn\\n 設定 Intel 圖形硬體可以建立的最大虛擬功能 (VF) 數。\\n" +#: menu.sh:851 +msgid "" +" * \\Z4i915.max_vfs=7\\Zn\\n Set the maximum number of virtual functions " +"(VFs) that can be created for Intel graphics hardware.\\n" +msgstr "" +" * \\Z4i915.max_vfs=7\\Zn\\n 設定 Intel 圖形硬體可以建立的最大虛擬功能 " +"(VF) 數。\\n" -#: menu.sh:833 menu.sh:964 +#: menu.sh:852 menu.sh:983 msgid "\\nEnter the parameter name and value you need to add.\\n" msgstr "\\n輸入需要加入的參數名稱和值。\\n" -#: menu.sh:846 menu.sh:977 +#: menu.sh:865 menu.sh:996 msgid "Invalid parameter name, retry?" msgstr "無效的參數名稱,要重試?" -#: menu.sh:870 +#: menu.sh:889 msgid "No user cmdline to remove" msgstr "沒有使用者 cmdline 被删除" -#: menu.sh:878 +#: menu.sh:897 msgid "Select cmdline to remove" msgstr "選擇要删除的 cmdline" -#: menu.sh:889 +#: menu.sh:908 msgid "Note: (MAC will not be set to NIC, Only for activation services.)" msgstr "注意:(MAC 不會設定為 NIC,只作為服務啟動。)" -#: menu.sh:895 +#: menu.sh:914 msgid "Random" msgstr "隨機" -#: menu.sh:906 +#: menu.sh:925 msgid "Invalid SN/MAC, retry?" msgstr "無效的 SN/MAC,要重試?" -#: menu.sh:949 +#: menu.sh:968 msgid "Add/edit a synoinfo item" msgstr "加入/編輯 Synoinfo 項目" -#: menu.sh:950 +#: menu.sh:969 msgid "Show/Delete synoinfo items" msgstr "顯示/刪除 synoinfo 項目" -#: menu.sh:952 menu.sh:967 menu.sh:976 menu.sh:1001 menu.sh:1009 +#: menu.sh:971 menu.sh:986 menu.sh:995 menu.sh:1020 menu.sh:1028 msgid "Synoinfo" msgstr "Synoinfo" -#: menu.sh:959 +#: menu.sh:978 msgid "Commonly used synoinfo:\\n" msgstr "常用的 synoinfo:\\n" -#: menu.sh:960 +#: menu.sh:979 msgid " * \\Z4maxdisks=??\\Zn\\n Maximum number of disks supported.\\n" msgstr " * \\Z4maxdisks=??\\Zn\\n 支援的磁碟最大數量。\\n" -#: menu.sh:961 +#: menu.sh:980 msgid " * \\Z4internalportcfg=0x????\\Zn\\n Internal(sata) disks mask.\\n" msgstr " * \\Z4internalportcfg=0x????\\Zn\\n 內部 (sata) 磁碟遮罩。\\n" -#: menu.sh:962 +#: menu.sh:981 msgid " * \\Z4esataportcfg=0x????\\Zn\\n Esata disks mask.\\n" msgstr " * \\Z4esataportcfg=0x????\\Zn\\n Esata 磁碟遮罩。\\n" -#: menu.sh:963 +#: menu.sh:982 msgid " * \\Z4usbportcfg=0x????\\Zn\\n USB disks mask.\\n" msgstr " * \\Z4usbportcfg=0x????\\Zn\\n USB 磁碟遮罩。\\n" -#: menu.sh:1002 +#: menu.sh:1021 msgid "No synoinfo entries to remove" msgstr "沒有 Synoinfo 參數被删除" -#: menu.sh:1010 +#: menu.sh:1029 msgid "Select synoinfo entry to remove" msgstr "選擇要删除的參數" -#: menu.sh:1045 +#: menu.sh:1064 msgid "Downloading old pat to extract synology .pat extractor..." msgstr "下載舊 pat,選取 .pat 解密程式中..." -#: menu.sh:1051 menu.sh:1203 +#: menu.sh:1070 menu.sh:1222 msgid "Check internet or cache disk space.\\nError: %d:%d" msgstr "請檢查網際網路或快取磁碟空間。\\n錯誤: %d:%d" -#: menu.sh:1091 +#: menu.sh:1110 msgid "Uncompressed tar" msgstr "未壓縮 tar" -#: menu.sh:1095 +#: menu.sh:1114 msgid "Compressed tar" msgstr "壓縮 tar" -#: menu.sh:1099 +#: menu.sh:1118 msgid "Encrypted" msgstr "已加密" -#: menu.sh:1103 -msgid "Could not determine if pat file is encrypted or not, maybe corrupted, try again!" +#: menu.sh:1122 +msgid "" +"Could not determine if pat file is encrypted or not, maybe corrupted, try " +"again!" msgstr "無法確定 pat 檔案是否加密,可能已損壞,請重試!" -#: menu.sh:1110 menu.sh:1219 +#: menu.sh:1129 menu.sh:1238 msgid "Disassembling %s: " msgstr "解壓縮 %s: " -#: menu.sh:1117 +#: menu.sh:1136 msgid "Extractor cached." msgstr "已存在解密程式。" -#: menu.sh:1123 menu.sh:1126 +#: menu.sh:1142 menu.sh:1145 msgid "Extracting ..." msgstr "解壓中..." -#: menu.sh:1157 +#: menu.sh:1176 msgid "%s cached." msgstr "%s 已快取。" -#: menu.sh:1160 +#: menu.sh:1179 msgid "The cache has been cleared. Please re 'Parse pat' before build." msgstr "快取已清除。請在組建前重新解析 pat。" -#: menu.sh:1164 -msgid "The cache has been cleared. Please re 'Try to recovery a installed DSM system' before build." +#: menu.sh:1183 +msgid "" +"The cache has been cleared. Please re 'Try to recovery a installed DSM " +"system' before build." msgstr "快取已清除。請在組建前重新嘗試還原已安裝的 DSM 系統。" -#: menu.sh:1168 +#: menu.sh:1187 msgid "The pat url is empty. Please re 'Choose a version' before build." msgstr "pat 網址是空的。請在組建前重新選擇版本。" -#: menu.sh:1173 +#: menu.sh:1192 msgid "Cleaning cache ..." msgstr "清除快取..." -#: menu.sh:1187 -msgid "Based on the current network situation, switch to %s mirror to downloading." +#: menu.sh:1206 +msgid "" +"Based on the current network situation, switch to %s mirror to downloading." msgstr "根據目前的網路狀況,已切換到 %s 鏡像伺服器進行下載。" -#: menu.sh:1190 +#: menu.sh:1209 msgid "Downloading %s ..." msgstr "下載 %s 中..." -#: menu.sh:1209 +#: menu.sh:1228 msgid "Checking hash of %s: " msgstr "檢查 %s 的雜湊值: " -#: menu.sh:1212 -msgid "md5 hash of pat not match, Please reget pat data from the version menu and try again!" +#: menu.sh:1231 +msgid "" +"md5 hash of pat not match, Please reget pat data from the version menu and " +"try again!" msgstr "pat 的 md5 雜湊值不相符,請自版本功能表中重新取得 pat 資料並再試一次!" -#: menu.sh:1215 menu.sh:1231 menu.sh:1241 +#: menu.sh:1234 menu.sh:1250 menu.sh:1260 msgid "OK" msgstr "OK" -#: menu.sh:1226 +#: menu.sh:1245 msgid "Setting hash: " msgstr "設定雜湊值: " -#: menu.sh:1233 +#: menu.sh:1252 msgid "Copying files: " msgstr "複製檔案: " -#: menu.sh:1257 -msgid "Addon %s not found!" -msgstr "增益集 %s 未找到 !" - -#: menu.sh:1279 +#: menu.sh:1287 msgid "Cleaning ..." msgstr "清除中..." -#: menu.sh:1281 +#: menu.sh:1289 msgid "Ready!" msgstr "已就绪!" -#: menu.sh:1305 menu.sh:1321 menu.sh:1325 menu.sh:1342 menu.sh:1347 -#: menu.sh:1366 menu.sh:1378 menu.sh:1430 +#: menu.sh:1313 menu.sh:1329 menu.sh:1333 menu.sh:1350 menu.sh:1355 +#: menu.sh:1374 menu.sh:1386 menu.sh:2101 msgid "Custom DTS" msgstr "自訂 DTS" -#: menu.sh:1307 +#: menu.sh:1315 msgid "Custom dts: " msgstr "自訂 dts: " -#: menu.sh:1308 +#: menu.sh:1316 msgid "Upload dts file" msgstr "上傳 dts 檔案" -#: menu.sh:1309 +#: menu.sh:1317 msgid "Delete dts file" msgstr "刪除 dts 檔案" -#: menu.sh:1310 +#: menu.sh:1318 msgid "Edit dts file" msgstr "編輯 dts 檔案" -#: menu.sh:1320 -msgid "Or upload the dts file to %s via DUFS, Will be automatically imported when building." +#: menu.sh:1328 +msgid "" +"Or upload the dts file to %s via DUFS, Will be automatically imported when " +"building." msgstr "或者透過 DUFS 將 dts 檔案上傳到 %s,組建時會自動匯入。" -#: menu.sh:1326 -msgid "Currently, only dts format files are supported. Please prepare and click to confirm uploading.\\n(saved in /mnt/p3/users/)" -msgstr "目前只支援 dts 格式的檔案,請準備並點選確認上傳。\\n(儲存於 /mnt/p3/users/ 中)" +#: menu.sh:1334 +msgid "" +"Currently, only dts format files are supported. Please prepare and click to " +"confirm uploading.\\n(saved in /mnt/p3/users/)" +msgstr "" +"目前只支援 dts 格式的檔案,請準備並點選確認上傳。\\n(儲存於 /mnt/p3/users/ " +"中)" -#: menu.sh:1343 menu.sh:1379 +#: menu.sh:1351 menu.sh:1387 msgid "Not a valid dts file, please try again!" msgstr "dts 檔案無效,請重試!" -#: menu.sh:1348 +#: menu.sh:1356 msgid "A valid dts file, Automatically import at compile time." msgstr "dts 檔案有效,將在編譯時自動匯入。" -#: menu.sh:1367 +#: menu.sh:1375 msgid "No dts file to edit. Please upload first!" msgstr "沒有要編輯的 dts 檔。請先上傳 !" -#: menu.sh:1403 -msgid "Switch LKM version:" -msgstr "切換 LKM 版本:" - -#: menu.sh:1404 -msgid "HDD sort(hotplug):" -msgstr "HDD 排序 (熱插拔):" - -#: menu.sh:1407 -msgid "Switch direct boot:" -msgstr "切換直接開機:" - -#: menu.sh:1409 -msgid "Timeout of get ip in boot:" -msgstr "開機時取得 IP 的逾時時間:" - -#: menu.sh:1410 -msgid "Timeout of boot wait:" -msgstr "開機逾時時間:" - -#: menu.sh:1411 -msgid "kernel switching method:" -msgstr "核心切換方式:" - -#: menu.sh:1413 -msgid "Reboot on kernel panic:" -msgstr "核心崩潰時重新啟動:" - -#: menu.sh:1415 -msgid "Set static IP" -msgstr "設定靜態 IP" - -#: menu.sh:1416 -msgid "Set wireless account" -msgstr "設定無線網路帳號" - -#: menu.sh:1417 -msgid "Edit user config file manually" -msgstr "手動編輯使用者設定檔" - -#: menu.sh:1418 -msgid "Edit grub.cfg file manually" -msgstr "手動編輯 grub.cfg" - -#: menu.sh:1419 -msgid "Try to recovery a installed DSM system" -msgstr "嘗試還原已安裝的 DSM 系統" - -#: menu.sh:1420 -msgid "Show disks information" -msgstr "顯示磁碟資訊" - -#: menu.sh:1422 -msgid "show/modify the current pat data" -msgstr "顯示/修改目前 pat 資料" - -#: menu.sh:1424 -msgid "Allow downgrade installation" -msgstr "允許降級安裝" - -#: menu.sh:1425 -msgid "Format disk(s) # Without loader disk" -msgstr "格式化磁碟(s) # 不含開機碟" - -#: menu.sh:1426 -msgid "Reset DSM system password" -msgstr "重設 DSM 系統密碼" - -#: menu.sh:1427 -msgid "Force enable Telnet&SSH of DSM system" -msgstr "強制啟用 DSM 系統的 telnet 及 SSH" - -#: menu.sh:1428 -msgid "Save modifications of '/opt/rr'" -msgstr "儲存「/opt/rr」的修改" - -#: menu.sh:1432 -msgid "Custom patch script # Developer" -msgstr "自訂修補指令碼 # Developer" - -#: menu.sh:1434 -msgid "Use EMMC as the system disk:" -msgstr "使用 EMMC 作為系統碟:" - -#: menu.sh:1436 -msgid "Clone bootloader disk to another disk" -msgstr "將開機碟複製到另一個磁碟" - -#: menu.sh:1437 -msgid "Report bugs to the author" -msgstr "回報問題給作者" - -#: menu.sh:1438 -msgid "Install development tools" -msgstr "安裝開發者工具" - -#: menu.sh:1439 -msgid "Show QR logo:" -msgstr "顯示 QR 商標:" - -#: menu.sh:1440 -msgid "Set global proxy" -msgstr "設定全域代理伺服器" - -#: menu.sh:1441 -msgid "Set github proxy" -msgstr "設定 github 代理伺服器" - -#: menu.sh:1442 -msgid "Vigorously miracle" -msgstr "用力創造奇蹟" - -#: menu.sh:1445 menu.sh:1469 menu.sh:1481 menu.sh:1501 menu.sh:1524 -#: menu.sh:1548 menu.sh:1553 menu.sh:1565 menu.sh:1574 menu.sh:1596 -#: menu.sh:1697 menu.sh:1704 menu.sh:1722 menu.sh:1735 menu.sh:1738 -#: menu.sh:1751 menu.sh:1755 menu.sh:1756 menu.sh:1761 menu.sh:1765 -#: menu.sh:1780 menu.sh:1782 menu.sh:1805 menu.sh:1809 menu.sh:1816 -#: menu.sh:1822 menu.sh:1840 menu.sh:1842 menu.sh:1846 menu.sh:1868 -#: menu.sh:1871 menu.sh:1875 menu.sh:1878 menu.sh:1893 menu.sh:1906 -#: menu.sh:1938 menu.sh:1942 menu.sh:1948 menu.sh:1954 menu.sh:1960 -#: menu.sh:1991 menu.sh:2004 menu.sh:2008 menu.sh:2018 menu.sh:2023 -#: menu.sh:2030 menu.sh:2032 menu.sh:2044 menu.sh:2055 menu.sh:2077 -#: menu.sh:2088 menu.sh:2105 -msgid "Advanced" -msgstr "進階" - -#: menu.sh:1446 -msgid "Advanced option" -msgstr "進階選項" - -#: menu.sh:1470 menu.sh:1482 menu.sh:1502 -msgid "Choose a time(seconds)" -msgstr "選擇一個時間 (秒)" - -#: menu.sh:1512 +#: menu.sh:1450 msgid "Temporary IP: (UI will not refresh)" msgstr "臨時 IP: (UI 不會重整)" -#: menu.sh:1549 +#: menu.sh:1462 menu.sh:1486 menu.sh:1494 menu.sh:1506 menu.sh:1515 +#: menu.sh:1537 menu.sh:1629 menu.sh:1646 menu.sh:1650 menu.sh:1651 +#: menu.sh:1656 menu.sh:1660 menu.sh:1675 menu.sh:1677 menu.sh:1854 +#: menu.sh:1868 menu.sh:1871 menu.sh:1899 menu.sh:1903 menu.sh:1910 +#: menu.sh:1916 menu.sh:1935 menu.sh:1937 menu.sh:1945 menu.sh:1968 +#: menu.sh:1971 menu.sh:1986 menu.sh:1990 menu.sh:1996 menu.sh:2002 +#: menu.sh:2008 menu.sh:2039 menu.sh:2055 menu.sh:2066 menu.sh:2136 +#: menu.sh:2157 menu.sh:2182 menu.sh:2194 menu.sh:2214 menu.sh:2251 +#: menu.sh:2306 menu.sh:2310 menu.sh:2320 menu.sh:2326 menu.sh:2329 +#: menu.sh:2344 menu.sh:2349 menu.sh:2356 menu.sh:2358 menu.sh:2379 +msgid "Advanced" +msgstr "進階" + +#: menu.sh:1487 msgid "Setting IP ..." msgstr "設定 IP..." -#: menu.sh:1554 +#: menu.sh:1495 msgid "Scanning ..." msgstr "掃瞄中..." -#: menu.sh:1557 +#: menu.sh:1498 msgid "Scanned SSIDs:\\n" msgstr "已找到的 SSID:\\n" -#: menu.sh:1575 +#: menu.sh:1516 msgid "Invalid SSID/PSK, retry?" msgstr "無效的 SSID/PSK,要重試 ?" -#: menu.sh:1597 +#: menu.sh:1538 msgid "Setting ..." msgstr "設定中..." -#: menu.sh:1695 +#: menu.sh:1627 msgid "\\nTotal of ports: %s\\n" msgstr "\\n埠總數: %s\\n" -#: menu.sh:1696 -msgid "\\nPorts with color \\Z1red\\Zn as DUMMY, color \\Z2\\Zbgreen\\Zn has drive connected." +#: menu.sh:1628 +msgid "" +"\\nPorts with color \\Z1red\\Zn as DUMMY, color \\Z2\\Zbgreen\\Zn has drive " +"connected." msgstr "\\n\\Z1紅色\\Zn 為空,\\Z2\\Zb綠色\\Zn 為已連接磁碟機。" -#: menu.sh:1703 -msgid "pat: (editable)" -msgstr "pat: (可編輯)" - -#: menu.sh:1719 -msgid "This feature will allow you to downgrade the installation by removing the VERSION file from the first partition of all disks.\\n" -msgstr "此功能透過删除所有磁碟第一個分區的 VERSION 檔案以允許你降級安裝。\\n" - -#: menu.sh:1720 -msgid "Therefore, please insert all disks before continuing.\\n" -msgstr "因此,請插入所有磁碟後再繼續。\\n" - -#: menu.sh:1721 menu.sh:1762 -msgid "Warning:\\nThis operation is irreversible. Please backup important data. Do you want to continue?" -msgstr "警告:\\n該作業不可逆,請提前備份重要資料。是否繼續?" - -#: menu.sh:1736 -msgid "Removing ..." -msgstr "移除中 ..." - -#: menu.sh:1737 -msgid "Remove VERSION file for all disks completed." -msgstr "已移除所有磁碟的 VERSION 檔案。" - -#: menu.sh:1752 menu.sh:1939 +#: menu.sh:1647 menu.sh:1987 msgid "No disk found!" msgstr "未找到磁碟!" -#: menu.sh:1766 -msgid "Warning:\\nThe current hds is in raid, do you still want to format them?" +#: menu.sh:1657 menu.sh:1853 +msgid "" +"Warning:\\nThis operation is irreversible. Please backup important data. Do " +"you want to continue?" +msgstr "警告:\\n該作業不可逆,請提前備份重要資料。是否繼續?" + +#: menu.sh:1661 +msgid "" +"Warning:\\nThe current hds is in raid, do you still want to format them?" msgstr "警告:\\n目前的硬碟使用 raid 中,是否仍要格式化?" -#: menu.sh:1781 +#: menu.sh:1676 msgid "Formatting ..." msgstr "格式化中 ..." -#: menu.sh:1783 +#: menu.sh:1678 msgid "Formatting is complete." msgstr "格式化完成。" -#: menu.sh:1806 -msgid "The installed Syno system not found in the currently inserted disks!" -msgstr "未在目前插入的硬碟中找到已安裝的 Syno 系統!" - -#: menu.sh:1810 -msgid "Choose a user name" -msgstr "選擇使用者" - -#: menu.sh:1817 -msgid "Type a new password for user '%s'" -msgstr "輸入使用者 '%s' 的新密碼" - -#: menu.sh:1823 -msgid "Invalid password" -msgstr "無效的密碼" - -#: menu.sh:1841 -msgid "Resetting ..." -msgstr "重設中 ..." - -#: menu.sh:1843 -msgid "Password reset completed." -msgstr "重設密碼完成。" - -#: menu.sh:1847 -msgid "Please insert all disks before continuing.\\n" -msgstr "請先插入所有磁碟,然後再繼續。\\n" - -#: menu.sh:1869 -msgid "Enabling ..." -msgstr "啟用中..." - -#: menu.sh:1870 -msgid "Telnet&SSH is enabled." -msgstr "Telnet 及 SSH 已啟用。" - -#: menu.sh:1870 -msgid "Telnet&SSH is not enabled." -msgstr "Telnet 及 SSH 未啟用。" - -#: menu.sh:1876 -msgid "Warning:\\nDo not terminate midway, otherwise it may cause damage to the RR. Do you want to continue?" -msgstr "警告:\\n請不要中途停止,否則將導致 RR 開機損毀,是否繼續?" - -#: menu.sh:1879 -msgid "Saving ...\\n(It usually takes 5-10 minutes, please be patient and wait.)" -msgstr "儲存中...\\n(通常需要 5-10 分鐘,請耐心等候)。" - -#: menu.sh:1894 -msgid "Save is complete." -msgstr "儲存完成。" - -#: menu.sh:1902 -msgid "This option is only informative.\\n\\n" -msgstr "此選項僅供參考。\\n\\n" - -#: menu.sh:1903 -msgid "This program reserves an interface for ramdisk custom patch scripts.\\n" -msgstr "該程式為 ramdisk 自訂修補指令碼保留一個介面。\\n" - -#: menu.sh:1904 -msgid "Call timing: called before ramdisk packaging.\\n" -msgstr "調用時機: 在 ramdisk 封裝前調用。\\n" - -#: menu.sh:1905 -msgid "Location: /mnt/p3/scripts/*.sh\\n" -msgstr "位置: /mnt/p3/scripts/*.sh\\n" - -#: menu.sh:1943 -msgid "Choose a disk to clone to" -msgstr "選擇要複製磁碟的目標" - -#: menu.sh:1949 -msgid "No disk selected!" -msgstr "未選擇磁碟!" - -#: menu.sh:1955 -msgid "Disk %s size is less than 1GB and cannot be cloned!" -msgstr "磁碟 %s 大小小於 1GB,無法複製!" - -#: menu.sh:1959 -msgid "Warning:\\nDisk %s will be formatted and written to the bootloader. Please confirm that important data has been backed up. \\nDo you want to continue?" -msgstr "警告:\\n磁碟 %s 將被格式化並寫入開機程式。請確認重要資料已備份。\\n是否要繼續?" - -#: menu.sh:1992 -msgid "Cloning ..." -msgstr "複製中..." - -#: menu.sh:1994 -msgid "Bootloader has been cloned to disk %s, please remove the current bootloader disk!\\nReboot?" -msgstr "開機程式已複製到磁碟 %s,請刪除目前的開機磁!\\n重新啟動?" - -#: menu.sh:2005 -msgid "Please via %s to download the logs,\\nAnd go to github to create an issue and upload the logs." -msgstr "請透過 %s 下載記錄,\\n並前往 github 建立問題並上傳記錄。" - -#: menu.sh:2009 -msgid "Please go to github to create an issue and upload the logs." -msgstr "請前往 github 建立問題並上傳記錄。" - -#: menu.sh:2013 -msgid "\\Z1No logs found!\\Zn\\n\\n" -msgstr "\\Z1未找到記錄!\\Zn\\n\\n" - -#: menu.sh:2014 -msgid "Please do as follows:\\n" -msgstr "請執行以下操作:\\n" - -#: menu.sh:2015 -msgid " 1. Add dbgutils in addons and rebuild.\\n" -msgstr " 1. 在增益集中加入 dbgutils 並重建。\\n" - -#: menu.sh:2016 -msgid " 2. Wait 10 minutes after booting.\\n" -msgstr " 2. 開機後等待 10 分鐘。\\n" - -#: menu.sh:2017 -msgid " 3. Reboot into RR and go to this option.\\n" -msgstr " 3. 重新啟動進入 RR 並前往此選項。\\n" - -#: menu.sh:2024 -msgid "This option only installs opkg package management, allowing you to install more tools for use and debugging. Do you want to continue?" -msgstr "該選項僅安裝 opkg 套件管理工具,讓你能?安裝更多的工具以供使用和除錯,是否繼續 ?" - -#: menu.sh:2031 -msgid "opkg installing ..." -msgstr "opkg 安裝中..." - -#: menu.sh:2033 -msgid "opkg install is complete. Please reconnect to ssh/web, or execute 'source ~/.bashrc'" -msgstr "opkg 安裝完成。請重新連線 ssh/web,或者執行「source ~/.bashrc」" - -#: menu.sh:2045 -msgid "Please enter a proxy server url.(e.g., http://192.168.1.1:7981/)" -msgstr "請輸入代理伺服器網址。(如,http://192.168.1.1:7981/)" - -#: menu.sh:2056 menu.sh:2089 -msgid "Invalid proxy server url, continue?" -msgstr "代理伺服器網址無效,是否繼續?" - -#: menu.sh:2078 -msgid "Please enter a proxy server url.(e.g., https://mirror.ghproxy.com/)" -msgstr "請輸入代理伺服器網址。(如,https://mirror.ghproxy.com/)" - -#: menu.sh:2103 -msgid "It is expected that all restrictions on DSM will be lifted,\\n" -msgstr "預期可以去掉所有 DSM 的限制,\\n" - -#: menu.sh:2104 -msgid "But since upgrading is not supported, I don not want to implement it for the time being.\\n" -msgstr "但是由於不支援升級,因此暫時不想實現它。\\n" - -#: menu.sh:2116 menu.sh:2120 menu.sh:2134 menu.sh:2154 menu.sh:2170 -#: menu.sh:2178 menu.sh:2262 menu.sh:2267 menu.sh:2273 +#: menu.sh:1685 menu.sh:1689 menu.sh:1703 menu.sh:1723 menu.sh:1739 +#: menu.sh:1747 menu.sh:1831 menu.sh:1836 menu.sh:1842 msgid "Try recovery DSM" msgstr "嘗試還原 DSM 系統" -#: menu.sh:2117 +#: menu.sh:1686 msgid "Trying to recovery a installed DSM system ..." msgstr "嘗試還原已安裝的 DSM 系統..." -#: menu.sh:2121 +#: menu.sh:1690 msgid "Unfortunately I couldn't mount the DSM partition!" msgstr "很遺憾,無法掛載 DSM 分割區!" -#: menu.sh:2135 +#: menu.sh:1704 msgid "Checking for backup of user's configuration for bootloader ..." msgstr "檢查開機程式的使用者設定備份..." -#: menu.sh:2155 -msgid "Found a backup of the user's configuration, but the system is damaged and will not be restored. Please reselect model and build." +#: menu.sh:1724 +msgid "" +"Found a backup of the user's configuration, but the system is damaged and " +"will not be restored. Please reselect model and build." msgstr "找到使用者設定的備份,但系統已損壞無法回復。請重新選擇模型並編譯。" -#: menu.sh:2171 -msgid "Found a backup of the user's configuration, and restored it. Please rebuild and boot." +#: menu.sh:1740 +msgid "" +"Found a backup of the user's configuration, and restored it. Please rebuild " +"and boot." msgstr "找到使用者設定的備份,並已回復。請重新編譯並開機。" -#: menu.sh:2179 +#: menu.sh:1748 msgid "Checking for installed DSM system ..." msgstr "檢查已安裝的 DSM 系統..." -#: menu.sh:2263 +#: menu.sh:1832 msgid "Found a installed DSM system and restored it. Please rebuild and boot." msgstr "找到已安裝的 DSM 系統並已還原。請重新編譯並開機。" -#: menu.sh:2268 -msgid "Found a installed DSM system, but the system is damaged and will not be restored. Please reselect model and build." +#: menu.sh:1837 +msgid "" +"Found a installed DSM system, but the system is damaged and will not be " +"restored. Please reselect model and build." msgstr "找到已安裝的 DSM 系統,但系統已損壞無法回復。請重新選擇模型並編譯。" -#: menu.sh:2274 -msgid "The installed DSM system was not found, or the system is damaged and cannot be recovered. Please reselect model and build." +#: menu.sh:1843 +msgid "" +"The installed DSM system was not found, or the system is damaged and cannot " +"be recovered. Please reselect model and build." msgstr "找不到已安裝的 DSM 系統或系統已損壞且無法回復。請重新選擇模型並編譯。" -#: menu.sh:2324 +#: menu.sh:1851 +msgid "" +"This feature will allow you to downgrade the installation by removing the " +"VERSION file from the first partition of all disks.\\n" +msgstr "此功能透過删除所有磁碟第一個分區的 VERSION 檔案以允許你降級安裝。\\n" + +#: menu.sh:1852 +msgid "Therefore, please insert all disks before continuing.\\n" +msgstr "因此,請插入所有磁碟後再繼續。\\n" + +#: menu.sh:1869 +msgid "Removing ..." +msgstr "移除中 ..." + +#: menu.sh:1870 +msgid "Remove VERSION file for all disks completed." +msgstr "已移除所有磁碟的 VERSION 檔案。" + +#: menu.sh:1900 +msgid "The installed Syno system not found in the currently inserted disks!" +msgstr "未在目前插入的硬碟中找到已安裝的 Syno 系統!" + +#: menu.sh:1904 +msgid "Choose a user name" +msgstr "選擇使用者" + +#: menu.sh:1911 +msgid "Type a new password for user '%s'" +msgstr "輸入使用者 '%s' 的新密碼" + +#: menu.sh:1917 +msgid "Invalid password" +msgstr "無效的密碼" + +#: menu.sh:1936 +msgid "Resetting ..." +msgstr "重設中 ..." + +#: menu.sh:1938 +msgid "Password reset completed." +msgstr "重設密碼完成。" + +#: menu.sh:1946 +msgid "Please insert all disks before continuing.\\n" +msgstr "請先插入所有磁碟,然後再繼續。\\n" + +#: menu.sh:1969 +msgid "Enabling ..." +msgstr "啟用中..." + +#: menu.sh:1970 +msgid "Telnet&SSH is enabled." +msgstr "Telnet 及 SSH 已啟用。" + +#: menu.sh:1970 +msgid "Telnet&SSH is not enabled." +msgstr "Telnet 及 SSH 未啟用。" + +#: menu.sh:1991 +msgid "Choose a disk to clone to" +msgstr "選擇要複製磁碟的目標" + +#: menu.sh:1997 +msgid "No disk selected!" +msgstr "未選擇磁碟!" + +#: menu.sh:2003 +msgid "Disk %s size is less than 1GB and cannot be cloned!" +msgstr "磁碟 %s 大小小於 1GB,無法複製!" + +#: menu.sh:2007 +msgid "" +"Warning:\\nDisk %s will be formatted and written to the bootloader. Please " +"confirm that important data has been backed up. \\nDo you want to continue?" +msgstr "" +"警告:\\n磁碟 %s 將被格式化並寫入開機程式。請確認重要資料已備份。\\n是否要繼" +"續?" + +#: menu.sh:2040 +msgid "Cloning ..." +msgstr "複製中..." + +#: menu.sh:2042 +msgid "" +"Bootloader has been cloned to disk %s, please remove the current bootloader " +"disk!\\nReboot?" +msgstr "開機程式已複製到磁碟 %s,請刪除目前的開機磁!\\n重新啟動?" + +#: menu.sh:2056 +msgid "Please enter a proxy server url.(e.g., %s)" +msgstr "請輸入代理伺服器網址。(如,%s)" + +#: menu.sh:2067 +msgid "Invalid proxy server url, continue?" +msgstr "代理伺服器網址無效,是否繼續?" + +#: menu.sh:2095 +msgid "Switch LKM version:" +msgstr "切換 LKM 版本:" + +#: menu.sh:2096 +msgid "HDD sort(hotplug):" +msgstr "HDD 排序 (熱插拔):" + +#: menu.sh:2098 +msgid "show/modify the current pat data" +msgstr "顯示/修改目前 pat 資料" + +#: menu.sh:2103 +msgid "Switch direct boot:" +msgstr "切換直接開機:" + +#: menu.sh:2105 +msgid "Timeout of get ip in boot:" +msgstr "開機時取得 IP 的逾時時間:" + +#: menu.sh:2106 +msgid "Timeout of boot wait:" +msgstr "開機逾時時間:" + +#: menu.sh:2107 +msgid "kernel switching method:" +msgstr "核心切換方式:" + +#: menu.sh:2109 +msgid "Reboot on kernel panic:" +msgstr "核心崩潰時重新啟動:" + +#: menu.sh:2111 +msgid "Use EMMC as the system disk:" +msgstr "使用 EMMC 作為系統碟:" + +#: menu.sh:2113 +msgid "Custom patch script # Developer" +msgstr "自訂修補指令碼 # Developer" + +#: menu.sh:2114 +msgid "Edit user config file manually" +msgstr "手動編輯使用者設定檔" + +#: menu.sh:2115 +msgid "Edit grub.cfg file manually" +msgstr "手動編輯 grub.cfg" + +#: menu.sh:2117 +msgid "Set static IP" +msgstr "設定靜態 IP" + +#: menu.sh:2118 +msgid "Set wireless account" +msgstr "設定無線網路帳號" + +#: menu.sh:2119 +msgid "Show disks information" +msgstr "顯示磁碟資訊" + +#: menu.sh:2120 +msgid "Format disk(s) # Without loader disk" +msgstr "格式化磁碟(s) # 不含開機碟" + +#: menu.sh:2121 +msgid "Try to recovery a installed DSM system" +msgstr "嘗試還原已安裝的 DSM 系統" + +#: menu.sh:2122 +msgid "Allow downgrade installation" +msgstr "允許降級安裝" + +#: menu.sh:2123 +msgid "Reset DSM system password" +msgstr "重設 DSM 系統密碼" + +#: menu.sh:2124 +msgid "Force enable Telnet&SSH of DSM system" +msgstr "強制啟用 DSM 系統的 telnet 及 SSH" + +#: menu.sh:2125 +msgid "Clone bootloader disk to another disk" +msgstr "將開機碟複製到另一個磁碟" + +#: menu.sh:2126 +msgid "Report bugs to the author" +msgstr "回報問題給作者" + +#: menu.sh:2127 +msgid "Save modifications of '/opt/rr'" +msgstr "儲存「/opt/rr」的修改" + +#: menu.sh:2128 +msgid "Install development tools" +msgstr "安裝開發者工具" + +#: menu.sh:2130 +msgid "Show QR logo:" +msgstr "顯示 QR 商標:" + +#: menu.sh:2131 +msgid "Set global proxy" +msgstr "設定全域代理伺服器" + +#: menu.sh:2132 +msgid "Set github proxy" +msgstr "設定 github 代理伺服器" + +#: menu.sh:2133 +msgid "Vigorously miracle" +msgstr "用力創造奇蹟" + +#: menu.sh:2137 +msgid "Advanced option" +msgstr "進階選項" + +#: menu.sh:2156 +msgid "pat: (editable)" +msgstr "pat: (可編輯)" + +#: menu.sh:2183 menu.sh:2195 menu.sh:2215 +msgid "Choose a time(seconds)" +msgstr "選擇一個時間 (秒)" + +#: menu.sh:2247 +msgid "This option is only informative.\\n\\n" +msgstr "此選項僅供參考。\\n\\n" + +#: menu.sh:2248 +msgid "This program reserves an interface for ramdisk custom patch scripts.\\n" +msgstr "該程式為 ramdisk 自訂修補指令碼保留一個介面。\\n" + +#: menu.sh:2249 +msgid "Call timing: called before ramdisk packaging.\\n" +msgstr "調用時機: 在 ramdisk 封裝前調用。\\n" + +#: menu.sh:2250 +msgid "Location: /mnt/p3/scripts/*.sh\\n" +msgstr "位置: /mnt/p3/scripts/*.sh\\n" + +#: menu.sh:2307 +msgid "" +"Please via %s to download the logs,\\nAnd go to github to create an issue " +"and upload the logs." +msgstr "請透過 %s 下載記錄,\\n並前往 github 建立問題並上傳記錄。" + +#: menu.sh:2311 +msgid "Please go to github to create an issue and upload the logs." +msgstr "請前往 github 建立問題並上傳記錄。" + +#: menu.sh:2315 +msgid "\\Z1No logs found!\\Zn\\n\\n" +msgstr "\\Z1未找到記錄!\\Zn\\n\\n" + +#: menu.sh:2316 +msgid "Please do as follows:\\n" +msgstr "請執行以下操作:\\n" + +#: menu.sh:2317 +msgid " 1. Add dbgutils in addons and rebuild.\\n" +msgstr " 1. 在增益集中加入 dbgutils 並重建。\\n" + +#: menu.sh:2318 +msgid " 2. Wait 10 minutes after booting.\\n" +msgstr " 2. 開機後等待 10 分鐘。\\n" + +#: menu.sh:2319 +msgid " 3. Reboot into RR and go to this option.\\n" +msgstr " 3. 重新啟動進入 RR 並前往此選項。\\n" + +#: menu.sh:2327 +msgid "" +"Warning:\\nDo not terminate midway, otherwise it may cause damage to the RR. " +"Do you want to continue?" +msgstr "警告:\\n請不要中途停止,否則將導致 RR 開機損毀,是否繼續?" + +#: menu.sh:2330 +msgid "" +"Saving ...\\n(It usually takes 5-10 minutes, please be patient and wait.)" +msgstr "儲存中...\\n(通常需要 5-10 分鐘,請耐心等候)。" + +#: menu.sh:2345 +msgid "Save is complete." +msgstr "儲存完成。" + +#: menu.sh:2350 +msgid "" +"This option only installs opkg package management, allowing you to install " +"more tools for use and debugging. Do you want to continue?" +msgstr "" +"該選項僅安裝 opkg 套件管理工具,讓你能?安裝更多的工具以供使用和除錯,是否繼" +"續 ?" + +#: menu.sh:2357 +msgid "opkg installing ..." +msgstr "opkg 安裝中..." + +#: menu.sh:2359 +msgid "" +"opkg install is complete. Please reconnect to ssh/web, or execute 'source ~/." +"bashrc'" +msgstr "opkg 安裝完成。請重新連線 ssh/web,或者執行「source ~/.bashrc」" + +#: menu.sh:2391 msgid "Alert" msgstr "警告" -#: menu.sh:2325 +#: menu.sh:2392 msgid "Config changed, would you like to rebuild the loader?" msgstr "設置已變更,是否重新編譯開機檔?" -#: menu.sh:2342 menu.sh:2942 +#: menu.sh:2409 menu.sh:3012 msgid "Choose a language" msgstr "選擇語言" -#: menu.sh:2357 +#: menu.sh:2424 msgid "Choose a layout" msgstr "選擇佈局" -#: menu.sh:2369 +#: menu.sh:2436 msgid "Choice a keymap" msgstr "選擇鍵盤" -#: menu.sh:2388 menu.sh:2465 menu.sh:2562 menu.sh:2607 menu.sh:2657 -#: menu.sh:2696 +#: menu.sh:2455 menu.sh:2532 menu.sh:2629 menu.sh:2674 menu.sh:2724 +#: menu.sh:2763 msgid "Update %s" msgstr "更新 %s" -#: menu.sh:2389 +#: menu.sh:2456 msgid "Checking last version ..." msgstr "檢測最新版本..." -#: menu.sh:2405 +#: menu.sh:2472 msgid "Error checking new version.\\nError: TAG is %s" msgstr "檢查新版本時錯誤。\\n錯誤: TAG 為 %s" -#: menu.sh:2418 +#: menu.sh:2485 msgid "No new version." msgstr "沒有新版本。" -#: menu.sh:2422 +#: menu.sh:2489 msgid "Actual version is %s\\nForce update?" msgstr "實際版本為 %s\\n強制更新 ?" -#: menu.sh:2444 +#: menu.sh:2511 msgid "Downloading ..." msgstr "下載中..." -#: menu.sh:2447 +#: menu.sh:2514 msgid "Error downloading new version.\\nError: %d:%d" msgstr "下載新版本時錯誤。\\n錯誤: %d:%d" -#: menu.sh:2465 menu.sh:2549 menu.sh:2742 menu.sh:2769 +#: menu.sh:2532 menu.sh:2616 menu.sh:2809 menu.sh:2836 msgid "RR" msgstr "RR" -#: menu.sh:2466 menu.sh:2563 menu.sh:2608 menu.sh:2658 menu.sh:2697 +#: menu.sh:2533 menu.sh:2630 menu.sh:2675 menu.sh:2725 menu.sh:2764 msgid "Extracting update file ..." msgstr "正在提取更新檔案..." -#: menu.sh:2477 menu.sh:2574 menu.sh:2619 menu.sh:2669 menu.sh:2708 +#: menu.sh:2544 menu.sh:2641 menu.sh:2686 menu.sh:2736 menu.sh:2775 msgid "Error extracting update file." msgstr "提取更新檔錯誤。" -#: menu.sh:2489 +#: menu.sh:2556 msgid "Checksum do not match!" msgstr "總和檢查碼不相符!" -#: menu.sh:2503 -msgid "The current version does not support upgrading to the latest update.zip. Please remake the bootloader disk!" +#: menu.sh:2570 +msgid "" +"The current version does not support upgrading to the latest update.zip. " +"Please remake the bootloader disk!" msgstr "目前版本不支援升級到最新的 update.zip。請重新製作開機程式磁碟!" -#: menu.sh:2513 +#: menu.sh:2580 msgid "Installing new files ..." msgstr "安裝新的檔案..." -#: menu.sh:2549 menu.sh:2592 menu.sh:2642 menu.sh:2681 menu.sh:2720 +#: menu.sh:2616 menu.sh:2659 menu.sh:2709 menu.sh:2748 menu.sh:2787 msgid "%s updated with success!" msgstr "%s 更新成功!" -#: menu.sh:2549 +#: menu.sh:2616 msgid "Reboot?" msgstr "重新開機 ?" -#: menu.sh:2657 menu.sh:2681 menu.sh:2745 menu.sh:2798 menu.sh:2802 +#: menu.sh:2724 menu.sh:2748 menu.sh:2812 menu.sh:2865 menu.sh:2869 msgid "LKMs" msgstr "LKMs" -#: menu.sh:2696 menu.sh:2720 menu.sh:2746 menu.sh:2809 menu.sh:2813 +#: menu.sh:2763 menu.sh:2787 menu.sh:2813 menu.sh:2876 menu.sh:2880 msgid "CKs" msgstr "CKs" -#: menu.sh:2741 menu.sh:2763 +#: menu.sh:2808 menu.sh:2830 msgid "All" msgstr "全部" -#: menu.sh:2747 +#: menu.sh:2814 msgid "Local upload" msgstr "本地上傳" -#: menu.sh:2748 +#: menu.sh:2815 msgid "Pre Release:" msgstr "預發佈:" -#: menu.sh:2753 menu.sh:2821 -msgid "Manually uploading update*.zip,addons*.zip,modules*.zip,rp-lkms*.zip,rr-cks*.zip to /tmp/ will skip the download." -msgstr "手動上傳 update*.zip,addons*.zip,modules*.zip,rp-lkms*.zip,rr-cks*.zip 到 /tmp/ 將跳過下載。" +#: menu.sh:2820 menu.sh:2888 +msgid "" +"Manually uploading update*.zip,addons*.zip,modules*.zip,rp-lkms*.zip,rr-cks*." +"zip to /tmp/ will skip the download." +msgstr "" +"手動上傳 update*.zip,addons*.zip,modules*.zip,rp-lkms*.zip,rr-cks*.zip 到 /" +"tmp/ 將跳過下載。" -#: menu.sh:2776 menu.sh:2787 menu.sh:2798 menu.sh:2809 +#: menu.sh:2843 menu.sh:2854 menu.sh:2865 menu.sh:2876 msgid "No longer supports update %s separately. Please choose to update All/RR" msgstr "不再支援單獨更新 %s。請選擇更新全部/RR" -#: menu.sh:2827 -msgid "Please keep the attachment name consistent with the attachment name on Github.\\n" +#: menu.sh:2894 +msgid "" +"Please keep the attachment name consistent with the attachment name on " +"Github.\\n" msgstr "請保持附件名稱與 Github 上的附件名稱一致。\\n" -#: menu.sh:2828 +#: menu.sh:2895 msgid "Upload update*.zip will update RR.\\n" msgstr "上傳 update*.zip 將更新 RR。\\n" -#: menu.sh:2829 +#: menu.sh:2896 msgid "Upload addons*.zip will update Addons.\\n" msgstr "上傳 addons*.zip 將更新增益集。\\n" -#: menu.sh:2830 +#: menu.sh:2897 msgid "Upload modules*.zip will update Modules.\\n" msgstr "上傳 modules*.zip 將更新模組。\\n" -#: menu.sh:2831 +#: menu.sh:2898 msgid "Upload rp-lkms*.zip will update LKMs.\\n" msgstr "上傳 rp-lkms*.zip 將更新 LKM。\\n" -#: menu.sh:2832 +#: menu.sh:2899 msgid "Upload rr-cks*.zip will update CKs.\\n" msgstr "上傳 rr-cks*.zip 將更新 CKs。\\n" -#: menu.sh:2888 +#: menu.sh:2955 msgid "This person is very lazy and hasn't written anything." msgstr "這個人很懶,什麼也沒有寫。" -#: menu.sh:2915 +#: menu.sh:2985 msgid "Choose a model" msgstr "選擇型號" -#: menu.sh:2917 +#: menu.sh:2987 msgid "Choose a version" msgstr "選擇版本" -#: menu.sh:2919 +#: menu.sh:2989 msgid "Parse pat" msgstr "解析 pat" -#: menu.sh:2926 +#: menu.sh:2996 msgid "Kernel:" msgstr "核心:" -#: menu.sh:2928 +#: menu.sh:2998 msgid "Addons menu" msgstr "增益集" -#: menu.sh:2929 +#: menu.sh:2999 msgid "Modules menu" msgstr "模組" -#: menu.sh:2930 +#: menu.sh:3000 msgid "Cmdline menu" msgstr "設定 Cmdline" -#: menu.sh:2931 +#: menu.sh:3001 msgid "Synoinfo menu" msgstr "設定 Synoinfo" -#: menu.sh:2933 +#: menu.sh:3003 msgid "Advanced menu" msgstr "進階設定" -#: menu.sh:2936 +#: menu.sh:3006 msgid "Build the loader" msgstr "編譯開機檔" -#: menu.sh:2940 +#: menu.sh:3010 msgid "Boot the loader" msgstr "開機" -#: menu.sh:2943 +#: menu.sh:3013 msgid "Choose a keymap" msgstr "選擇鍵盤" -#: menu.sh:2945 +#: menu.sh:3015 msgid "Clean disk cache" msgstr "清除磁碟快取" -#: menu.sh:2947 +#: menu.sh:3017 msgid "Update menu" msgstr "更新" -#: menu.sh:2948 +#: menu.sh:3018 msgid "Notepad" msgstr "記事本" -#: menu.sh:2970 +#: menu.sh:3040 msgid "Change ..." msgstr "變更..." -#: menu.sh:3039 +#: menu.sh:3109 msgid "Choose a action" msgstr "選擇動作" -#: menu.sh:3040 +#: menu.sh:3110 msgid "Poweroff" msgstr "關機" -#: menu.sh:3041 +#: menu.sh:3111 msgid "Reboot" msgstr "重新開機" -#: menu.sh:3042 +#: menu.sh:3112 msgid "Reboot to RR" msgstr "重新開機進入 RR" -#: menu.sh:3043 +#: menu.sh:3113 msgid "Back to shell" msgstr "退回到 shell" -#: menu.sh:3069 +#: menu.sh:3139 msgid "Call \\033[1;32mmenu.sh\\033[0m to return to menu" msgstr "執行 \\033[1;32mmenu.sh\\033[0m 重新回到功能表" - -#~ msgid "Found a installation:\\nModel: %s\\nProductversion: %s" -#~ msgstr "找到已安裝:\\n型號: %s\\n版本: %s" - -#~ msgid "\\nSerial: %s" -#~ msgstr "\\nSN: %s" - -#~ msgid "Waiting IP.(For reference only)" -#~ msgstr "正在取得 IP (僅供參考)" diff --git a/files/initrd/opt/rr/menu.sh b/files/initrd/opt/rr/menu.sh index 3f663175..348af3f8 100755 --- a/files/initrd/opt/rr/menu.sh +++ b/files/initrd/opt/rr/menu.sh @@ -54,7 +54,11 @@ fi ############################################################################### # Mounts backtitle dynamically function backtitle() { - BACKTITLE="${RR_TITLE}" + BACKTITLE="" + if [ "LOCALBUILD" = "${LOADER_DISK}" ]; then + BACKTITLE="LOCAL " + fi + BACKTITLE+="${RR_TITLE}" if [ -n "${MODEL}" ]; then BACKTITLE+=" ${MODEL}" else @@ -1398,724 +1402,281 @@ function customDTS() { } ############################################################################### -# Advanced menu -function advancedMenu() { - NEXT="l" +# Permits user edit the user config +function editUserConfig() { while true; do - rm -f "${TMP_PATH}/menu" - if [ -n "${PRODUCTVER}" ]; then - echo "l \"$(TEXT "Switch LKM version:") \Z4${LKM}\Zn\"" >>"${TMP_PATH}/menu" - echo "j \"$(TEXT "HDD sort(hotplug):") \Z4${HDDSORT}\Zn\"" >>"${TMP_PATH}/menu" - fi - if loaderIsConfigured; then - echo "q \"$(TEXT "Switch direct boot:") \Z4${DIRECTBOOT}\Zn\"" >>"${TMP_PATH}/menu" - if [ "${DIRECTBOOT}" = "false" ]; then - echo "i \"$(TEXT "Timeout of get ip in boot:") \Z4${BOOTIPWAIT}\Zn\"" >>"${TMP_PATH}/menu" - echo "w \"$(TEXT "Timeout of boot wait:") \Z4${BOOTWAIT}\Zn\"" >>"${TMP_PATH}/menu" - echo "k \"$(TEXT "kernel switching method:") \Z4${KERNELWAY}\Zn\"" >>"${TMP_PATH}/menu" - fi - echo "n \"$(TEXT "Reboot on kernel panic:") \Z4${KERNELPANIC}\Zn\"" >>"${TMP_PATH}/menu" - fi - echo "m \"$(TEXT "Set static IP")\"" >>"${TMP_PATH}/menu" - echo "y \"$(TEXT "Set wireless account")\"" >>"${TMP_PATH}/menu" - echo "u \"$(TEXT "Edit user config file manually")\"" >>"${TMP_PATH}/menu" - echo "h \"$(TEXT "Edit grub.cfg file manually")\"" >>"${TMP_PATH}/menu" - echo "t \"$(TEXT "Try to recovery a installed DSM system")\"" >>"${TMP_PATH}/menu" - echo "s \"$(TEXT "Show disks information")\"" >>"${TMP_PATH}/menu" - if [ -n "${MODEL}" -a -n "${PRODUCTVER}" ]; then - echo "c \"$(TEXT "show/modify the current pat data")\"" >>"${TMP_PATH}/menu" - fi - echo "a \"$(TEXT "Allow downgrade installation")\"" >>"${TMP_PATH}/menu" - echo "f \"$(TEXT "Format disk(s) # Without loader disk")\"" >>"${TMP_PATH}/menu" - echo "x \"$(TEXT "Reset DSM system password")\"" >>"${TMP_PATH}/menu" - echo "z \"$(TEXT "Force enable Telnet&SSH of DSM system")\"" >>"${TMP_PATH}/menu" - echo "p \"$(TEXT "Save modifications of '/opt/rr'")\"" >>"${TMP_PATH}/menu" - if [ -n "${MODEL}" -a "true" = "$(readModelKey "${MODEL}" "dt")" ]; then - echo "d \"$(TEXT "Custom DTS")\"" >>"${TMP_PATH}/menu" - fi - echo "0 \"$(TEXT "Custom patch script # Developer")\"" >>"${TMP_PATH}/menu" - if [ -n "$(ls /dev/mmcblk* 2>/dev/null)" ]; then - echo "b \"$(TEXT "Use EMMC as the system disk:") \Z4${EMMCBOOT}\Zn\"" >>"${TMP_PATH}/menu" - fi - echo "r \"$(TEXT "Clone bootloader disk to another disk")\"" >>"${TMP_PATH}/menu" - echo "v \"$(TEXT "Report bugs to the author")\"" >>"${TMP_PATH}/menu" - echo "o \"$(TEXT "Install development tools")\"" >>"${TMP_PATH}/menu" - echo "g \"$(TEXT "Show QR logo:") \Z4${DSMLOGO}\Zn\"" >>"${TMP_PATH}/menu" - echo "1 \"$(TEXT "Set global proxy")\"" >>"${TMP_PATH}/menu" - echo "2 \"$(TEXT "Set github proxy")\"" >>"${TMP_PATH}/menu" - echo "! \"$(TEXT "Vigorously miracle")\"" >>"${TMP_PATH}/menu" - echo "e \"$(TEXT "Exit")\"" >>"${TMP_PATH}/menu" + DIALOG --title "$(TEXT "Edit with caution")" \ + --editbox "${USER_CONFIG_FILE}" 0 0 2>"${TMP_PATH}/userconfig" + [ $? -ne 0 ] && return + mv -f "${TMP_PATH}/userconfig" "${USER_CONFIG_FILE}" + dos2unix "${USER_CONFIG_FILE}" + ERRORS=$(checkConfigFile "${USER_CONFIG_FILE}") + [ $? -eq 0 ] && break + DIALOG --title "$(TEXT "Edit with caution")" \ + --msgbox "${ERRORS}" 0 0 + done + OLDMODEL=${MODEL} + OLDPRODUCTVER=${PRODUCTVER} + OLDBUILDNUM=${BUILDNUM} + MODEL="$(readConfigKey "model" "${USER_CONFIG_FILE}")" + PRODUCTVER="$(readConfigKey "productver" "${USER_CONFIG_FILE}")" + BUILDNUM="$(readConfigKey "buildnum" "${USER_CONFIG_FILE}")" + SN="$(readConfigKey "sn" "${USER_CONFIG_FILE}")" - DIALOG --title "$(TEXT "Advanced")" \ - --default-item "${NEXT}" --menu "$(TEXT "Advanced option")" 0 0 0 --file "${TMP_PATH}/menu" \ - 2>${TMP_PATH}/resp - [ $? -ne 0 ] && break - case $(<"${TMP_PATH}/resp") in - l) - LKM=$([ "${LKM}" = "dev" ] && echo 'prod' || ([ "${LKM}" = "test" ] && echo 'dev' || echo 'test')) - writeConfigKey "lkm" "${LKM}" "${USER_CONFIG_FILE}" - touch ${PART1_PATH}/.build - NEXT="l" - ;; - j) - [ "${HDDSORT}" = "true" ] && HDDSORT='false' || HDDSORT='true' - writeConfigKey "hddsort" "${HDDSORT}" "${USER_CONFIG_FILE}" - touch ${PART1_PATH}/.build - NEXT="j" - ;; - q) - [ "${DIRECTBOOT}" = "false" ] && DIRECTBOOT='true' || DIRECTBOOT='false' - writeConfigKey "directboot" "${DIRECTBOOT}" "${USER_CONFIG_FILE}" - NEXT="q" - ;; - i) - ITEMS="$(echo -e "1 \n5 \n10 \n30 \n60 \n")" - DIALOG --title "$(TEXT "Advanced")" \ - --default-item "${BOOTIPWAIT}" --no-items --menu "$(TEXT "Choose a time(seconds)")" 0 0 0 ${ITEMS} \ - 2>${TMP_PATH}/resp - [ $? -ne 0 ] && return - resp=$(cat ${TMP_PATH}/resp 2>/dev/null) - [ -z "${resp}" ] && return - BOOTIPWAIT=${resp} - writeConfigKey "bootipwait" "${BOOTIPWAIT}" "${USER_CONFIG_FILE}" - NEXT="i" - ;; - w) - ITEMS="$(echo -e "1 \n5 \n10 \n30 \n60 \n")" - DIALOG --title "$(TEXT "Advanced")" \ - --default-item "${BOOTWAIT}" --no-items --menu "$(TEXT "Choose a time(seconds)")" 0 0 0 ${ITEMS} \ - 2>${TMP_PATH}/resp - [ $? -ne 0 ] && return - resp=$(cat ${TMP_PATH}/resp 2>/dev/null) - [ -z "${resp}" ] && return - BOOTWAIT=${resp} - writeConfigKey "bootwait" "${BOOTWAIT}" "${USER_CONFIG_FILE}" - NEXT="w" - ;; - k) - [ "${KERNELWAY}" = "kexec" ] && KERNELWAY='power' || KERNELWAY='kexec' - writeConfigKey "kernelway" "${KERNELWAY}" "${USER_CONFIG_FILE}" - NEXT="k" - ;; - n) - rm -f "${TMP_PATH}/opts" - echo "5 \"Reboot after 5 seconds\"" >>"${TMP_PATH}/opts" - echo "0 \"No reboot\"" >>"${TMP_PATH}/opts" - echo "-1 \"Restart immediately\"" >>"${TMP_PATH}/opts" - DIALOG --title "$(TEXT "Advanced")" \ - --default-item "${KERNELPANIC}" --menu "$(TEXT "Choose a time(seconds)")" 0 0 0 --file "${TMP_PATH}/opts" \ - 2>${TMP_PATH}/resp - [ $? -ne 0 ] && return - resp=$(cat ${TMP_PATH}/resp 2>/dev/null) - [ -z "${resp}" ] && return - KERNELPANIC=${resp} - writeConfigKey "kernelpanic" "${KERNELPANIC}" "${USER_CONFIG_FILE}" - NEXT="n" - ;; - m) - MSG="$(TEXT "Temporary IP: (UI will not refresh)")" - ITEMS="" - IDX=0 - ETHX=$(ls /sys/class/net/ 2>/dev/null | grep -v lo) - for ETH in ${ETHX}; do - [ ${IDX} -gt 7 ] && break # Currently, only up to 8 are supported. (<==> boot.sh L96, <==> lkm: MAX_NET_IFACES) - IDX=$((${IDX} + 1)) - MACR="$(cat /sys/class/net/${ETH}/address | sed 's/://g')" - IPR="$(readConfigKey "network.${MACR}" "${USER_CONFIG_FILE}")" - ITEMS+="${ETH}(${MACR}) ${IDX} 1 ${IPR:-\"\"} ${IDX} 22 20 16 " - done - echo ${ITEMS} >"${TMP_PATH}/opts" - DIALOG --title "$(TEXT "Advanced")" \ - --form "${MSG}" 10 44 ${IDX} --file "${TMP_PATH}/opts" \ - 2>"${TMP_PATH}/resp" - [ $? -ne 0 ] && continue - ( - IDX=1 - for ETH in ${ETHX}; do - MACR="$(cat /sys/class/net/${ETH}/address | sed 's/://g')" - IPR="$(readConfigKey "network.${MACR}" "${USER_CONFIG_FILE}")" - IPC="$(cat "${TMP_PATH}/resp" | sed -n "${IDX}p")" - if [ -n "${IPC}" -a "${IPR}" != "${IPC}" ]; then - if ! echo "${IPC}" | grep -q "/"; then - IPC="${IPC}/24" - fi - ip addr add ${IPC} dev ${ETH} - writeConfigKey "network.${MACR}" "${IPC}" "${USER_CONFIG_FILE}" - sleep 1 - elif [ -z "${IPC}" ]; then - deleteConfigKey "network.${MACR}" "${USER_CONFIG_FILE}" - fi - IDX=$((${IDX} + 1)) - done + if [ "${MODEL}" != "${OLDMODEL}" -o "${PRODUCTVER}" != "${OLDPRODUCTVER}" -o "${BUILDNUM}" != "${OLDBUILDNUM}" ]; then + # Remove old files + rm -f "${MOD_ZIMAGE_FILE}" + rm -f "${MOD_RDGZ_FILE}" + fi + touch ${PART1_PATH}/.build +} + +############################################################################### +# Permits user edit the grub.cfg +function editGrubCfg() { + while true; do + DIALOG --title "$(TEXT "Edit with caution")" \ + --editbox "${USER_GRUB_CONFIG}" 0 0 2>"${TMP_PATH}/usergrub.cfg" + [ $? -ne 0 ] && return + mv -f "${TMP_PATH}/usergrub.cfg" "${USER_GRUB_CONFIG}" + dos2unix "${USER_GRUB_CONFIG}" + break + done +} + +############################################################################### +# Set static IP +function setStaticIP() { + MSG="$(TEXT "Temporary IP: (UI will not refresh)")" + ITEMS="" + IDX=0 + ETHX=$(ls /sys/class/net/ 2>/dev/null | grep -v lo) + for ETH in ${ETHX}; do + [ ${IDX} -gt 7 ] && break # Currently, only up to 8 are supported. (<==> boot.sh L96, <==> lkm: MAX_NET_IFACES) + IDX=$((${IDX} + 1)) + MACR="$(cat /sys/class/net/${ETH}/address | sed 's/://g')" + IPR="$(readConfigKey "network.${MACR}" "${USER_CONFIG_FILE}")" + ITEMS+="${ETH}(${MACR}) ${IDX} 1 ${IPR:-\"\"} ${IDX} 22 20 16 " + done + echo ${ITEMS} >"${TMP_PATH}/opts" + DIALOG --title "$(TEXT "Advanced")" \ + --form "${MSG}" 10 44 ${IDX} --file "${TMP_PATH}/opts" \ + 2>"${TMP_PATH}/resp" + [ $? -ne 0 ] && return + ( + IDX=1 + for ETH in ${ETHX}; do + MACR="$(cat /sys/class/net/${ETH}/address | sed 's/://g')" + IPR="$(readConfigKey "network.${MACR}" "${USER_CONFIG_FILE}")" + IPC="$(cat "${TMP_PATH}/resp" | sed -n "${IDX}p")" + if [ -n "${IPC}" -a "${IPR}" != "${IPC}" ]; then + if ! echo "${IPC}" | grep -q "/"; then + IPC="${IPC}/24" + fi + ip addr add ${IPC} dev ${ETH} + writeConfigKey "network.${MACR}" "${IPC}" "${USER_CONFIG_FILE}" sleep 1 - IP="$(getIP)" - ) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \ - --progressbox "$(TEXT "Setting IP ...")" 20 100 - NEXT="e" - ;; - y) - DIALOG --title "$(TEXT "Advanced")" \ - --infobox "$(TEXT "Scanning ...")" 0 0 - ITEM=$(iw wlan0 scan 2>/dev/null | grep SSID: | awk '{print $2}') - MSG="" - MSG+="$(TEXT "Scanned SSIDs:\n")" - for I in $(iw wlan0 scan 2>/dev/null | grep SSID: | awk '{print $2}'); do MSG+="${I}\n"; done - LINENUM=$(($(echo -e "${MSG}" | wc -l) + 8)) - while true; do - SSID=$(cat ${PART1_PATH}/wpa_supplicant.conf 2>/dev/null | grep -i SSID | cut -d'=' -f2) - PSK=$(cat ${PART1_PATH}/wpa_supplicant.conf 2>/dev/null | grep -i PSK | cut -d'=' -f2) - SSID="${SSID//\"/}" - PSK="${PSK//\"/}" - DIALOG --title "$(TEXT "Advanced")" \ - --form "${MSG}" ${LINENUM:-16} 62 2 "SSID" 1 1 "${SSID}" 1 7 50 0 " PSK" 2 1 "${PSK}" 2 7 50 0 \ - 2>"${TMP_PATH}/resp" - RET=$? - case ${RET} in - 0) # ok-button - SSID="$(cat "${TMP_PATH}/resp" | sed -n '1p')" - PSK="$(cat "${TMP_PATH}/resp" | sed -n '2p')" - if [ -z "${SSID}" -o -z "${PSK}" ]; then - DIALOG --title "$(TEXT "Advanced")" \ - --yesno "$(TEXT "Invalid SSID/PSK, retry?")" 0 0 - [ $? -eq 0 ] && break - fi - ( - rm -f ${PART1_PATH}/wpa_supplicant.conf - echo "ctrl_interface=/var/run/wpa_supplicant" >>${PART1_PATH}/wpa_supplicant.conf - echo "update_config=1" >>${PART1_PATH}/wpa_supplicant.conf - echo "network={" >>${PART1_PATH}/wpa_supplicant.conf - echo " ssid=\"${SSID}\"" >>${PART1_PATH}/wpa_supplicant.conf - echo " psk=\"${PSK}\"" >>${PART1_PATH}/wpa_supplicant.conf - echo "}" >>${PART1_PATH}/wpa_supplicant.conf + elif [ -z "${IPC}" ]; then + deleteConfigKey "network.${MACR}" "${USER_CONFIG_FILE}" + fi + IDX=$((${IDX} + 1)) + done + sleep 1 + IP="$(getIP)" + ) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \ + --progressbox "$(TEXT "Setting IP ...")" 20 100 + return +} - for ETH in $(ls /sys/class/net/ 2>/dev/null | grep wlan); do - connectwlanif "${ETH}" && sleep 1 - MACR="$(cat /sys/class/net/${ETH}/address 2>/dev/null | sed 's/://g')" - IPR="$(readConfigKey "network.${MACR}" "${USER_CONFIG_FILE}")" - if [ -n "${IPR}" ]; then - ip addr add ${IPC}/24 dev ${ETH} - sleep 1 - fi - done - ) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \ - --progressbox "$(TEXT "Setting ...")" 20 100 - break - ;; - 1) # cancel-button - break - ;; - 255) # ESC - break - ;; - esac - done - NEXT="e" - ;; - u) - editUserConfig - NEXT="e" - ;; - h) - editGrubCfg - NEXT="e" - ;; - t) - tryRecoveryDSM - NEXT="e" - ;; - s) - MSG="" - NUMPORTS=0 - [ $(lspci -d ::106 2>/dev/null | wc -l) -gt 0 ] && MSG+="\nATA:\n" - for PCI in $(lspci -d ::106 2>/dev/null | awk '{print $1}'); do - NAME=$(lspci -s "${PCI}" 2>/dev/null | sed "s/\ .*://") - MSG+="\Zb${NAME}\Zn\nPorts: " - PORTS=$(ls -l /sys/class/scsi_host 2>/dev/null | grep "${PCI}" | awk -F'/' '{print $NF}' | sed 's/host//' | sort -n) - for P in ${PORTS}; do - if lsscsi -b 2>/dev/null | grep -v - | grep -q "\[${P}:"; then - DUMMY="$([ "$(cat /sys/class/scsi_host/host${P}/ahci_port_cmd)" = "0" ] && echo 1 || echo 2)" - if [ "$(cat /sys/class/scsi_host/host${P}/ahci_port_cmd)" = "0" ]; then - MSG+="\Z1$(printf "%02d" ${P})\Zn " - else - MSG+="\Z2$(printf "%02d" ${P})\Zn " - fi - else - MSG+="$(printf "%02d" ${P}) " - fi - NUMPORTS=$((${NUMPORTS} + 1)) - done - MSG+="\n" - done - [ $(lspci -d ::104 2>/dev/null | wc -l) -gt 0 ] && MSG+="\nRAID:\n" - for PCI in $(lspci -d ::104 2>/dev/null | awk '{print $1}'); do - NAME=$(lspci -s "${PCI}" 2>/dev/null | sed "s/\ .*://") - PORT=$(ls -l /sys/class/scsi_host 2>/dev/null | grep "${PCI}" | awk -F'/' '{print $NF}' | sed 's/host//' | sort -n) - PORTNUM=$(lsscsi -b 2>/dev/null | grep -v - | grep "\[${PORT}:" | wc -l) - MSG+="\Zb${NAME}\Zn\nNumber: ${PORTNUM}\n" - NUMPORTS=$((${NUMPORTS} + ${PORTNUM})) - done - [ $(lspci -d ::107 2>/dev/null | wc -l) -gt 0 ] && MSG+="\nSerial Attached SCSI:\n" - for PCI in $(lspci -d ::107 2>/dev/null | awk '{print $1}'); do - NAME=$(lspci -s "${PCI}" 2>/dev/null | sed "s/\ .*://") - PORT=$(ls -l /sys/class/scsi_host 2>/dev/null | grep "${PCI}" | awk -F'/' '{print $NF}' | sed 's/host//' | sort -n) - PORTNUM=$(lsscsi -b 2>/dev/null | grep -v - | grep "\[${PORT}:" | wc -l) - MSG+="\Zb${NAME}\Zn\nNumber: ${PORTNUM}\n" - NUMPORTS=$((${NUMPORTS} + ${PORTNUM})) - done - [ $(lspci -d ::100 2>/dev/null | wc -l) -gt 0 ] && MSG+="\nSCSI:\n" - for PCI in $(lspci -d ::100 2>/dev/null | awk '{print $1}'); do - NAME=$(lspci -s "${PCI}" 2>/dev/null | sed "s/\ .*://") - PORTNUM=$(ls -l /sys/block/* 2>/dev/null | grep "${PCI}" | wc -l) - [ ${PORTNUM} -eq 0 ] && continue - MSG+="\Zb${NAME}\Zn\nNumber: ${PORTNUM}\n" - NUMPORTS=$((${NUMPORTS} + ${PORTNUM})) - done - [ $(ls -l /sys/class/scsi_host 2>/dev/null | grep usb | wc -l) -gt 0 ] && MSG+="\nUSB:\n" - for PCI in $(lspci -d ::c03 2>/dev/null | awk '{print $1}'); do - NAME=$(lspci -s "${PCI}" 2>/dev/null | sed "s/\ .*://") - PORT=$(ls -l /sys/class/scsi_host 2>/dev/null | grep "${PCI}" | awk -F'/' '{print $NF}' | sed 's/host//' | sort -n) - PORTNUM=$(lsscsi -b 2>/dev/null | grep -v - | grep "\[${PORT}:" | wc -l) - [ ${PORTNUM} -eq 0 ] && continue - MSG+="\Zb${NAME}\Zn\nNumber: ${PORTNUM}\n" - NUMPORTS=$((${NUMPORTS} + ${PORTNUM})) - done - [ $(ls -l /sys/class/mmc_host 2>/dev/null | grep mmc_host | wc -l) -gt 0 ] && MSG+="\nMMC:\n" - for PCI in $(lspci -d ::805 2>/dev/null | awk '{print $1}'); do - NAME=$(lspci -s "${PCI}" 2>/dev/null | sed "s/\ .*://") - PORTNUM=$(ls -l /sys/block/mmc* 2>/dev/null | grep "${PCI}" | wc -l) - [ ${PORTNUM} -eq 0 ] && continue - MSG+="\Zb${NAME}\Zn\nNumber: ${PORTNUM}\n" - NUMPORTS=$((${NUMPORTS} + ${PORTNUM})) - done - [ $(lspci -d ::108 2>/dev/null | wc -l) -gt 0 ] && MSG+="\nNVME:\n" - for PCI in $(lspci -d ::108 2>/dev/null | awk '{print $1}'); do - NAME=$(lspci -s "${PCI}" 2>/dev/null | sed "s/\ .*://") - PORT=$(ls -l /sys/class/nvme 2>/dev/null | grep "${PCI}" | awk -F'/' '{print $NF}' | sed 's/nvme//' | sort -n) - PORTNUM=$(lsscsi -b 2>/dev/null | grep -v - | grep "\[N:${PORT}:" | wc -l) - MSG+="\Zb${NAME}\Zn\nNumber: ${PORTNUM}\n" - NUMPORTS=$((${NUMPORTS} + ${PORTNUM})) - done - MSG+="\n" - MSG+="$(printf "$(TEXT "\nTotal of ports: %s\n")" "${NUMPORTS}")" - MSG+="$(TEXT "\nPorts with color \Z1red\Zn as DUMMY, color \Z2\Zbgreen\Zn has drive connected.")" - DIALOG --title "$(TEXT "Advanced")" \ - --msgbox "${MSG}" 0 0 - ;; - c) - PATURL="$(readConfigKey "paturl" "${USER_CONFIG_FILE}")" - PATSUM="$(readConfigKey "patsum" "${USER_CONFIG_FILE}")" - MSG="$(TEXT "pat: (editable)")" - DIALOG --title "$(TEXT "Advanced")" \ - --form "${MSG}" 10 110 2 "URL" 1 1 "${PATURL}" 1 5 100 0 "MD5" 2 1 "${PATSUM}" 2 5 100 0 \ - 2>"${TMP_PATH}/resp" - [ $? -ne 0 ] && return - paturl="$(cat "${TMP_PATH}/resp" | sed -n '1p')" - patsum="$(cat "${TMP_PATH}/resp" | sed -n '2p')" - if [ ! ${paturl} = ${PATURL} ] || [ ! ${patsum} = ${PATSUM} ]; then - writeConfigKey "paturl" "${paturl}" "${USER_CONFIG_FILE}" - writeConfigKey "patsum" "${patsum}" "${USER_CONFIG_FILE}" - rm -f "${ORI_ZIMAGE_FILE}" "${ORI_RDGZ_FILE}" "${MOD_ZIMAGE_FILE}" "${MOD_RDGZ_FILE}" - touch ${PART1_PATH}/.build - fi - ;; - a) - MSG="" - MSG+="$(TEXT "This feature will allow you to downgrade the installation by removing the VERSION file from the first partition of all disks.\n")" - MSG+="$(TEXT "Therefore, please insert all disks before continuing.\n")" - MSG+="$(TEXT "Warning:\nThis operation is irreversible. Please backup important data. Do you want to continue?")" - DIALOG --title "$(TEXT "Advanced")" \ - --yesno "${MSG}" 0 0 - [ $? -ne 0 ] && return - ( - mkdir -p "${TMP_PATH}/sdX1" - # for I in $(ls /dev/sd*1 2>/dev/null | grep -v "${LOADER_DISK_PART1}"); do - for I in $(blkid 2>/dev/null | grep -i linux_raid_member | grep -E "/dev/.*1: " | awk -F ":" '{print $1}'); do - mount "${I}" "${TMP_PATH}/sdX1" - [ -f "${TMP_PATH}/sdX1/etc/VERSION" ] && rm -f "${TMP_PATH}/sdX1/etc/VERSION" - [ -f "${TMP_PATH}/sdX1/etc.defaults/VERSION" ] && rm -f "${TMP_PATH}/sdX1/etc.defaults/VERSION" - sync - umount "${I}" - done - rm -rf "${TMP_PATH}/sdX1" - ) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \ - --progressbox "$(TEXT "Removing ...")" 20 100 - MSG="$(TEXT "Remove VERSION file for all disks completed.")" - DIALOG --title "$(TEXT "Advanced")" \ - --msgbox "${MSG}" 0 0 - ;; - f) - rm -f "${TMP_PATH}/opts" - while read KNAME ID; do - [ -z "${KNAME}" ] && continue - [[ "${KNAME}" = /dev/md* ]] && continue - [ -z "${ID}" ] && ID="Unknown" - echo "${KNAME}" | grep -q "${LOADER_DISK}" && continue - echo "\"${KNAME}\" \"${ID}\" \"off\"" >>"${TMP_PATH}/opts" - done <<<$(lsblk -pno KNAME,ID) - if [ ! -f "${TMP_PATH}/opts" ]; then +############################################################################### +# Set wireless account +function setWirelessAccount() { + DIALOG --title "$(TEXT "Advanced")" \ + --infobox "$(TEXT "Scanning ...")" 0 0 + ITEM=$(iw wlan0 scan 2>/dev/null | grep SSID: | awk '{print $2}') + MSG="" + MSG+="$(TEXT "Scanned SSIDs:\n")" + for I in $(iw wlan0 scan 2>/dev/null | grep SSID: | awk '{print $2}'); do MSG+="${I}\n"; done + LINENUM=$(($(echo -e "${MSG}" | wc -l) + 8)) + while true; do + SSID=$(cat ${PART1_PATH}/wpa_supplicant.conf 2>/dev/null | grep -i SSID | cut -d'=' -f2) + PSK=$(cat ${PART1_PATH}/wpa_supplicant.conf 2>/dev/null | grep -i PSK | cut -d'=' -f2) + SSID="${SSID//\"/}" + PSK="${PSK//\"/}" + DIALOG --title "$(TEXT "Advanced")" \ + --form "${MSG}" ${LINENUM:-16} 62 2 "SSID" 1 1 "${SSID}" 1 7 50 0 " PSK" 2 1 "${PSK}" 2 7 50 0 \ + 2>"${TMP_PATH}/resp" + RET=$? + case ${RET} in + 0) # ok-button + SSID="$(cat "${TMP_PATH}/resp" | sed -n '1p')" + PSK="$(cat "${TMP_PATH}/resp" | sed -n '2p')" + if [ -z "${SSID}" -o -z "${PSK}" ]; then DIALOG --title "$(TEXT "Advanced")" \ - --msgbox "$(TEXT "No disk found!")" 0 0 - return - fi - DIALOG --title "$(TEXT "Advanced")" \ - --checklist "$(TEXT "Advanced")" 0 0 0 --file "${TMP_PATH}/opts" \ - 2>${TMP_PATH}/resp - [ $? -ne 0 ] && return - RESP=$(<"${TMP_PATH}/resp") - [ -z "${RESP}" ] && return - DIALOG --title "$(TEXT "Advanced")" \ - --yesno "$(TEXT "Warning:\nThis operation is irreversible. Please backup important data. Do you want to continue?")" 0 0 - [ $? -ne 0 ] && return - if [ $(ls /dev/md* 2>/dev/null | wc -l) -gt 0 ]; then - DIALOG --title "$(TEXT "Advanced")" \ - --yesno "$(TEXT "Warning:\nThe current hds is in raid, do you still want to format them?")" 0 0 - [ $? -ne 0 ] && return - for I in $(ls /dev/md* 2>/dev/null); do - mdadm -S "${I}" - done + --yesno "$(TEXT "Invalid SSID/PSK, retry?")" 0 0 + [ $? -eq 0 ] && break fi ( - for I in ${RESP}; do - if [[ "${I}" = /dev/mmc* ]]; then - echo y | mkfs.ext4 -T largefile4 -E nodiscard "${I}" - else - echo y | mkfs.ext4 -T largefile4 "${I}" - fi - done - ) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \ - --progressbox "$(TEXT "Formatting ...")" 20 100 - DIALOG --title "$(TEXT "Advanced")" \ - --msgbox "$(TEXT "Formatting is complete.")" 0 0 - ;; - x) - rm -f "${TMP_PATH}/menu" - mkdir -p "${TMP_PATH}/sdX1" - # for I in $(ls /dev/sd*1 2>/dev/null | grep -v "${LOADER_DISK_PART1}"); do - for I in $(blkid 2>/dev/null | grep -i linux_raid_member | grep -E "/dev/.*1: " | awk -F ":" '{print $1}'); do - mount ${I} "${TMP_PATH}/sdX1" - if [ -f "${TMP_PATH}/sdX1/etc/shadow" ]; then - while read L; do - U=$(echo "${L}" | awk -F ':' '{if ($2 != "*" && $2 != "!!") print $1;}') - [ -z "${U}" ] && continue - E=$(echo "${L}" | awk -F ':' '{if ($8 == "1") print "disabled"; else print " ";}') - grep -q "status=on" "${TMP_PATH}/sdX1/usr/syno/etc/packages/SecureSignIn/preference/${U}/method.config" 2>/dev/null - [ $? -eq 0 ] && S="SecureSignIn" || S=" " - printf "\"%-36s %-10s %-14s\"\n" "${U}" "${E}" "${S}" >>"${TMP_PATH}/menu" - done <<<$(cat "${TMP_PATH}/sdX1/etc/shadow") - fi - umount "${I}" - [ -f "${TMP_PATH}/menu" ] && break - done - rm -rf "${TMP_PATH}/sdX1" - if [ ! -f "${TMP_PATH}/menu" ]; then - DIALOG --title "$(TEXT "Advanced")" \ - --msgbox "$(TEXT "The installed Syno system not found in the currently inserted disks!")" 0 0 - return - fi - DIALOG --title "$(TEXT "Advanced")" \ - --no-items --menu "$(TEXT "Choose a user name")" 0 0 0 --file "${TMP_PATH}/menu" \ - 2>${TMP_PATH}/resp - [ $? -ne 0 ] && return - USER="$(cat "${TMP_PATH}/resp" 2>/dev/null | awk '{print $1}')" - [ -z "${USER}" ] && return - while true; do - DIALOG --title "$(TEXT "Advanced")" \ - --inputbox "$(printf "$(TEXT "Type a new password for user '%s'")" "${USER}")" 0 70 "${CMDLINE[${NAME}]}" \ - 2>${TMP_PATH}/resp - [ $? -ne 0 ] && break 2 - VALUE="$(<"${TMP_PATH}/resp")" - [ -n "${VALUE}" ] && break - DIALOG --title "$(TEXT "Advanced")" \ - --msgbox "$(TEXT "Invalid password")" 0 0 - done - NEWPASSWD="$(python -c "from passlib.hash import sha512_crypt;pw=\"${VALUE}\";print(sha512_crypt.using(rounds=5000).hash(pw))")" - ( - mkdir -p "${TMP_PATH}/sdX1" - # for I in $(ls /dev/sd*1 2>/dev/null | grep -v "${LOADER_DISK_PART1}"); do - for I in $(blkid 2>/dev/null | grep -i linux_raid_member | grep -E "/dev/.*1: " | awk -F ":" '{print $1}'); do - mount "${I}" "${TMP_PATH}/sdX1" - OLDPASSWD="$(cat "${TMP_PATH}/sdX1/etc/shadow" 2>/dev/null | grep "^${USER}:" | awk -F ':' '{print $2}')" - if [ -n "${NEWPASSWD}" -a -n "${OLDPASSWD}" ]; then - sed -i "s|${OLDPASSWD}|${NEWPASSWD}|g" "${TMP_PATH}/sdX1/etc/shadow" - sed -i "/^${USER}:/ s/\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\)/\1:\2:\3:\4:\5:\6:\7::\9/" "${TMP_PATH}/sdX1/etc/shadow" - fi - sed -i "s|status=on|status=off|g" "${TMP_PATH}/sdX1/usr/syno/etc/packages/SecureSignIn/preference/${USER}/method.config" 2>/dev/null - sync - umount "${I}" - done - rm -rf "${TMP_PATH}/sdX1" - ) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \ - --progressbox "$(TEXT "Resetting ...")" 20 100 - DIALOG --title "$(TEXT "Advanced")" \ - --msgbox "$(TEXT "Password reset completed.")" 0 0 - ;; - z) - DIALOG --title "$(TEXT "Advanced")" \ - --yesno "$(TEXT "Please insert all disks before continuing.\n")" 0 0 - [ $? -ne 0 ] && return - ( - ONBOOTUP="" - ONBOOTUP="${ONBOOTUP}synowebapi --exec api=SYNO.Core.Terminal method=set version=3 enable_telnet=true enable_ssh=true ssh_port=22 forbid_console=false\n" - ONBOOTUP="${ONBOOTUP}echo \"DELETE FROM task WHERE task_name LIKE ''RRONBOOTUPRR'';\" | sqlite3 /usr/syno/etc/esynoscheduler/esynoscheduler.db\n" - mkdir -p "${TMP_PATH}/sdX1" - # for I in $(ls /dev/sd*1 2>/dev/null | grep -v "${LOADER_DISK_PART1}"); do - for I in $(blkid 2>/dev/null | grep -i linux_raid_member | grep -E "/dev/.*1: " | awk -F ":" '{print $1}'); do - mount "${I}" "${TMP_PATH}/sdX1" - if [ -f "${TMP_PATH}/sdX1/usr/syno/etc/esynoscheduler/esynoscheduler.db" ]; then - sqlite3 ${TMP_PATH}/sdX1/usr/syno/etc/esynoscheduler/esynoscheduler.db <>${PART1_PATH}/wpa_supplicant.conf + echo "update_config=1" >>${PART1_PATH}/wpa_supplicant.conf + echo "network={" >>${PART1_PATH}/wpa_supplicant.conf + echo " ssid=\"${SSID}\"" >>${PART1_PATH}/wpa_supplicant.conf + echo " psk=\"${PSK}\"" >>${PART1_PATH}/wpa_supplicant.conf + echo "}" >>${PART1_PATH}/wpa_supplicant.conf + + for ETH in $(ls /sys/class/net/ 2>/dev/null | grep wlan); do + connectwlanif "${ETH}" && sleep 1 + MACR="$(cat /sys/class/net/${ETH}/address 2>/dev/null | sed 's/://g')" + IPR="$(readConfigKey "network.${MACR}" "${USER_CONFIG_FILE}")" + if [ -n "${IPR}" ]; then + ip addr add ${IPC}/24 dev ${ETH} sleep 1 - sync - echo "true" >${TMP_PATH}/isEnable fi - umount "${I}" done - rm -rf "${TMP_PATH}/sdX1" ) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \ - --progressbox "$(TEXT "Enabling ...")" 20 100 - [ "$(cat ${TMP_PATH}/isEnable 2>/dev/null)" = "true" ] && MSG="$(TEXT "Telnet&SSH is enabled.")" || MSG="$(TEXT "Telnet&SSH is not enabled.")" - DIALOG --title "$(TEXT "Advanced")" \ - --msgbox "${MSG}" 0 0 + --progressbox "$(TEXT "Setting ...")" 20 100 + break ;; - p) - DIALOG --title "$(TEXT "Advanced")" \ - --yesno "$(TEXT "Warning:\nDo not terminate midway, otherwise it may cause damage to the RR. Do you want to continue?")" 0 0 - [ $? -ne 0 ] && return - DIALOG --title "$(TEXT "Advanced")" \ - --infobox "$(TEXT "Saving ...\n(It usually takes 5-10 minutes, please be patient and wait.)")" 0 0 - RDXZ_PATH="${TMP_PATH}/rdxz_tmp" - mkdir -p "${RDXZ_PATH}" - ( - cd "${RDXZ_PATH}" - xz -dc <"${RR_RAMDISK_FILE}" | cpio -idm - ) >/dev/null 2>&1 || true - rm -rf "${RDXZ_PATH}/opt/rr" - cp -Rf "/opt" "${RDXZ_PATH}/" - ( - cd "${RDXZ_PATH}" - find . 2>/dev/null | cpio -o -H newc -R root:root | xz --check=crc32 >"${RR_RAMDISK_FILE}" - ) || true - rm -rf "${RDXZ_PATH}" - DIALOG --title "$(TEXT "Advanced")" \ - --msgbox ""$(TEXT "Save is complete.")"" 0 0 + 1) # cancel-button + break ;; - d) - customDTS - NEXT="e" + 255) # ESC + break ;; - 0) - MSG="" - MSG+="$(TEXT "This option is only informative.\n\n")" - MSG+="$(TEXT "This program reserves an interface for ramdisk custom patch scripts.\n")" - MSG+="$(TEXT "Call timing: called before ramdisk packaging.\n")" - MSG+="$(TEXT "Location: /mnt/p3/scripts/*.sh\n")" - DIALOG --title "$(TEXT "Advanced")" \ - --msgbox "${MSG}" 0 0 - ;; - b) - if [ "${EMMCBOOT}" = "true" ]; then - EMMCBOOT='false' - writeConfigKey "emmcboot" "false" "${USER_CONFIG_FILE}" - deleteConfigKey "cmdline.root" "${USER_CONFIG_FILE}" - deleteConfigKey "synoinfo.disk_swap" "${USER_CONFIG_FILE}" - deleteConfigKey "synoinfo.supportraid" "${USER_CONFIG_FILE}" - deleteConfigKey "synoinfo.support_emmc_boot" "${USER_CONFIG_FILE}" - deleteConfigKey "synoinfo.support_install_only_dev" "${USER_CONFIG_FILE}" - else - EMMCBOOT='true' - writeConfigKey "emmcboot" "true" "${USER_CONFIG_FILE}" - writeConfigKey "cmdline.root" "/dev/mmcblk0p1" "${USER_CONFIG_FILE}" - writeConfigKey "synoinfo.disk_swap" "no" "${USER_CONFIG_FILE}" - writeConfigKey "synoinfo.supportraid" "no" "${USER_CONFIG_FILE}" - writeConfigKey "synoinfo.support_emmc_boot" "yes" "${USER_CONFIG_FILE}" - writeConfigKey "synoinfo.support_install_only_dev" "yes" "${USER_CONFIG_FILE}" - fi - touch ${PART1_PATH}/.build - NEXT="b" - ;; - r) - rm -f "${TMP_PATH}/opts" - while read KNAME ID; do - [ -z "${KNAME}" -o -z "${ID}" ] && continue - echo "${KNAME}" | grep -q "${LOADER_DISK}" && continue - echo "\"${KNAME}\" \"${ID}\" \"off\"" >>"${TMP_PATH}/opts" - done <<<$(lsblk -dpno KNAME,ID) - if [ ! -f "${TMP_PATH}/opts" ]; then - DIALOG --title "$(TEXT "Advanced")" \ - --msgbox "$(TEXT "No disk found!")" 0 0 - return - fi - DIALOG --title "$(TEXT "Advanced")" \ - --radiolist "$(TEXT "Choose a disk to clone to")" 0 0 0 --file "${TMP_PATH}/opts" \ - 2>${TMP_PATH}/resp - [ $? -ne 0 ] && return - RESP=$(<"${TMP_PATH}/resp") - if [ -z "${RESP}" ]; then - DIALOG --title "$(TEXT "Advanced")" \ - --msgbox "$(TEXT "No disk selected!")" 0 0 - return - else - SIZE=$(df -m ${RESP} 2>/dev/null | awk 'NR==2 {print $2}') - if [ ${SIZE:-0} -lt 1024 ]; then - DIALOG --title "$(TEXT "Advanced")" \ - --msgbox "$(printf "$(TEXT "Disk %s size is less than 1GB and cannot be cloned!")" "${RESP}")" 0 0 - return - fi - MSG="" - MSG+="$(printf "$(TEXT "Warning:\nDisk %s will be formatted and written to the bootloader. Please confirm that important data has been backed up. \nDo you want to continue?")" "${RESP}")" - DIALOG --title "$(TEXT "Advanced")" \ - --yesno "${MSG}" 0 0 - [ $? -ne 0 ] && return - fi - ( - rm -rf "${PART3_PATH}/dl" - CLEARCACHE=0 - - gzip -dc "${WORK_PATH}/grub.img.gz" | dd of="${RESP}" bs=1M conv=fsync status=progress - hdparm -z "${RESP}" # reset disk cache - fdisk -l "${RESP}" - sleep 3 - - mkdir -p "${TMP_PATH}/sdX1" - mount "$(lsblk "${RESP}" -pno KNAME,LABEL 2>/dev/null | grep RR1 | awk '{print $1}')" "${TMP_PATH}/sdX1" - cp -vRf "${PART1_PATH}/". "${TMP_PATH}/sdX1/" - sync - umount "${TMP_PATH}/sdX1" - - mkdir -p "${TMP_PATH}/sdX2" - mount "$(lsblk "${RESP}" -pno KNAME,LABEL 2>/dev/null | grep RR2 | awk '{print $1}')" "${TMP_PATH}/sdX2" - cp -vRf "${PART2_PATH}/". "${TMP_PATH}/sdX2/" - sync - umount "${TMP_PATH}/sdX2" - - mkdir -p "${TMP_PATH}/sdX3" - mount "$(lsblk "${RESP}" -pno KNAME,LABEL 2>/dev/null | grep RR3 | awk '{print $1}')" "${TMP_PATH}/sdX3" - cp -vRf "${PART3_PATH}/". "${TMP_PATH}/sdX3/" - sync - umount "${TMP_PATH}/sdX3" - sleep 3 - ) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \ - --progressbox "$(TEXT "Cloning ...")" 20 100 - DIALOG --title "${T}" \ - --msgbox "$(printf "$(TEXT "Bootloader has been cloned to disk %s, please remove the current bootloader disk!\nReboot?")" "${RESP}")" 0 0 - rebootTo config - ;; - v) - if [ -d "${PART1_PATH}/logs" ]; then - rm -f "${TMP_PATH}/logs.tar.gz" - tar -czf "${TMP_PATH}/logs.tar.gz" -C "${PART1_PATH}" logs - if [ -z "${SSH_TTY}" ]; then # web - mv -f "${TMP_PATH}/logs.tar.gz" "/var/www/data/logs.tar.gz" - URL="http://$(getIP)/logs.tar.gz" - DIALOG --title "$(TEXT "Advanced")" \ - --msgbox "$(printf "$(TEXT "Please via %s to download the logs,\nAnd go to github to create an issue and upload the logs.")" "${URL}")" 0 0 - else - sz -be -B 536870912 "${TMP_PATH}/logs.tar.gz" - DIALOG --title "$(TEXT "Advanced")" \ - --msgbox "$(TEXT "Please go to github to create an issue and upload the logs.")" 0 0 - fi - else - MSG="" - MSG+="$(TEXT "\Z1No logs found!\Zn\n\n")" - MSG+="$(TEXT "Please do as follows:\n")" - MSG+="$(TEXT " 1. Add dbgutils in addons and rebuild.\n")" - MSG+="$(TEXT " 2. Wait 10 minutes after booting.\n")" - MSG+="$(TEXT " 3. Reboot into RR and go to this option.\n")" - DIALOG --title "$(TEXT "Advanced")" \ - --msgbox "${MSG}" 0 0 - fi - ;; - o) - DIALOG --title "$(TEXT "Advanced")" \ - --yesno "$(TEXT "This option only installs opkg package management, allowing you to install more tools for use and debugging. Do you want to continue?")" 0 0 - [ $? -ne 0 ] && return - ( - wget -O - http://bin.entware.net/x64-k3.2/installer/generic.sh | /bin/sh - opkg update - #opkg install python3 python3-pip - ) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \ - --progressbox "$(TEXT "opkg installing ...")" 20 100 - DIALOG --title "$(TEXT "Advanced")" \ - --msgbox "$(TEXT "opkg install is complete. Please reconnect to ssh/web, or execute 'source ~/.bashrc'")" 0 0 - ;; - g) - [ "${DSMLOGO}" = "true" ] && DSMLOGO='false' || DSMLOGO='true' - writeConfigKey "dsmlogo" "${DSMLOGO}" "${USER_CONFIG_FILE}" - NEXT="g" - ;; - 1) - RET=1 - PROXY=$(readConfigKey "global_proxy" "${USER_CONFIG_FILE}") - while true; do - DIALOG --title "$(TEXT "Advanced")" \ - --inputbox "$(TEXT "Please enter a proxy server url.(e.g., http://192.168.1.1:7981/)")" 0 70 "${PROXY}" \ - 2>${TMP_PATH}/resp - RET=$? - [ ${RET} -ne 0 ] && break - PROXY=$(cat ${TMP_PATH}/resp) - if [ -z "${PROXY}" ]; then - break - elif echo "${PROXY}" | grep -Eq "^(https?|socks5)://[^\s/$.?#].[^\s]*$"; then - break - else - DIALOG --title "$(TEXT "Advanced")" \ - --yesno "$(TEXT "Invalid proxy server url, continue?")" 0 0 - RET=$? - [ ${RET} -eq 0 ] && break - fi - done - [ ${RET} -ne 0 ] && return - - if [ -z "${PROXY}" ]; then - deleteConfigKey "global_proxy" "${USER_CONFIG_FILE}" - unset http_proxy - unset https_proxy - else - writeConfigKey "global_proxy" "${PROXY}" "${USER_CONFIG_FILE}" - export http_proxy="${PROXY}" - export https_proxy="${PROXY}" - fi - ;; - 2) - RET=1 - PROXY=$(readConfigKey "github_proxy" "${USER_CONFIG_FILE}") - while true; do - DIALOG --title "$(TEXT "Advanced")" \ - --inputbox "$(TEXT "Please enter a proxy server url.(e.g., https://mirror.ghproxy.com/)")" 0 70 "${PROXY}" \ - 2>${TMP_PATH}/resp - RET=$? - [ ${RET} -ne 0 ] && break - PROXY=$(cat ${TMP_PATH}/resp) - if [ -z "${PROXY}" ]; then - break - elif echo "${PROXY}" | grep -Eq "^(https?|socks5)://[^\s/$.?#].[^\s]*$"; then - break - else - DIALOG --title "$(TEXT "Advanced")" \ - --yesno "$(TEXT "Invalid proxy server url, continue?")" 0 0 - RET=$? - [ ${RET} -eq 0 ] && break - fi - done - [ ${RET} -ne 0 ] && return - if [ -z "${PROXY}" ]; then - deleteConfigKey "github_proxy" "${USER_CONFIG_FILE}" - else - writeConfigKey "github_proxy" "${PROXY}" "${USER_CONFIG_FILE}" - fi - ;; - !) - MSG="" - MSG+="$(TEXT "It is expected that all restrictions on DSM will be lifted,\n")" - MSG+="$(TEXT "But since upgrading is not supported, I don not want to implement it for the time being.\n")" - DIALOG --title "$(TEXT "Advanced")" \ - --msgbox "${MSG}" 0 0 - ;; - e) break ;; esac done + return +} + +############################################################################### +# Show disks information +function showDisksInfo() { + MSG="" + NUMPORTS=0 + [ $(lspci -d ::106 2>/dev/null | wc -l) -gt 0 ] && MSG+="\nATA:\n" + for PCI in $(lspci -d ::106 2>/dev/null | awk '{print $1}'); do + NAME=$(lspci -s "${PCI}" 2>/dev/null | sed "s/\ .*://") + MSG+="\Zb${NAME}\Zn\nPorts: " + PORTS=$(ls -l /sys/class/scsi_host 2>/dev/null | grep "${PCI}" | awk -F'/' '{print $NF}' | sed 's/host//' | sort -n) + for P in ${PORTS}; do + if lsscsi -b 2>/dev/null | grep -v - | grep -q "\[${P}:"; then + DUMMY="$([ "$(cat /sys/class/scsi_host/host${P}/ahci_port_cmd)" = "0" ] && echo 1 || echo 2)" + if [ "$(cat /sys/class/scsi_host/host${P}/ahci_port_cmd)" = "0" ]; then + MSG+="\Z1$(printf "%02d" ${P})\Zn " + else + MSG+="\Z2$(printf "%02d" ${P})\Zn " + fi + else + MSG+="$(printf "%02d" ${P}) " + fi + NUMPORTS=$((${NUMPORTS} + 1)) + done + MSG+="\n" + done + [ $(lspci -d ::104 2>/dev/null | wc -l) -gt 0 ] && MSG+="\nRAID:\n" + for PCI in $(lspci -d ::104 2>/dev/null | awk '{print $1}'); do + NAME=$(lspci -s "${PCI}" 2>/dev/null | sed "s/\ .*://") + PORT=$(ls -l /sys/class/scsi_host 2>/dev/null | grep "${PCI}" | awk -F'/' '{print $NF}' | sed 's/host//' | sort -n) + PORTNUM=$(lsscsi -b 2>/dev/null | grep -v - | grep "\[${PORT}:" | wc -l) + MSG+="\Zb${NAME}\Zn\nNumber: ${PORTNUM}\n" + NUMPORTS=$((${NUMPORTS} + ${PORTNUM})) + done + [ $(lspci -d ::107 2>/dev/null | wc -l) -gt 0 ] && MSG+="\nSerial Attached SCSI:\n" + for PCI in $(lspci -d ::107 2>/dev/null | awk '{print $1}'); do + NAME=$(lspci -s "${PCI}" 2>/dev/null | sed "s/\ .*://") + PORT=$(ls -l /sys/class/scsi_host 2>/dev/null | grep "${PCI}" | awk -F'/' '{print $NF}' | sed 's/host//' | sort -n) + PORTNUM=$(lsscsi -b 2>/dev/null | grep -v - | grep "\[${PORT}:" | wc -l) + MSG+="\Zb${NAME}\Zn\nNumber: ${PORTNUM}\n" + NUMPORTS=$((${NUMPORTS} + ${PORTNUM})) + done + [ $(lspci -d ::100 2>/dev/null | wc -l) -gt 0 ] && MSG+="\nSCSI:\n" + for PCI in $(lspci -d ::100 2>/dev/null | awk '{print $1}'); do + NAME=$(lspci -s "${PCI}" 2>/dev/null | sed "s/\ .*://") + PORTNUM=$(ls -l /sys/block/* 2>/dev/null | grep "${PCI}" | wc -l) + [ ${PORTNUM} -eq 0 ] && continue + MSG+="\Zb${NAME}\Zn\nNumber: ${PORTNUM}\n" + NUMPORTS=$((${NUMPORTS} + ${PORTNUM})) + done + [ $(ls -l /sys/class/scsi_host 2>/dev/null | grep usb | wc -l) -gt 0 ] && MSG+="\nUSB:\n" + for PCI in $(lspci -d ::c03 2>/dev/null | awk '{print $1}'); do + NAME=$(lspci -s "${PCI}" 2>/dev/null | sed "s/\ .*://") + PORT=$(ls -l /sys/class/scsi_host 2>/dev/null | grep "${PCI}" | awk -F'/' '{print $NF}' | sed 's/host//' | sort -n) + PORTNUM=$(lsscsi -b 2>/dev/null | grep -v - | grep "\[${PORT}:" | wc -l) + [ ${PORTNUM} -eq 0 ] && continue + MSG+="\Zb${NAME}\Zn\nNumber: ${PORTNUM}\n" + NUMPORTS=$((${NUMPORTS} + ${PORTNUM})) + done + [ $(ls -l /sys/class/mmc_host 2>/dev/null | grep mmc_host | wc -l) -gt 0 ] && MSG+="\nMMC:\n" + for PCI in $(lspci -d ::805 2>/dev/null | awk '{print $1}'); do + NAME=$(lspci -s "${PCI}" 2>/dev/null | sed "s/\ .*://") + PORTNUM=$(ls -l /sys/block/mmc* 2>/dev/null | grep "${PCI}" | wc -l) + [ ${PORTNUM} -eq 0 ] && continue + MSG+="\Zb${NAME}\Zn\nNumber: ${PORTNUM}\n" + NUMPORTS=$((${NUMPORTS} + ${PORTNUM})) + done + [ $(lspci -d ::108 2>/dev/null | wc -l) -gt 0 ] && MSG+="\nNVME:\n" + for PCI in $(lspci -d ::108 2>/dev/null | awk '{print $1}'); do + NAME=$(lspci -s "${PCI}" 2>/dev/null | sed "s/\ .*://") + PORT=$(ls -l /sys/class/nvme 2>/dev/null | grep "${PCI}" | awk -F'/' '{print $NF}' | sed 's/nvme//' | sort -n) + PORTNUM=$(lsscsi -b 2>/dev/null | grep -v - | grep "\[N:${PORT}:" | wc -l) + MSG+="\Zb${NAME}\Zn\nNumber: ${PORTNUM}\n" + NUMPORTS=$((${NUMPORTS} + ${PORTNUM})) + done + MSG+="\n" + MSG+="$(printf "$(TEXT "\nTotal of ports: %s\n")" "${NUMPORTS}")" + MSG+="$(TEXT "\nPorts with color \Z1red\Zn as DUMMY, color \Z2\Zbgreen\Zn has drive connected.")" + DIALOG --title "$(TEXT "Advanced")" \ + --msgbox "${MSG}" 0 0 + return +} + +############################################################################### +# Format disk +function formatDisks() { + rm -f "${TMP_PATH}/opts" + while read KNAME ID; do + [ -z "${KNAME}" ] && continue + [[ "${KNAME}" = /dev/md* ]] && continue + [ -z "${ID}" ] && ID="Unknown" + echo "${KNAME}" | grep -q "${LOADER_DISK}" && continue + echo "\"${KNAME}\" \"${ID}\" \"off\"" >>"${TMP_PATH}/opts" + done <<<$(lsblk -pno KNAME,ID) + if [ ! -f "${TMP_PATH}/opts" ]; then + DIALOG --title "$(TEXT "Advanced")" \ + --msgbox "$(TEXT "No disk found!")" 0 0 + return + fi + DIALOG --title "$(TEXT "Advanced")" \ + --checklist "$(TEXT "Advanced")" 0 0 0 --file "${TMP_PATH}/opts" \ + 2>${TMP_PATH}/resp + [ $? -ne 0 ] && return + RESP=$(<"${TMP_PATH}/resp") + [ -z "${RESP}" ] && return + DIALOG --title "$(TEXT "Advanced")" \ + --yesno "$(TEXT "Warning:\nThis operation is irreversible. Please backup important data. Do you want to continue?")" 0 0 + [ $? -ne 0 ] && return + if [ $(ls /dev/md* 2>/dev/null | wc -l) -gt 0 ]; then + DIALOG --title "$(TEXT "Advanced")" \ + --yesno "$(TEXT "Warning:\nThe current hds is in raid, do you still want to format them?")" 0 0 + [ $? -ne 0 ] && return + for I in $(ls /dev/md* 2>/dev/null); do + mdadm -S "${I}" + done + fi + ( + for I in ${RESP}; do + if [[ "${I}" = /dev/mmc* ]]; then + echo y | mkfs.ext4 -T largefile4 -E nodiscard "${I}" + else + echo y | mkfs.ext4 -T largefile4 "${I}" + fi + done + ) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \ + --progressbox "$(TEXT "Formatting ...")" 20 100 + DIALOG --title "$(TEXT "Advanced")" \ + --msgbox "$(TEXT "Formatting is complete.")" 0 0 + return } ############################################################################### @@ -2284,45 +1845,543 @@ function tryRecoveryDSM() { } ############################################################################### -# Permits user edit the user config -function editUserConfig() { - while true; do - DIALOG --title "$(TEXT "Edit with caution")" \ - --editbox "${USER_CONFIG_FILE}" 0 0 2>"${TMP_PATH}/userconfig" - [ $? -ne 0 ] && return - mv -f "${TMP_PATH}/userconfig" "${USER_CONFIG_FILE}" - dos2unix "${USER_CONFIG_FILE}" - ERRORS=$(checkConfigFile "${USER_CONFIG_FILE}") - [ $? -eq 0 ] && break - DIALOG --title "$(TEXT "Edit with caution")" \ - --msgbox "${ERRORS}" 0 0 - done - OLDMODEL=${MODEL} - OLDPRODUCTVER=${PRODUCTVER} - OLDBUILDNUM=${BUILDNUM} - MODEL="$(readConfigKey "model" "${USER_CONFIG_FILE}")" - PRODUCTVER="$(readConfigKey "productver" "${USER_CONFIG_FILE}")" - BUILDNUM="$(readConfigKey "buildnum" "${USER_CONFIG_FILE}")" - SN="$(readConfigKey "sn" "${USER_CONFIG_FILE}")" - - if [ "${MODEL}" != "${OLDMODEL}" -o "${PRODUCTVER}" != "${OLDPRODUCTVER}" -o "${BUILDNUM}" != "${OLDBUILDNUM}" ]; then - # Remove old files - rm -f "${MOD_ZIMAGE_FILE}" - rm -f "${MOD_RDGZ_FILE}" - fi - touch ${PART1_PATH}/.build +# Allow downgrade installation +function allowDSMDowngrade() { + MSG="" + MSG+="$(TEXT "This feature will allow you to downgrade the installation by removing the VERSION file from the first partition of all disks.\n")" + MSG+="$(TEXT "Therefore, please insert all disks before continuing.\n")" + MSG+="$(TEXT "Warning:\nThis operation is irreversible. Please backup important data. Do you want to continue?")" + DIALOG --title "$(TEXT "Advanced")" \ + --yesno "${MSG}" 0 0 + [ $? -ne 0 ] && return + ( + mkdir -p "${TMP_PATH}/sdX1" + # for I in $(ls /dev/sd*1 2>/dev/null | grep -v "${LOADER_DISK_PART1}"); do + for I in $(blkid 2>/dev/null | grep -i linux_raid_member | grep -E "/dev/.*1: " | awk -F ":" '{print $1}'); do + mount "${I}" "${TMP_PATH}/sdX1" + [ -f "${TMP_PATH}/sdX1/etc/VERSION" ] && rm -f "${TMP_PATH}/sdX1/etc/VERSION" + [ -f "${TMP_PATH}/sdX1/etc.defaults/VERSION" ] && rm -f "${TMP_PATH}/sdX1/etc.defaults/VERSION" + sync + umount "${I}" + done + rm -rf "${TMP_PATH}/sdX1" + ) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \ + --progressbox "$(TEXT "Removing ...")" 20 100 + MSG="$(TEXT "Remove VERSION file for all disks completed.")" + DIALOG --title "$(TEXT "Advanced")" \ + --msgbox "${MSG}" 0 0 + return } ############################################################################### -# Permits user edit the grub.cfg -function editGrubCfg() { +# Reset DSM system password +function resetDSMPassword() { + rm -f "${TMP_PATH}/menu" + mkdir -p "${TMP_PATH}/sdX1" + # for I in $(ls /dev/sd*1 2>/dev/null | grep -v "${LOADER_DISK_PART1}"); do + for I in $(blkid 2>/dev/null | grep -i linux_raid_member | grep -E "/dev/.*1: " | awk -F ":" '{print $1}'); do + mount ${I} "${TMP_PATH}/sdX1" + if [ -f "${TMP_PATH}/sdX1/etc/shadow" ]; then + while read L; do + U=$(echo "${L}" | awk -F ':' '{if ($2 != "*" && $2 != "!!") print $1;}') + [ -z "${U}" ] && continue + E=$(echo "${L}" | awk -F ':' '{if ($8 == "1") print "disabled"; else print " ";}') + grep -q "status=on" "${TMP_PATH}/sdX1/usr/syno/etc/packages/SecureSignIn/preference/${U}/method.config" 2>/dev/null + [ $? -eq 0 ] && S="SecureSignIn" || S=" " + printf "\"%-36s %-10s %-14s\"\n" "${U}" "${E}" "${S}" >>"${TMP_PATH}/menu" + done <<<$(cat "${TMP_PATH}/sdX1/etc/shadow") + fi + umount "${I}" + [ -f "${TMP_PATH}/menu" ] && break + done + rm -rf "${TMP_PATH}/sdX1" + if [ ! -f "${TMP_PATH}/menu" ]; then + DIALOG --title "$(TEXT "Advanced")" \ + --msgbox "$(TEXT "The installed Syno system not found in the currently inserted disks!")" 0 0 + return + fi + DIALOG --title "$(TEXT "Advanced")" \ + --no-items --menu "$(TEXT "Choose a user name")" 0 0 0 --file "${TMP_PATH}/menu" \ + 2>${TMP_PATH}/resp + [ $? -ne 0 ] && return + USER="$(cat "${TMP_PATH}/resp" 2>/dev/null | awk '{print $1}')" + [ -z "${USER}" ] && return while true; do - DIALOG --title "$(TEXT "Edit with caution")" \ - --editbox "${USER_GRUB_CONFIG}" 0 0 2>"${TMP_PATH}/usergrub.cfg" + DIALOG --title "$(TEXT "Advanced")" \ + --inputbox "$(printf "$(TEXT "Type a new password for user '%s'")" "${USER}")" 0 70 "${CMDLINE[${NAME}]}" \ + 2>${TMP_PATH}/resp + [ $? -ne 0 ] && break 2 + VALUE="$(<"${TMP_PATH}/resp")" + [ -n "${VALUE}" ] && break + DIALOG --title "$(TEXT "Advanced")" \ + --msgbox "$(TEXT "Invalid password")" 0 0 + done + NEWPASSWD="$(python -c "from passlib.hash import sha512_crypt;pw=\"${VALUE}\";print(sha512_crypt.using(rounds=5000).hash(pw))")" + ( + mkdir -p "${TMP_PATH}/sdX1" + # for I in $(ls /dev/sd*1 2>/dev/null | grep -v "${LOADER_DISK_PART1}"); do + for I in $(blkid 2>/dev/null | grep -i linux_raid_member | grep -E "/dev/.*1: " | awk -F ":" '{print $1}'); do + mount "${I}" "${TMP_PATH}/sdX1" + OLDPASSWD="$(cat "${TMP_PATH}/sdX1/etc/shadow" 2>/dev/null | grep "^${USER}:" | awk -F ':' '{print $2}')" + if [ -n "${NEWPASSWD}" -a -n "${OLDPASSWD}" ]; then + sed -i "s|${OLDPASSWD}|${NEWPASSWD}|g" "${TMP_PATH}/sdX1/etc/shadow" + sed -i "/^${USER}:/ s/\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\)/\1:\2:\3:\4:\5:\6:\7::\9/" "${TMP_PATH}/sdX1/etc/shadow" + fi + sed -i "s|status=on|status=off|g" "${TMP_PATH}/sdX1/usr/syno/etc/packages/SecureSignIn/preference/${USER}/method.config" 2>/dev/null + sync + umount "${I}" + done + rm -rf "${TMP_PATH}/sdX1" + ) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \ + --progressbox "$(TEXT "Resetting ...")" 20 100 + DIALOG --title "$(TEXT "Advanced")" \ + --msgbox "$(TEXT "Password reset completed.")" 0 0 + return +} + +############################################################################### +# Force enable Telnet&SSH of DSM system +function forceEnableDSMTelnetSSH() { + DIALOG --title "$(TEXT "Advanced")" \ + --yesno "$(TEXT "Please insert all disks before continuing.\n")" 0 0 + [ $? -ne 0 ] && return + ( + ONBOOTUP="" + ONBOOTUP="${ONBOOTUP}synowebapi --exec api=SYNO.Core.Terminal method=set version=3 enable_telnet=true enable_ssh=true ssh_port=22 forbid_console=false\n" + ONBOOTUP="${ONBOOTUP}echo \"DELETE FROM task WHERE task_name LIKE ''RRONBOOTUPRR'';\" | sqlite3 /usr/syno/etc/esynoscheduler/esynoscheduler.db\n" + mkdir -p "${TMP_PATH}/sdX1" + # for I in $(ls /dev/sd*1 2>/dev/null | grep -v "${LOADER_DISK_PART1}"); do + for I in $(blkid 2>/dev/null | grep -i linux_raid_member | grep -E "/dev/.*1: " | awk -F ":" '{print $1}'); do + mount "${I}" "${TMP_PATH}/sdX1" + if [ -f "${TMP_PATH}/sdX1/usr/syno/etc/esynoscheduler/esynoscheduler.db" ]; then + sqlite3 ${TMP_PATH}/sdX1/usr/syno/etc/esynoscheduler/esynoscheduler.db <${TMP_PATH}/isEnable + fi + umount "${I}" + done + rm -rf "${TMP_PATH}/sdX1" + ) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \ + --progressbox "$(TEXT "Enabling ...")" 20 100 + [ "$(cat ${TMP_PATH}/isEnable 2>/dev/null)" = "true" ] && MSG="$(TEXT "Telnet&SSH is enabled.")" || MSG="$(TEXT "Telnet&SSH is not enabled.")" + DIALOG --title "$(TEXT "Advanced")" \ + --msgbox "${MSG}" 0 0 + return +} + +############################################################################### +# Clone bootloader disk +function cloneBootloaderDisk() { + rm -f "${TMP_PATH}/opts" + while read KNAME ID; do + [ -z "${KNAME}" -o -z "${ID}" ] && continue + echo "${KNAME}" | grep -q "${LOADER_DISK}" && continue + echo "\"${KNAME}\" \"${ID}\" \"off\"" >>"${TMP_PATH}/opts" + done <<<$(lsblk -dpno KNAME,ID) + if [ ! -f "${TMP_PATH}/opts" ]; then + DIALOG --title "$(TEXT "Advanced")" \ + --msgbox "$(TEXT "No disk found!")" 0 0 + return + fi + DIALOG --title "$(TEXT "Advanced")" \ + --radiolist "$(TEXT "Choose a disk to clone to")" 0 0 0 --file "${TMP_PATH}/opts" \ + 2>${TMP_PATH}/resp + [ $? -ne 0 ] && return + RESP=$(<"${TMP_PATH}/resp") + if [ -z "${RESP}" ]; then + DIALOG --title "$(TEXT "Advanced")" \ + --msgbox "$(TEXT "No disk selected!")" 0 0 + return + else + SIZE=$(df -m ${RESP} 2>/dev/null | awk 'NR==2 {print $2}') + if [ ${SIZE:-0} -lt 1024 ]; then + DIALOG --title "$(TEXT "Advanced")" \ + --msgbox "$(printf "$(TEXT "Disk %s size is less than 1GB and cannot be cloned!")" "${RESP}")" 0 0 + return + fi + MSG="" + MSG+="$(printf "$(TEXT "Warning:\nDisk %s will be formatted and written to the bootloader. Please confirm that important data has been backed up. \nDo you want to continue?")" "${RESP}")" + DIALOG --title "$(TEXT "Advanced")" \ + --yesno "${MSG}" 0 0 [ $? -ne 0 ] && return - mv -f "${TMP_PATH}/usergrub.cfg" "${USER_GRUB_CONFIG}" - dos2unix "${USER_GRUB_CONFIG}" - break + fi + ( + rm -rf "${PART3_PATH}/dl" + CLEARCACHE=0 + + gzip -dc "${WORK_PATH}/grub.img.gz" | dd of="${RESP}" bs=1M conv=fsync status=progress + hdparm -z "${RESP}" # reset disk cache + fdisk -l "${RESP}" + sleep 3 + + mkdir -p "${TMP_PATH}/sdX1" + mount "$(lsblk "${RESP}" -pno KNAME,LABEL 2>/dev/null | grep RR1 | awk '{print $1}')" "${TMP_PATH}/sdX1" + cp -vRf "${PART1_PATH}/". "${TMP_PATH}/sdX1/" + sync + umount "${TMP_PATH}/sdX1" + + mkdir -p "${TMP_PATH}/sdX2" + mount "$(lsblk "${RESP}" -pno KNAME,LABEL 2>/dev/null | grep RR2 | awk '{print $1}')" "${TMP_PATH}/sdX2" + cp -vRf "${PART2_PATH}/". "${TMP_PATH}/sdX2/" + sync + umount "${TMP_PATH}/sdX2" + + mkdir -p "${TMP_PATH}/sdX3" + mount "$(lsblk "${RESP}" -pno KNAME,LABEL 2>/dev/null | grep RR3 | awk '{print $1}')" "${TMP_PATH}/sdX3" + cp -vRf "${PART3_PATH}/". "${TMP_PATH}/sdX3/" + sync + umount "${TMP_PATH}/sdX3" + sleep 3 + ) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \ + --progressbox "$(TEXT "Cloning ...")" 20 100 + DIALOG --title "${T}" \ + --msgbox "$(printf "$(TEXT "Bootloader has been cloned to disk %s, please remove the current bootloader disk!\nReboot?")" "${RESP}")" 0 0 + rebootTo config + return +} + +############################################################################### +# Set proxy +# $1 - KEY +function setProxy() { + RET=1 + PROXY=$(readConfigKey "${1}" "${USER_CONFIG_FILE}") + while true; do + [ "${1}" = "global_proxy" ] && EG="http://192.168.1.1:7981/" || EG="https://mirror.ghproxy.com/" + DIALOG --title "$(TEXT "Advanced")" \ + --inputbox "$(printf "$(TEXT "Please enter a proxy server url.(e.g., %s)")" "${EG}")" 0 70 "${PROXY}" \ + 2>${TMP_PATH}/resp + RET=$? + [ ${RET} -ne 0 ] && break + PROXY=$(cat ${TMP_PATH}/resp) + if [ -z "${PROXY}" ]; then + break + elif echo "${PROXY}" | grep -Eq "^(https?|socks5)://[^\s/$.?#].[^\s]*$"; then + break + else + DIALOG --title "$(TEXT "Advanced")" \ + --yesno "$(TEXT "Invalid proxy server url, continue?")" 0 0 + RET=$? + [ ${RET} -eq 0 ] && break + fi + done + [ ${RET} -ne 0 ] && return + + if [ -z "${PROXY}" ]; then + deleteConfigKey "${1}" "${USER_CONFIG_FILE}" + if [ "${1}" = "global_proxy" ]; then + unset http_proxy + unset https_proxy + fi + else + writeConfigKey "${1}" "${PROXY}" "${USER_CONFIG_FILE}" + if [ "${1}" = "global_proxy" ]; then + export http_proxy="${PROXY}" + export https_proxy="${PROXY}" + fi + fi + return +} +############################################################################### +# Advanced menu +function advancedMenu() { + NEXT="l" + while true; do + rm -f "${TMP_PATH}/menu" + echo "l \"$(TEXT "Switch LKM version:") \Z4${LKM}\Zn\"" >>"${TMP_PATH}/menu" + echo "j \"$(TEXT "HDD sort(hotplug):") \Z4${HDDSORT}\Zn\"" >>"${TMP_PATH}/menu" + if [ -n "${PRODUCTVER}" ]; then + echo "c \"$(TEXT "show/modify the current pat data")\"" >>"${TMP_PATH}/menu" + fi + if [ "true" = "$(readModelKey "${MODEL}" "dt")" ]; then + echo "d \"$(TEXT "Custom DTS")\"" >>"${TMP_PATH}/menu" + fi + echo "q \"$(TEXT "Switch direct boot:") \Z4${DIRECTBOOT}\Zn\"" >>"${TMP_PATH}/menu" + if [ "${DIRECTBOOT}" = "false" ]; then + echo "i \"$(TEXT "Timeout of get ip in boot:") \Z4${BOOTIPWAIT}\Zn\"" >>"${TMP_PATH}/menu" + echo "w \"$(TEXT "Timeout of boot wait:") \Z4${BOOTWAIT}\Zn\"" >>"${TMP_PATH}/menu" + echo "k \"$(TEXT "kernel switching method:") \Z4${KERNELWAY}\Zn\"" >>"${TMP_PATH}/menu" + fi + echo "n \"$(TEXT "Reboot on kernel panic:") \Z4${KERNELPANIC}\Zn\"" >>"${TMP_PATH}/menu" + if [ -n "$(ls /dev/mmcblk* 2>/dev/null)" ]; then + echo "b \"$(TEXT "Use EMMC as the system disk:") \Z4${EMMCBOOT}\Zn\"" >>"${TMP_PATH}/menu" + fi + echo "0 \"$(TEXT "Custom patch script # Developer")\"" >>"${TMP_PATH}/menu" + echo "u \"$(TEXT "Edit user config file manually")\"" >>"${TMP_PATH}/menu" + echo "h \"$(TEXT "Edit grub.cfg file manually")\"" >>"${TMP_PATH}/menu" + if [ ! "LOCALBUILD" = "${LOADER_DISK}" ]; then + echo "m \"$(TEXT "Set static IP")\"" >>"${TMP_PATH}/menu" + echo "y \"$(TEXT "Set wireless account")\"" >>"${TMP_PATH}/menu" + echo "s \"$(TEXT "Show disks information")\"" >>"${TMP_PATH}/menu" + echo "f \"$(TEXT "Format disk(s) # Without loader disk")\"" >>"${TMP_PATH}/menu" + echo "t \"$(TEXT "Try to recovery a installed DSM system")\"" >>"${TMP_PATH}/menu" + echo "a \"$(TEXT "Allow downgrade installation")\"" >>"${TMP_PATH}/menu" + echo "x \"$(TEXT "Reset DSM system password")\"" >>"${TMP_PATH}/menu" + echo "z \"$(TEXT "Force enable Telnet&SSH of DSM system")\"" >>"${TMP_PATH}/menu" + echo "r \"$(TEXT "Clone bootloader disk to another disk")\"" >>"${TMP_PATH}/menu" + echo "v \"$(TEXT "Report bugs to the author")\"" >>"${TMP_PATH}/menu" + echo "p \"$(TEXT "Save modifications of '/opt/rr'")\"" >>"${TMP_PATH}/menu" + echo "o \"$(TEXT "Install development tools")\"" >>"${TMP_PATH}/menu" + fi + echo "g \"$(TEXT "Show QR logo:") \Z4${DSMLOGO}\Zn\"" >>"${TMP_PATH}/menu" + echo "1 \"$(TEXT "Set global proxy")\"" >>"${TMP_PATH}/menu" + echo "2 \"$(TEXT "Set github proxy")\"" >>"${TMP_PATH}/menu" + echo "! \"$(TEXT "Vigorously miracle")\"" >>"${TMP_PATH}/menu" + echo "e \"$(TEXT "Exit")\"" >>"${TMP_PATH}/menu" + + DIALOG --title "$(TEXT "Advanced")" \ + --default-item "${NEXT}" --menu "$(TEXT "Advanced option")" 0 0 0 --file "${TMP_PATH}/menu" \ + 2>${TMP_PATH}/resp + [ $? -ne 0 ] && break + case $(<"${TMP_PATH}/resp") in + l) + LKM=$([ "${LKM}" = "dev" ] && echo 'prod' || ([ "${LKM}" = "test" ] && echo 'dev' || echo 'test')) + writeConfigKey "lkm" "${LKM}" "${USER_CONFIG_FILE}" + touch ${PART1_PATH}/.build + NEXT="l" + ;; + j) + [ "${HDDSORT}" = "true" ] && HDDSORT='false' || HDDSORT='true' + writeConfigKey "hddsort" "${HDDSORT}" "${USER_CONFIG_FILE}" + touch ${PART1_PATH}/.build + NEXT="j" + ;; + c) + PATURL="$(readConfigKey "paturl" "${USER_CONFIG_FILE}")" + PATSUM="$(readConfigKey "patsum" "${USER_CONFIG_FILE}")" + MSG="$(TEXT "pat: (editable)")" + DIALOG --title "$(TEXT "Advanced")" \ + --form "${MSG}" 10 110 2 "URL" 1 1 "${PATURL}" 1 5 100 0 "MD5" 2 1 "${PATSUM}" 2 5 100 0 \ + 2>"${TMP_PATH}/resp" + [ $? -ne 0 ] && return + paturl="$(cat "${TMP_PATH}/resp" | sed -n '1p')" + patsum="$(cat "${TMP_PATH}/resp" | sed -n '2p')" + if [ ! ${paturl} = ${PATURL} ] || [ ! ${patsum} = ${PATSUM} ]; then + writeConfigKey "paturl" "${paturl}" "${USER_CONFIG_FILE}" + writeConfigKey "patsum" "${patsum}" "${USER_CONFIG_FILE}" + rm -f "${ORI_ZIMAGE_FILE}" "${ORI_RDGZ_FILE}" "${MOD_ZIMAGE_FILE}" "${MOD_RDGZ_FILE}" + touch ${PART1_PATH}/.build + fi + NEXT="e" + ;; + d) + customDTS + NEXT="e" + ;; + q) + [ "${DIRECTBOOT}" = "false" ] && DIRECTBOOT='true' || DIRECTBOOT='false' + writeConfigKey "directboot" "${DIRECTBOOT}" "${USER_CONFIG_FILE}" + NEXT="q" + ;; + i) + ITEMS="$(echo -e "1 \n5 \n10 \n30 \n60 \n")" + DIALOG --title "$(TEXT "Advanced")" \ + --default-item "${BOOTIPWAIT}" --no-items --menu "$(TEXT "Choose a time(seconds)")" 0 0 0 ${ITEMS} \ + 2>${TMP_PATH}/resp + [ $? -ne 0 ] && return + resp=$(cat ${TMP_PATH}/resp 2>/dev/null) + [ -z "${resp}" ] && return + BOOTIPWAIT=${resp} + writeConfigKey "bootipwait" "${BOOTIPWAIT}" "${USER_CONFIG_FILE}" + NEXT="i" + ;; + w) + ITEMS="$(echo -e "1 \n5 \n10 \n30 \n60 \n")" + DIALOG --title "$(TEXT "Advanced")" \ + --default-item "${BOOTWAIT}" --no-items --menu "$(TEXT "Choose a time(seconds)")" 0 0 0 ${ITEMS} \ + 2>${TMP_PATH}/resp + [ $? -ne 0 ] && return + resp=$(cat ${TMP_PATH}/resp 2>/dev/null) + [ -z "${resp}" ] && return + BOOTWAIT=${resp} + writeConfigKey "bootwait" "${BOOTWAIT}" "${USER_CONFIG_FILE}" + NEXT="w" + ;; + k) + [ "${KERNELWAY}" = "kexec" ] && KERNELWAY='power' || KERNELWAY='kexec' + writeConfigKey "kernelway" "${KERNELWAY}" "${USER_CONFIG_FILE}" + NEXT="k" + ;; + n) + rm -f "${TMP_PATH}/opts" + echo "5 \"Reboot after 5 seconds\"" >>"${TMP_PATH}/opts" + echo "0 \"No reboot\"" >>"${TMP_PATH}/opts" + echo "-1 \"Restart immediately\"" >>"${TMP_PATH}/opts" + DIALOG --title "$(TEXT "Advanced")" \ + --default-item "${KERNELPANIC}" --menu "$(TEXT "Choose a time(seconds)")" 0 0 0 --file "${TMP_PATH}/opts" \ + 2>${TMP_PATH}/resp + [ $? -ne 0 ] && return + resp=$(cat ${TMP_PATH}/resp 2>/dev/null) + [ -z "${resp}" ] && return + KERNELPANIC=${resp} + writeConfigKey "kernelpanic" "${KERNELPANIC}" "${USER_CONFIG_FILE}" + NEXT="n" + ;; + b) + if [ "${EMMCBOOT}" = "true" ]; then + EMMCBOOT='false' + writeConfigKey "emmcboot" "false" "${USER_CONFIG_FILE}" + deleteConfigKey "cmdline.root" "${USER_CONFIG_FILE}" + deleteConfigKey "synoinfo.disk_swap" "${USER_CONFIG_FILE}" + deleteConfigKey "synoinfo.supportraid" "${USER_CONFIG_FILE}" + deleteConfigKey "synoinfo.support_emmc_boot" "${USER_CONFIG_FILE}" + deleteConfigKey "synoinfo.support_install_only_dev" "${USER_CONFIG_FILE}" + else + EMMCBOOT='true' + writeConfigKey "emmcboot" "true" "${USER_CONFIG_FILE}" + writeConfigKey "cmdline.root" "/dev/mmcblk0p1" "${USER_CONFIG_FILE}" + writeConfigKey "synoinfo.disk_swap" "no" "${USER_CONFIG_FILE}" + writeConfigKey "synoinfo.supportraid" "no" "${USER_CONFIG_FILE}" + writeConfigKey "synoinfo.support_emmc_boot" "yes" "${USER_CONFIG_FILE}" + writeConfigKey "synoinfo.support_install_only_dev" "yes" "${USER_CONFIG_FILE}" + fi + touch ${PART1_PATH}/.build + NEXT="b" + ;; + 0) + MSG="" + MSG+="$(TEXT "This option is only informative.\n\n")" + MSG+="$(TEXT "This program reserves an interface for ramdisk custom patch scripts.\n")" + MSG+="$(TEXT "Call timing: called before ramdisk packaging.\n")" + MSG+="$(TEXT "Location: /mnt/p3/scripts/*.sh\n")" + DIALOG --title "$(TEXT "Advanced")" \ + --msgbox "${MSG}" 0 0 + NEXT="e" + ;; + u) + editUserConfig + NEXT="e" + ;; + h) + editGrubCfg + NEXT="e" + ;; + m) + setStaticIP + NEXT="e" + ;; + y) + setWirelessAccount + NEXT="e" + ;; + s) + showDisksInfo + NEXT="e" + ;; + f) + formatDisks + NEXT="e" + ;; + t) + tryRecoveryDSM + NEXT="e" + ;; + a) + allowDSMDowngrade + NEXT="e" + ;; + x) + resetDSMPassword + NEXT="e" + ;; + z) + forceEnableDSMTelnetSSH + NEXT="e" + ;; + r) + cloneBootloaderDisk + NEXT="e" + ;; + v) + if [ -d "${PART1_PATH}/logs" ]; then + rm -f "${TMP_PATH}/logs.tar.gz" + tar -czf "${TMP_PATH}/logs.tar.gz" -C "${PART1_PATH}" logs + if [ -z "${SSH_TTY}" ]; then # web + mv -f "${TMP_PATH}/logs.tar.gz" "/var/www/data/logs.tar.gz" + URL="http://$(getIP)/logs.tar.gz" + DIALOG --title "$(TEXT "Advanced")" \ + --msgbox "$(printf "$(TEXT "Please via %s to download the logs,\nAnd go to github to create an issue and upload the logs.")" "${URL}")" 0 0 + else + sz -be -B 536870912 "${TMP_PATH}/logs.tar.gz" + DIALOG --title "$(TEXT "Advanced")" \ + --msgbox "$(TEXT "Please go to github to create an issue and upload the logs.")" 0 0 + fi + else + MSG="" + MSG+="$(TEXT "\Z1No logs found!\Zn\n\n")" + MSG+="$(TEXT "Please do as follows:\n")" + MSG+="$(TEXT " 1. Add dbgutils in addons and rebuild.\n")" + MSG+="$(TEXT " 2. Wait 10 minutes after booting.\n")" + MSG+="$(TEXT " 3. Reboot into RR and go to this option.\n")" + DIALOG --title "$(TEXT "Advanced")" \ + --msgbox "${MSG}" 0 0 + fi + NEXT="e" + ;; + p) + DIALOG --title "$(TEXT "Advanced")" \ + --yesno "$(TEXT "Warning:\nDo not terminate midway, otherwise it may cause damage to the RR. Do you want to continue?")" 0 0 + [ $? -ne 0 ] && return + DIALOG --title "$(TEXT "Advanced")" \ + --infobox "$(TEXT "Saving ...\n(It usually takes 5-10 minutes, please be patient and wait.)")" 0 0 + RDXZ_PATH="${TMP_PATH}/rdxz_tmp" + mkdir -p "${RDXZ_PATH}" + ( + cd "${RDXZ_PATH}" + xz -dc <"${RR_RAMDISK_FILE}" | cpio -idm + ) >/dev/null 2>&1 || true + rm -rf "${RDXZ_PATH}/opt/rr" + cp -Rf "/opt" "${RDXZ_PATH}/" + ( + cd "${RDXZ_PATH}" + find . 2>/dev/null | cpio -o -H newc -R root:root | xz --check=crc32 >"${RR_RAMDISK_FILE}" + ) || true + rm -rf "${RDXZ_PATH}" + DIALOG --title "$(TEXT "Advanced")" \ + --msgbox ""$(TEXT "Save is complete.")"" 0 0 + NEXT="e" + ;; + o) + DIALOG --title "$(TEXT "Advanced")" \ + --yesno "$(TEXT "This option only installs opkg package management, allowing you to install more tools for use and debugging. Do you want to continue?")" 0 0 + [ $? -ne 0 ] && return + ( + wget -O - http://bin.entware.net/x64-k3.2/installer/generic.sh | /bin/sh + opkg update + #opkg install python3 python3-pip + ) 2>&1 | DIALOG --title "$(TEXT "Advanced")" \ + --progressbox "$(TEXT "opkg installing ...")" 20 100 + DIALOG --title "$(TEXT "Advanced")" \ + --msgbox "$(TEXT "opkg install is complete. Please reconnect to ssh/web, or execute 'source ~/.bashrc'")" 0 0 + NEXT="e" + ;; + g) + [ "${DSMLOGO}" = "true" ] && DSMLOGO='false' || DSMLOGO='true' + writeConfigKey "dsmlogo" "${DSMLOGO}" "${USER_CONFIG_FILE}" + NEXT="g" + ;; + 1) + setProxy "global_proxy" + NEXT="e" + ;; + 2) + setProxy "github_proxy" + NEXT="e" + ;; + !) + MSG="" + MSG+="菩提本无树, 明镜亦非台.\n" + MSG+="本来无一物, 何处惹尘埃.\n" + DIALOG --title "$(TEXT "Advanced")" \ + --msgbox "${MSG}" 0 0 + NEXT="e" + ;; + e) break ;; + esac done } diff --git a/scripts/grub.sh b/scripts/grub.sh index 89466fef..a17441d0 100755 --- a/scripts/grub.sh +++ b/scripts/grub.sh @@ -5,6 +5,9 @@ # This is free software, licensed under the MIT License. # See /LICENSE for more information. # +# sudo apt update +# sudo apt install -y autoconf automake autopoint gettext build-essential bison flex libtool dosfstools e2fsprogs +# GRUB=${1:-"grub-2.12"} BIOS=${2:-"i386-pc i386-efi x86_64-efi"} @@ -46,6 +49,7 @@ sudo mv device.map ${NAME}1/boot/grub/device.map # Install grub +rm -rf grub git clone --depth=1 -b ${GRUB} https://git.savannah.gnu.org/git/grub.git grub pushd grub ./bootstrap @@ -85,4 +89,5 @@ sudo umount ${LOOPX}p1 sudo losetup -d ${LOOPX} sudo rm -rf ${NAME}1 +rm -f grub.img.gz gzip grub.img