Jak mogę zapobiec przypadkowemu usunięciu folderu przeze mnie?


41

Mam bardzo ważny folder na pulpicie. Od czasu do czasu czyszczę pulpit i obawiam się, że mogę przypadkowo usunąć wspomniany folder. Czy istnieje sposób, aby zapobiec takiej katastrofie bez ograniczania częstych operacji odczytu i zapisu zawartości folderu? Uwaga Nie mam nic przeciwko usuwaniu zawartości folderu jeden po drugim, ale sam folder ma dla mnie znaczenie. Jeśli zostanie usunięty, tracę dużo wysiłku.


69
Pulpit to najgorsze miejsce do przechowywania krytycznych danych, przechowywania ich gdzie indziej i tworzenia skrótów na pulpicie.
Moab

2
Jego powszechną praktyką jest to, że skrót prowadzi do folderu, wszystko będzie działać.
Moab

3
@JasonStack prawdopodobnie, ale niekoniecznie. Jeśli przeniesiesz folder i masz jakiś inny program lub dokument, który zakłada, że ​​folder znajduje się na pulpicie, może coś popsuć. Może się tak zdarzyć, jeśli masz na przykład pliki prowadzące do innych plików. Jeśli to nie dotyczy twoich treści, prawdopodobnie nie będziesz mieć żadnych problemów.
grill

8
Nie rób tego <godz /> Twórz kopie zapasowe. Zawsze rób kopie zapasowe . W mediach zewnętrznych. Zawsze wykonuj kopie zapasowe na nośnikach zewnętrznych. Powinieneś także sprawdzić funkcję Historia plików / Poprzednie wersje systemu Windows. To całkiem przydatne.
forloop

1
„Jeśli teraz przeniosę ten folder w inne miejsce i utworzę skrót o tej samej nazwie na pulpicie, czy wszystko zależne od folderu będzie nadal działać normalnie?” @JasonStack Odpowiedziałem na to w mojej zaktualizowanej odpowiedzi poniżej. Chciałbym zauważyć, że Połączenia zostały wprowadzone z wyraźnego powodu, aby móc przenieść rzeczy do innej objętości fizycznej bez wpływu na nic.
JDługosz

Odpowiedzi:


112

Nie staraj się unikać nieuniknionego. Używaj kopii zapasowych i kontroli wersji.

Możesz jednak odmówić sobie uprawnień do usuwania . Usuwanie plików i folderów w tym katalogu to osobne uprawnienie, które można również wyłączyć w razie potrzeby.


26
Dobry krzyk na kopiach zapasowych + porady dotyczące kontroli wersji.
bertieb

6
@bertieb to bardzo ważne. OP nie musi przypadkowo usunąć folderu, aby stracić pracę, dysk może umrzeć jutro.
CodeCaster,

11
Zgoda. Uruchamianie bez kopii zapasowych to po prostu utrata danych w pewnym momencie w przyszłości - kiedy, a nie jeśli. Teraz, jeśli wybaczycie, uciekam do podwójnego sprawdzania kopii zapasowych
bertieb

7
Jako informatyk używaj zarówno kopii zapasowych, jak i kontroli wersji dla wszystkich ważnych plików, szczególnie dla klientów lub firmy. Proszę proszę proszę.
corsiKa

8
Jakie są szanse na to, pytasz? DOBRZE DOBRA, sam przypadkowo usunąłem pod koniec ubiegłego roku folder pełen ważnych rzeczy, których nie mogłem odzyskać. Główne budzenie, teraz żarliwie tworzę kopię zapasową mojej pracy w GitHub, dublowanej na BitBucket, a także dublowanej na przenośnym dysku twardym. POBIERZ OD OCHRONY, DZIECI, NIE DAJ SIĘ Tobie. POSŁUCHAJ TYCH CHŁOPAKÓW, POWRÓT POWAŻNIE.

51

Istnieje lepsze rozwiązanie problemu: przenieś folder w bardziej odpowiednie miejsce (np.% USERPROFILE% \ Documents)

Jeśli musisz mieć dostęp do folderu z pulpitu, zawsze możesz utworzyć skrót. Zapewnia to, że chociaż możesz przypadkowo usunąć skrót, nigdy nie usuwasz samego folderu ani jego cennych treści.

