«   2017/06   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30

사실 이 포스팅을 하게 된 계기는 오늘 새벽 내 하드디스크 한 장이 보드가 나가버리는 일이 발생했습니다.

그런데 예전에


하드디스크에서 윈도우 설치, 2012/11/07 - [Windows/VHD] - VHD를 사용하는데 복구시 마다 명령어 입력이 귀찮을때


 등 실험하느라 부트로더를 HDD로 옮기고 SSD는 여러번 포멧을 거치며 기존 부트로더는 삭제되었는데, 하필 보드가 나간 하드가 부트로더가 들어있는 하드였...네요..



운명하신.... 시게이트 바라쿠다 2테라..


내 포트폴리오가 들은 하드인데.. 그건 업체 맡기면 된다지만 당장 부팅을 해야 과제도 외주도 작업할 거 아닌가...??


문제는 USB가 없었습니다.


평소에 시놀로지 만만세를 외치고 HDD에 윈도우 이미지 올려놓아서 usb의 필요성을 느끼지 못했던 것에 대해 후회가 밀려오지만 뭐... 이제와서 땅 파면 안나오잖아요..?


이 때 예전에 Windows Server 2012 R2 운용 당시 윈도우 배포 서버를 만졌던 기억이 나서 일반 데스크톱도 PXE 서버 구성이 되지 않을까 하고 찾아봤습니다.


마침 저는 같은 네트워크 안에 다른 pc가 무려 두 대! 나 있기 때문에 네트워크로 윈도우 복구를 해봤습니다.


TFTPd32 / 64(바이러스 사이트라 나오나 문제 없습니다.)


Tiny PXE Server ( 추천)


사실 저는 둘 다 실험해봤고 아랫것이 더 좋다고 판단하여 추천 드렸습니다.


TFTPd32는 부트 이미지들을 커널레벨부터 손수 찾아서 넣어주고 설정해야하는 반면에 Tiny PXE Server(이하 tps)는 커널 파일들이 패키지로 종류별로 전부 들어있습니다.



또 부팅시에 사용한 이미지가 있는데 윈도우 10 은 어째서인지 WinPe로 100% 복구가 불가능하거나, WinRe iso 파일이 없습니다.


대부분의 포스팅을 보면 WinRe를 직접 USB에 굽는 방법만 나와있을 뿐 그 iso 파일은 없었습니다.


그런데 Kyhi 라는 유저가 Windows 10 용 Recovery Tool Image 파일을 제공해주셨습니다. 박수 짝




Windows 10 Recovery Tools - Bootable Rescue Disk


자세한 파일 구성은 위 링크를 통해서 확인하시고 저는 바로 설명하겠습니다.


먼저 주의 사항은 두 프로그램 모두 iso 파일이 3기가 정도를 넘어가면 안됩니다.


TFTPd의 경우는 아예 파일을 보내주지 않고, tps는 일정 용량(3기가 추정)이 넘어가면 메모리 에러가 발생합니다.


제 생각엔 둘 다 iso를 위해서는 memtest를 커널로 사용하는데, 이 커널이 읽을 수 있는 최대 메모리가 3.x 기가로 제한되는 것같습니다.


바로 32비트 윈도우의 메모리 제한량과 같죠..


그래서 윈도우를 새로 설치하거나 복구할 때 윈도우 이미지를 직접 불러올 수가 없었습니다.


방법은 두 가지 있는데, 


1. PXE 서버에서 네트워크 공유(SMB)를 통해 파일을 당겨오는 방법.

2. 우선 부팅 후 브라우저를 통해 새로 내려받아 설치하는 법.


애초에 1번의 경우 PXE 자체가 같은 서브넷 안에서 동작하기 때문에 (ip 할당 및 PXE 요청을 브로드캐스트로 요청함) 언제나 가능한 기능이고, 2번의 경우는 pxe 서버로 쓰는 컴퓨터에 비밀번호가 없거나 걸기 싫은 경우, SMB가 차단된 경우 사용할 수 있는 방법입니다.


1번은 그저 아무 iso 마운트 프로그램이나 (윈10은 기본 내장) 가져다가 iso를 시디롬으로 마운트하고, 그 시디롬을 통째로 공유하면 됩니다.


2번은 뭐 알아서.. 내려받으시면...




TFTPd 설정


압축을 풀면 아래와 같이 파일이 있습니다.


여기서 각 값을 아래와 같이 수정합니다.

IP Pool start address : 본인 dhcp 대역 내에서 알아서.. 대게 iptime은 192.168.0.2 zio나 신형 kt허브는 172.30.1.1, 구형 kt허브나 기타 브랜드는 10.0.0.2로 입력하면 됩니다.

Size of pool : 10보다만 크게 해주세요.

Boot File : pxelinux.0 (추후 설명)

Def. router : 공유기

