Ani man fstab
ani man diskarbitrationd
(patrz tutaj na przykład) nie wspominają o rezygnacji z /etc/fstab
.
Nie ma go domyślnie, ale dlaczego miałby być, gdyby był pusty, ponieważ wartości domyślne są dobre? Jest tam, jeśli potrzebujesz.
Roszczenia o wycofanie się krążyły fstab
już po Internecie.
Od tutaj :
etc / fstab jest przestarzałe w systemie Leopard
Od tutaj :
Chciałem zaproponować edycję pliku / etc / fstab, ale najwyraźniej był on przestarzały w Leopardzie i prawdopodobnie został teraz usunięty z Snow Leopard ...
Oprócz faktu, że w dokumentacji nie ma wzmianki o przestarzałości, dlaczego Apple dodałoby narzędzia do prawidłowej edycji nieaktualnych plików konfiguracyjnych?
Cytowanie man vifs
:
NAME
vifs -- safely edit fstab
[...]
HISTORY
The vifs utility originates from Mac OSX 10.5.
Podczas działania następującego programu (nieskończona pętla, Ctrl-C, aby wyjść), żaden dysk nie zostanie zamontowany, przy odpowiednich warunkach można go oczywiście kontrolować bardziej precyzyjnie:
#include <CoreFoundation/CoreFoundation.h>
#include <DiskArbitration/DiskArbitration.h>
DADissenterRef BlockMount(DADiskRef disk, void *context)
{
DADissenterRef dissenter = DADissenterCreate(kCFAllocatorDefault, kDAReturnNotPermitted, CFSTR("forbidden!"));
return dissenter;
}
int main (int argc, const char * argv[])
{
DAApprovalSessionRef session = DAApprovalSessionCreate (kCFAllocatorDefault);
if (!session)
{
fprintf(stderr, "failed to create Disk Arbitration session");
}
else
{
DARegisterDiskMountApprovalCallback(session, NULL, BlockMount, NULL);
DAApprovalSessionScheduleWithRunLoop(session, CFRunLoopGetCurrent(), kCFRunLoopDefaultMode);
while (true) {
CFRunLoopRunInMode(kCFRunLoopDefaultMode, 60 /* seconds */, false);
}
DAApprovalSessionUnscheduleFromRunLoop(session, CFRunLoopGetCurrent(), kCFRunLoopDefaultMode);
DAUnregisterApprovalCallback(session, BlockMount, NULL);
CFRelease(session);
}
return 0;
}
Zapisz jako main.c i skompiluj, używając następujących narzędzi (potrzebujesz Narzędzi dla programistów):
cc main.c -o mountstopd -framework Foundation -framework DiskArbitration