Jeśli inne aplikacje zależą od tego, że folder ten znajduje się na pulpicie, możesz utworzyć dowiązanie symboliczne za pomocą polecenia „mklink”. Ponieważ dowiązania symboliczne są obsługiwane na poziomie systemu plików (podczas gdy skróty są rzeczywistymi plikami, które po prostu wskazują inną lokalizację), nie powinno być żadnych problemów ze zgodnością z programami, które próbują używać tego typu „skrótu” w ścieżkach.


2
Biorąc pod uwagę okoliczności, jest to właściwa odpowiedź.
Angstrom

Podoba mi się ten pomysł. ale nie rozumiem, czy to będzie działać dla Cygwin, który zainstalowałem we wspomnianym folderze na pulpicie. Czy nie spowodowałoby to problemów dla mojej instalacji i funkcjonalności Cygwin?
codezombie

@JasonStack, instalacja Cygwin może mieć problemy, jeśli przeniesiesz ją w inne miejsce.
grill

1
@JasonStack, możesz zredagować swoje pytanie, aby uwzględnić szczegóły Cygwin, ponieważ wpływa to na możliwe odpowiedzi.
grill

1
@JasonStack Cygwin powinien traktować Połączenia w sposób niewidoczny, jak punkty montowania w Uniksie. Programy uniksowe wiedzą o dowiązaniach symbolicznych, a nowsze wersje bibliotek Cygwin powinny tak traktować dowiązania symboliczne (w stylu Vista), więc to program powinien „zobaczyć” je jako coś wyjątkowego lub nie.
JDługosz

7

Tak, potencjalnie ograniczone przez posiadaną wersję systemu Windows (wersje Home mogą nie mieć możliwości dostosowania własności). Pamiętaj też, że usunięcie uprawnień do usuwania nie gwarantuje, że nie możesz usunąć folderu . Zostałem spalony wiele razy.

Oto metoda, która jest zwykle niezawodna:

  1. Utwórz nowego użytkownika
  2. Przypisz własność folderu, którego nie chcesz usunąć do tego nowego użytkownika
  3. Usuń dostęp użytkownika, aby usunąć folder, upewnij się, że ma on pełne uprawnienia do odczytu / zapisu w tym folderze.

Użyłem tej sztuczki w systemie Windows NT do Windows 7. Czasami musisz trochę pogapić się z ustawieniami, zanim osiągniesz ideał.

