Nem man fstab
nem man diskarbitrationd
(consulte aqui por exemplo) menciona a depreciação de /etc/fstab
.
Não está lá por padrão, mas por que deveria estar, se estivesse vazio, porque os padrões são bons? Está lá se você precisar.
Reivindicações de depreciação de fstab
estão flutuando na web há algum tempo.
De aqui :
etc/fstab is deprecated in Leopard
De aqui :
I was going to suggest editing the /etc/fstab file, but apparently that was deprecated in Leopard, and is probably now removed from Snow Leopard...
Além do fato de que não há menção de depreciação em sua documentação, por que a Apple adicionaria utilitários para editar corretamente os arquivos de configuração reprovados?
Citando man vifs
:
NAME
vifs -- safely edit fstab
[...]
HISTORY
The vifs utility originates from Mac OSX 10.5.
Enquanto o programa a seguir é executado (loop infinito, Ctrl-C para sair), nenhum disco será montado, com condições adequadas que você pode controlá-lo com mais detalhes, é claro:
#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;
}
Salve como main.c e compile usando o seguinte (você precisa de Developer Tools):
cc main.c -o mountstopd -framework Foundation -framework DiskArbitration