Linux/Gentoo2011. 12. 1. 00:26
HP 네트워크 프린터를 사용하는 경우이다.
cups package
네트워크 프린터를 사용하려면 slp USE flag가 필요한데 기본으로 되어 있을 것이다.
hplip package
hpcups USE flag는 기본으로 되어 있을 것이고, snmp USE flag는 네트워크 프린터를 사용하는 경우에 필요하다. 그리고 오래된 프린터를 사용하는 경우 hpijs USE flag가 필요할 수도 있다. 일부 프린터는 static ppd 파일이 필요한데, 이 경우에는 static-ppds USE flag를 사용하면 된다.
프린터 사용자는 lpadmin에 등록되어야 한다. (그냥 진행하면 hp-setup에서 친절하게 설명해준다.)
echo "# For network printers" >> /etc/portage/package.use
echo "net-print/hplip snmp" >> /etc/portage/package.use
emerge -va cups
emerge -va hplip
gpasswd -a $USER lpadmin
hp-setup
/etc/init.d/cupsd restart
system-config-printer-kde가 동작 안 하는 문제가 있었는데 어떻게 하다보니 해결 되었다.-_-;

참고
http://www.gentoo.org/doc/en/printing-howto.xml
http://en.gentoo-wiki.com/wiki/CUPS#HP_Printers
Posted by asdfzxcv
Linux2011. 7. 21. 21:45
cut은 연속한 delimiter를 각각 따로 보게 된다. 그래서
파일에
word:  3      4
word:      5      8
처럼 적혀 있는 경우에는
grep "word" file.txt | cut -d ' ' -f 3
처럼 해서는 원하는 결과를 얻을 수 없는 경우도 있다. 이럴 때는 awk을 쓰는 수밖에 없다. awk은 기본적으로 연속한 separator를 하나로 인식하게 된다. 그래서
grep "word" file.txt | awk '{printf $3"\n"}'
처럼 하면 원하는 대로 동작한다. awk에서 seperator를 지정할 수도 있는데, 다음을 비교해보자.
grep "word" file.txt | awk '{printf $3"\n"}'
grep "word" file.txt | awk -F "[ ]" '{printf $3"\n"}'
grep "word" file.txt | awk -F "[ ]*" '{printf $3"\n"}'
2번째 처럼하면 연속한 separator를 별개로 인식하고, null field도 생길 수 있게 된다.
Posted by asdfzxcv
Linux2011. 7. 21. 21:25
http://stackoverflow.com/questions/301039/how-to-escape-white-space-in-bash-loop-list
#!/bin/bash
files=`find . -type f -iname "*.txt"`
for file in $files
do
        echo $file
        # do sth.
done
위의 스크립트를 쓸 때, 파일 이름에 white space가 있으면 짜증나는 상황이 발생한다. 처리하는 일이 간단하면, find에 -exec 옵션을 줘도 되고, xargs를 써도 된다. 처리할 것이 많으면 난감하다. 이 경우에는 다음과 같이 하면 된다.
#!/bin/bash
find . -type f -iname "*.txt" | while read file
do
        echo $file
        # do sth.
done
Posted by asdfzxcv
Linux2011. 4. 22. 23:16
간단하게 wol 패키지를 설치하고,
wol -i <IP address> <MAC address>
하면 된다. IP 주소는 끝을 255로 해서 broadcasting 시키고, MAC 주소는 :로 구분해서 입력한다.

unicast vs. subnet directed broadcast
http://technet.microsoft.com/en-us/library/bb632911.aspx
 
Posted by asdfzxcv
Linux2011. 4. 16. 01:12
http://en.wikipedia.org/wiki/Magic_SysRq_key

신기해서 스크랩. 사실 자세히 읽어보진 않았다.

echo e > /proc/sysrq-trigger
로 SIGTERM을 날린다거나... 
Posted by asdfzxcv
Linux2011. 4. 13. 19:11
계속 error starting client-server protocol (code 5)가 떠서 고생했다. (사용자 인증에 문제가 있으면 뜨는 에러인 것 같다.)

클라이언트에서 rsync로 접속시 domain:path를 이용하면 ssh로 로그인을 시도하는 것 같다. 익명으로 접속하거나, 서버 계정이 아닌 rsync.secrets에 등록된 계정으로 접속하려면 domain::moduleName 또는 user@domain::moduleName을 사용해서 접속해야 한다.

