Linux2009. 6. 10. 19:38
$ diff -urN ori_dir modified_dir > patch.diff

       -u     Use the unified output format.
       -r     When comparing directories, recursively compare any subdirectories found.
       -N
       --new-file
              In directory comparison, if a file is found in only one directory, treat it as present but  empty  in  the
              other directory.

일반적으로 GNU 프로젝트의 패치로 사용하는 옵션이라고 한다.
-u는 unified 포맷 출력
-r은 디렉토리 비교
-N은 새 파일이 있을시 없는쪽은 비어있는 파일로 간주하고 비교함
 간단하게 전부 내용이 추가된걸로 표시된다. 이러한 옵션 없이 diff하면 아래와 같이 빈 파일이 출력된다.
 Only in linux-2.6.17.14_stm22_0039_STFAE: .config2

하지만 -N 옵션을 넣으주면 아래와 같이 출력이 된다.
diff -urN linux-2.6.17.14_stm22_0039_STFAE_ORI/.config2 linux-2.6.17.14_stm22_0039_STFAE/.config2
--- linux-2.6.17.14_stm22_0039_STFAE_ORI/.config2       1970-01-01 09:00:00.000000000 +0900
+++ linux-2.6.17.14_stm22_0039_STFAE/.config2   2008-09-12 12:32:23.000000000 +0900
@@ -0,0 +1,1312 @@
+#
+# source code ...



