Posted on 2012/04/30 14:32
Filed Under 잡다한 애기


third party 저장소의 key를 받기 위해서는 다음의 명령을 실행한다.
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com key-fingerprint


key-fingerprint는 각 저장소에서 요구하는 key의 fingerprint를 말한다.
크리에이티브 커먼즈 라이센스
Creative Commons License
2012/04/30 14:32 2012/04/30 14:32

Posted on 2012/04/25 18:35
Filed Under 분류없음


심볼릭 링크 파일을 찾아서 삭제하기
sudo find bin -type l -exec rm -f {} \;


find 명령으로 bin 디렉토리에서 심볼릭 링크(-type l)를 찾아서 삭제하는 명령임.

-exec는 find명령으로 찾은 파일을 대상으로 명령을 실행하도록 하는 옵션임.

rm -f {} \; => 실제 실행되는 명령으로 {}이 find로 찾은 파일 이름이 들어가게 된다. 명령의 끝을 알려주기 위해서 \;를 붙여야 한다.
크리에이티브 커먼즈 라이센스
Creative Commons License
2012/04/25 18:35 2012/04/25 18:35
TAG : ,

Posted on 2012/04/24 15:56
Filed Under 리눅스


#$cfile 변수에 입력된 파일이름이 현재 디렉토리에 존재하는지 검사한다.
if [[ -f $cfile ]]; then


        # 주어진 이름의 파일의 내용을 변수 $version에 넣는다.

        version=`cat $cfile`
        # 내용이 dev와 일치하는지 검사한다.
        if [[ 'dev' == $version ]]; then
               # $work 변수에 "dev"라는 내용을 넣는다.
                work="dev"
        else
               # $work 변수에 "release"라는 내용을 넣는다.
                work="release"
        fi
else        # 해당 파일이 없는 경우 동작하는 부분에 대해서 지정한다.
        echo change directory

fi
크리에이티브 커먼즈 라이센스
Creative Commons License
2012/04/24 15:56 2012/04/24 15:56

Posted on 2012/04/20 11:28
Filed Under 분류없음

tar는 여러 파일을 읽어들여 하나의 파일로 만들 수 있도록 해주는 유틸로 이해하면 된다.
이 유틸의 장점은 파일의 상태를 있는 그대로 파일로 저장하고 그 상태를 그대로 풀어서 파일시스템에 풀 수 있다는 것이다. 이 특성을 이용하여 copy 대용으로 사용할 수 있으며 복잡한 파일 시스템을 복사할 때에는 유용하게 사용할 수 있다.

tar cfv - ../scratch/* |sudo tar xfv -

scratch라는 디렉토리의 내용을 읽어들여서 현재의 디렉토리에 그래도 풀어서 기록한다는 의미의 명령이다.
크리에이티브 커먼즈 라이센스
Creative Commons License
2012/04/20 11:28 2012/04/20 11:28
TAG : ,

Posted on 2012/04/20 10:52
Filed Under 분류없음

sudo의 경우 PATH를 리셋하여 기존 사용자의 PATH를 사용하지 못하는 경우가 발생한다. 또한 PATH를 원하는 경로를 추가하여도 제대로 적용되지 않는 경우가 발생한다. 이 문제를 해결하기 위해서 사용하는 방법을 공개하면 다음과 같다.

1. 추가를 원하는 PATH를 /etc/environment 파일에 추가한다.
2. "sudo -i command" 의 형태로 명령을 사용한다.

위의 방법을 적용하면 PATH로 발생하는 것을 예방할 수 있다.
크리에이티브 커먼즈 라이센스
Creative Commons License
2012/04/20 10:52 2012/04/20 10:52
TAG : , ,

Posted on 2012/04/20 09:16
Filed Under 분류없음

임베디드 리눅스에서 jffs2가 문제를 일으켜 부팅시간이 너무 길어지는 문제가 발생해서 고민하던 끝에 yaffs2로 변경하기로 결정하고 적용해보니 깔끔하네..

u-boot로 yaffs 이미지를 작성할 때 주의할 것은 이미지의 정확한 길이를 적어주어야 하는 것이다.

이제 s5pc100 모델에서 yaffs를 즐겨볼 시간...
크리에이티브 커먼즈 라이센스
Creative Commons License
2012/04/20 09:16 2012/04/20 09:16

Posted on 2012/04/16 10:02
Filed Under 리눅스

apache2 서버의 모듈의 하나인 passenger를 설치하여야 한다. passengerapache2에서 rails를 실행시키기 위한 실행 모듈이다. 설치는 apt-get을 사용할 수 있다.

sudo apt-get install libapache2-mod-passenger

 

크리에이티브 커먼즈 라이센스
Creative Commons License
2012/04/16 10:02 2012/04/16 10:02

Posted on 2012/02/01 22:34
Filed Under 분류없음

<code>
service tftp
{
    socket_type     = dgram
    protocol        = udp
    wait            = yes
    user            = root
    server          = /usr/sbin/in.tftpd
    server_args     = -s /tftpboot
    disable         = no
    per_source      = 11
    cps             = 100 2
    flags           = IPv4
}
</code>
크리에이티브 커먼즈 라이센스
Creative Commons License
2012/02/01 22:34 2012/02/01 22:34

Posted on 2012/02/01 22:17
Filed Under 분류없음

<code>
$ cat > mdev.conf << EOF
null    root:root 0666  @chmod 666 $MDEV
zero    root:root 0666
grsec   root:root 0660
full    root:root 0666

random  root:root 0666
urandom root:root 0444
hwrandom root:root 0660

console root:tty 0600 @mkdir -pm 755 fd && cd fd && for x in 0 1 2 3 ; do ln -sf /proc/self/fd/$x $x; done

fd0     root:floppy 0660
kmem    root:root 0640
mem     root:root 0640
port    root:root 0640
ptmx    root:tty 0666

ram([0-9]*)     root:disk 0660 >rd/%1
loop([0-9]+)    root:disk 0660 >loop/%1
sd[a-z].*       root:disk 0660 */lib/mdev/usbdisk_link
hd[a-z][0-9]*   root:disk 0660 */lib/mdev/ide_links
md[0-9]         root:disk 0660

