From 355b61f41a896f249c14e640af65e1247a6c22df Mon Sep 17 00:00:00 2001 From: damianrickard <154095072+damianrickard@users.noreply.github.com> Date: Mon, 22 Jun 2026 01:05:45 -0400 Subject: [PATCH] macOS: honor the CheckFilesystem repair flag (#1791) CoreMacOSX::CheckFilesystem() ignored both its mountedVolume and repair arguments and always just launched Disk Utility.app, so the "Check Filesystem" and "Repair Filesystem" menu items behaved identically and neither acted on the mounted volume. On Linux/BSD the same operation runs fsck and honors the flag (passing -n only when repair is false). Run diskutil on the VeraCrypt virtual device, choosing verifyVolume or repairVolume per the flag (diskutil unmounts the inner filesystem itself as needed). The Core layer has no GUI, so the result is shown in a Terminal window via a temporary .command script; it falls back to launching Disk Utility.app when no virtual device is available. Run the macOS check in the unprivileged application process. VeraCrypt does not need to create or launch the helper script from the elevated core service: diskutil operates on the mounted virtual device and macOS handles any device authorization requirements. Once a device-hosted mount has started the elevated core service, every later service request is routed to that root process. There it would create the helper script as root (0700) and open a Terminal in the GUI session that the user could neither read nor execute. CoreServiceProxy::CheckFilesystem now invokes the core implementation directly on macOS instead of sending a service request, so the script is always owned by the GUI user. The device path is strictly validated as /dev/[r]diskN[sM] before being single-quoted into the command. The helper script is created securely in the per-user temp directory via mkstemps() (atomic O_EXCL/0600, fchmod 0700 by descriptor, close() checked for deferred write errors, unlinked on any failure) rather than at a predictable, enumerable path in the world-writable /tmp, guarding against a symlink/race on the executed script. A trap removes the script on exit even if the window is closed early, and it is also unlinked if launching Terminal fails. The script captures $? so diskutil's result, including failures, is shown before the script exits. Replace the macOS pre-check message (which still told the user Disk Utility would open and to pick Verify/Repair manually) with check- and repair-specific text describing the new automatic diskutil flow. Seed the two new strings into all translation files with the English text so the XML key-completeness check passes; localization can follow. Co-authored-by: Damian Rickard --- Translations/Language.ar.xml | 2 + Translations/Language.be.xml | 2 + Translations/Language.bg.xml | 2 + Translations/Language.ca.xml | 2 + Translations/Language.co.xml | 2 + Translations/Language.cs.xml | 2 + Translations/Language.da.xml | 2 + Translations/Language.de.xml | 2 + Translations/Language.el.xml | 2 + Translations/Language.es.xml | 2 + Translations/Language.et.xml | 2 + Translations/Language.eu.xml | 2 + Translations/Language.fa.xml | 2 + Translations/Language.fi.xml | 2 + Translations/Language.fr.xml | 2 + Translations/Language.he.xml | 2 + Translations/Language.hu.xml | 2 + Translations/Language.id.xml | 2 + Translations/Language.it.xml | 2 + Translations/Language.ja.xml | 2 + Translations/Language.ka.xml | 2 + Translations/Language.ko.xml | 2 + Translations/Language.lv.xml | 2 + Translations/Language.my.xml | 2 + Translations/Language.nb.xml | 2 + Translations/Language.nl.xml | 2 + Translations/Language.nn.xml | 2 + Translations/Language.pl.xml | 2 + Translations/Language.pt-br.xml | 2 + Translations/Language.ro.xml | 2 + Translations/Language.ru.xml | 2 + Translations/Language.sk.xml | 2 + Translations/Language.sl.xml | 2 + Translations/Language.sv.xml | 2 + Translations/Language.th.xml | 2 + Translations/Language.tr.xml | 2 + Translations/Language.uk.xml | 2 + Translations/Language.uz.xml | 2 + Translations/Language.vi.xml | 2 + Translations/Language.zh-cn.xml | 2 + Translations/Language.zh-hk.xml | 2 + Translations/Language.zh-tw.xml | 2 + src/Common/Language.xml | 2 + src/Core/Unix/CoreServiceProxy.h | 10 ++ src/Core/Unix/MacOSX/CoreMacOSX.cpp | 145 ++++++++++++++++++++++++++++ src/Main/Forms/MainFrame.cpp | 2 +- 46 files changed, 242 insertions(+), 1 deletion(-) diff --git a/Translations/Language.ar.xml b/Translations/Language.ar.xml index 0f04a3e3..bb01221c 100644 --- a/Translations/Language.ar.xml +++ b/Translations/Language.ar.xml @@ -1498,6 +1498,8 @@ يرجى ملاحظة أن أي أحجام مثبتة حاليًا تحتاج إلى إعادة تثبيتها قبل أن تتمكن من استخدام هذا الإعداد. حدث استثناء غير معروف. "سيتم تشغيل “أداة القرص” بعد الضغط على "موافق".\n\nيرجى تحديد حجمك في نافذة أداة الأقراص والضغط على "التحقق من القرص" أو زر "إصلاح القرص" على صفحة "الإسعافات الأولية". + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. تركيب جميع الأجهزة خطأ أثناء تحميل ملفات التكوين الموجودة في يرجى اختيار فتحة محرك مجانية من القائمة. diff --git a/Translations/Language.be.xml b/Translations/Language.be.xml index 02d75d84..7503c650 100644 --- a/Translations/Language.be.xml +++ b/Translations/Language.be.xml @@ -1498,6 +1498,8 @@ Калі ласка, звярніце ўвагу, што любыя змантаваныя ў цяперашні час тамы неабходна перамантаваць, перш чым яны змогуць выкарыстоўваць гэты параметр. Адбылося невядомае выключэнне. «Дыскавая ўтыліта будзе запушчана пасля націску «ОК».\n\nВыберыце свой том у акне Disk Utility і націсніце кнопку «Праверыць дыск» або «Адрамантаваць дыск» на старонцы «Першая дапамога». + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Змантаваць усе прылады Памылка пры загрузцы файлаў канфігурацыі, размешчаных у Калі ласка, абярыце свабодны слот для дыскавода са спісу. diff --git a/Translations/Language.bg.xml b/Translations/Language.bg.xml index dc9a69a7..fcefd943 100644 --- a/Translations/Language.bg.xml +++ b/Translations/Language.bg.xml @@ -1498,6 +1498,8 @@ Моля, обърнете внимание, че всички монтирани в момента томове трябва да бъдат монтирани отново, преди да могат да използват тази настройка. Възникна неизвестно изключение. „Disk Utility ще се стартира, след като натиснете „OK“.\n\nМоля, изберете своя том в прозореца на Disk Utility и натиснете бутона „Проверете диска“ или „Поправете диска“ на страницата „Първа помощ“. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Монтирайте всички устройства Грешка при зареждане на конфигурационните файлове, намиращи се в Моля, изберете свободен слот за устройство от списъка. diff --git a/Translations/Language.ca.xml b/Translations/Language.ca.xml index a925c394..53788c01 100644 --- a/Translations/Language.ca.xml +++ b/Translations/Language.ca.xml @@ -1498,6 +1498,8 @@ Tingueu en compte que els volums muntats actualment s'han de tornar a muntar abans que puguin utilitzar aquesta configuració. S'ha produït una excepció desconeguda. "La Utilitat de disc s'iniciarà després de prémer "D'acord".\n\nSeleccioneu el vostre volum a la finestra Utilitat de disc i premeu el botó "Verifica el disc" o "Repara el disc" a la pàgina "Primers auxilis". + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Munta tots els dispositius S'ha produït un error en carregar els fitxers de configuració que es troben a Seleccioneu una ranura d'unitat lliure de la llista. diff --git a/Translations/Language.co.xml b/Translations/Language.co.xml index b8be8f90..40624256 100644 --- a/Translations/Language.co.xml +++ b/Translations/Language.co.xml @@ -1520,6 +1520,8 @@ Information about Corsican localization: Sappiate chì, prima di pudè impiegà stu parametru, tutti i vulumi muntati attualmente devenu esse smuntati è muntati torna. Un’anumalia scunnisciuta hè accaduta. L’utilitariu di discu serà lanciatu dopu à un cliccu nant’à « Vai ».\n\nSelezziunate u vostru vulume in a finestra di l’utilitariu di discu è appughjate nant’à u buttone « Verificà u discu » o « Riparà u discu » di a pagina« Prontu Succorsu ». + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Muntà tutti l’apparechji Sbagliu durante u caricamentu di i schedarii di cunfigurazione lucalizati in Ci vole à selezziunà una lettera di lettore libera nant’à a lista. diff --git a/Translations/Language.cs.xml b/Translations/Language.cs.xml index f717842a..ef9bd3b2 100644 --- a/Translations/Language.cs.xml +++ b/Translations/Language.cs.xml @@ -1498,6 +1498,8 @@ Berte v potaz, že před použitím tohoto nastavení je třeba znovu připojit všechny aktuálně připojené svazky. Vyskytla se neznámá výjimka. "Po stisknutí tlačítka „OK” se spustí nástroj „Disk Utility”.\n\nV okně nástroje „Disk Utility” vyberte svazek a na stránce „První pomoc” stiskněte tlačítko „Ověřit disk” nebo „Opravit disk”. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Připojit všechna zařízení Chyba při načítání konfiguračních souborů umístěných v Vyberte ze seznamu volný slot pro jednotku. diff --git a/Translations/Language.da.xml b/Translations/Language.da.xml index 36c55171..57fc76ac 100644 --- a/Translations/Language.da.xml +++ b/Translations/Language.da.xml @@ -1498,6 +1498,8 @@ Bemærk venligst, at alle aktuelt monterede volumener skal genmonteres, før de kan bruge denne indstilling. Ukendt undtagelse opstod. "Diskværktøj vil blive lanceret, når du trykker på 'OK'.\n\nVælg venligst din volumen i vinduet Diskværktøj, og tryk på knappen 'Verify Disk' eller 'Repair Disk' på 'First Aid'-siden. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Monter alle enheder Fejl under indlæsning af konfigurationsfiler placeret i Vælg venligst en gratis drevplads fra listen. diff --git a/Translations/Language.de.xml b/Translations/Language.de.xml index b2dbaa9a..800ccbd0 100644 --- a/Translations/Language.de.xml +++ b/Translations/Language.de.xml @@ -1501,6 +1501,8 @@ Bitte beachten Sie, dass alle eingehängten Volumes neu eingehängt werden müssen, bevor diese Einstellungen genutzt werden können. Unbekannte Ausnahme aufgetreten. Das Laufwerkswerkzeug wird nach dem Klicken von „OK“ gestartet.\n\nBitte wählen Sie das Volume im Werkzeug aus und klicken „Laufwerk überprüfen“ oder „Laufwerk reparieren“ auf der Seite „Erste Hilfe“. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Alle Geräte einhängen Fehler beim Laden der Konfigurationsdateien aus Bitte einen freien Laufwerksplatz aus der Liste wählen. diff --git a/Translations/Language.el.xml b/Translations/Language.el.xml index 2331ef8b..87c98c98 100644 --- a/Translations/Language.el.xml +++ b/Translations/Language.el.xml @@ -1498,6 +1498,8 @@ Λάβετε υπόψη ότι τυχόν τόμοι που έχουν τοποθετηθεί αυτήν τη στιγμή πρέπει να επανατοποθετηθούν για να μπορέσουν να χρησιμοποιήσουν αυτήν τη ρύθμιση. Παρουσιάστηκε άγνωστη εξαίρεση. "Το Disk Utility θα ξεκινήσει αφού πατήσετε "OK".\n\nΕπιλέξτε τον τόμο σας στο παράθυρο Disk Utility και πατήστε το κουμπί "Verify Disk" ή "Repair Disk" στη σελίδα "First Aid". + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Τοποθέτηση όλων των συσκευών Σφάλμα κατά τη φόρτωση των αρχείων διαμόρφωσης που βρίσκονται στο Επιλέξτε μια δωρεάν υποδοχή μονάδας δίσκου από τη λίστα. diff --git a/Translations/Language.es.xml b/Translations/Language.es.xml index f1be092e..6866df57 100644 --- a/Translations/Language.es.xml +++ b/Translations/Language.es.xml @@ -1498,6 +1498,8 @@ Tenga en cuenta que cualquier volumen actualmente montado necesita ser remontado antes de que pueda usar esta configuración. Se produjo una excepción desconocida. "La Utilidad de Discos se lanzará después de que presione 'OK'.\n\nPor favor seleccione su volumen en la ventana de Utilidad de Discos y presione el botón 'Verificar Disco' o 'Reparar Disco' en la página de 'Primeros Auxilios'. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Montar Todos los Dispositivos Error al cargar los archivos de configuración ubicados en Por favor, seleccione un espacio libre de unidad de la lista. diff --git a/Translations/Language.et.xml b/Translations/Language.et.xml index 32ba8243..436e6f07 100644 --- a/Translations/Language.et.xml +++ b/Translations/Language.et.xml @@ -1498,6 +1498,8 @@ Pange tähele, et kõik praegu ühendatud köited tuleb enne selle sätte kasutamist uuesti ühendada. Tekkis tundmatu erand. "Disk Utility käivitatakse pärast "OK" vajutamist.\n\nValige aknas Disk Utility oma köide ja vajutage lehel "Esmaabi" nuppu "Kinnita ketas" või "Paranda ketas". + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Ühendage kõik seadmed Viga asukohas asuvate konfiguratsioonifailide laadimisel Valige loendist vaba draivipesa. diff --git a/Translations/Language.eu.xml b/Translations/Language.eu.xml index c942c7c4..c98a6179 100644 --- a/Translations/Language.eu.xml +++ b/Translations/Language.eu.xml @@ -1498,6 +1498,8 @@ Kontuan izan unean muntatutako bolumenak berriro muntatu behar direla ezarpen hau erabili ahal izateko. Salbuespen ezezaguna gertatu da. "Disko erabilgarritasuna abiaraziko da 'Ados' sakatu ondoren.\n\nMesedez, hautatu zure bolumena Disk Utility leihoan eta sakatu 'Egiaztatu diskoa' edo 'Konpon ezazu diskoa' botoia 'Lehen Laguntzak' orrian. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Muntatu gailu guztiak Errore bat gertatu da hemen kokatutako konfigurazio-fitxategiak kargatzean Mesedez, hautatu doako disko zirrikitua zerrendatik. diff --git a/Translations/Language.fa.xml b/Translations/Language.fa.xml index 068ab5b4..32b9e4a9 100644 --- a/Translations/Language.fa.xml +++ b/Translations/Language.fa.xml @@ -1498,6 +1498,8 @@ لطفاً توجه داشته باشید که هر حجمی که در حال حاضر نصب شده است باید قبل از استفاده از این تنظیم مجدداً نصب شود. استثنا ناشناخته رخ داد. پس از فشار دادن «قبول»، Disk Utility راه اندازی می شود.\n\nلطفاً حجم خود را در پنجره Disk Utility انتخاب کنید و دکمه "Verify Disk" یا "Repair Disk" را در صفحه "First Aid" فشار دهید. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. نصب همه دستگاه ها خطا هنگام بارگیری فایل های پیکربندی واقع در لطفاً یک اسلات درایو رایگان از لیست انتخاب کنید. diff --git a/Translations/Language.fi.xml b/Translations/Language.fi.xml index 6e49e854..02b70452 100644 --- a/Translations/Language.fi.xml +++ b/Translations/Language.fi.xml @@ -1498,6 +1498,8 @@ Ota huomioon, että jo liitettynä olevat taltiot tulee liittää uudelleen ennen kuin ne voivat käyttää tätä asetusta. Tuntematon poikkeus tapahtui. Levytyökalu käynnistetään kun painat 'OK'.\n\nValitse ensin taltiosi Levytyökalussa ja paina 'Tarkista Levy' tai 'Korjaa Levy' nappulaa 'Korjaus' sivulla. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Liitä kaikki laitteet Virhe ladattaessa määritystiedostoa sijainnista Valitse vapaa paikka taltiolle listasta. diff --git a/Translations/Language.fr.xml b/Translations/Language.fr.xml index 385b8f6b..46198b0d 100644 --- a/Translations/Language.fr.xml +++ b/Translations/Language.fr.xml @@ -1498,6 +1498,8 @@ Notez que tous les volumes actuellement montés doivent être démontés puis remontés avant que ce paramètre ne puisse être appliqué. Une exception inconnue s'est produite. L'utilitaire de disque sera lancé après avoir appuyé sur 'OK'.\n\nVeuillez sélectionner votre volume dans la fenêtre de l'utilitaire de disque et cliquer sur le bouton 'Vérifier le disque' ou 'Réparer le disque' dans l'onglet 'Premiers secours'. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Tout Monter Erreur lors du chargement des fichiers de configuration situés dans Veuillez sélectionner un emplacement de lecteur libre dans la liste. diff --git a/Translations/Language.he.xml b/Translations/Language.he.xml index 1e7c9418..d87fec15 100644 --- a/Translations/Language.he.xml +++ b/Translations/Language.he.xml @@ -1498,6 +1498,8 @@ שים לב כי כל האמצעי אחסון המותקנים כרגע צריכים להיות מחוזרים לפני שהם יכולים להשתמש בהגדרה זו. חריג לא ידוע התרחש. &quot;תוכנית השירות לדיסק תושק לאחר שתלחץ על &apos;אישור&apos;. \n \n אנא בחר את אמצעי האחסון שלך בחלון כלי הדיסק ולחץ על &apos;אמת דיסק&apos; או &apos;תיקון דיסק&apos; בכפתור בעמוד &apos;עזרה ראשונה&apos;. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. טעינה את כל ההתקןים שגיאה בעת טעינת קבצי תצורה הממוקמים ב אנא בחר חריץ כונן חופשי מהרשימה. diff --git a/Translations/Language.hu.xml b/Translations/Language.hu.xml index ef7f3169..20dd8e67 100644 --- a/Translations/Language.hu.xml +++ b/Translations/Language.hu.xml @@ -1498,6 +1498,8 @@ Felhívjuk figyelmét, hogy a beállítás használata előtt minden jelenleg csatlakoztatott kötetet újra kell csatlakoztatni. Ismeretlen kivétel történt. "A lemezkezelő az 'OK' megnyomása után indul el.\n\nVálasszon kötetet a lemezkezelő ablakában, majd nyomja meg a 'Lemez ellenőrzése' vagy a 'Lemez javítása' gombot az 'Elsősegély' lapon. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Minden eszköz csatlakoztatása Hiba történt a következő helyen található konfigurációs fájlok betöltésekor: Válasszon egy szabad meghajtó nyílást a listából. diff --git a/Translations/Language.id.xml b/Translations/Language.id.xml index e02db749..d7079b48 100644 --- a/Translations/Language.id.xml +++ b/Translations/Language.id.xml @@ -1498,6 +1498,8 @@ Harap dicatat bahwa setiap volume yang dipasang saat ini perlu dipasang ulang sebelum dapat menggunakan pengaturan ini. Pengecualian yang tidak diketahui terjadi. Disk Utility akan diluncurkan setelah Anda menekan tombol 'OK'.\n\nPlease pilih volume Anda di jendela Disk Utility dan tekan tombol 'Verify Disk' atau 'Repair Disk' pada halaman 'Pertolongan Pertama'. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Mount Semua Perangkat Galat saat memuat file konfigurasi yang berada di Silakan pilih slot drive gratis dari daftar. diff --git a/Translations/Language.it.xml b/Translations/Language.it.xml index 5c0d6ffa..c46b7635 100644 --- a/Translations/Language.it.xml +++ b/Translations/Language.it.xml @@ -1498,6 +1498,8 @@ Nota che prima di poter usare questa impostazione tutti i volumi attualmente montati devono essere rimontati. Si è verificata un'eccezione sconosciuta. 'Utilità disco' verrà avviata dopo aver selezionato 'OK'.\n\nSeleziona il volume nella finestra 'Utilità disco' e seleziona 'Verifica disco' o 'Ripara disco' nella pagina 'Pronto soccorso'. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Monta tutti i dispositivi Errore durante il caricamento dei file di configurazione situati in Seleziona uno slot unità libero nell'elenco. diff --git a/Translations/Language.ja.xml b/Translations/Language.ja.xml index f26fb6c2..998ce603 100644 --- a/Translations/Language.ja.xml +++ b/Translations/Language.ja.xml @@ -1498,6 +1498,8 @@ 現在マウントされているボリュームは、この設定を有効にする前に再マウントする必要があります。 不明な例外が発生しました。 [OK] を押すと、ディスクユーティリティが起動します。\n\nディスクユーティリティウィンドウでボリュームを選択し、[First Aid] ページの [ディスクの検証] または [ディスクの修復] ボタンを押してください。 + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. すべてのデバイスをマウントする にある構成ファイルの読み込み中にエラーが発生しました リストから空きドライブスロットを選択してください。 diff --git a/Translations/Language.ka.xml b/Translations/Language.ka.xml index e9340ed0..c65ca217 100644 --- a/Translations/Language.ka.xml +++ b/Translations/Language.ka.xml @@ -1498,6 +1498,8 @@ გთხოვთ, გაითვალისწინოთ, რომ ამ პარამეტრის გამოყენებამდე ნებისმიერი ამჟამად დამონტაჟებული ტომი ხელახლა უნდა დამონტაჟდეს. მოხდა უცნობი გამონაკლისი. "Disk Utility ამოქმედდება "OK"-ის დაჭერის შემდეგ.\n\nგთხოვთ, აირჩიოთ თქვენი ხმა Disk Utility ფანჯარაში და დააჭირეთ ღილაკს "Verify Disk" ან "Repair Disk" ღილაკზე "პირველი დახმარების" გვერდზე. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. ყველა მოწყობილობის დამონტაჟება შეცდომა მდებარე კონფიგურაციის ფაილების ჩატვირთვისას გთხოვთ, აირჩიოთ დისკის უფასო სლოტი სიიდან. diff --git a/Translations/Language.ko.xml b/Translations/Language.ko.xml index db8d76d6..332fda4c 100644 --- a/Translations/Language.ko.xml +++ b/Translations/Language.ko.xml @@ -1498,6 +1498,8 @@ 현재 설정을 적용하려면 현재 마운트된 볼륨들을 다시 마운트해야 합니다. 알 수 없는 오류가 발생했습니다. "'확인'을 누르면 디스크 유틸리티가 실행될 것입니다\n\n디스크 유틸리티 창에서 볼륨을 선택하고 '응급 처치' 페이지에서 '디스크 확인' 또는 '디스크 수리' 버튼을 누르십시오. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. 모든 장치 마운트 특정 위치의 설정 파일 불러오기 실패: 리스트에서 빈 드라이브 자리를 선택하세요. diff --git a/Translations/Language.lv.xml b/Translations/Language.lv.xml index ea8d0de6..19ca1c01 100644 --- a/Translations/Language.lv.xml +++ b/Translations/Language.lv.xml @@ -1498,6 +1498,8 @@ Lūdzu, ņemiet vērā, ka visi pašlaik pievienotie sējumi ir jāmontē atkārtoti, lai varētu izmantot šo iestatījumu. Radās nezināms izņēmums. Diska utilīta tiks palaista pēc tam, kad būsit nospiedis OK.\n\nLūdzu, atlasiet savu sējumu diska utilīta logā un nospiediet pogu "Pārbaudīt disku" vai "Remontēt disku" lapā "Pirmā palīdzība". + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Uzstādiet visas ierīces Kļūda, ielādējot konfigurācijas failus, kas atrodas Lūdzu, sarakstā atlasiet brīvu diska slotu. diff --git a/Translations/Language.my.xml b/Translations/Language.my.xml index 3075221e..979b0b97 100644 --- a/Translations/Language.my.xml +++ b/Translations/Language.my.xml @@ -1500,6 +1500,8 @@ ဤဆက်တင်ကို အသုံးမပြုမီ လတ်တလော အစပျိုးထားသော volume များကို ပြန်အစပျိုးရန် လိုအပ်ကြောင်း ကျေးဇူးပြု၍ သတိပြုပါ။ အမည်မသိသော ခြွင်းချက် ဖြစ်ပေါ်ခဲ့သည်။ "သင် 'အိုကေ' ကို နှိပ်ပြီးနောက် Disk Utility ကို မိတ်ဆက်ပါမည်။\n\nကျေးဇူးပြု၍ Disk Utility ဝင်းဒိုးတွင် သင့် volume ကို ရွေးချယ်ပြီးနောက် 'First Aid' စာမျက်နှာရှိ 'ဒစ်(စ်)မှန်ကန်ကြောင်း စစ်ဆေးရန်' သို့မဟုတ် 'ဒစ်(စ်)ပြုပြင်ရန်' ခလုတ်ကို နှိပ်ပါ။ + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. စက်အားလုံးကို အစပျိုးရန် ဤနေရာတွင် တည်ရှိသည့် အစိတ်အပိုင်းများဖွဲ့စည်းပုံဖိုင်များကို တင်နေစဉ် ပြဿနာ ဖြစ်ပေါ်ခဲ့သည် ကျေးဇူးပြု၍ ဒရိုက်(ဗ်)အပေါက်လွတ်ကို စာရင်းမှ ရွေးချယ်ပါ။ diff --git a/Translations/Language.nb.xml b/Translations/Language.nb.xml index 2c8d20ec..1abc640d 100644 --- a/Translations/Language.nb.xml +++ b/Translations/Language.nb.xml @@ -1498,6 +1498,8 @@ Vennligst merk at alle nåværende monterte volumer må monteres på nytt før de kan bruke denne innstillingen. Ukjent unntak skjedde. Diskverktøy vil bli startet etter at du trykker «OK».\n\nVennligst velg volumet ditt i Diskverktøy-vinduet og trykk på «Verifiser Disk» eller «Reparer Disk»-knappen på «Førstehjelp»-siden. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Monter alle enheter Feil ved lasting av konfigurasjonsfiler lokalisert i Vennligst velg en ledig stasjonsbokstav fra listen. diff --git a/Translations/Language.nl.xml b/Translations/Language.nl.xml index c2b38871..f9f6b8af 100644 --- a/Translations/Language.nl.xml +++ b/Translations/Language.nl.xml @@ -1498,6 +1498,8 @@ Merk op dat alle momenteel gekoppelde volumes opnieuw moeten worden gekoppeld vooraleer ze deze instelling kunnen gebruiken. Er deed zich een onbekende uitzondering voor. Schijfhulp wordt gestart nadat u op "OK" hebt gedrukt.\n\nSelecteer uw volume in het venster van het schijfhulpprogramma en druk op de knop 'schijf controleren' of 'schijf herstellen' op de pagina 'eerste hulp'. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Alle apparaten koppelen Fout bij het laden van configuratiebestanden in Selecteer een vrij stationsslot uit de lijst. diff --git a/Translations/Language.nn.xml b/Translations/Language.nn.xml index 89118ab1..6a23a2fd 100644 --- a/Translations/Language.nn.xml +++ b/Translations/Language.nn.xml @@ -1498,6 +1498,8 @@ Ver merksam på at alle akkurat no monterte volum må monterast på nytt før dei kan bruka denne innstillinga. Ukjent unntak skjedde. "Diskverktøy vil bli lansert etter at du trykkjer ’OK’.\n\nVel volumet ditt i Diskverktøy-vindauget og trykk på ’Bekreft disk’ eller ’Reparer disk’-knappen på ’Førstehjelp’-sidan. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Monter alle einingar Feil under innlasting av konfigurasjonsfiler som ligg i Vel ein gratis stasjonsplass frå lista. diff --git a/Translations/Language.pl.xml b/Translations/Language.pl.xml index b94143b4..352c54e7 100644 --- a/Translations/Language.pl.xml +++ b/Translations/Language.pl.xml @@ -1498,6 +1498,8 @@ Należy pamiętać, że wszystkie aktualnie podłączone wolumeny muszą zostać ponownie podłączone, zanim będą mogły użyć tego ustawienia. Wystąpił nieznany wyjątek. Narzędzie dyskowe zostanie uruchomione po naciśnięciu 'OK'.\n\nWybierz swój wolumen w oknie Narzędzia dyskowego i naciśnij przycisk 'Weryfikuj dysk' lub 'Napraw dysk' na stronie 'Pierwsza pomoc'. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Podłącz wszystkie urządzenia Błąd podczas ładowania plików konfiguracyjnych znajdujących się w Wybierz wolne miejsce na dysk z listy. diff --git a/Translations/Language.pt-br.xml b/Translations/Language.pt-br.xml index a290330a..5937c2d3 100644 --- a/Translations/Language.pt-br.xml +++ b/Translations/Language.pt-br.xml @@ -1498,6 +1498,8 @@ Observe que qualquer volume atualmente montado precisará ser remontado para usar esta configuração. Ocorreu uma exceção desconhecida. "O Utilitário de Disco será iniciado após você pressionar 'OK'.\n\nPor favor, selecione seu volume na janela do Utilitário de Disco e pressione o botão 'Verificar Disco' ou 'Reparar Disco' na página 'Primeiros Socorros'. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Montar Todos os Dispositivos Erro ao carregar os arquivos de configuração localizados em Por favor, selecione um slot de unidade livre da lista. diff --git a/Translations/Language.ro.xml b/Translations/Language.ro.xml index 811b5ee8..91395b4e 100644 --- a/Translations/Language.ro.xml +++ b/Translations/Language.ro.xml @@ -1498,6 +1498,8 @@ Orice volum montat acum trebuie să fie remontat înainte de a folosi această setare. A apărut o excepție necunoscută. „Utilitarul pentru discuri” va fi lansat după ce apăsați pe «OK».\n\nSelectați volumul în fereastra utilizatorului și apăsați butonul „Verificare disc” sau „Reparare disc” pe pagina „Primul ajutor”. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Montare toate dispozitivele Eroare la încărcarea fișierele de configurare aflate în Selectați o literă de unitate liberă din listă. diff --git a/Translations/Language.ru.xml b/Translations/Language.ru.xml index e1a95183..1d1d0905 100644 --- a/Translations/Language.ru.xml +++ b/Translations/Language.ru.xml @@ -1498,6 +1498,8 @@ Учтите, что все сейчас смонтированные тома нужно размонтировать, прежде чем они смогут использовать эту настройку. Произошло неизвестное исключение. "При нажатии OK будет запущена утилита управления дисками (Disk Utility).\n\nВыберите в её окне ваш том и нажмите кнопку проверки или починки диска ("Verify Disk" или "Repair Disk") на странице первой помощи ("First Aid"). + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Смонтировать все устройства Ошибка при загрузке файлов конфигурации в Выберите в списке свободный слот диска. diff --git a/Translations/Language.sk.xml b/Translations/Language.sk.xml index 19994c82..dd0dd112 100644 --- a/Translations/Language.sk.xml +++ b/Translations/Language.sk.xml @@ -1498,6 +1498,8 @@ Upozorňujeme, že všetky aktuálne pripojené zväzky je potrebné pred použitím tohto nastavenia znova pripojiť. Vyskytla sa neznáma výnimka. "Disk Utility sa spustí po stlačení 'OK'.\n\nV okne Disk Utility vyberte svoj zväzok a stlačte tlačidlo „Overiť disk“ alebo „Opraviť disk“ na stránke „Prvá pomoc“. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Namontujte všetky zariadenia Chyba pri načítavaní konfiguračných súborov umiestnených v Vyberte si zo zoznamu voľný diskový slot. diff --git a/Translations/Language.sl.xml b/Translations/Language.sl.xml index 5775b313..71a69713 100644 --- a/Translations/Language.sl.xml +++ b/Translations/Language.sl.xml @@ -1498,6 +1498,8 @@ Upoštevaj, da je treba vse trenutno nameščene nosilce znova namestiti, preden lahko uporabljajo to nastavitev. Prišlo je do neznane izjeme. "Disk Utility se bo zagnal, ko pritisneš 'V redu'.\n\nIzberi svoj nosilec v oknu Disk Utility in pritisni gumb 'Preveri disk' ali 'Popravi disk' na strani 'Prva pomoč'. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Priklop vseh naprav Napaka pri nalaganju konfiguracijskih datotek, ki se nahajajo v Na seznamu izberi prosto režo za pogon. diff --git a/Translations/Language.sv.xml b/Translations/Language.sv.xml index dfa94c42..88040617 100644 --- a/Translations/Language.sv.xml +++ b/Translations/Language.sv.xml @@ -1498,6 +1498,8 @@ Observera att alla för närvarande monterade volymer måste monteras om innan de kan använda den här inställningen. Okänt undantag inträffade. "Diskverktyget kommer att startas när du trycker på "OK".\n\nVälj din volym i fönstret Diskverktyget och tryck på "Verifiera disk" eller "Reparera disk"-knappen på "Första hjälp"-sidan. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Montera alla enheter Fel vid inläsning av konfigurationsfiler som finns i Välj en ledig enhetsplats från listan. diff --git a/Translations/Language.th.xml b/Translations/Language.th.xml index 33fa2c94..f2af2341 100644 --- a/Translations/Language.th.xml +++ b/Translations/Language.th.xml @@ -1498,6 +1498,8 @@ โปรดทราบว่าปริมาณที่ติดตั้งอยู่ในปัจจุบันต้องถูกติดตั้งใหม่ก่อนที่พวกมันจะสามารถใช้การตั้งค่านี้ได้. เกิดข้อผิดพลาดไม่ทราบ. ยูทิลิตี้ดิสก์จะเปิดหลังจากที่คุณกด 'ตกลง'.\n\nโปรดเลือกปริมาณของคุณในหน้าต่างยูทิลิตี้ดิสก์และกดปุ่ม 'ตรวจสอบดิสก์' หรือ 'ซ่อมแซมดิสก์' ในหน้าความช่วยเหลือเบื้องต้น. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. ติดตั้งอุปกรณ์ทั้งหมด ข้อผิดพลาดขณะโหลดไฟล์การตั้งค้าที่อยู่ใน โปรดเลือกตัวอักษรไดรฟ์ที่ว่างจากรายการ. diff --git a/Translations/Language.tr.xml b/Translations/Language.tr.xml index d50e8d73..d130b2e7 100644 --- a/Translations/Language.tr.xml +++ b/Translations/Language.tr.xml @@ -1498,6 +1498,8 @@ Şu anda bağlı olan birimlerin bu ayarı kullanabilmeleri için yeniden bağlanması gerektiğini lütfen unutmayın. Bilinmeyen bir sorun çıktı. "'Tamam' üzerine tıkladığınızda Disk Aracı başlatılır.\n\nLütfen Disk Aracı penceresinden biriminizi seçin ve 'İlk yardım' sayfasında 'Diski doğrula' ya da 'Diski onar' üzerine tıklayın. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Tüm aygıtları bağla Şuradaki yapılandırma dosyaları yüklenirken sorun çıktı Lütfen listeden boştaki bir sürücü konumu seçin. diff --git a/Translations/Language.uk.xml b/Translations/Language.uk.xml index c272413c..f86860fb 100644 --- a/Translations/Language.uk.xml +++ b/Translations/Language.uk.xml @@ -1498,6 +1498,8 @@ Зверніть увагу, що всі томи, які зараз змонтовані, повинні бути перемонтовані перед тим, як вони зможуть використовувати цей параметр. Сталася невідома помилка. "Утиліта Диска буде запущена після натискання 'OK'.\n\nБудь ласка, виберіть свій том у вікні Утиліти Диска та натисніть кнопку 'Перевірити диск' або 'Відновити диск' на сторінці 'Перша допомога'. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Монтувати всі пристрої Помилка під час завантаження файлів конфігурації, розташованих в Будь ласка, виберіть вільний слот для диска зі списку. diff --git a/Translations/Language.uz.xml b/Translations/Language.uz.xml index 0d432355..3b51e6d1 100644 --- a/Translations/Language.uz.xml +++ b/Translations/Language.uz.xml @@ -1498,6 +1498,8 @@ Шуни есда тутингки, ҳозирда ўрнатилган жилдлар ушбу созламадан фойдаланишдан олдин қайта ўрнатилиши керак. Нома'лум истисно юз берди. "Ок" тугмасини босганингиздан сўнг Диск Утилитй ишга тушади.\n\nИлтимос, Диск Утилитй ойнасида томни танланг ва "Биринчи ёрдам" саҳифасида "Дискни текшириш" ёки "Дискни тузатиш" тугмасини босинг. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Барча қурилмаларни ўрнатиш жойлашган конфигуратсия файлларини юклашда хатолик юз берди Илтимос, рўйхатдан бепул ҳайдовчи уйини танланг. diff --git a/Translations/Language.vi.xml b/Translations/Language.vi.xml index 4a409f66..6430cb8c 100644 --- a/Translations/Language.vi.xml +++ b/Translations/Language.vi.xml @@ -1498,6 +1498,8 @@ Xin lưu ý rằng mọi tập đĩa hiện đang được gắn đều phải được gắn lại trước khi chúng có thể sử dụng cài đặt này. Đã xảy ra ngoại lệ không xác định. "Disk Utility sẽ được khởi chạy sau khi bạn nhấn 'OK'.\n\nVui lòng chọn ổ đĩa của bạn trong cửa sổ Disk Utility và nhấn nút 'Xác minh đĩa' hoặc 'Sửa đĩa' trên trang 'Sơ cứu'. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Gắn tất cả các thiết bị Lỗi khi tải tập tin cấu hình nằm trong Vui lòng chọn một khe cắm ổ đĩa miễn phí từ danh sách. diff --git a/Translations/Language.zh-cn.xml b/Translations/Language.zh-cn.xml index 9443465c..85c61727 100644 --- a/Translations/Language.zh-cn.xml +++ b/Translations/Language.zh-cn.xml @@ -1499,6 +1499,8 @@ 请注意,任何当前已装载的卷都需要重新装载才能应用此设置。 发生未知异常。 磁盘实用程序将在您按下“确定”后启动。\n\n请在“磁盘实用程序”窗口选择您的卷,然后按“急救”页上的“验证磁盘”或“修复磁盘”按钮。 + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. 装载所有设备 加载此处的配置文件时出错: 请从列表中选择一个可用驱动器插槽。 diff --git a/Translations/Language.zh-hk.xml b/Translations/Language.zh-hk.xml index acba8c88..f1484af2 100644 --- a/Translations/Language.zh-hk.xml +++ b/Translations/Language.zh-hk.xml @@ -1498,6 +1498,8 @@ 請注意在可以使用這項設定之前需要重新掛載現正已掛載的加密區。 發生未知的例外情況。 "磁碟工具將會在按下 [確定] 之後啟動。\n\n請在磁碟工具中選擇你的磁碟區,然後在 [救援] 頁面中按 [檢查磁碟] 或 [修復磁碟]。 + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. 掛載所有裝置 載入設定檔案時發生錯誤位於 請在列表中選擇未使用的磁碟機位置。 diff --git a/Translations/Language.zh-tw.xml b/Translations/Language.zh-tw.xml index a0d162cf..606b8550 100644 --- a/Translations/Language.zh-tw.xml +++ b/Translations/Language.zh-tw.xml @@ -1498,6 +1498,8 @@ 請注意,目前已掛載的任何加密區都需要重新掛載才能使用此設定。 發生未知異常。 「按『確定』後將啟動磁碟工具。\n\n請在「磁碟工具」視窗中選擇您的捲,然後按下「急救」頁面上的「驗證磁碟」或「修復磁碟」按鈕。 + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. 掛載所有設備 載入位於以下位置的設定檔時發生錯誤 請從清單中選擇一個空閒磁碟機插槽。 diff --git a/src/Common/Language.xml b/src/Common/Language.xml index e911a7f3..34564bed 100644 --- a/src/Common/Language.xml +++ b/src/Common/Language.xml @@ -1498,6 +1498,8 @@ Please note that any currently mounted volumes need to be remounted before they can use this setting. Unknown exception occurred. "Disk Utility will be launched after you press 'OK'.\n\nPlease select your volume in the Disk Utility window and press 'Verify Disk' or 'Repair Disk' button on the 'First Aid' page. + A Terminal window will open after you press 'OK' and check the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the check cannot be started, Disk Utility will be launched instead. + A Terminal window will open after you press 'OK' and attempt to repair the file system on the selected VeraCrypt volume using 'diskutil'. The result will be shown in that window.\n\nIf the repair cannot be started, Disk Utility will be launched instead. Mount All Devices Error while loading configuration files located in Please select a free drive slot from the list. diff --git a/src/Core/Unix/CoreServiceProxy.h b/src/Core/Unix/CoreServiceProxy.h index 243d54f6..721c35d0 100644 --- a/src/Core/Unix/CoreServiceProxy.h +++ b/src/Core/Unix/CoreServiceProxy.h @@ -27,7 +27,17 @@ namespace VeraCrypt virtual void CheckFilesystem (shared_ptr mountedVolume, bool repair) const { +#ifdef TC_MACOSX + // On macOS the check runs diskutil against the VeraCrypt virtual device + // and shows the result in a Terminal window; neither needs root. Run it + // in this (unprivileged) application process directly: once a device-hosted + // mount has started the elevated core service, every request is routed to + // that root process, which would create the helper script as root and open + // a Terminal the GUI-session user cannot read or execute. + T::CheckFilesystem (mountedVolume, repair); +#else CoreService::RequestCheckFilesystem (mountedVolume, repair); +#endif } virtual void DismountFilesystem (const DirectoryPath &mountPoint, bool force) const diff --git a/src/Core/Unix/MacOSX/CoreMacOSX.cpp b/src/Core/Unix/MacOSX/CoreMacOSX.cpp index 440e2cd4..aeff76ec 100644 --- a/src/Core/Unix/MacOSX/CoreMacOSX.cpp +++ b/src/Core/Unix/MacOSX/CoreMacOSX.cpp @@ -11,7 +11,9 @@ */ #include +#include #include +#include #include #include #include @@ -382,8 +384,151 @@ namespace VeraCrypt } } + // Strict /dev/diskN or /dev/rdiskN (optionally sN) device-node check so a value + // can be embedded safely in a generated shell command. + static bool IsPlainDiskDevicePath (const string &path) + { + size_t index; + if (path.compare (0, 10, "/dev/rdisk") == 0) + index = 10; + else if (path.compare (0, 9, "/dev/disk") == 0) + index = 9; + else + return false; + + size_t digitsStart = index; + while (index < path.size() && path[index] >= '0' && path[index] <= '9') + ++index; + if (index == digitsStart) + return false; + + if (index == path.size()) + return true; + + if (path[index++] != 's') + return false; + + size_t sliceStart = index; + while (index < path.size() && path[index] >= '0' && path[index] <= '9') + ++index; + + return index > sliceStart && index == path.size(); + } + void CoreMacOSX::CheckFilesystem (shared_ptr mountedVolume, bool repair) const { + // Honor the check-vs-repair distinction by running diskutil on the VeraCrypt + // virtual device (diskutil unmounts the inner filesystem itself as needed). + // The Core layer has no GUI, so results are shown in a Terminal window via a + // temporary .command script. Falls back to launching Disk Utility.app. + if (mountedVolume && !mountedVolume->VirtualDevice.IsEmpty()) + { + const string device = mountedVolume->VirtualDevice; + + if (IsPlainDiskDevicePath (device)) + { + try + { + const string verb = repair ? "repairVolume" : "verifyVolume"; + + // Create the script securely: a predictable name in the + // world-writable /tmp invites a symlink/race attack (the file is + // later executed, and this path can run elevated). Use the + // per-user temp directory (owned, 0700) and mkstemps(), which + // creates the file atomically with O_EXCL while keeping the + // ".command" suffix that makes /usr/bin/open launch Terminal. + string tempDir; + { + char dirBuf[MAXPATHLEN]; + size_t n = confstr (_CS_DARWIN_USER_TEMP_DIR, dirBuf, sizeof (dirBuf)); + if (n > 0 && n <= sizeof (dirBuf)) + tempDir = dirBuf; + else if (const char *t = getenv ("TMPDIR")) + tempDir = t; + else + tempDir = "/tmp/"; + } + if (tempDir.empty() || tempDir[tempDir.size() - 1] != '/') + tempDir += '/'; + + const char suffix[] = ".command"; + string templ = tempDir + "VeraCrypt-fsck-XXXXXXXX" + suffix; + vector templBuf (templ.begin(), templ.end()); + templBuf.push_back ('\0'); + + int fd = mkstemps (&templBuf[0], static_cast (sizeof (suffix) - 1)); + if (fd == -1) + throw ParameterIncorrect (SRC_POS); + + const string scriptPath (&templBuf[0]); + + try + { + // Always show diskutil's result (including failures) and + // pause; this is why the script captures $? rather than + // using "set -e", which would abort before the prompt. + const string contents = + string ("#!/bin/sh\n") + + "trap 'rm -f \"$0\"' EXIT\n" // remove the script even if the window is closed early + + "/usr/sbin/diskutil " + verb + " '" + device + "'\n" + + "status=$?\n" + + "echo\n" + + "echo 'Press Enter to close this window.'\n" + + "read dummy\n" + + "exit $status\n"; + + size_t off = 0; + while (off < contents.size()) + { + ssize_t written = write (fd, contents.data() + off, contents.size() - off); + if (written < 0) + { + if (errno == EINTR) + continue; + throw ParameterIncorrect (SRC_POS); + } + off += static_cast (written); + } + + // fchmod on the fd (not the path) keeps this race-free. + if (fchmod (fd, 0700) != 0) + throw ParameterIncorrect (SRC_POS); + + if (close (fd) != 0) // surfaces deferred write errors + throw ParameterIncorrect (SRC_POS); + fd = -1; + } + catch (...) + { + if (fd != -1) + close (fd); + unlink (scriptPath.c_str()); + throw; + } + + try + { + list openArgs; + openArgs.push_back (scriptPath); + Process::Execute ("/usr/bin/open", openArgs); + } + catch (...) + { + // open failed before Terminal could take ownership of the + // script (the EXIT trap never runs), so remove it here + // rather than leaking it into the temp directory. + unlink (scriptPath.c_str()); + throw; + } + return; + } + catch (...) + { + // Fall back to Disk Utility below. + } + } + } + list args; struct stat sb; diff --git a/src/Main/Forms/MainFrame.cpp b/src/Main/Forms/MainFrame.cpp index c2f1e141..f0409cd7 100644 --- a/src/Main/Forms/MainFrame.cpp +++ b/src/Main/Forms/MainFrame.cpp @@ -228,7 +228,7 @@ namespace VeraCrypt L"cmd.exe", args.c_str(), nullptr, SW_SHOW); #else # ifdef TC_MACOSX - Gui->ShowInfo (LangString["LINUX_FIRST_AID"]); + Gui->ShowInfo (LangString[repair ? "MACOSX_REPAIR_FILESYS" : "MACOSX_CHECK_FILESYS"]); # endif Core->CheckFilesystem (selectedVolume, repair); UpdateVolumeList();