Jak zachować Mac OS X przed zapisywaniem ukrytych plików na dysku flash?

7

Ukryte pliki i foldery, takie jak .fseventsd, .Spotlight-V100, .TemporaryItems, i .Trashes są wrzucane do mojego dysku flash za każdym razem, gdy podłączam go do mojego Mac ...

Jak mogę tego uniknąć?

Związany z Jak wyłączyć tworzenie folderów .Spotlight-V100 i .Trash na dysku zewnętrznym? i Zapobiegaj tworzeniu plików Mac. * I ._ * !

Haywood
źródło
Przy okazji, wspaniała nazwa użytkownika.
Spiff
Lub na DOWOLNYM napędzie.
NReilingh
Utwórz je, a następnie zablokuj, aby były tylko do odczytu chflags hidden ukryć je.
Daniel Beck
@quircle Nie zgadzam się. ._ pliki są jedynymi ukrytymi plikami tworzonymi regularnie, które nie są wymienione w tym temacie.
Daniel Beck
@ Daniel To prawda (stąd słowo możliwy ); masz rację. Dziękuję za wyjaśnienie!
squircle

Odpowiedzi:

1

Macworld ma artykuł opisujący sposób usuwania ukrytych plików Mac dot. Wskazówki sugerują modyfikację domyślnego skryptu odmontowania. Zachowaj ostrożność, ponieważ skrypt może usunąć inne ukryte pliki, takie jak .bashrc, które możesz chcieć.

http://hints.macworld.com/article.php?story=20110204124029798

Dave
źródło
2
Chociaż może to teoretycznie odpowiedzieć na pytanie, byłoby lepiej aby podać tutaj istotne części odpowiedzi, i podać link do odniesienia.
Ivo Flipse
0

Podoba mi się ogólna koncepcja w Artykuł Macworld przywoływany przez @Dave, ale nie chcę celowo umieszczać ukrytych plików lub folderów (szczególnie .git lub .svn) i chcę czyścić systemy plików innych niż msdos oraz dos.

Zauważ, że spowoduje to skasowanie / zniszczenie twoich plików w skryptach, więc polecam to zrobić tylko wtedy, gdy właściwie rozumiesz, co robi ten skrypt i jesteś w porządku z potencjalnym chaosem.

Wziąłem ich sugerowany skrypt i zmieniłem go, jak pokazano poniżej. Jak powiedzieli, przed edycją upewnij się sudo mv /sbin/umount /sbin/umount-orig (więc ten skrypt może wywołać oryginalne umount). Po edycji sudo chmod 555 /sbin/umount i sudo chown root:wheel /sbin/umount.

#!/bin/sh --
loggerTag='umount-wrapper'

(
  if [ "$@" ]; then
    for i in "$@"; do
      echo $i
    done

    echo "cleaning mounted filesystem before running umount-orig..."
    rm -rf "$1"/._*
    rm -rf "$1"/.Trash*
    rm -rf "$1"/.Spotlight*
    rm -rf "$1"/.DS_Store
    rm -rf "$1"/.fseven*
  fi
) | logger -st $loggerTag

/sbin/umount-orig "$@"

Dla odniesienia (w przypadku, gdy link zniknie), oryginalny powiedział, że użyje następujących elementów do czyszczenia, ale w zależności od typu systemu plików:

    fstype=`diskutil info "$1" | sed 's/ //g' | grep '^Type:' | cut -d':' -f2`

    echo "fstype is ${fstype}"

    if [ "$fstype" = "msdos" ]; then
      echo cleaning msdos filesystem...
      find "$1" -depth -name '.[^.]*' -print -exec /bin/rm -fr {} \;
    else
      echo not msdos, skipping to umount...
    fi
sage
źródło