TESTUJ TO NA PIERWSZEJ FOLDERZE (w tym tworzenie plików i folderów w folderze testowym!

Ponadto : zapoznaj się z poradą „Używaj kopii zapasowych i kontroli wersji”. Jeśli pliki są tak ważne, potrzebujesz co najmniej 2 kopii.


Windows Home Basic może dostosować własność; po prostu nie zawierały do ​​tego żadnego apletu. Narzędzie do udzielania zezwoleń innych firm nadal działa. Również tak zwany PIDL „God Mode” może go wyświetlić; Nie pamiętam. Zależy to od tego, czy wstrzymali również przystawkę.
JDługosz

5

Systemy plików Windows mają flagę „tylko do odczytu”. Jest to prostsze niż ustawianie uprawnień DACL dla tak prostego efektu.

W wierszu polecenia użyj polecenia ATTR. W powłoce GUI powinno być we właściwościach, chociaż GUI może zrobić coś złożonego i wykraczać poza to, czego naprawdę chciałeś.


Ponadto, jeśli ponownie utworzysz katalog o tej samej nazwie, możesz zastosować „przywróć poprzednie wersje”.


Aktualizacja

Eksperymentowałem na systemie Win7. GUI kasowania (bez kosza) ignoruje ten Rflagę na katalogu. Nie ma też żadnych dodatkowych ostrzeżeń o tym, tak jak widziałem flagi Hi / lub Sflagi. Wydanie rdz wiersza poleceń daje odmowę dostępu zgodnie z oczekiwaniami. Jednak i tak nie można po prostu rdpozostawić niepustego katalogu: usuń plik i usuń katalog to różne polecenia. Polecenie rekurencyjnego usunięcia katalogu z zawartością usunie zawartość i nie usunie teraz pustego katalogu.

Tak więc ochrona samego katalogu nie działa w akcji GUI, o której myślisz. Oznacza to, że wszelkie bardziej wymyślne podejście do zapobiegania usunięciu samego katalogu nie zapobiegnie jego wcześniejszemu opróżnieniu! Powiedziałeś, że nadal chcesz normalny dostęp do katalogu, aby tworzyć i usuwać pliki, więc całkowite zablokowanie go nie jest rozwiązaniem.

Najlepszym rozwiązaniem wydaje się być dowiązanie symboliczne . Utworzenie dowiązania symbolicznego (nowy styl, który system Windows Vista i wyżej nazywa teraz dowiązaniem symbolicznym) do katalogu na pulpicie, gdy katalog faktycznie istnieje gdzie indziej, działa w tym sensie, że jeśli usunę ikonę pulpitu (shift-delete, bez kosza) faktyczny katalog pozostaje nienaruszony, ponieważ usunięto tylko łącze.

Shift-Delete ikony pulpitu nie obchodziło, czy została oznaczona Ratrybutem.

Program korzystający ze standardowego okna dialogowego otwierania plików systemu Windows bez problemu nawigował przez dowiązanie symboliczne. Właściwie rozwiązało to nazwę połączonego katalogu, więc otwarty plik był prawdziwą nazwą; np. Desktop\MyFolderstał się, D:\scratch\MyFoldergdy się nim poruszałem.

Przy użyciu łącza w starym stylu ( skrzyżowania ) program zobaczył nazwę, w której skrzyżowanie wciąż znajduje się na ścieżce; np C:\Users\john\Desktop\MyFolder\test.txt. fakt, że jest to link, jest niewidoczny. Jednak akcja usuwania GUI nadal traktowała go jako link, nie podążając za nim niewidocznie.

Tak czy inaczej, jeśli program ma używać nazwy aliasem bezpośrednio to będzie działać. Ale posiadanie plików czasami widywanych pod jednym nazwiskiem, a czasem pod innym, może mylić rzeczy.

Wniosek

Użyj Junction na pulpicie z folderem naprawdę zlokalizowanym gdzie indziej, a to będzie całkowicie przezroczyste, że tak się dzieje. Opcjonalnie za pomocą DACL, aby zapobiec przypadkowemu usunięciu pliku punktu połączenia na pulpicie. Przynajmniej przygotuj skrypt, aby go ponownie utworzyć w razie potrzeby.

Premia

Nie próbowałem tego, ale zastanawiam się, czy mógłbyś mieć coś w „nowych przedmiotach”, aby odtworzyć skrzyżowanie lub łącze symboliczne? Następnie kliknij prawym przyciskiem myszy teraz pusty pulpit, wybierz Nowy ... i wybierz z menu „Złamane pulpity”. Niech przywróci wszystko, czego naprawdę chciałeś na pulpicie.


Nigdy nie słyszałem o śmieciach na pulpicie ani o połączeniu w systemie Windows. Co Wiedziałem tylko skrót . Czy to rozumiesz przez skrzyżowanie? Przy okazji, niedawno odkryłem z odpowiedzi i komentarzy na temat mklink i przeniosłem folder, który chciałem ( Temp ) do folderu Dokumenty, a następnie uruchomiłem mklink mylink %userprofile%\Documents\Tempgo. Działa i wydaje mi się, że nie mam problemów z programami zajmującymi się katalogiem.
codezombie

Desktop Junk to nazwa, którą wymyśliłem dla jego skryptu. A raczej dla pozycji menu, którą dodaje, aby wywołać skrypt. To gra słów w Desktop Junction i Junk Drawer. Skrót to inna sprawa. Skróty są znane tylko powłoce GUI i dezorientują wszystko inne. Prawdopodobnie działa to tak jak dowiązania symboliczne podczas korzystania z okna dialogowego Otwieranie pliku, ale nie można go użyć jako rzeczywistej nazwy katalogu: „C: \ Users \ john \ Desktop \ Shortcutname \ foo.txt” nie działa.
JDługosz


2

Inną rzeczą, którą możesz rozważyć, jest włączenie funkcji historii plików w systemie Windows 8.1. Umożliwi to systemowi automatyczne przechowywanie historii zmian w plikach i folderach. Najlepiej jest używać z zewnętrzną lokalizacją pamięci, ale można go również używać z dyskiem lokalnym.

http://blogs.msdn.com/b/b8/archive/2012/07/10/protecting-user-files-with-file-history.aspx


Nie mogę rozmawiać z Win 8.1 i jak działa Historia plików, ale w Win 7 kliknięcie prawym przyciskiem myszy folderu ujawnia „Poprzednie wersje”, aby odzyskać pliki z poprzedniego „Punktu przywracania”. Świetny w teorii, ale jeśli zapełnisz dysk, Windows odrzuca poprzedni punkt przywracania i ... puf - już nie ma poprzedniej wersji. Nie polegaj na systemie operacyjnym bardziej niż ty sam.
Ian W

Funkcja poprzednich wersji została usunięta w Win 8.1, funkcja historii plików zastępuje ją.
grill

Rozumiem zmianę funkcji, jednak pozostaje pytanie, kiedy na dysku zabraknie miejsca na nowe wpisy Historii plików. Chcesz to przetestować? Wskazówki - nie ufaj systemowi operacyjnemu bardziej niż sobie.
Ian W

@ Ian W, Nie jestem pewien, jak to jest istotne. Historia plików tworzy kopie zapasowe na osobnym woluminie pamięci. Całkowite zapełnienie dysku twardego nie może zastąpić kopii zapasowych, ponieważ znajdują się one na osobnym woluminie.
grill

1

Skutecznym rozwiązaniem może być przeniesienie folderu z pulpitu, a następnie skonfigurowanie połączenia NTFS za pomocą MKLINKpolecenia.

C: \ Users \ Administrator> MKLINK

Tworzy dowiązanie symboliczne.

MKLINK [[/ D] | [/ H] | [/ J]] Link docelowy
        / D Tworzy dowiązanie symboliczne do katalogu. Domyślnie jest to plik
                link symboliczny.
        / H Tworzy dowiązanie twarde zamiast dowiązania symbolicznego.
        / J Tworzy połączenie katalogu.
        Łącze określa nową symboliczną nazwę łącza.
        Cel określa ścieżkę (względną lub bezwzględną), którą nowe łącze
                odnosi się do.

W twoim przypadku komenda brzmiałaby:

MKLINK /J %userprofile%\Desktop\ImportantFolder D:\ImportantFolder

Gdzie D:\ImportantFolderjest właściwy folder i %userprofile%\Desktop\ImportantFolderskrzyżowanie.

Uwagi:

  • Złącze nie musi nosić tej samej nazwy folderu źródłowego.
  • Skrzyżowanie nie jest kopią, w rzeczywistości jest przekierowaniem innym sposobem na dostęp do twojego folderu. Wyobraź to sobie jak zwijaną wersję normalnego (* .lnk) skrótu.
  • Połączenia różnią się od zwykłego skrótu do folderów tym, że są całkowicie przezroczyste dla programów.
  • Jeśli skrzyżowanie zostanie usunięte, rzeczywisty folder nie zostanie usunięty.
  • Ale każda modyfikacja pliku jest taka sama jak chodzenie D:\ImportantFolderi robienie rzeczy. Jeśli więc usuniesz passwords.txtplik na skrzyżowaniu, również go usunąłeś d:/ImportantFolder.
  • Jeśli przypadkowo usuniesz skrzyżowanie, utworzysz je ponownie.

Graficzny (bardziej wydajny i łatwiejszy ) sposób (z rozszerzeniem menu kontekstowego)

Zamiast tego możesz zainstalować Link Shell Extension, a następnie przenieść folder gdzie indziej, kliknąć go prawym przyciskiem myszy i wybrać, Pick link source...a następnie kliknąć pulpit prawym przyciskiem myszy i wybrać drop as...-> Junction. I gotowe.

Jest to pierwsza aplikacja, którą instaluję na świeżych systemach, ponieważ jest to niezwykle przydatne rozwiązanie. Zdecydowanie polecam to, jeśli kiedykolwiek będziesz musiał zarządzać skrzyżowaniami lub twardymi / symbolicznymi linkami na swoim komputerze.


0

Możesz wykonać kopię zapasową wszystkich swoich plików i folderów w usłudze onedrive. Możesz go używać za darmo, ale ograniczony do 15 GB. Jednak jeśli masz subskrypcję Office 365, masz 1 TB pamięci w onedrive i jest ona uwzględniona.


Dzięki za sugestię, ale nie mogę obecnie korzystać z kopii zapasowej w chmurze z powodu intensywnych operacji odczytu / zapisu w tym folderze, a zatem ograniczeń wykorzystania przepustowości.
codezombie
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.