/etc/rsync.secrets의 경우 plain text로 암호를 저장하고, 현재로서는 hash 기능을 제공하지 않는다. 그래서 root만 접근 가능하도록 설정되어 있다. 아무튼 암호 관리를 잘 해야 한다.

slp는 뭐하는 건지 아직 모르겠다.
read only = true
gid = users
use chroot = true
transfer logging = true
log format = %h %o %f %l %b
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
hosts allow = trusted.hosts
slp refresh = 300
use slp = false
motd file = /etc/rsyncd.motd

#[Example]
#       path = /home/Example
#       comment = An Example
#       auth users = user
#       secrets file = /etc/rsyncd.secrets

[moduleName]
        path = /path/to/data
        comment = Some comment
        uid = nobody
        gid = nobody
        use chroot = true
        read only = true
        hosts allow = 0.0.0.0/0 # ALL
#       auth users = user_name
#       secrets file = /etc/rsyncd.secrets
Posted by asdfzxcv
Linux/Gentoo2009. 11. 5. 21:43
오래된 글이라 낡고 불필요한 내용이 있을 수 있다.

Ralink 칩셋을 사용하는 무선 인터넷 어댑터를 사용하고 있다. 기본적인 설정은 젠투 위키를 참고하여 무선 인터넷이 가능하게 되었다.
http://en.gentoo-wiki.com/wiki/Ralink_RT2870
http://en.gentoo-wiki.com/wiki/Wireless/Configuration

그러나 먼저 "ifconfig ra0 up"을 실행하고 "/etc/init.d/net.ra0 [start|restart]"를 실행해야만 정상적으로 동작하고, 그 외의 경우에는 제대로 작동하지 않는 문제가 있다. 이 때문에 부팅 시에는 무선 인터넷을 제대로 잡지 못한다. 여러 가지 방법을 시도했지만, 하나도 성공하지 못했다. 그래서 최후의 방법으로 "/etc/conf.d/local.start"에 "ifconfig ra0 up"을 넣기로 하였다. 여기서 "ifconfig ra0 up" 이후에 "/etc/init.d/net.ra0 start"를 해야 하므로, rc에서는 net.ra0를 삭제해야 한다.

부팅 과정에서 net.ra0가 자동으로 시작하는 것을 막기 위해 "rc-update del net.ra0"를 했지만, 여전히 자동으로 net.ra0가 자동으로 시작된다. 인터넷을 검색해서 hotplug의 문제일 수 있다는 답변을 찾았다. 아마도 "/etc/rc.conf"에 다음을 추가하면 될 것이다. 물론 지금 상황에서는 "eth0" 대신 "ra0"라고 적어야 한다.
rc_hotplug="!net.eth0"
http://forum.soft32.com/linux/gentoo-user-eth0-starting-ftopict481515.html

그런데 이상한 것을 발견했다. 그것은 rc에 대한 설정 파일이 "/etc/rc.conf"와 "/etc/conf.d/rc"으로 두 개가 존재한다는 것이다. 검색 결과 Gentoo에서 rc system을 OpenRC로 변경했고, 그 이후에는 "/etc/conf.d/rc"가 deprecated되었고, "/etc/rc.conf"를 사용하게 되었다고 한다.
http://www.gentoo.org/doc/en/openrc-migration.xml
http://kldp.org/node/93168

그런데 이상하게 내 컴퓨터는 기존의 rc system을 사용 중이고, OpenRC로 업데이트 되지 않았다. 일단 기존의 rc system을 사용하기로 하고 다음과 같이 설정하였다.
"/etc/init.d/local.start"에 다음을 추가.
ifconfig ra0 up
/etc/init.d/net.ra0 start
"/etc/conf.d/rc"에 다음을 추가 또는 변경. 유선 인터넷도 안 쓰므로 적어 두었다. 그리고 주제와는 무관하지만 parallel기능도 활성화 시켜보았다.

RC_PARALLEL_STARTUP="yes"
RC_VERBOSE="yes"
RC_PLUG_SERVICES="!net.eth0 !net.ra0"
테스트 결과 RC_PARALLEL_STARTUP은 별로 영향이 없는 것 같다.

