우분투 16.04(제니얼) nic 교체시 재연결법 입니다.
며칠간 우열곡절을 거처 다시 우분투로 돌아왔습니다.
사실 우분투는 데비안에 비해 업데이트가 빠른건 물론이고 지원되는 Repository 양이 실로 엄청나죠.
앞서 나뿐 네트웤 환경으로 오해하여 악성글을 올렸는데 사과하는 심정으로 간략한 팁하나 올립니다.
우분투는 다른 리눅스와 달리 nic (motherboard) 교체시 네트웤이 죽는 황당한 현상을 보게되는데요.
모니터가 없는 서버전용의 경우 하드를 잠시 PC의 vm으로 물려 설치했다가 서버로 옮기는 경우 불편할수밖에 없었을 것입니다.
이전 까지는 /etc/udev/rules.d/ 이하 파일을 삭제하고 옮기면 문제가 없었으나 16.04(제니얼) 는 그도 안통합니다.
16.04 에서 끊어진 네트웍을 살리려면 ...
우선은 모니터 연결후 콘솔 로그인 하거나 모니터가 없으면 RS-232로 로그인 해야 합니다.
1단계 :
모니터가 있다면 이 단계는 건너뛰고 nic(mainboard)를 교체하면 되겠고
없다면 이전(nic 교체전) 상태로 부팅하여 ttyS0를 활성화해야 합니다.
우분투는 ttyS0가 기본적으로 비활성 상태라 이를 활성화하는데는 여러 방법이 있지만
grub 수정에 의한 방법이 제일 간편하며 부수적으로 커널과 init로그를 볼수 있습니다.
vi로 /etc/default/grub 파일을 열어 다음과 같이 마지막 3줄을 추가합니다.
GRUB_CMDLINE_LINUX="console=tty0 console=ttyS0,115200n8"
GRUB_TERMINAL=serial
GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop==1"
첫줄의 변수명 부분 까지는 이미 써있을겁니다. 이제 그러브를 업데이트 합니다.
xxxx$ sudo update-grub
이제 준비가 다됐습니다.
하드이설 또는 타겟보드로 교체후 232C 연결후 putty 실행상태에서 부팅하면
그러브 화면부터 커널 로그가 주루룩~~ 흘러가는게 보일것이며 이후 로그인 프로세스까지 이상없이 나옵니다.
만약 puty 화면에 깨진 글자들이 나온다면 PC 장치관리자에서 위 세팅과 같이 115200으로 되어있지 않은 경우 입니다.
시리얼 케이블은 가장 단순한 9pin to 9pin 으로 단 3선만 사용했으며 구성은 다음과 같습니다.
2(TxD) --- 3(RxD)
3(RxD) --- 2(TxD)
5(Gnd) --- 5(Gnd)
단계2 :
이제 모니터로든 시리얼로든 타겟보드에서 로그인이 가능해야 합니다.
먼저 핑한번 날려볼가요?
xxxx$ ping google.com
ping: unknown host google.com
역시 죽었군요.
etc/network/interfaces 를 cat 해봅니다.
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto ens33
iface ens33 inet dhcp
음 ens33 이란 못보던놈이 생겼네요.
틀림없이 이전 보드 nic의 쓰레기 드라이버가 맞을겁니다.
그럼 nic 상태를 확인합니다. 명령은 ip 입니다.
u235@ubuntu:~$ ip link
1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp4s0: mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 00:e0:b0:e5:e5:72 brd ff:ff:ff:ff:ff:ff
3: virbr0: mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000
link/ether 52:54:00:59:2b:e5 brd ff:ff:ff:ff:ff:ff
4: virbr0-nic: mtu 1500 qdisc noqueue master virbr0 state DOWN mode DEFAULT group default qlen 500
link/ether 52:54:00:59:2b:e5 brd ff:ff:ff:ff:ff:ff
보아하니 당장 필요한건 2:번 요놈인것 같군요.
다시 sudo vi로 /etc/network/interfaces 에서 ens33 요거를 enp4s0로 수정해줍니다.
※ 여기서 ens33 그리고 enp4s0 는 시스템마다 다르게 나올수 있겠고 종전의 익숙한 eth0 eth1 명칭은 이제 먼나라 예기가 됐습니다.
이렇게 바뀐데는 아마 커널의 영향이 아닐까 추정할뿐 정확한 의미는 모르겠습니다.
/etc/network/interfaces 수정을 마쳤으면 nic를 재기동 해줍니다.
sudo ifdown -a
sudo ifup -a
이때 dhcp로부터 제대로 ip를 받아오는 모습이 나올겁니다.
단 static ip환경이면 /etc/network/interfaces를 그에맞게 써줍니다.
autp enp4s0
iface enp4s0 inet static
address xxxx
netmask xxxx
gateway xxxx
broadcast xxxx
이런식으로요.
이렇게 nic나 머더보드 교체시 끊긴 네트웤을 다시잡는 방법을 소개해드렸습니다.
두서없는 글을 읽어줘서 감사합니다.
감사합니다.
감사합니다.
댓글 달기