tty             root:tty 0666
tty[0-9]        root:root 0600
tty[0-9][0-9]   root:tty 0660
ttyS[0-9]*      root:tty 0660
pty.*           root:tty 0660
vcs[0-9]*       root:tty 0660
vcsa[0-9]*      root:tty 0660

ttyLTM[0-9]     root:dialout 0660 @ln -sf $MDEV modem
ttySHSF[0-9]    root:dialout 0660 @ln -sf $MDEV modem
slamr           root:dialout 0660 @ln -sf $MDEV slamr0
slusb           root:dialout 0660 @ln -sf $MDEV slusb0
fuse            root:root  0666

card[0-9]       root:video 0660 =dri/

pcm.*           root:audio 0660 =snd/
control.*       root:audio 0660 =snd/
midi.*          root:audio 0660 =snd/
seq             root:audio 0660 =snd/
timer           root:audio 0660 =snd/

adsp            root:audio 0660 >sound/
audio           root:audio 0660 >sound/
dsp             root:audio 0660 >sound/
mixer           root:audio 0660 >sound/
sequencer.*     root:audio 0660 >sound/

agpgart         root:root 0660  >misc/
psaux           root:root 0660  >misc/
rtc             root:root 0664  >misc/

event[0-9]+     root:root 0640 =input/
mice            root:root 0640 =input/
mouse[0-9]      root:root 0640 =input/
ts[0-9]         root:root 0600 =input/

vbi[0-9]        root:video 0660 >v4l/
video[0-9]      root:video 0660 >v4l/

dvb.*           root:video 0660 */lib/mdev/dvbdev

usbdev[0-9].[0-9]       root:root 0660 */lib/mdev/usbdev
usbdev[0-9].[0-9]_.*    root:root 0660

tun[0-9]*       root:root 0600 =net/
tap[0-9]*       root:root 0600 =net/

zap(.*)         root:dialout 0660 =zap/%1
dahdi!(.*)      root:dialout 0660 =dahdi/%1

cciss!(.*)      root:disk 0660 =cciss/%1
ida!(.*)        root:disk 0660 =ida/%1
rd!(.*)         root:disk 0660 =rd/%1

sr[0-9]         root:cdrom 0660 @ln -sf $MDEV cdrom

hpilo!(.*)      root:root 0660 =hpilo/%1

xvd[a-z]        root:root 0660 */lib/mdev/xvd_links
EOF
</code>
크리에이티브 커먼즈 라이센스
Creative Commons License
2012/02/01 22:17 2012/02/01 22:17

Posted on 2012/02/01 21:44
Filed Under 분류없음


Ubuntu에서 JFFS2 이미지를 마운트하는 방법은 실제 파일을 마운트하는 것은 아니다. linux에서 제공하는 MTD 기능을 이용하여 가상의 MTD 이미지를 만들고 여기에 JFFS2 이미지 파일의 정보를 복사하여 내용을 볼 수 있도록 한다.

필요한 것은 mtd-tools로 ubuntu에서 설치하는 명령은 다음과 같다.

<code>
sudo apt-get install mtd-tools
</code>

MTD 장치를 사용하기 위해서는 커널의 모듈들을 사용하여야 한다. 필요한 커널 모듈들을 로딩하는 명령은 다음과 같다.

<code>
sudo modprobe mtd
sudo modprobe jffs2
sudo modprobe mtdram total_size=16384 erase_size=512
sudo modprobe mtdchar
sudo modprobe mtdblock
</code>

MTD  장치의 사용이 가능해지면 가상의 MTD 장치에 실제로 사용하는 MTD 이미지의 정보를 복사한다. 이미지의 정보를 복사하기 위해서는 dd 명령을 사용한다. dd는 데이터 스트림을 받아서 다른 스트림에 그대로 복사할 수 있는 유용한 unix 계열의 기본적인 명령이다.

<code>
sudo dd if=target.jffs2 of=/dev/md0
</code>

모든 과정을 마친 후에 가상의 MTD 장치를 마운트하는 과정을 거치면 JFFS2 이미지의 내용을 확인할 수 있다. 주의할 점은 마운트한 JFFS2의 내용을 수정하여도 원본의 이미지 파일에는 적용되지 않는다는 것이다.

<code>
sudo mkdir /mnt/jffs2
sudo mount -t jffs2 /dev/mtdblock0 /mnt/jffs2
</code>

JFFS2는 임베디드 장비에서 많이 사용되는 파일시스템 형태이므로 마운트를 하여 바로 사용하진 못하지만 위의 방법을 통해서 파일시스템의 정보를 확인할 수 있다.
크리에이티브 커먼즈 라이센스
Creative Commons License
2012/02/01 21:44 2012/02/01 21:44

About

by 야랑이

Counter

· Total
: 71710
· Today
: 69
· Yesterday
: 77