Linux/Ubuntu2010. 9. 15. 14:01
/boot/grub/menu.lst 에서 (grub)
/boot/grub/grub.conf 로 (grub2) 변경되었다고 한다.
[링크 : http://www.ubuntu.or.kr/viewtopic.php?p=53681]

어쩐지 커널 컴파일 하고 변화가 없더라 -_-
update-grub (grub)
update-grub2 (grub2) 라는걸 사용하라는데
음.. 개인이 직접 컴파일 한 녀석은 어떻게 갱신해야 하려나...
[링크 : http://ubuntu.or.kr/viewtopic.php?p=52374]



Posted by 구차니
Linux/Ubuntu2010. 9. 14. 22:47
커널 컴파일을 하려는데 이런 에러가 발생한다.
솔찍히 건드린건 하나도 없고, 그냥 yaffs2만 추가했는데 ㅠ.ㅠ

ld: /ubuntu/omnibook/sections.lds: No such file: No such file or directory

[링크 : https://bugs.launchpad.net/ubuntu/+source/linux/+bug/505420]

이넘이. HP 노트북 omnibook용 추가 모듈(?)로 인해 발생하는 에러인것 같지만..
잘은 모르겠는데 흐아.. 리눅스 머신이 싱글코어 1.8기가 인가 그런데 언제 또 다시 컴파일 돌리나 ㅠ.ㅠ
[링크 : http://sourceforge.net/projects/omke/]



make menuconfig 에서 / 로 omnibook을 검색하니
아래와 같이 나온다. 이녀석이 기본으로 켜져있어서 omnibook 오류가 난듯 하다.

최상위에서 부터                      Ubuntu Supplied Third-Party Device Drivers
그리고 그 메뉴의 가장 아래에        Kernel module for HP and Toshiba laptops

Posted by 구차니
Linux2010. 9. 12. 22:57
top을 하면 아래와 같은 결과들이 나온다.

대개 cpu를 100% 돌리고 있어도 1을 겨우겨우 넘기는 편이라
load average 라는 부분이 멀 의미하는건가 고민이 들어 찾아 보게 되었는데..
혼자 쓸때는 컴파일 속도가 느려지는게 느껴져서 한번에 하나이상돌리지 않아 이 값이 1이상 나오기가 좀 힘들긴하다.
결론은.. 머 알아서? ㅋㅋ

시스템의 최근 1분, 5분, 15분에 대한 각각의 평균 부하율(load average: 0.03, 0.05, 0.05)
Load average: 작업의 대기시간. 값이 1이 나왔다면 1분 동안 평균 1개 정도의 프로세서가 대기상태에 있다는 것이다.
서버마다 차이가 있긴 하지만 5 정도면 서버가 부하를 받는 다고 생각한다. 과부하는 10 ~ 15이상이면 과부하라고 본다.

[링크 : http://phiz.kr/linuxtip/169350]

결론은 이거였다.
CPU 1개당 2까지의 로드까진 정상으로 본다.
이게 무슨말인가? 현재의 대부분에 쓰이고 있는 요즘의 평균적인 제온 시스템이라면 CPU당 2까지의 로드까진 문제없는것으로 본다는것이다.
그렇다면 듀얼코어같이 HT(Hyper Threading)을 지원하는 CPU는 어떻게 계산하는지 물어보았다.
HT의 경우 CPU 2개로 친다는것이다. 쿼드코어의 경우에는 CPU4개로 친다는것이다.
고로 듀얼코어 CPU를 2개 꼽은 서버라고 하면 4 CPU x 2 = 8 의 로드까진 괜찮다는것으로 친다는것이 결론이었다.

[링크 : http://www.ysy2080.com/uribury/...document_srl=207]

[링크 : http://linux.die.net/man/1/top]

'Linux' 카테고리의 다른 글

bash - 이전 디렉토리로 이동하기 move to previoud directory  (2) 2010.09.19
mkinitramfs  (0) 2010.09.19
curl  (0) 2010.09.11
verbose가 모야?  (4) 2010.07.29
쉘스크립트의 stdout / stderr 리다이렉션(redirection c)  (0) 2010.07.07
Posted by 구차니
Linux2010. 9. 11. 22:49
android platform을 받는데 쓰인녀석인데..

curl is a tool to transfer data from or to a server, using one of the supported protocols (HTTP, HTTPS, FTP, FTPS, TFTP, DICT, TELNET, LDAP or FILE). The command is designed to work without user interaction.

curl offers a busload of useful tricks like proxy support, user authentication, ftp upload, HTTP post, SSL (https:) connections, cookies, file transfer resume and more. As you will see below, the amount of features will make your head spin!

[링크 : http://linux.die.net/man/1/curl]
[링크 : http://curl.haxx.se/]

일단 curl은 wget이 지원하는 모든 프로토콜을 지원하므로
기능상으로는 wget과 유사한 느낌이지만, 조금더 막강해진 녀석이다.

GNU Wget is a free utility for non-interactive download of files from the Web. It supports HTTP , HTTPS , and FTP protocols, as well as retrieval through HTTP proxies.

[링크 : http://linux.die.net/man/1/wget]

'Linux' 카테고리의 다른 글

mkinitramfs  (0) 2010.09.19
top (1) - load average ?  (4) 2010.09.12
verbose가 모야?  (4) 2010.07.29
쉘스크립트의 stdout / stderr 리다이렉션(redirection c)  (0) 2010.07.07
bash 쉘 스크립트 에서 파일이 존재하지 않을 경우  (0) 2010.06.24
Posted by 구차니
Linux/Ubuntu2010. 8. 23. 10:11
우분투 desktop은 X 윈도우가 죽으면 자동적으로 respawn 시킨다.
아무리 kill 을 해도 계속 살아난다. (이런 좀비 같은넘!)

아래의 공식 릴리즈 내용대로, ctrl-alt-bksp 를 이용해서 X를 종료할수는 있으나, 역시나 respawn 된다 ㄱ-

Enabling Ctrl-Alt-Backspace for Ubuntu

  • Select "System"->"Preferences"->"Keyboard"

  • Select the "Layouts" tab and click on the "Layout Options" button.
  • Select "Key sequence to kill the X server" and enable "Control + Alt + Backspace".

[링크 : https://wiki.ubuntu.com/LucidLynx/ReleaseNotes]



X를 종료하려면 아래와 같이 gdm 자체를 종료하면 된다.
If you are using GNOME:
sudo /etc/init.d/gdm stop

[링크 : http://theos.in/news/ubuntu-linux-shutdown-the-x-server/]

$ sudo /etc/init.d/gdm stop
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service gdm stop

Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the stop(8) utility, e.g. stop gdm
친절하게도(!) init 스크립트를 건드리지 말고, service로 죽이랜다.


top - 10:37:01 up 1 min,  2 users,  load average: 1.15, 0.44, 0.16
Tasks: 180 total,   1 running, 179 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.0%us,  0.7%sy,  0.0%ni, 99.3%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   1026088k total,   475344k used,   550744k free,    54392k buffers
Swap:  3005432k total,        0k used,  3005432k free,   200732k cached
top - 10:37:49 up 2 min,  1 user,  load average: 0.75, 0.45, 0.17
Tasks: 130 total,   1 running, 129 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.3%us,  0.7%sy,  0.3%ni, 97.7%id,  1.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   1026088k total,   360952k used,   665136k free,    54780k buffers
Swap:  3005432k total,        0k used,  3005432k free,   214328k cached
gdm을 종료하니, 114392k(113M) 가 확보된다 -ㅁ-!
Posted by 구차니
Linux2010. 7. 29. 09:59
ver·bose [vǝːrbóus] ɑ.
말이 많은, 다변의, 용장(冗長)한, 용만(冗漫)한, 장황한.


음.. 리눅스에서 --v 옵션으로
상세내용을 보곤하는데 무슨 의미인가 찾아보았더니 "말이 많은" 모드였군 ㄱ-
Posted by 구차니
Linux2010. 7. 7. 16:30
글들을 찾아보면
comand > logfile 2>&1
이라고 하면 command를 실행하면서 생기는 출력(stdout)과 에러(stderr)을 logfile로 저장한다고 한다.

하지만, 막상 저장해보면 순서가 뒤죽박죽 되는것으로 보인다.
$ v4l-info /dev/video0 2> v4l.dev0 1>&2
### video4linux device info [/dev/video0] ###
general info
    VIDIOCGCAP
        name                    : "DC10plus[0]"
        type                    : 0x29 [CAPTURE,OVERLAY,CLIPPING]
        channels                : 3
        audios                  : 0
        maxwidth                : 640
        maxheight               : 480
        minwidth                : 48
        minheight ioctl VIDIOCGTUNER: Invalid argument
ioctl VIDIOCGAUDIO: Invalid argument
              : 32

channels
    VIDIOCGCHAN(0)
        channel                 : 0
        name                    : "Composite"
        tuners                  : 0
        flags                   : 0x0 []
        type                    : CAMERA
        norm                    : 1
    VIDIOCGCHAN(1)
        channel                 : 1
        name                    : "S-Video"
        tuners                  : 0
        flags                   : 0x0 []
        type                    : CAMERA
        norm                    : 1
    VIDIOCGCHAN(2)
        channel                 : 2
        name                    : "Internal/comp"
        tuners                  : 0
        flags                   : 0x0 []
        type                    : CAMERA
        norm                    : 1

tuner

audio

picture
    VIDIOCGPICT
        brightness              : 32896
        hue                     : 32896
        colour                  : 33026
        contrast                : 33026
        whiteness               : 0
        depth                   : 16
        palette                 : YUYV

buffer
    VIDIOCGFBUF
        base                    : (nil)
        height                  : 768
        width                   : 1024
        depth                   : 32
        bytesperline            : 4096

window
    VIDIOCGWIN
        x                       : 0
        y                       : 0
        width                   : 0
        height                  : 0
        chromakey               : 0
        flags                   : 0

$ v4l-info /dev/video0
### video4linux device info [/dev/video0] ###
general info
    VIDIOCGCAP
    name                    : "DC10plus[0]"
    type                    : 0x29 [CAPTURE,OVERLAY,CLIPPING]
    channels                : 3
    audios                  : 0
    maxwidth                : 640
    maxheight               : 480
    minwidth                : 48
    minheight               : 32

channels
    VIDIOCGCHAN(0)
    channel                 : 0
    name                    : "Composite"
    tuners                  : 0
    flags                   : 0x0 []
    type                    : CAMERA
    norm                    : 1
    VIDIOCGCHAN(1)
    channel                 : 1
    name                    : "S-Video"
    tuners                  : 0
    flags                   : 0x0 []
    type                    : CAMERA
    norm                    : 1
    VIDIOCGCHAN(2)
    channel                 : 2
    name                    : "Internal/comp"
    tuners                  : 0
    flags                   : 0x0 []
    type                    : CAMERA
    norm                    : 1

tuner
ioctl VIDIOCGTUNER: Invalid argument

audio
ioctl VIDIOCGAUDIO: Invalid argument

picture
    VIDIOCGPICT
    brightness              : 32896
    hue                     : 32896
    colour                  : 33026
    contrast                : 33026
    whiteness               : 0
    depth                   : 16
    palette                 : YUYV

buffer
    VIDIOCGFBUF
    base                    : (nil)
    height                  : 768
    width                   : 1024
    depth                   : 32
    bytesperline            : 4096

window
    VIDIOCGWIN
    x                       : 0
    y                       : 0
    width                   : 0
    height                  : 0
    chromakey               : 0
    flags                   : 0

두가지를 다 리다이렉션은 하지만, 버퍼로 인해서 밀리는건가.. 아니면 다른 명령어가 있는걸까?
Posted by 구차니
Linux/Fedora Core2010. 7. 5. 18:43
리눅스에서 터미널을 이용하다 보면
-가 자꾸 옆에 글씨를 잡아 먹어서 답답한 감이 없지 않다.
그래서 시간을 내서 찾아 보니.. 오호라~ 이런 멋진 옵션이! ㅋㅋ

Step 1. 편집 - 프로파일

Step 2. 프로파일을 새로 만들거나 현재 사용중인 "Default"를 편집한다.

Step 3. 배경이 투명하길 원한다면(위의 스샷처럼) 없음(단색사용) 대신 투명한 배경을 선택함.

Step 4. 시스템 고정폭 글꼴 사용을 하면 그런 문제가 발생하므로
          원하는 다른 폰트를 선택한다. 일단 고정폭중에 다른걸 쓰거나, 고정폭을 포기하던가 해야 할듯
          추가적으로 리눅스에서 사용하는 고정폭 폰트를 검색해 봐야겠다.
          - 2010.07.06 추가
          Ubuntu 10.04 에서 폰트를 일일이 뒤져보니 Mono 라고 들어가는 녀석들은 거의 고정폭으로 보인다.
          웃기게(?!) 도 기본 고정폭 폰트인 Monospace는 고정폭이 아닌것으로 보인다 ㄱ-

아무튼.. -가 옆에 글씨를 안 잡아서 먹어서 좋다 -_-

Posted by 구차니
Linux2010. 6. 24. 17:39

CONDITIONAL EXPRESSIONS
       -e file True if file exists.
       -f file  True if file exists and is a regular file.
       -s file True if file exists and has a size greater than zero.

if [ -e filename ]
은 파일의 존재를 확인한다.
반대로 파일이 없을 경우에를 표현하려면

if [ ! -e filename ]
라고 하면된다. (공백에 유의!)


머.. -e 옵션에서 그냥 else 에 넣으면 되긴 하지만..

[링크 : http://stackoverflow.com/questions/638975/how-do-i-tell-if-a-file-does-not-exist-in-bash]
Posted by 구차니
Linux2010. 6. 15. 22:58
test.c 파일을 심심해서 프로파일링과 디버깅 정보를 조합하여 출력하도록 해보았다.
(나중에 어셈블리 분석도 해볼겸!)

$ cat test.c
#include "unistd.h"

int main(int argc, char **argv)
{
	int a = 0;
	int b = 0;

	printf("%d %d\n",a,b);
	a++; b++;
	printf("%d %d\n",a,b);
}

아래의 내용중 파란색 내용디버깅에서 추가되는 내용
빨간색 내용프로파일링에서 추가되는 내용이다.





vimdiff 를 이용해서 비교해본 결과는 아래와 같다.
- 프로파일링 없이 디버깅 정보의 유무

- 디버깅 정보 없이 프로파일링 유무


Posted by 구차니