Mask : 본인 아이피 시작 192.168 -> 255.255.255.0, 172.30 -> 255.255.255.0 또는 255.255.0.0, 10.0 -> 255.255.255.0 인데 가끔 진짜 이상하게 이것을 255.0.0.0 하는 공유기가 있음.. 공유기가...


그리고 TFTP 탭에서 PXE Compatibility 체크하시면 됩니다.

체크하는 이유는 일부 iso 부팅이 이 옵션 없이는 부팅이 안됩니다.


pxelinux.0은 Kernel.org 의 syslinux에 있습니다.


Syslinux


4.04 버전이나 3.86버전을 내려받아 압축을 풀고(제가 테스트해본건 저 두버전)

3.86기준

core -> pxelinux.0

com32 -> menu -> menu.c32


그리고 pxelinux.cfg 폴더를 만들고 그 아래에 Default 파일을 만들고 아래 내용과 같이 본인 파일에 맞춰 적습니다.


DEFAULT menu.c32

PROMPT 0

ALLOWOPTIONS 0

TIMEOUT 100


MENU TITLE PXE Boot Menu


LABEL local

MENU LABEL Local Boot

MENU DEFAULT

localboot -1


LABEL winpe_iso1

MENU LABEL WinPE (Memdisk)

KERNEL memdisk

append iso raw initrd=iso/winpe10.iso




TPS 설정


tps는.. 애초에 다 준비가 되어 있습니다.

여러분들이 해야 할 것은 뭐다..? iso 구해넣고 메뉴 추가하고 설정하고 끝..



좀전에 tftpd에서 본 모양이죠? 척척 넣습니다.


Boot File의 Filename은 설치 폴더 아래에 files 안에 있으니 찾아보시면 됩니다.


다른 커널을 쓰더라도 이 폴더를 잘 보시면 이미 다 들어 있습니다.. 네..


이제 files/iso에 파일을 넣습니다.

iso는 WinPe, Re, 뭐 기타 3기가 정도만 안넘으면 다 가능합니다.


다 넣으셨으면 files/pxelinux.cfg/default 열고 아래와 같이 수정합니다. 위에거와 방법이 같죠? 같은 커널이니까요..


LABEL winpe_iso1

MENU LABEL WinPE (Memdisk)

KERNEL memdisk

append iso raw initrd=iso/winpe10.iso


다 하셨으면 위에 online을 한번 offline으로 껐다 다시 켜주시구요.


이제 메인보드에서 PXE 설정만 하면 됩니다.


PXE 설정은 다음 글에서 다루겠습니다. 


별다른 내용은 없고 메인보드에서 PXE 를 찾아 on 시키고 부팅 순서에 넣어주시면 서버에서 찾아서 알아서 부팅합니다.

,

델파이는 잘 만든듯 하면서 엉뚱한데서 허술하다.
예를들어 요즘엔 당연시 되는 자동 uses 따위 없다.
컴포넌트를 올리고 저장하면 그 부분은 자동으로 되지만 함수나 클래스를 당겨올 경우는 자동 uses 가 안된다.
데브기어 측에서는 여러가지 말을 해줬지만 그냥 결론은 엠바가 이걸 만들줄 모른다 라고 밖에 안들린다.
철학은 무슨 델파이 기본이 빠른 생산성인데 uses 해야할 라이브러리 찾아 다니다가 시간만 다 잡아먹는다.
이상한데서 개발 능력이 떨어지는 엠바가 또 한가지 버그가 있는데 기본 클래스가 ide에서 에러로 걸린다는 거다.
이건 진짜 내가 쓰는 도쿄버전에 국한된 문제가 아니라 전의 전의 전의 전의 내가 델파이를 처음썼던 xe2부터 이미 보고가 된 것인데 고치지 못했다는건
엠바 IDE 개발 수준은 딱 거기까지 라는 것.
이런 엉뚱한 점을 이의제기하면 덮기 일쑤던데 (특히 나같이 입문한지 얼마 안된 사람은) 기본은 좀 하고 덮자.

 

어쨌든 아래와 같은 상황이 있다.

 

 

보면 델파이의 가장 기본 클래스인 TObject가 밑줄이 들어가있다.

이런 식으로 기본 기능 자체가 좀... 이상하다 델파이는.. 심각하게..

그대로 빌드해도 큰 문제는 없지만 찝찝해도 이대로 해야된다.. 아님 IDE를 재시작하거나..

엠바에 신고한 버그 리포트에 따르면 ide가 기본적으로 system을 먹고 들어가야 하는데 이걸 못먹는단다.

근데 이게 내가 본것이 08년도 글인데 10년째 못고치고 있다는 소리다..

,
1
프로필 이미지
It's the Only NEET Thing to do. written by 나즈나
분류 전체보기 (256)
포트폴리오 (2)
여러가지 (160)
Windows (26)
Linux (1)
Server (5)
컴퓨터 (48)
전자기기 (3)
자격증 (3)
모바일 (1)
공유기 (4)
초소형컴퓨터 (3)