OpenRC를 쓰면 부팅 속도가 빨라진다고 해서 설치했다. 가이드 문서를 참고해서 설치하면 되는데 대부분 자동으로 되서 별로 할 건 없다.
http://www.gentoo.org/doc/en/openrc-migration.xml

그런데 OpenRC로 바꾸니 다시 인터넷 설정이 안 잡힌다. 그래서 "/etc/init.d/net.ra0"를 이용한 설정을 포기하고 "/etc/init.d/local.start"에서수동으로 설정하는방법을 사용하였다.
ifconfig ra0 up
iwconfig ra0 essid <myessid>
iwconfig ra0 key <mykey>
dhcpcd ra0
"/etc/rc.conf"에는 다음을 추가하였다.
rc_hotplug="!net.eth0 !net.ra0"

기존의 rc와 OpenRC에 대해 각각 parallel 기능을 켜고 끄는 방법으로 총 네 가지 경우에 대해 테스트했는데 엄청난 속도 향상 같은 것은 전혀 없었다. 참고로 싱글 코어 CPU를 사용 중이다.

Posted by asdfzxcv
Linux/Gentoo2008. 12. 13. 12:28
오래된 글이라 낡고 불필요한 내용이 있을 수 있다.

리눅스를 64비트로 사용하는 사람들에게 좋은 일이 생겼습니다.
이제 곧 64비트 리눅스의 64비트 파이어폭스에서도 이제 Flash와 Java plugin을 사용할 수 있게 될 것 같습니다. 32비트 브라우저를 따로 설치하지 않아도 됩니다.

Flash
인터넷을 검색하다가 kashel님의 블로그에서 소식을 얻었다.
netscape-flash-10.0.20.7_alpha 버전을 설치하면 된다고 한다.
http://labs.adobe.com/downloads/flashplayer10.html
http://bugs.gentoo.org/249135

Java plugin
역시 인터넷을 검색하다가 정보를 얻었다.
Java 6 Update 12에서 지원할 예정이라고 한다.
http://www.mail-archive.com/gentoo-amd64@lists.gentoo.org/msg10014.html
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4802695
아직 출시는 안 된듯하다. Firefox3만 지원하려는 모양이다.

Posted by asdfzxcv
Linux/Gentoo2008. 5. 17. 21:09
오래된 글이라 낡고 불필요한 내용이 있을 수 있다.

http://www.gentoo.org/proj/en/base/embedded/handbook/?part=1&chap=4

9 줄 요약
설치(물론 root로 실행)
emerge crossdev
crossdev --target help
원하는 아키텍처을 찾는다. 예를 들어 x86이 필요하면...
crossdev --target x86
사용법
(아키텍처 이름)-unknow-linux-gnu-gcc -v
(실행 방법은 경우에 따라 다를 수도 있음)
Posted by asdfzxcv
Linux/Gentoo2008. 3. 18. 00:35
오래된 글이라 낡고 불필요한 내용이 있을 수 있다.

소식
Gentoo 2008.0이 나올 때가 되었다.
http://www.gentoo.org/

For Gentoo 2007.0 AMD64.
오래 전에 쓴 것이라 좀 낡은 부분이 있다.

%% Documents
(커널 컴파일시 참고할 것은 *로 표시)
*Gentoo Linux AMD64 Handbook
*Gentoo Linux Genkernel Guide
*Hardware 3D Acceleration Guide
*Gentoo Linux nVidia Guide
*Using UTF-8 with Gentoo
*Gentoo Printing Guide
*Gentoo Linux ALSA Guide
Gentoo Linux Frequently Asked Questions
The X Server Configuration HOWTO
The KDE Configuration HOWTO
Gentoo Linux Localization Guide
Using a Mouse within the Console
http://gentoo-wiki.com/HOWTO_AMD64
http://gentoo-wiki.com/TIP_Speak_Your_Language
http://gentoo-wiki.com/Masked
http://devmanual.gentoo.org/

references:
http://www.gentoo.org/dyn/use-index.xml?style=printable
http://devmanual.gentoo.org/general-concepts/use-flags/
http://gentoo-wiki.com/USE_Flags
http://gentoo-wiki.com/USE_Flags_explained

