티스토리 뷰

특정 PCI를 패스스루 한뒤 원복되지 않을때 시스템을 복구해 보자.


일반적인 경우 PCI중에 NIC카드라던가 기타 시스템운영에 특별한 문제가 없는 파트라면 그나마 덜 크리티컬 할지도 모르겠다.

그런데 혹시 레이드카드를 무슨생각인지 패스스루를 해본적이 있는가?...
( 네 저는 해보았습니다. 새벽2시쯤이었나 3시쯤이었나 너무 졸린데 NIC카드를 패스스루 할 생각으로 아무생각없이 클릭 후 패스스루 전환 -> 재기동 ) 상태확인을 하는데 스토리지가 0으로 SR이 보이지 않았다.

처음엔 너무 졸린가 싶었다가 순식간에 현실 파악 하고, 레이드카드를 패스스루 해버렸네?! 
뭐 다시 원복하면 되지. 싶어서 다시 패스스루 버튼을 누르고 재기동... 음?!
원복이 되지 않는다. 이미 잠은 다 깨고 맨탈이란 맨탈은 탈탈 나가고... 영혼까지 탈탈 털리고 웹을 검색해 보니 국내엔 이런 바보같은 짓을 하신분이 안계신것 같았다....

대충 검색해 보니 결론은 재 설치가 답이었다.

그래서 여러분들은 절때 졸린상태에서 레이드컨트롤러를 패스스루 하지 마세요. 
그럼 끝!


이 아니라. 원복해 보자! 가 오늘의 목적이다.

우선은 원인은 정상인 상태의 ESXi의 경우 파일시스템에 쓰고 읽는 권한이 전부 있지만 패스스루가 한번 설정되면 Read권한만 가진상태로 마운트 되기때문에 원복설정을 해도 원복이 되지 않는 문제가 생기는 것이다.
때문에 직접 설정파일을 수정해 줘야한다.

준비물 
1. 우분투 라이브 CD

우분투 라이브 CD로 해당 호스트를 부팅해 준다.

그리고 터미널을 열어 파일 시스템을 확인해 보자.

관리자 권한을 먼저 얻고 모든 명령어를 수행해야 한다.
 1. sudo -i
 2. parted -l


위의 이미지에서 몇가지 파일 시스템들이 보이는데 이중 본인의 경우 sda5에 해당 설정파일이 있다. 대부분의경우 해당 호스트 설치 파일시스템의 5번에 있으니 확실하지 않다면 호스트 설치 디스크의 5번을 무작정 마운트해 보자.


3. mount /dev/sda5 /mnt

/mnt 경로에 sda5를 마운트하면 해당 내용을 확인할 수있다.


일부 확인해 보면 state.tgz 파일을 확인할 수 있다.




위의 이미지에서 해당 파일을 확인할 수 있다.

해당 파일을 홈디렉토리로 복사해 오자.


4. cp /mnt/state.tgz ~/

5. cd ~


그후 해당 파일의 압축을 풀어보자.



6. tar xvf state.tgz

위 커맨드를 하면 local.tgz파일이 나온다. 그럼 그것도 풀어준다.

7. tar xvf local.tgz

그럼 이제 etc경로를 수정할 수 있게된다.



그럼 해당 경로에 esx.conf 파일을 수정해 줘야한다.

8. vi esx.conf 해서 passthru라고 되어있는 pci의 설정을 확인하여 해당 내용을 vmkernel로 수정해 준다.



본인같은 경우 해당 경로를 본 설정파일에서 확인할 수 있었기에 바로 확정할 수 있었다. 


vmkernel로 변경해 주면된다.


설정을 저장하고 나와 홈디렉토리로 이동하자.

9. cd 




이제 모든 수정은 끝이 났다. 다시 원복해 주자.

10. tar czf local.tgz etc/

11. tar czf state.tgz local.tgz

파일시스템에 넣어 교체해 주자.

12. cp state.tgz /mnt/

해당 경로에 들어가서 잘 교체되었는지 확인해 보자. 현재시각과 수정시각이 똑같은걸 보니 정상적으로 잘 엎어치기가 완료된것 같아보인다.


모든 설정이 끝났다. 재기동을 해주자.

13. reboot now


몽롱한 HP 마크가 보인다.



정상으로 돌아오고 스토리지도 확인되는것을 알수 있다. 휴우....


다들 이 내용을 볼일이 없길 바랍니다. ㅠㅠㅠ



/ ** 요약 **/


1. sudo -i
2. parted -l

3. mount /dev/sda5 /mnt

4. cp /mnt/state.tgz ~/

5. cd ~

6. tar xvf state.tgz

7. tar xvf local.tgz

8. vi esx.conf 해서 passthru라고 되어있는 pci의 설정을 확인하여 해당 내용을 vmkernel로 수정해 준다.

9. cd 

10. tar czf local.tgz etc/

11. tar czf state.tgz local.tgz

12. cp state.tgz /mnt/

13. reboot now






'서버 > 가상화' 카테고리의 다른 글

무료 DDNS 추천-noip  (0) 2020.01.29
Docker 적응기..  (0) 2019.12.17
HP Micro Server Gen10 몇가지 문제점  (2) 2018.02.26
HP MicroServer Gen10 구매_NETWORK_구성도  (0) 2018.02.19
HP MicroServer Gen10 구매 _ HW 편 #4  (0) 2018.02.19
댓글