[링크 : http://wiki.kldp.org/wiki.php/DiffAndPatch]
Posted by 구차니
Linux2009. 6. 9. 22:14
Sysfs is a virtual file system provided by Linux 2.6. Sysfs exports information about devices and drivers from the kernel device model to userspace, and is also used for configuration. It's similar to sysctl mechanism found in BSD systems, but implemented as a file system instead of a separate mechanism.

Sysfs is designed to export the information present in the device tree which would then no longer clutter up procfs.

Sysfs and userspace
Sysfs is used by several utilities to access information about hardware and its driver (kernel modules) such as udev or HAL. Scripts have been written to access information previously obtained via procfs, and some scripts configure device drivers and devices via their attributes.




2.6 kernel 부터 지원되는 녀석으로, proc filesystem에 지원되지 않는 것들을 지원하기 위한 것이다.
mount 하기 위해서는(되어있지 않았다면)
 $ mount -t sysfs sysfs /sys
를 실행해주면 /sys에 마운트 된다.


그리고 sysfs의 정보를 읽기 위해서는 udevinfo를 이용하여 쿼리를 날려주면 된다.
 $ udevinfo -a -p /dev/sda
위의 명령어는 sda의 정보를 보는 예제

[sysfs : http://en.wikipedia.org/wiki/Sysfs]
[udevinfo : http://linux.die.net/man/8/udevinfo]

'Linux' 카테고리의 다른 글

Linux 시리얼 프로그래밍 - 한글 번역본  (0) 2009.06.18
diff 로 patch 파일 만들기  (0) 2009.06.10
ifconfig --help  (0) 2009.06.09
dhcp 작동중인지 확인하는 방법  (0) 2009.06.09
ip 관련 정보 얻어내기  (2) 2009.06.09
Posted by 구차니
Linux2009. 6. 9. 20:50
ip 변경하기
$ ifconfig <interface> [[<AF>] <address>]
<AF>=Address family. Default: inet
  List of possible address families:
    unix (UNIX Domain) inet (DARPA Internet) inet6 (IPv6)
    ax25 (AMPR AX.25) netrom (AMPR NET/ROM) rose (AMPR ROSE)
    ipx (Novell IPX) ddp (Appletalk DDP) ec (Econet)
    ash (Ash) x25 (CCITT X.25)


mac 변경하기
$ ifconfig <interface> [hw <HW> <address>]
<HW>=Hardware Type.
  List of possible hardware types:
    loop (Local Loopback) slip (Serial Line IP) cslip (VJ Serial Line IP)
    slip6 (6-bit Serial Line IP) cslip6 (VJ 6-bit Serial Line IP) adaptive (Adaptive Serial Line IP)
    strip (Metricom Starmode IP) ash (Ash) ether (Ethernet)
    tr (16/4 Mbps Token Ring) tr (16/4 Mbps Token Ring (New)) ax25 (AMPR AX.25)
    netrom (AMPR NET/ROM) rose (AMPR ROSE) tunnel (IPIP Tunnel)
    ppp (Point-to-Point Protocol) hdlc ((Cisco)-HDLC) lapb (LAPB)
    arcnet (ARCnet) dlci (Frame Relay DLCI) frad (Frame Relay Access Device)
    sit (IPv6-in-IPv4) fddi (Fiber Distributed Data Interface) hippi (HIPPI)
    irda (IrLAP) ec (Econet) x25 (generic X.25)
    eui64 (Generic EUI-64)

※ MAC을 변경하기 위해서는 nic device가 down 되어 있어야 하며, root권한이어야 함.

$ ifconfig eth0 hw ether 00:00:00:00:00:00
SIOCSIFHWADDR: Operation not permitted
$ sudo ifconfig eth0 hw ether 00:00:00:00:00:00
[sudo] password for user:
SIOCSIFHWADDR: Device or resource busy - you may need to down the interface



Posted by 구차니
Linux2009. 6. 9. 20:40
현재 발견한 방법은

$ ps -ef | grep dhc
root      3144  2824  0 20:17 ?        00:00:00 /sbin/dhclient -d -sf /usr/lib/NetworkManager/nm-dhcp-client.action -pf /var/run/dhclient-eth0.pid -lf /var/lib/dhcp3/dhclient-eth0.lease -cf /var/run/nm-dhclient-eth0.conf eth0

프로세스중에 dhcp 데몬인 dhclient가 구동중인지 확인하는 것과

$ more /etc/resolv.conf
; generated by /sbin/dhclient-script
search private
nameserver 192.168.10.1
nameserver 168.126.63.1
nameserver 168.126.63.2

resolv.conf 파일에 위의 문구를 확인하는 방법이 있다.
문제는..  ubuntu 계열에는 resolv.conf 파일에 위와 같은 표식이 나타나지 않는다는 것.

'Linux' 카테고리의 다른 글

sysfs - Sysfs is a virtual file system provided by Linux 2.6  (0) 2009.06.09
ifconfig --help  (0) 2009.06.09
ip 관련 정보 얻어내기  (2) 2009.06.09
하드디스크 정보 얻어내기(model명)  (0) 2009.06.08
하드웨어 정보 받아오기  (0) 2009.06.08
Posted by 구차니
Linux2009. 6. 9. 10:43
MAC Address
$ /sbin/ifconfig eth0 | grep HWaddr | awk '{print $5}'

IP Address
$ /sbin/ifconfig eth0 | grep 'inet addr' | awk '{print $2}'

Broadcast Address
$ /sbin/ifconfig eth0 | grep 'inet addr' | awk '{print $3}'

SUBNET mask
$ /sbin/ifconfig eth0 | grep 'inet addr' | awk '{print $4}'

GATEWAY Address
$ netstat -rn | grep ^0.0.0.0 | awk '{printf $2}'

머.. 윈도우 비스므리하게 출력하기 위해서는 Broadcast Address는 별 의미를 가지지 않을테니
나머지 4가지면 충분할 듯!

awk
[참고: http://wiki.kldp.org/wiki.php/Awk]
[참고: http://kldp.org/HOWTO/html/Adv-Bash-Scr-HOWTO/awk.html]

sed
[참고: http://kldp.org/HOWTO/html/Adv-Bash-Scr-HOWTO/x12718.html]
[참고: http://stone.backrush.com/sunfaq/ljs007.html]

'Linux' 카테고리의 다른 글

ifconfig --help  (0) 2009.06.09
dhcp 작동중인지 확인하는 방법  (0) 2009.06.09
하드디스크 정보 얻어내기(model명)  (0) 2009.06.08
하드웨어 정보 받아오기  (0) 2009.06.08
리눅스에서 hex edit 하기  (0) 2009.05.28
Posted by 구차니
Linux2009. 6. 8. 17:27
/proc에는 신기한 넘들이 많다
아무튼 하드 정보라고 함은 하드 제조사라던가, 모델명인데

이것은
/proc/ide/hd?/model 에 존재 한다. sata는 어디 붙는지 모름 -ㅁ-

$ tree /proc/ide
.
|-- drivers
|-- hda -> ide0/hda
|-- hdb -> ide0/hdb
`-- ide0
    |-- channel
    |-- hda
    |   |-- cache
    |   |-- capacity
    |   |-- driver
    |   |-- geometry
    |   |-- identify
    |   |-- media
    |   |-- model
    |   |-- settings
    |   |-- smart_thresholds
    |   `-- smart_values
    |-- hdb
    |   |-- capacity
    |   |-- driver
    |   |-- identify
    |   |-- media
    |   |-- model
    |   `-- settings
    |-- mate
    `-- model

내가 쓰는 시스템에서는
HL-DT-STCD-RW/DVD DRIVE GCC-4244N
FUJITSU MHV2080AT PL
ST3120025ACE
ST3802110ACE
이런것들이 나오는데, 나오는 정보를 봐서는 CD롬 역시 IDE 방식으로 연결되면 나오는 것 같다.


usb로 연결된 하드의 경우에는 usb 장치로 인식되며
$ tree /proc/scsi
 .
|-- device_info
|-- scsi
|-- sg
|   |-- allow_dio
|   |-- debug
|   |-- def_reserved_size
|   |-- device_hdr
|   |-- device_strs
|   |-- devices
|   `-- version
`-- usb-storage
    |-- 2
    `-- 3

$ more 2 3
::::::::::::::
2
::::::::::::::
   Host scsi2: usb-storage
       Vendor: AXXEN
      Product: SKYMIRROR
Serial Number: 2008021900000000591896EB
     Protocol: Transparent SCSI
    Transport: Bulk
       Quirks:
::::::::::::::
3
::::::::::::::
   Host scsi3: usb-storage
       Vendor: NSI
      Product: ST3250310AS
Serial Number: 0010101650000000W
     Protocol: Transparent SCSI
    Transport: Bulk
       Quirks:

이런식으로 USB에서 인식이 된다.

'Linux' 카테고리의 다른 글

dhcp 작동중인지 확인하는 방법  (0) 2009.06.09
ip 관련 정보 얻어내기  (2) 2009.06.09
하드웨어 정보 받아오기  (0) 2009.06.08
리눅스에서 hex edit 하기  (0) 2009.05.28
ghex - gnome hex editor  (0) 2009.05.28
Posted by 구차니
Linux2009. 6. 8. 16:57
dmidecode라는 녀석이 있는데..
문제는 BIOS가 있어야 사용이 가능하다.
다르게 말하자면 BIOS가 없는 임베디드에서는 사용불가.. OTL

# ./dmidecode
# dmidecode 2.10
# No SMBIOS nor DMI entry point found, sorry.

[링크 : http://www.nongnu.org/dmidecode/]

'Linux' 카테고리의 다른 글

ip 관련 정보 얻어내기  (2) 2009.06.09
하드디스크 정보 얻어내기(model명)  (0) 2009.06.08
리눅스에서 hex edit 하기  (0) 2009.05.28
ghex - gnome hex editor  (0) 2009.05.28
for문의 효과 - 코드사이즈 줄이기(리눅스)  (0) 2009.05.27
Posted by 구차니
Linux/Ubuntu2009. 6. 2. 00:09
우연히(!) Geforce2 MX가 생겼고! 그래서 compiz가 떠올랐다!

그래서 그래픽 카드를 꼽고 주물럭 주물럭 해봤는데
처음에는 쉽게 되겠지 했는데.. 의외로 안되서 당황했다 -ㅁ-

일단 설치해야 하는 녀석은 ccsm 이라는 녀석과 desktop effects 라는 녀석이다.

그리고 바탕화면 오른쪽 클릭을 해서
모양새 기본 설정을 열고 - 화면효과에서 보통이나 많이를 체크해준다.


이녀석은 휠클릭으로 큐브를 나타내고(페도라와는 많이 달랐다 ㅠ.ㅠ)


기본적으로 창을 드래그하면 이렇게 출렁인다.


물론.. 당연한것일지도 모르겠지만, vnc로(혹은 vino-server)로는 보이지 않고
접속시 첫 화면만 보이고 갱신되지 않는 문제가 있었다.

ssh 터널링으로도 안된다.. 흐음...

아무튼 vnc를 통해 볼수는 없어도 마우스나 키보드는 제어가 가능하긴하다
(난 모니터 하나에 두대를 물려쓰고 우분투는 vnc로 접속해서 쓰는데,
 vnc로 보이지 않아 vnc를 띄우고 모니터는 우분투로(D-SUB 출력) 하고 위의 화면을 캡쳐했다. -.-v
 그리고 compiz 구동시 윈도우 매니저가 compiz가 되면서 실제로 캡쳐시에는
 프로그램 제목이 짤린채 내용만 캡쳐 된다.)

 compiz 구동시 캡쳐한 모양새 기본 설정화면의 아래와 같이 프로그램 이름이 출력되지 않았다.



Posted by 구차니
Linux/Fedora Core2009. 6. 1. 18:59
간만에(?!) 업데이트도 하고, HP 스캐너 프로그램 설치해 볼려고 했더니 배를 째길래
콘솔에서 입력을 해봤더니 아래와 같은 에러가 발생을 했다.

Error: Cannot find a valid baseurl for repo: updates


검색을 해보니 2년 전에 repository가 종료되었으니 FC10으로 갈아 타라고 되어있다..
미네랄 ㄱ-

게다가.. FC8까지 올해 1월에 종료..
니미럴 ㄱ-


[링크 : http://www.linuxquestions.org/questions/linux-general-1/]





2010.01.26 추가
/etc/yum.conf
/etc/yum.repos.d
에 yum 관련 설정파일들이 존재한다.
Posted by 구차니
Linux2009. 5. 28. 15:12
frhed에 너무 편해져 있어서인지.. 막상 리눅스에서 헥사 편집을 하려니 막막하다
아무튼 검색을 해보니

vi를 헥사편집기로 전환할수도 있고
:%!xxd       << hex 모드로
:%!xxd -r     << hex 모드에서 빠져나옴

[링크 : http://mwultong.blogspot.com/2007/08/vim-vi-hex-viewer-hex-editor-xxd.html]

heme라는 헥사편집기도 있는데 pctools 느낌이 난다.



[heme : http://heme.sourceforge.net/]
[발견 : http://coffeenix.net/board_view.php?bd_code=1340]
Posted by 구차니