printer:
http://www.gentoo.org/doc/en/printing-howto.xml
http://gentoo-wiki.com/Canon_Pixma_Series
http://gentoo-wiki.com/HPOJ_and_CUPS

%% 터미널 비프음 끄기
setterm -blength 0
% (see: Gentoo Linux FAQ)

%% scim
# vi /etc/env.d/02locale
LC_ALL="ko_KR.UTF-9"
LANG="ko_KR.UTF-8"
LC_CTYPE="ko_KR.UTF-8"
# vi /etc/env.d/02scim
XMODIFIERS="@im=SCIM"
GTK_IM_MODULE="scim"
QT_IM_MODULE="scim"
% amd64의 경우 /etc/portage/package.keyword를 수정하여 최신 버전으로 깔리도록 고쳐준다.
# emerge -va scim %if GTK+
# emerge -va skim %if KDE/Qt
# emerge -va scim-hangul scim-tables
references:
System configuration
Installation using Portage
System Configuration
% 팁: compile qt-3.3.8-r2 with USE="immqt-bc"
% (package.use를 이용)
% gentoo-kr을 이용해서 최신 버전을 빠르게 적용할 수 있다.

%% 한영키 인식
% 추가: xkeyboard-config의 버전에 dependant하다. 버전을 잘 맞춰서 설치해야 한다.
# echo "x11-misc/xkeyboard-config" >> /etc/portage/package.keywords
# emerge -va xkeyboard-config
# dispatch-conf
% 이제 Control Center에서 키보드 옵션을 바꿀 수 있게 된다.
% 여기서 바꾼 설정은 ~/.kde/share/config/kxkbrc 에 저장된다.
% 또는
#vi /etc/X11/xorg.conf
Section "InputDevice"
    Identifier "Keyboard0"
    Driver      "kbd"
    Option     "XkbRules" "xorg"
    Option     "Xkbmodel" "pc105"
    Option     "XkbLayout" "kr"
    Option     "XkbVariant" "kr106"
EndSection
% references: http://kldp.org/node/82808

%% ttf-alee
# emerge layman
# vi /etc/layman/layman.cfg
overlays  : http://www.gentoo.org/proj/en/overlays/layman-global.txt
    http://gentoo-kr.kldp.net/overlays.xml
...
nocheck : yes
# layman -f
# layman -L %is there "gentoo-kr"?
# layman -a gentoo-kr
# layman -s gentoo-kr
# echo "source /usr/portage/local/layman/make.conf" >> /etc/make.conf
# emerge -va alee-fonts
% references:
% http://www.gentoo.org/proj/en/overlays/userguide.xml
% http://gentoo-kr.kldp.net/
% http://kldp.org/node/74311#comment-348956
% http://gentoo-wiki.com/HOWTO_Installing_3rd_Party_Ebuilds
% http://gentoo-wiki.com/HOWTO_Create_an_Updated_Ebuild

%% Adobe flash
# echo "net-www/nspluginwrapper" >> /etc/portage/package.keywords
# emerge nspluginwrapper
# emerge netscape-flash
?# nspluginwrapper -v -a -i
%mozilla-firefox-bin을 업데이트할 때마다 재설치 필요
% references: http://gentoo-wiki.com/HOWTO_AMD64

%% Java
# echo "app-emulation/emul-linux-x86-java nsplugin" >> /etc/portage/package.use
# echo "app-emulation/emul-linux-x86-java" >> /etc/portage/package.keyword
# emerge emul-linux-x86-java
# eselect java-nsplugin list
?# eselect java-nsplugin set 32bit emul-linux-x86-java-1.6
?# ln -s /opt/emul-linux-x86-java-1.6.0.03/plugin/i386/ns7/libjavaplugin_oji.so
%mozilla-firefox-bin을 업데이트할 때마다 재설치 필요
% referencse:
% http://www.gentoo.org/doc/en/java.xml?style=printable
% http://gentoo-wiki.com/HOWTO_AMD64
% http://java.com/en/download/installed.jsp

%% openoffice-bin
% 추가: 한글이 제대로 안 나오는 문제때문에 이렇게 설치했었는데,
% 이제는 이렇게 할 필요가 없는 것 같다.
# export LINGUAS="en"
# emerge -va openoffice-bin
# export LINGUAS="en ko"
Posted by asdfzxcv