유틸리티란 운영체제에서 지원하지 않거나, 지원된다해도 미약한 성능을 개선한 프로그램이다. 이번에 소개하는 유틸리티의 효율적 이용은 당신의 컴퓨터 실력을 한층 배가시켜줄 것이다.
파일의 압축과 풀기
원래 파일의 압축은 컴퓨터 통신에서 유래했다. 80년대 중반만 해도 모뎀의 속도가 고작 1천2백bps정도였으니 1MB크기의 파일을 원거리에 있는 다른 컴퓨터로 전송하려면 2-3시간은 족히 걸렸다. 이런 불편함이 결국 파일의 크기를 줄여 전송하는 방법을 연구하게 한 배경이다. 그래서 파일을 보내는 사람은 파일을 압축해 전송시간을 단축하고 그 파일을 받은 사람은 압축을 해제해 원래의 파일로 복원하는 방식이 컴퓨터 통신상에서 관습화된 것이다. 물론 파일압축이 통신상에서만 유용한 것은 아니다. 하드디스크에 있는 큰 파일도 디스켓으로 복사해야 할 때도 필수적으로 알고 있어야만 한다.
파일 압축의 원리는 간단하다. 예를 들어 aaaaaabbbcccc와 같은 파일이 있다면 a6b3c4와 같이 반복되는 문자와 횟수를 정해진 약속에 따라 표기하는 것일 뿐이다. 컴퓨터는 문서든 그림이든 음악이든 모두 0과 1의 두가지 수를 조합해 저장하므로 실제로 두 수가 반복될 가능성은 훨씬 커진다.
우리나라에서 많이 쓰는 압축 프로그램은 lha.exe pkzip.exe arj.exe 등이고 이 프로그램들은 컴퓨터 통신을 통해 쉽게 구할 수 있다. 여기서는 그 기능이 가장 다양한 arj.exe를 살펴보도록 하겠다. arj.exe는 우리가 모르는 무수한 옵션과 명령들을 가지고 있다. 그러나 그 모든 것을 알 필요는 없고 몇가지 옵션과 명령들만으로도 충분히 효율적으로 써먹을 수 있다.
arj<;명령어>;[-옵션][압축할 파일명][압축될 파일명]
일단 한번 압축을 해보도록 하자.
C:\DATA라는 디렉토리에는 a.hwp, b.hwp, c.hwp, d.hwp의 4개의 파일이 있다고 하자. 이 파일들을 하나로 압축하려면 다음과 같이 한다(물론 arj.exe라는 파일이 autoexec.bat의 path 안에 있어야 한다).
C:\DATA>;arj a myfile a.hwp b.hwp c.hwp d.hwp 또는 C:\DATA>;arj a myfile * .hwp
디렉토리에 있는 파일 중 확장자가 hwp인 것을 모두 myfile.arj라는 파일로 압축해 만들라는 의미다. myfile은 자신이 짓고 싶은 이름을 넣으면 되고 확장자는 자동적으로 arj로 붙여지게 된다. 압축이 끝나고 프롬프트가 뜨면 dir 명령으로 myfile.arj가 있는지 확인해 본다. 이렇게 하면 4개의 파일이 압축되면서 하나의 파일명으로 만들어졌기 때문에 간편하게 디스켓으로 복사해서 들고 다니거나 컴퓨터 통신의 전송시간과 비용을 절감할 수 있다.
이제 이 압축된 파일을 풀어보도록 하자.
C:\DATA>;arj e myfile c:\
이렇게 하면 myufile.arj의 압축이 풀리면서 a.hwp b.hwp c.hwp d.hwp의 4개 파일이 C드라이브의 루트디렉토리로 복사된다.
이제 가장 단순한 형태의 압축과 해제를 해 보았으니 압축과 해제의 다양한 명령어와 옵션들 중 요긴하게 쓸만한 몇가지를 정리해보자.
[명령어]
a :파일을 압축한다.
e : 압축된 파일을 푼다.
l : 압축파일의 목록을 보여준다.
x : 디렉토리 경로까지 포함된 상태로 압축을 푼다.
[옵션]
-r : 하위 디렉토리를 포함하여 압축한다.
-je : 자동풀림파일로 만들어준다.
-v디스크 크기 : 여러장의 디스크에 압축할 때 사용한다.
이 명령어들과 옵션들을 이용해 몇가지 압축을 더 해보자.
앞의 예를 통해 만들어진 압축파일은 myfile.arj다. 이 파일을 풀려면 arj.exe가 있어야 한다. 그러나 파일을 받는 사람이 초보자이고 arj.exe도 가지고 있지 않다면 압축해서 보내기가 곤란해진다. 이런 경우 옵션중 -je를 이용하면 어떻게 될까.
C:\DATA>;arj a -je myfile
이렇게 하면 myfile.exe라는 파일이 만들어진다. 이 파일을 전해주면 그 사람은 자신이 파일을 풀어놓을 디렉토리로 이 파일을 복사해 넣은 다음
C:\>;myfile 라고만 치면 자동으로 압축이 풀리면서 a.hwp, b.hwp,c.hwp, d.hwo파일이 생겨나게 된다.
만일 몇 개의 파일이 아니라 서브디렉토리를 포함한 디렉토리 구조 통째로 압축하려면 어떻게 해야 할까. 예를 들어 \-DATA-DOCUMENT-SHEET와 같은 디렉토리 구조에서 DATA를 포함한 아래의 디렉토리에 있는 모든 파일을 압축하려면 다음과 같이 한다.
C:\DATA>;arj a-v1200 -r myfile *.*-v1200은 1.2MB짜리 디스켓에 복사할 수 있도록 1.2MB크기로 파일을 잘라서 압축하는 옵션이다(1.4MB는 -v1400). 이렇게 해서 생기는 압축파일은 myfile.arj myfile.a01 myfile.a02…와 같이 된다. -r옵션은 서브디렉토리까지 같이 압축하라는 뜻이다.
하드디스크 구출 디스켓 만들기
바이러스가 부트 섹터를 깨는 경우가 아니더라도 자화 방식의 하드디스크는 수시로 우리를 불안하게 한다. 걸핏하면 파일할당 테이블(FAT)에 문제가 생겨 멀쩡했던 파일들이 얼키고 설키는 시한폭탄같은 하드디스크를 확실하게 길들일 수는 없을까. 처음에는 조금 귀찮지만 이번 기회에 구출디스켓을 만들어두면 언젠가 반드시 유용하게 쓸 수 있다.
노턴 유틸리티의 다양한 파일들 중에는 disktool.exe라는 파일이 있다. 이 파일을 실행하면 6가지의 유용한 기능들이 펼쳐지는데, 이 중 'Create Rescue Diskette'과 'Restore Rescue Diskette'이 특히 유용하다.
Rescue Diskette이란 말 그대로 시스템을 구출해줄 수 있는 디스켓이다. 이 구출 디스켓에다 시스템을 부팅하는데 필수적인 파일들과 정보들을 저장해두면 불의의 사고로 하드디스크의 시스템 영역들이 파괴됐을 때 이 디스켓을 이용해 원래대로 복구할 수 있다. 디스켓에 저장되는 내용은 하드디스크의 파티션 테이블, 부트 섹터, CMOS정보다. 지금부터 구출 디스켓을 만들어보자.
① 포맷된5.25인치 디스켓을 준비한다. 물론 3.5인치 드라이브가 A드라이브인 사람들은 3.5인치 디스켓을 준비하면 된다.
② disktool.exe를 실행한 후 Make a Disk Bootable'을 선택해 일단 부팅엔 필요한 io.sys msdos.sys command.com을 이 디스켓에 복사한다.
③ Create Rescue Diskette을 선택한다. 어떤 드라이브에 만들 것인지를 물어오면 A:이라고 답한다. 그러면 곧바로 아래의 3개 파일을 디스켓에 저장한다.
partinfo.dat 하드디스크의 파티션 테이블 정보
bootinfo.dat 하드디스크의 부트 섹터 정보
cmosinfo.dat CMOS SETUP 정보
④ 하드디스크에 문제가 생기면 하드디스크에 있는 disktool.exe도 못쓴다고 봐야 하므로 이 파일을 디스켓에 복사해 넣는다. 이 파일이 없으면 기껏 저장해 둔 정보들을 복원시킬 방법이 없기 때문이다.
C:\NU>;copy disktool.exe a:
⑤ 필수적인 과일들은 아니지만 이외에도 최신 백신이나 ndd.exe fdisk.exe unformat.exe등도 같이 복사해 넣는다. 이 디스켓에 쓰기방지탭을 붙인 다음 잘 보관해 둔다.
이제부터 만들어진 구출 디스켓을 가지고 응급처치를 하는 방법을 살펴보도록 하자.
⑥ 구출 디스켓을 A드라이브에 넣고 문을 잠근 뒤 컴퓨터를 켠다. 구출 디스켓에는 시스템을 부팅시키는 파일들도 넣어두었으므로 A드라이브를 통해 부팅이 될 것이다.
⑦ 일단 바이러스 검사를 해 본다. A:>;v3 c:
⑧ 이상이 없으면 ndd.exe를 이용해 디스크의 상태를 진단해본다. ndd 검사 도중 복구가 불가능하다는 메시지가 나오면 이제 disktool.exe를 써서 저장해 둔 정보들을 다시 하드디스크로 복사해 원래대로 복원해야 한다.
⑨ disktool.exe를 실행해 Restore Rescue Diskette을 선택한다. 디스켓이 들어있는 드라이브를 물어오면 A:이라고 답한다. 그러면 구출 정보를 정말로 되돌릴 것인가를 물어오는 대화상자가 나타나는데 체크해 선택한다.
⑩ Restore Rescue Diskette이 실행되면 디스켓의 정보들이 하드디스크로 복사되고 곧이어 부팅이 다시 이루어진다. 이 과정이 끝나면 깨끗하게 치료가 된 것으로 볼 수 있다.
노트북과 데스크톱 컴퓨터 연결하기
도스 버전 6.0 이후에는 interlnk.exe와 intersvr.exe라는 두개의 파일이 있다. 두대의 컴퓨터, 예컨대 데스크톱과 노트북이 널모뎀 케이블로 연결되기만 하면 이 안에 있는 파일들은 바로 이용할 수 있다. 좀 더 빠른 속도로 파일을 주고받기 위해서는 패러렐 포트(프린터를 연결하는 포트)간을 연결하는 것이 더 좋다. 물론 양 컴퓨터의 패러렐포트에 맞는 케이블은 따로 구입해야 한다. 자신이 노트북과 데스크톱을 함께 가지고 있다면 이 케이블은 요긴하게 사용되므로 용산전자상가 등에서 구해놓는 것이 좋다.
두 대의 컴퓨터에 있는 패러렐 포트간을 케이블로 연결했으면 두대의 컴퓨터 중 하나를 서버로, 다른 하나를 클라이언트로 결정해야 한다. 흔히 랜(LAN, 근거리 통신망)으로 컴퓨터를 연결할 때 다른 컴퓨터에게 자신의 프로그램과 자료, 프린터 등의 주변기기를 쓸 수 있게 해 주는 쪽을 서버, 이러한 자원을 공급받는 쪽을 클라이언트라고 한다. 이때 서버로 결정된 컴퓨터는 클라이언트와 연결돼 있는 동안은 사용할 수 없다는 것을 염두에 두자. 여기서 우리는 데스크톱을 서버로, 노트북을 클라이언트로 결정하도록 하겠다.
우선 서버가 되는 데스크톱 컴퓨터에서 명령을 내린다.
C:\DOS>;intersvr
이 명령은 자동적으로 케이블이 연결된 포트를 찾으며 이 컴퓨터가 서버임을 알리는 화면을 내보낸다. 이 화면에는 이 컴퓨터가 서버 상태라는 점 외에도 서버가 클라이언트에 제공하는 드라이브명, 서버와 클라이언트가 어떤 포트로 연결돼 있는가와 프로그램을 종료하는 방법(Alt+F4)을 보여준다. 이같이 LPT1으로 연결된 상태에서 전송에러가 많이 생긴다면 좀 더 세밀하게 명령을 내릴 필요가 있다.
D:\DOS>;intersvr 드라이브명 /com,lpt:N/baud:속도
'드라이브명'은 서버가 클라이언트에 제공할 드라이브이고, N값은 포트번호인데 /com:1이나 /lpt:1 등과 같이 지정하면 된다. 그리고 속도는 9천6백 1만9천2백 3만8천4백 5만7천6백 11만5천2백bps 중 하나를 선택하면 된다. 따라서 baud:115200부터 시작했다가 전송 에러가 많이 생기면 한단계씩 내려서 세팅을 해주면 될 것이다.
만약 서버가 ABC 드라이브 모두를 클라이언트에게 제공하고 직렬포트 4번으로 연결해서 1만9천2백bps의 속도로 연결하고자 한다면 다음과 같이 한다.
C:\DOS>;intersvr a: b: c:/com:4/baud:19200
이제 클라이언트로 결정된 노트북의 입장에서 명령을 내려보자. 먼저 노트북의 config.sys 파일에 다음 행을 추가하고 컴퓨터를 다시 부팅시킨다.
device=c:\dos\interlnk.exe
부팅이 돼 프롬프트가 뜨면 다시 interlnk.exe를 실행해야 한다.
C:\DOS>;interlnk
제대로 실행이 되면 화면에는 클라이언트의 상황이 표시되는데, 클라이언트의 입장에서 서버의 각 드라이브를 액세스하고자 할 때 어떤 드라이브명을 써야 되는가를 나타내준다. 예를 들어 서버(데스크톱 컴퓨터)의 A드라이브를 액세스하려면 D:하면되고 서버의 하드디스크를 액세스하고자 하면 E:라고 하는 등의 방식을 말한다.
노트북에서 E: 라고 치면 마치 하나의 컴퓨터에서 드라이브를 바꿀 때처럼 데스크톱 컴퓨터의 하드디스크를 액세스한다. 각 디렉토리를 이동하여 원하는 파일을 노트북 컴퓨터로 복사해 보라. 디스켓을 이용하여 복사하는 방식보다 훨씬 수월하고 빠르게 작업할 수 있을 것이다.