ifconfig 명령어가 실행되는 API는 어떻게 되어 있나요?

midasyoo의 이미지

초보라서 어떻게 질문을 드려야 할지 표현을 잘 못하겠습니다.

이더넷 포트의 H/W 정보를 알려면 "ifconfig"라는 명령어를 치면 아래와 같이 나옵니다.

eth0      Link encap:Ethernet  HWaddr 00:01:02:97:xx:xx  
          inet addr:128.253.xxx.xxx  Bcast:128.253.xxx.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:65102195 errors:0 dropped:0 overruns:0 frame:0
          TX packets:283462 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100 
          Interrupt:11 Base address:0xb800 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:895 errors:0 dropped:0 overruns:0 frame:0
          TX packets:895 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 

그런데, ifconfig 소스를 보려고 "net-tools-1.57-1.3.0 Source RPM"을 다운받아서 풀었더니, ifconfig.c 파일이 있더라고요...

Makefile도 있길래, "make"를 실행시켰더니 뭐라고 실행되면서, 에러도 나오고 이상한 질문도 하길래 ctrl+c하고 중단시켰습니다.

그 이후 ifconfig 명령이 안먹네요...

어떻게 해야 하나요...

고수님들의 의견을 부탁드립니다...

송지석의 이미지

midasyoo wrote:

Makefile도 있길래, "make"를 실행시켰더니 뭐라고 실행되면서, 에러도 나오고 이상한 질문도 하길래 ctrl+c하고 중단시켰습니다.

그 이후 ifconfig 명령이 안먹네요....


신기하군요. 보통 make만 하면 빌드만 되고 인스톨되진 않을텐데..
무슨 메시지가 나왔는지 모르면 어떤 상황인지 모를 것 같습니다.
음.. 그리고 /sbin/ifconfig 해보세요. 혹시 path가 안잡힌 것은 아닌지..
midasyoo의 이미지

csh로 변환해서 root권한으로 하면 실행이 되고, 개인 계정으로 하면 안되네요...

bash에서는 실행이 안되는 것으로 봐서는 path가 안잡혀 있는 것 같기도 하고요...

csh, bash 상에서 각각 path 잡는 법을 잘 모르겠습니다...

어떻게 잡아야 하는지 지도 부탁드립니다...

송지석의 이미지

midasyoo wrote:
csh로 변환해서 root권한으로 하면 실행이 되고, 개인 계정으로 하면 안되네요...

bash에서는 실행이 안되는 것으로 봐서는 path가 안잡혀 있는 것 같기도 하고요...

csh, bash 상에서 각각 path 잡는 법을 잘 모르겠습니다...

어떻게 잡아야 하는지 지도 부탁드립니다...


bash에서는
export PATH=$PATH:/sbin
하시면 됩니다.
monpetit의 이미지

midasyoo wrote:
csh로 변환해서 root권한으로 하면 실행이 되고, 개인 계정으로 하면 안되네요...

/sbin은 root 외의 일반 사용자가 함부로 사용하지 말라고, 또는 일반 사용자에겐 실행권한조차 없는 명령어가 대부분이라 일부러 path에 안 잡혀 있습니다. 꼭 사용해야 할 일이 있으면 /sbin/ifconfig로 사용하는 습관을 들이는 것이 더 좋을 것 같습니다.