DELTREE

DELTREE
개발자마이크로소프트, 데이터라이트, 찰스 다이
발표일1993년 3월(33년 전)(1993-03)
운영 체제MS-DOS 6, SpartaDOS X, ROM-DOS, 프리도스, 윈도우 9x
종류명령어
라이선스MS-DOS, ROM-DOS, 윈도우: 상용 소프트웨어
프리도스: GPL v2

컴퓨팅에서 DELTREE(delete tree의 줄임말)는 일부 마이크로소프트 운영체제, SpartaDOS X 및 프리도스에서 하위 디렉터리 전체를 재귀적으로 삭제하는 명령줄 명령어이다.

개요

IBM과 마이크로소프트가 PC DOS 1.0과 MS-DOS 1.0을 도입했을 당시에는 하위 디렉터리를 지원하지 않았다. 이러한 상황은 하위 디렉터리와 디렉터리 중첩을 지원하는 DOS 2.0이 출시되면서 개선되었으나, 하위 디렉터리 트리 전체를 삭제하는 내장 기능은 없었다. MS-DOS 5.0까지는 중첩된 하위 디렉터리를 제거하기 위해 가장 낮은 단계의 하위 디렉터리에 있는 모든 파일을 먼저 삭제하고, 하위 디렉터리 자체를 제거한 뒤, 디렉터리 트리를 따라 위로 올라가며 이 과정을 반복해야 했다. 1991년경 경쟁 제품인 DR-DOS가 재귀적 파일 삭제를 가능하게 하는 유용한 유틸리티를 도입했다. MS-DOS 6.0이 도입되면서 마이크로소프트는 DELTREE 명령어를 추가하여 대등한 기능을 갖추게 되었다.

DELTREE는 윈도우 9x에서는 유지되었으나 윈도우 NT 계열 운영체제에는 포함되지 않았다. 대신 rd(또는 rmdir) 명령어에 /S 명령줄 스위치를 사용하면 하위 디렉터리와 그 안의 모든 파일을 함께 삭제할 수 있다.

구현

MS-DOS, PC DOS 및 윈도우 9x에서 DELTREE는 외부 명령어로 구현되었으며, 기능은 COMMAND.COM 외부의 별도 파일로 존재했다. 일반적인 작동 시 사용자에게 지정된 디렉터리를 삭제할지 확인을 요청했지만, 명령어 옵션을 통해 이 안전장치를 끌 수 있었다. 파일 시스템을 다루는 다른 대부분의 명령어와 달리, 한 번에 여러 디렉터리를 명령어에 전달할 수 있었다. 문서화되지 않은 기능을 통해 디렉터리 이름 끝에 "/" 문자를 붙이면 해당 디렉터리는 보존하면서 그 아래의 모든 내용을 삭제할 수 있었다. 이론적으로 삭제된 자료는 복구가 가능했다.

데이터라이트 ROM-DOS 또한 DELTREE 명령어의 구현체를 포함하고 있다.

프리도스 버전은 찰스 다이가 개발했으며 GPL v2 라이선스를 따른다.

구문

명령어 구문은 다음과 같다.

DELTREE[/Y][DRIVE:][PATH]

악성 소프트웨어 및 파괴 행위에서의 사용

DELTREE는 숨김, 읽기 전용, 시스템과 같은 모든 파일 및 디렉터리 속성을 무시하도록 설계되었다. 이 명령어는 "잠재적으로 위험"하며 "한 번에 수백 개의 파일을 지울 수 있는" 명령어로 묘사되었다. 데이터 복구를 방지하는 PURGE 명령어와 결합하여 악성 소프트웨어의 최악의 페이로드 사례가 되었으며, 초기 컴퓨터 사보타주 재판 중 하나에서도 언급되었다.

이 문제의 원인 중 하나는 MS-DOS와 윈도우 9x가 이러한 문제를 완화할 수 있는 임의 접근 제어를 지원하지 않는다는 점이다. 윈도우 NT 계열은 이를 지원한다. 나아가 윈도우 비스타부터는 강제적 접근 제어와 사용자 계정 컨트롤이 해당 문제를 더욱 완화한다.

같이 보기

각주

  1. ↑ “SpartaDOS X 4.48 User Guide” (PDF). 2021년 10월 10일에 원본 문서 (PDF)에서 보존된 문서. 2019년 3월 16일에 확인함.
  2. ↑ “The FreeDOS Project blog: FreeDOS commands quick-reference”. 2018년 6월 29일. 2018년 7월 22일에 원본 문서에서 보존된 문서. 2018년 7월 22일에 확인함.
  3. ↑ Dickinson, John (1985년 5월 28일). “Stalking the Elusive Subdirectory Path”. 《PC Magazine》. 231면.
  4. ↑ Glass, Brett (1991년 7월 8일). “MS-DOS 5: Reigning OS improves its value”. 《InfoWorld》. 64–66면.
  5. 1 2 3 Cooper, Jim (2002). 《Using MS-DOS 6.22》 3판. Que. 120–121쪽. ISBN 0-7897-2573-8.
  6. ↑ No DELTREE Command? - MalekTips 보관됨 3월 17, 2010 - 웨이백 머신
  7. ↑ Crayton, Christopher (2008). 《The A+ Exams Guide: Preparation Guide for the CompTIA Essentials》. CompTIA. 336쪽. ISBN 978-1-58450-566-2.
  8. 1 2 Mueller, John Paul (2007). 《Windows Administration at the Command Line for Windows Vista, Windows 2003, Windows XP, and Windows 2000》. Wiley. 28–29쪽. ISBN 978-0-470-04616-6.
  9. 1 2 Rubenking, Neil J. (1996년 11월 19일). “User-to-User”. 《PC Magazine》. 247면.
  10. ↑ “Datalight ROM-DOS User's Guide” (PDF). 《www.datalight.com》. 2019년 4월 21일에 원본 문서 (PDF)에서 보존된 문서. 2020년 1월 18일에 확인함.
  11. ↑ “FreeDOS 1.2 Updates Package - deltree (FreeDOS Base)”. Ibiblio.org. 2013년 3월 30일. 2021년 7월 30일에 원본 문서에서 보존된 문서. 2022년 9월 8일에 확인함.
  12. ↑ Glass, Brett (1994년 5월 2일). “How to safely defuse an ANSI bomb; video scan converters”. 《InfoWorld》. 40면.
  13. ↑ Gaudin, Sharon (2000). “Case Study of Insider Sabotage: The Tim Lloyd/Omega Case” (PDF) (FTP). 《Computer Security Journal》. 1–8쪽.
  14. ↑ Lange, Michele C. S.; Nimsger, Kristin (2004). 《Electronic Evidence and Discovery: What every Lawyer Should Know》. ABA. 15쪽. ISBN 1-59031-334-8. The case was litigated as United States v. Lloyd, 269 F.3d 228 (3rd Cir. 201) 보관됨 2016-03-03 - 웨이백 머신.

더 읽어보기

외부 링크