'우분투'에 해당하는 글 52건

우분투에서 윈도우의 공유폴더를 연결해 사용하고 있다.
그동안 별 이슈 없이 사용했던것 같다.

그런데, 윈도우 업데이트 후에 다음과 같은 에러가 발생하면서 연결이 안된다.

mount error(127): Key has expired

mount 할때 guest 계정으로 연결하는데, 윈도우 업데이트 후에 해당 계정설정이 바뀐 듯 하다.

위 그림은 조치한 후에 화면이다.   활성계정 부분이 "예" 로 되어 있어야 하는데, "아니오" 로 되어 있었다.

net user guest /active:yes

로 활성화 해준다.

 


WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret

LG 그램을 사용중이다. 윈도우가 기본 설치가 되어 있지만, 개발에 필요해서 우분투를 설치해서 사용하려 한다.

USB 부팅(설치) 디스크를 만들고 부팅을 시도 했는데. 다음과 같은 에러가 나면서 부팅이 되지 않는다.

Failed to open \EFI\BOOT\NULL - Not Found
Faild to load image \EFI\BOOT\NULL : Not Found
start_image() returned Not Found

위와 같은 에러가 나는 경우. USB 설치 디스크의 해당 위치를 보면

grubx64.efi
mmx64.efi
bootx64.efi

등의 파일이 있는데.

난 grubx64.efi 를 복사해서 NULL 파일로 이름을 바꿔줬다. (NULL.efi 가 아닌 그냥 NULL )

다시 재부팅을 해보니 정상적으로 부팅화면으로 넘어갔다.

ps. 여러가지 그램 바이오스 세팅을 바꾸는 방법이 구글링 하면 나오는데.
난 위 방법으로 했다. (secure boot : disable 등 몇가지는 설정했다.)


WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret

ubuntu 에서 squid3 설정.

- 설정은 간단하다.

- curl 을 이용해 해당 proxy 서버를 사용할때 주의점.


# 설치

apt-get install squid3

끝. 쉽다.


# 설정

/etc/squid3/squid.conf 을 설정

(원래 파일은 복사하고, 새로 생성한다)

acl SSL_ports port 443
acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl Safe_ports port 443         # https
acl Safe_ports port 70          # gopher
acl Safe_ports port 210         # wais
acl Safe_ports port 1025-65535  # unregistered ports
acl Safe_ports port 280         # http-mgmt
acl Safe_ports port 488         # gss-http
acl Safe_ports port 591         # filemaker
acl Safe_ports port 777         # multiling http
acl CONNECT method CONNECT


# digest

auth_param digest program /usr/lib/squid3/digest_file_auth /etc/squid3/squid3.digest.passwd

auth_param digest realm proxy

acl sq_digest proxy_auth REQUIRED

http_access allow sq_digest


# basic

auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid3/squid3.basic.passwd

auth_param basic realm proxy

acl sq_basic proxy_auth REQUIRED

http_access allow sq_basic


cache deny all


http_port 4128


#http_port 3128

coredump_dir /var/spool/squid3


refresh_pattern ^ftp:           1440    20%     10080
refresh_pattern ^gopher:        1440    0%      1440
refresh_pattern -i (/cgi-bin/|\?) 0     0%      0
refresh_pattern (Release|Packages(.gz)*)$      0       20%     2880
refresh_pattern .               0       20%     4320

진한 부분이 추가한 부분이다. 기본파일에는 http_access 관련 설정이 있는데 삭제했다.


# 포트 변경

그리고 추천하는 부분은 기본포트인 3128 을 다른 포트로 바꾸길 권장한다.
언제나 그렇듯이 공격 대상이 될 수 있다. (ssh 도 필수로 바꾸는 것이 좋다. 22 -> 다른 포트)


# 캐시 비활성화

cache deny all 

캐시를 비활성화 했는데, 필요하면 삭제 또는 주석처리한다.


# 인증 모드

인증 모드는 digest 와 basic 이 있는데 설정은 위와 같다. 동시에 써도 되는지는 모르겠다.

암호파일 생성은 htpasswd / htdigest 를 사용한다.

사용법은

htpasswd -c /etc/squid3/squid3.basic.passwd {username}

htdigest -c /etc/squid3/squid3.digest.passwd proxy {username}

암호화는 digest 방식을 추천한다.


모두 설정이 완료되었으면 재시작해서 바뀐 설정을 적용한다.

service squid3 restart




# curl 에서는 다음처럼 사용한다. ( php 기준 설명 )

php curl 은 아쉽게도 digest 모드를 아직 지원안하는 듯 하다.

$proxyserv = '123.123.123.123:4128' ;
$proxyauth = 'username:password';


curl_setopt($ch, CURLOPT_PROXY, $proxyserv );

curl_setopt($ch, CURLOPT_PROXYUSERPWD, $proxyauth );

위와 같이 써준다.

curl_setopt($ch, CURLOPT_PROXYAUTH, CURLAUTH_DIGEST ); 

위 옵션이 되면 좋겠는데, 아쉽게도 현재는 안된다.( 현재는 CURLAUTH_BASIC , CURLAUTH_NTLM 만 지원)





WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret

sublime text 를 쓰던 환경을 그대로 복사하거나 옮길경우

1. 계정폴더의 .config/sublime_text_3 폴더를 그대로 복사하면 된다.

해당 폴더 자체를 dropbox 등으로 동기화를 해도 될 듯 하지만,
충돌 가능성이 있으니 일단 배제.

2. license 파일은 그대로 복사해도 안된다. 다시 키 입력해서 새로 생성한다.





WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret

목적은 다음과 같다.

우분투 14.04 vino-server <==> ssh 터널링(putty) <==> 윈도우 vnc

이와 같은 목적으로 세팅을 했다. putty 에서 ssh 터널링 설정은 많으니 패스.

그런데, 윈도우에서 vnc 로 접속시 다음과 같은 메시지가 나온다.

Error in TightVNC Viewer: No security types supported. Server sent security types, but we do not support any of their.

tightvnc 먼저 테스트.

Unable to connect to VNC Server using your chosen security setting.
Either upgrade VNC Server to a more recent version from RealVNC, or select a weaker level of encryption.
혹시나 해서 realvnc. 둘다 마찬가지.


ssh 를 통과해서 security 관련 문제가 나타나는 듯 하다.

결국은 vino-server 대신 x11vnc 를 사용하기로 했다.

설치/설정 방법은 http://blog.1day1.org/561 를 참조한다.


x11vnc 로 바꾸고, 접속해보니 정상적으로 접속한다.




WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret

우분투에서 vino-server 보다 x11vnc 가 나은듯 하다.

x11vnc 를 설치해보자

apt-get install x11vnc xinetd

로 설치해준다.

그리고, xinetd 는 x11vnc 를 자동실행시켜주기 위해 사용한다(취향에 따라 gdm 로그인시 자동실행시켜도 된다.)

/etc/xinetd.d/x11vnc 로 다음 내용을 저장한다.

service x11vnc
{
   port = 5901
   type = UNLISTED
   socket_type = stream
   protocol = tcp
   wait = no
   user = root
   server = /usr/bin/x11vnc
   server_args = -inetd -o /var/log/x11vnc.log -display :0 -auth /var/lib/gdm/:0.Xauth -xkb -repeat -many -bg -noxdamage -rfbauth /etc/x11vnc.passwd
   disable = no
}


여기서 조심할 항목은 /etc/x11vnc.passwd 의 암호를 지정하는 것이다.

x11vnc -storepasswd /etc/x11vnc.passwd


로 하면 암호를 물어보고, 해당 파일로 저장이 된다.

server_args 부분설명
  -noxdamage :  compiz 상에서 화면갱신등의 성능이 좋지 않는데, 저 옵션을 주면 좋아진다.

  -xkb -repeat  : shift 키가 안먹을때 넣어 준다.

  -auth {xauth} : ps aux | grep auth  명령으로 위치를 찾아준다.

/usr/bin/X -core :0 -seat seat0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch

ubuntu 14.04 에서는 위와 같다. lightdm 부분 /var/run/lightdm/root/:0 을 -auth 옵션뒤에 넣어준다.

 

설정 완료 후에는 xinetd 를 재시작 해준다.

service xinetd restart

 

[추가-2020-03-31]

우분투 18.04 에서는 lightdm 대신에 gdm 을 사용한다.(auth 부분이 /run/user/121/gdm/Xauthority 이다 )
특정 시스템의 문제인지 모르겠지만, 로그인 하면 검정화면이 된다.

해결 방법이 있을듯 하지만, 그냥 lightdm 을 설치해서 해결했다.

apt install lightdm

 


WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret

관리하는 서버 대수가 많아지다 보니 모니터링이 쉽지 않다.

서버 호스팅 업체를 통한 기본관리도 가능하지만, 부족한 부분이 있고, 여러 호스팅 업체를 사용하다보면 그것도 불편하다


icinga 로 모니터링 서버를 구축해본다.

웹 모니터링 화면을 접속하면 이런식으로 나온다.

관련글 : https://www.digitalocean.com/community/tutorials/how-to-use-icinga-to-monitor-your-servers-and-services-on-ubuntu-14-04

설정은 위 링크를 참조하기로 하고 특이사항 들을 추가한다.


관련 패키지를 설치하면 몇가지 설정단계를 거친다.

1) 처음에는 mysql root 계정 암호를 넣을 것이다. 적당한 암호를 넣는다.


2) 메일 설정 부분

메일 설정을 해준다. 메일로 알람을 받을 때 쓰는 듯 하다.


3) 관리자 화면에 쓸 icingaadmin 계정 설정

관리용 웹화면의 암호를 입력한다.

다음처럼 추가 패키지들이 설치된다.


다음은 그냥 No 로 넘어가고,


4) icinga-idoutils 관련 설정

icinga-idoutils 의 설정 : 모니터링 데이터에 쓰이는 듯 하다.

여기에서는 mysql 을 쓸 것이다.


초기데이터 설정을 위해 관리자 암호를 물어본다(처음에 설정한 값)


icinga-idoutils 가 쓸 mysql 계정암호를 넣는다.

여기까지 기본설정 완료. 추가로 패키지들이 마저 설치된다.



5) 모니터링 관리자 화면 접속.

난 설정을 포트포워딩 해서 http://localhost:8800/icinga/ 으로 접속했다.

아이디는 icingaadmin 이고, 암호는 설정시 입력한 값을 넣는다.




참고로 난 vagrant 로 가상머신을 만들고, icinga 를 세팅했다.
vagrant 로 세팅후 box 의 80포트를 포트포워딩 하고, 부팅시 자동실행하도록 설정했다.

1) 포트포워딩(Vagrantfile)

config.vm.network :forwarded_port, host: 8080, guest: 80

2) 부팅시 자동실행(vagrant box) : http://blog.1day1.org/543





WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret

우분투 14.04 시스템에 btrfs 를 사용하고 있다.

SSD raid 에 LVM 으로 나눠서 쓰고 있다. 일반적인 사용형태보다는 좀 복잡할 것이다.
(물론 아주 특이한 케이스는 아니다)

docker 를 테스트 하던 중.

docker pull 로  이미지 몇개 설치하지 않았는데, 디스크가 꽉차는 현상이 발생했다.
크롬이 비정상 종료되길래 왜 그러지 싶었다. 그냥 아무 생각없이 재부팅하니. 정상부팅되지 않았다.

순간 멘붕.

허걱! 다시 OS를 깔아야 하나. 데이터 만이라도 살려야 하는데.
중요데이터는 Dropbox 로 동기화 하고 있으니 별 상관은 없지만, 또 세팅을 다시하려니 힘이 쭉.

single 모드로 다시 부팅을 해보고 점검을 해봤다.

주요 메시지는

Incrementally starting RAID arrays...
mdadm: CREATE user root not found
mdadm: CREATE group root not found
Incrementally started RAID arrays.

이런식의 메시지가 계속 무한루프 된다. 위 메시지를 검색 해봤는데, 별다른 원인을 못찾겠다.


docker 를 테스트 하던중 용량 관련 메시지 No space left on device  => 디스크 full 일때 나오는 익숙한(?) 메시지
를 봤었다. 그것과 관련이 있을 것 같다.

# df -h
Filesystem                   Size  Used Avail Use% Mounted on
/dev/mapper/vg_root-lv_root  131G   46G   84G  36% /
none                         4.0K     0  4.0K   0% /sys/fs/cgroup
udev                         3.9G  4.0K  3.9G   1% /dev
tmpfs                        791M  1.3M  789M   1% /run
none                         5.0M     0  5.0M   0% /run/lock
none                         3.9G  156K  3.9G   1% /run/shm
none                         100M   44K  100M   1% /run/user

그러나 시스템 용량은 충분했다. 어떤 다른 이유인것 같다.


docker pull dockerfile/mongodb

등의 명령을 내리면, 이미지를 다운로드하고 컨테이너를 생성한다.

# docker pull dockerfile/mongodb
Pulling repository dockerfile/mongodb
6c03df111896: Download complete
511136ea3c5a: Download complete
5e66087f3ffe: Download complete
4d26dd3ebc1c: Download complete
d4010efcfd86: Download complete
99ec81b80c55: Download complete
b261bc65cd23: Download complete
42404685406e: Download complete
6cc69450fe19: Download complete
efc4fbcd007f: Download complete
2baeb2edbf92: Download complete
ecd5c1cc18ac: Download complete
1f089cc15e82: Download complete
9c1219bb985c: Download complete
d5885db18d17: Download complete
f1b2b4374c6b: Download complete
c0cda6b780cd: Download complete
42f2a60d100f: Download complete

이때 docker 는 btrfs 인 경우 subvolume (스냅샷?) 기능 을 이용하는 것 같다.

/var/lib/docker/btrfs/subvolumes 에 생성이 된다.

btrfs subvolume list /

을 해보면 아무것도 없어야 한다. 그런데, docker pull 후에 다시 명령을 해보면.

# btrfs sub list /
ID 386 gen 94278 top level 5 path var/lib/docker/btrfs/subvolumes/511136ea3c5a64f264b78b5433614aec563103b4d4702f3ba7d4d2698e22c158
ID 387 gen 94278 top level 5 path var/lib/docker/btrfs/subvolumes/5e66087f3ffe002664507d225d07b6929843c3f0299f5335a70c1727c8833737
ID 388 gen 94279 top level 5 path var/lib/docker/btrfs/subvolumes/4d26dd3ebc1c823cfa652280eca0230ec411fb6a742983803e49e051fe367efe
ID 389 gen 94280 top level 5 path var/lib/docker/btrfs/subvolumes/d4010efcfd86c7f59f6b83b90e9c66d4cc4d78cd2266e853b95d464ea0eb73e6
ID 390 gen 94281 top level 5 path var/lib/docker/btrfs/subvolumes/99ec81b80c55d906afd8179560fdab0ee93e32c52053816ca1d531597c1ff48f
ID 391 gen 94282 top level 5 path var/lib/docker/btrfs/subvolumes/b261bc65cd23e8399c39ef0b77d732ddf6ca9679d4cea0ad1cdaca715c4a0d81
ID 392 gen 94283 top level 5 path var/lib/docker/btrfs/subvolumes/42404685406e72d29e3b349605d34cb88590cfcfabb06b9925628f2949c2eb89
ID 393 gen 94284 top level 5 path var/lib/docker/btrfs/subvolumes/6cc69450fe1990579c13d444495dcfec342955712481647fcb73d5a8e6184f33
ID 394 gen 94285 top level 5 path var/lib/docker/btrfs/subvolumes/efc4fbcd007ff7a202ead05932a48f62301464b8f1bc1449f3a8f9b5c26d9515
ID 395 gen 94286 top level 5 path var/lib/docker/btrfs/subvolumes/2baeb2edbf92488d7bbd4723368aeb2e86045f7ed6310b5924cec2d3c3ff8710
ID 396 gen 94287 top level 5 path var/lib/docker/btrfs/subvolumes/ecd5c1cc18ac86e88dd6420161d5812ef6cd31c1a0ce252d071d4481996502fc
ID 397 gen 94288 top level 5 path var/lib/docker/btrfs/subvolumes/1f089cc15e82571690524c3633dc361ba526d25fed072e09607fac7ee1178098
ID 398 gen 94289 top level 5 path var/lib/docker/btrfs/subvolumes/9c1219bb985cb5ceb0a602ad943c9dd5b83cf0f16d3cd05730113fe0af37d0be
ID 399 gen 94290 top level 5 path var/lib/docker/btrfs/subvolumes/d5885db18d17c3e473f310ab7723a1c6b4c29a14b9a8db54bfd795466bee1da3
ID 400 gen 94291 top level 5 path var/lib/docker/btrfs/subvolumes/f1b2b4374c6b1813549a4436c190f4e0ab04168eee3244e08931b63c96b943c1
ID 401 gen 94292 top level 5 path var/lib/docker/btrfs/subvolumes/c0cda6b780cdb2c400b470371baea2149ac4caef980d4685465f0ef13eb2af6c
ID 402 gen 94293 top level 5 path var/lib/docker/btrfs/subvolumes/42f2a60d100fcbda388b76bb69270fc057565ab4bdf5d68072b30b225669e5f4
ID 403 gen 94293 top level 5 path var/lib/docker/btrfs/subvolumes/6c03df11189668e549ac34464dbdbef563144f92eeb89246afaa1029b92cfd7d

위 처럼 많은 subvolume 이 생성된 것을 볼 수 있다.
ID 값이 동일한 것(진한부분)을 보니 ID 당 서브볼륨을 생성해서 관리하나 보다.


파일용량을 체크해보면 다음과 같다.

# btrfs file df /
Data, single: total=127.21GiB, used=44.64GiB
System, DUP: total=8.00MiB, used=20.00KiB
System, single: total=4.00MiB, used=0.00
Metadata, DUP: total=1.50GiB, used=1.02GiB
Metadata, single: total=8.00MiB, used=0.00

서브볼륨은 어느 부분에 영향을 주는지 확인해봐야 겠다.

아무튼.

docker rmi dockerfile/mongodb

명령으로 docker 이미지를 삭제하면 해당 subvolume 도 삭제된다.


개별적으로 subvolume 을 삭제하려면

btrfs sub del var/lib/docker/btrfs/subvolumes/6c03df11189668e549ac34464dbdbef563144f92eeb89246afaa1029b92cfd7d

으로 삭제해준다.( 부팅이 안되서 usb 우분투 로 부팅하고, 해당 서브볼륨을 위 처럼 하나씩 삭제해줬다)


btrfs 에 좀더 알기전까지는 조심해야 겠다.

다음부터 docker 는 vagrant 기반의 vm 내에서 테스트 해봐야 겠다.




WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret

docker 를 설치해본다.

우분투 14.04 에서는 간편하다. 이미 우분투 공식패키지로 등록이 되어 있다.

apt-get install docker.io


그러나 공식패키지는 버전업이 느리다.

# docker.io --version

Docker version 0.9.1, build 3600720


빠르게 버전업하는 패키지는 공식사이트의 배포버전을 사용하면 좋다.

echo deb https://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list

apt-get update

apt-get install lxc-docker

한번에 끝내기

curl -s https://get.docker.io/ubuntu/ | sudo sh

위 스크립트를 받아서 실행하는 방법이다.

Docker version 1.0.1, build 990021a

최신버전으로 설치된다.


간단한 테스트.

# docker run ubuntu:14.04 /bin/echo 'Hello World'

다음과 같은 명령을 내리면.. 로컬이미지를 찾고,
없으면 저장소에서 찾아서 설치한 후 echo 'Hello World' 를 실행하게 된다.

Unable to find image 'ubuntu:14.04' locally
Pulling repository ubuntu
e54ca5efa2e9: Download complete
511136ea3c5a: Download complete
d7ac5e4f1812: Download complete
2f4b4d6a4a06: Download complete
83ff768040a0: Download complete
6c37f792ddac: Download complete
Hello World


하위 버전은 다음을 참조.

http://docs.docker.io.s3-website-us-west-2.amazonaws.com/installation/ubuntulinux/




WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret


우분투 - samba 로 설정한 파일을 수정시 다음과 같은 에러가 발생하는 경우.

파일 작업 실패.
"다른 프로세스가 파일의 한 부분을 잠갔으므로, 프로세스가 해당 파일을 액세스할 수 없습니다."

우분투 8.04 를 사용하다가 10.04 로 업그레이드 했을때 위와 같은 에러가 발생하였다.

samba 옵션에 다음을 추가한다.

/etc/samba/smb.conf 의 global 섹션에 추가하면 된다.

strict locking = no




WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret

우분투 10.04 에서 samba mount 사용하기(fstab)


저의 개발환경 구성을 이렇게 하고 있다.(사정이 있어 기존 구성된 환경을 유지하려다 보니 복잡해 보인다)

                                                     [개발서버(소스)]  => 개발VM(nfs)    => web-dev
외부작업환경1)               윈도우 네트워크 드라이브 -> vm (smb)
외부작업환경2) (remote) -> sftp -> smb_mount -> vm (smb)

그에 맞게 작업환경을 꾸미다보니 sftp 로 직접 붙이려니 애매한 부분이 있었다.
그래서 중간에 smb mount 해서 사용하기로 했다.


1. samba 관련 설정. /etc/samba/smb.conf (설치 부분은 생략)

[httpd]
   comment = working dev httpd
   path = /work/httpd
   browseable = yes
   hosts allow = 127.0.0.1
   force user = www-data
   force group = www-data
   public = yes
   guest ok = yes
   writable = yes
   printable = no
   create mask = 0765
   directory mask = 0755

2. mount 에 필요한 패키지 설치

# apt-get install smbfs

  최신 우분투 버전은 cifs-utils 로 설치하는 듯 함.

3. /etc/fstab 에 다음처럼 항목 추가

//linux/httpd  /smb_mount/httpd  smbfs uid=user,gid=adm,password=,iocharset=utf8,noauto  0  2

예전버전에 codepage=cp949 등이 쓰였는데, 언제부터인가 옵션이 빠졌음. iocharset 만 추가

uid , gid 는 서버의 접근계정 아이디/그룹
password 옵션은 암호가 있으면 넣고, 없으면 그냥 빈란

4. 마운트

# mount /smb_mount/httpd

크게 어려운 부분은 없다.(자신에 맞게 환경설정은 변경)

해당위치로 /smb_mount/httpd 로 sftp 접근해서 파일을 직접 수정해서 작업한다.





WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret

노트북의 터치패드의 좋은 부분중 하나가 가로 스크롤이 편하다는 것이다.

그래서 데스크탑용 터치패드를 사볼까 하는 생각도 한다.

우분투에서 마우스로 가로스크롤이 되도록 설정하고자 한다.

관련정보 : http://askubuntu.com/questions/404737/horizontal-scrolling-in-firefox-to-shiftmouse-scroll-instead-of-back-forward

위 링크에 나와있다.

크롬에서는 기본적으로 되나 보나, 위 링크를 적용하지 않고 해보니 잘 된다.(Shift - scroll )


요약해서 설명하자면,

1) 관련패키지 설치

$ sudo apt-get install xautomation xbindkeys

2) .xbindkeysrc.scm 파일 생성  후 xbindkeys 실행.

; bind shift + vertical scroll to horizontal scroll events
(xbindkey '(shift "b:4") "xte 'mouseclick 6'")
(xbindkey '(shift "b:5") "xte 'mouseclick 7'")

3) firefox - shift scroll 세팅 비활성화(기본 명령은 뒤로가기/앞으로가기 )

주소창에서 about:config 명령을 내려서 아래의 두가지 '사용자 설정' 값을 변경한다.

mousewheel.with_shift.action
mousewheel.with_shift.action.override_x

두값을 각각 0 , 1 으로 변경.


- 위 설정 문제점

파이어폭스에서 shift + scroll 이 되긴하는데, 너무 조금씩 스크롤이 되서 불편하다.

그냥 직접 FF 에서 설정하는 방법이 있다.

관련출처 : https://coderwall.com/p/xnez3g

about:config 에서 설정변경함.

general.autoScroll = true
mousewheel.with_shift.action = 1

위 두값을 변경하고, 스크롤되는 speed 는

mousewheel.with_shift.delta_multiplier_x = 1000

값을 변경한다. 1000 정도가 편한것 같다. (값은 본인 취향에 따라)


브라우저에서만 사용한다면, 위 xbindkeys 는 설정 안해도 된다.





WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret

간만에 우분투 체제로 다시 돌아왔다. 그동안 주로 윈도우8 을 써왔다.

윈도우8 / 우분투 둘다 괜찮다. 난 어느 한쪽만 지지하자는 주의는 아니다.
어느 한쪽 OS 에 종속되지 않고 쓰자라는 컨셉.

이번에 우분투14.04 가 나오고, 노트북을 새로 장만해서 다시 메인으로 써볼까 해서 당분간 테스트 중이었다.

먼저 13.10 을 설치해서 쓰고 있었다. 그 당시 한글 버그가 있어서 좀 안정화 되면 넘어갈려고 했었다.
그런데, 13.10 의 compiz 세팅이 꼬였는지 설정이 이상하고, 느린감이 있었다.

그냥 화김에 14.04로 올렸는데, compiz 문제가 해결되어 한글버그를 감수하고 쓰게 되었다.
속도도 더 빨라져서 만족하고 있다. 그 사이 한글 버그도 해결이 되었다.

듀얼로 써서 스크린샷이 아래처럼 나온다.

작업용 virtualbox 머신 을 세팅했고, 간단하게 conky 세팅해서 꾸며봤다.

가급적 심플하게 사용하려고 한다.

주요 파일은 dropbox 로 동기화해서 윈도우8 / 우분투 모두 사용가능하게 해놨다.
프로그램 개발을 위해서 sublime text 를 세팅해서 사용한다. 이것도 윈도우8 도 같은 환경.
dropbox + git + ST3 환경으로 세팅하니, OS 에 종속되지 않고 쓸 수 있다.

그러나 우분투에서 해결이 잘 안되는 부분은 가상머신으로 돌린다.(예전 보다는 많이 나아졌다. 진짜 가끔 쓴다)
간혹 OS X 용으로 나오는 프로그램들이 몇가지 있어서, 맥북프로를 마련해볼까 생각중이다.
당장은 아닐 듯 한데, OS X 요세미티가 얼마전에 소개가 되어서, 써보고 싶은 마음이 생긴다.
적응 기간이 필요할테니 맥미니 를 먼저 마련할지도 모르겠다.



WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret

# 우분투(리눅스) 에서 하드용량이 없다고 나오는 문제(No space left on device)

다음과 같은 문제가 발생하는 경우가 있다.

# touch /tmp/check
touch: cannot touch `/tmp/check': No space left on device

파일을 생성하는 명령을 내렸을때 용량이 없다는 메시지가 나온다.

하드용량을 확인해보면.

# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda1       19G  3.0G   15G  17% /
udev            236M  4.0K  236M   1% /dev
tmpfs            98M  180K   98M   1% /run
none            5.0M     0  5.0M   0% /run/lock
none            245M     0  245M   0% /run/shm
none            100M     0  100M   0% /run/user

아직 용량은 충분한데 이상하다.

# df -i
Filesystem      Inodes   IUsed IFree IUse% Mounted on
/dev/xvda1     1253376 1253376     0  100% /
udev             60266     385 59881    1% /dev
tmpfs            62675     261 62414    1% /run
none             62675       2 62673    1% /run/lock
none             62675       1 62674    1% /run/shm

none             62675       1 62674    1% /run/user

바로 inode 의 갯수가 꽉 찬것이다.

분명히 어딘가에서 너무 많은 파일이 등록이 되어 있는 것이다.


범인을 찾아라.

# for i in /home/*; do echo $i; find $i |wc -l; done

=> 해당 위치를 찾아라.

# for dir in *; do [ -d "$dir" ] && echo "$dir" && find "$dir" | wc -l; done

둘다 명령은 동일.(디렉토리를 지정하거나 현재디렉토리를 기준)
의심되는 위치를 위 명령으로 해본다.

결과

session
1194823

=> 찾았다 범인.

너무 많은 세션파일이 생성되어 하드 용량이 남았어도 inode 갯수가 꽉 차서 더이상 파일을 생성할 수 없게 된 것이다.

저 파일들을 정리해주면 된다.

파일이 너무 많으니 rm -rf session 등으로 해주는게 좋다.(각자 알아서)

정상.

# df -i
Filesystem      Inodes IUsed   IFree IUse% Mounted on
/dev/xvda1     1253376 58729 1194647    5% /
udev             60266   385   59881    1% /dev
tmpfs            62675   261   62414    1% /run
none             62675     2   62673    1% /run/lock
none             62675     1   62674    1% /run/shm
none             62675     1   62674    1% /run/user

 => 이제 정상으로 나온다.




WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret

mariaDB 가 여러곳에서 칭찬이 자자하다는 소문이 많다.

한마디로 "써본사람은 압니다. 좋은데 말로 설명할 방법이 없네?" 인것 같다.


그러나 이미 난 MySQL 에 익숙해져 있다. 바꾸면 또 배워야 하는거 아니야? 귀찮아!!
등등 나로 하여금 스스로 옮겨가지 못하게 막고 있었다.

그러다가 써야하는 상황이 생겼다. 그래서 소문이 사실인지 확인해봐야 겠다.



1. 설치 방법

https://downloads.mariadb.org/mariadb/repositories/

에서 각 배포판별로 패키지 설치방법이 잘 나와있다. 이거 한방이면 끝이다.

기초작업

sudo apt-get install software-properties-common sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db sudo add-apt-repository 'deb http://ftp.kaist.ac.kr/mariadb/repo/5.5/ubuntu raring main'

설치

sudo apt-get update sudo apt-get install mariadb-server


여긴 수동 - /etc/apt/sources.list 파일에 내용을 추가하거나, sources.list.d 디렉토리에 파일로 추가하거나 입맛대로.

# MariaDB 5.5 repository list - created 2013-11-07 11:51 UTC # http://mariadb.org/mariadb/repositories/ deb http://ftp.kaist.ac.kr/mariadb/repo/5.5/ubuntu raring main deb-src http://ftp.kaist.ac.kr/mariadb/repo/5.5/ubuntu raring main


2. MariaDB 패키지 설치하는데 기존 MySQL 이 설치되어 있으면.

설치 명령을 내리면 다음처럼 나오게 된다.

# apt-get install mariadb-server

패키지 목록을 읽는 중입니다... 완료
의존성 트리를 만드는 중입니다
상태 정보를 읽는 중입니다... 완료
다음 패키지를 더 설치할 것입니다:
  libmariadbclient18 libmysqlclient18 mariadb-client-5.5 mariadb-client-core-5.5 mariadb-common mariadb-server-5.5  mariadb-server-core-5.5 mysql-common

제안하는 패키지:
  tinyca mailx mariadb-test

다음 패키지를 지울 것입니다:
  mysql-client-5.5 mysql-client-core-5.5 mysql-server mysql-server-5.5 mysql-server-core-5.5

다음 새 패키지를 설치할 것입니다:
  libmariadbclient18 mariadb-client-5.5 mariadb-client-core-5.5 mariadb-common mariadb-server mariadb-server-5.5  mariadb-server-core-5.5

다음 패키지를 업그레이드할 것입니다:
  libmysqlclient18 mysql-common

2개 업그레이드, 7개 새로 설치, 5개 제거 및 3개 업그레이드 안 함.
31.7 M바이트 아카이브를 받아야 합니다.
이 작업 후 17.6 M바이트의 디스크 공간을 더 사용하게 됩니다.
계속 하시겠습니까 [Y/n]?

위와 같이 패키지를 지울것이라는 무서운 문구.

어떡하지. 무서우면 n 으로 중지. 그러나 우린 용감하잖아요. 과감하게 엔터를 누릅니다.
내 데이터. 또 설정바꿔줘야 하나. ㅠㅠ

그러면 설치하는 화면이 나온다 중간에 기존 mysql 도 지우는 것도 보이고
좀 지나면 mariadb 계정 암호 넣는 화면이 나온다.(mysql 설치할때 나오던 그대로)

그런데, 중간에 좀 이상한 것이 있다.

 * Stopping MariaDB database server mysqld                                                                                   [ OK ]
131108  0:57:51 [Warning] Using unique option prefix myisam_recover instead of myisam-recover-options is deprecated and will be removed in a future release. Please use the full name instead.
131108  0:57:51 [Note] Plugin 'InnoDB' is disabled.
131108  0:57:51 [Note] Plugin 'FEEDBACK' is disabled.
 * Starting MariaDB database server mysqld                                                                                   [ OK ]
 * Checking for corrupt, not cleanly closed and upgrade needing tables.
어! 뭐지 정상적인건가?


3. 내 데이터. 솨라있네~~
 위까지 하고 다른 설정을 건드리지 않고, 바로 phpMyAdmin 을 살펴봤다.

어. 서버 버전 부분만 mariaDB 로 바뀌고 다른 부분은 똑같다.

신기하다. 너무 똑 같아서.
웹서비스들도 잘 동작한다.(처음에 살짝 느린감이 있었는데, 아마 캐시때문?)

mysql console 도 명령은 동일한것 같다. (아래처럼 바뀌어 있다)

# mysql --version
mysql  Ver 15.1 Distrib 5.5.33a-MariaDB, for debian-linux-gnu (x86_64) using readline 5.1

# mysql -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 115
Server version: 5.5.33a-MariaDB-1~raring-log mariadb.org binary distribution

Copyright (c) 2000, 2013, Oracle, Monty Program Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>



일단 성능등은 돌려보면서 느껴봐야 겠다.
최소한 설치까지는 정말 쉽게 끝났다.





WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  1 , 댓글  0개가 달렸습니다.
secret
구글톡이 윈도우,맥,리눅스 를 모두 지원한다.
우분투에서 구글톡 플러그인을 설치할 수 있다.

1. gmail -> settings -> Chat 에서 두번째 항목
  Voice and video chat 항목을 보면 구글톡 플러그인을 다운받는다.
  직접링크 : http://www.google.com/chat/video?hl=ko 에서 다운받아 설치한다.
  리눅스(우분투)에서는 deb 파일을 다운받아 설치하면 된다.
  dpkg -i google-talkplugin_current_i386.deb
  설치하면 /opt/google/talkplugin 에 설치된다.

2. firefox 를 실행해서 도구 -> 부가기능 -> 플러그인 항목을 보면
  정상적으로 구글 플러그인 에 나와야 한다.

우분투 버전에 따라 다르겠지만, 쓰고 있는 ubuntu 10.04 에서는 정상적으로 나오지 않았다.

이유는 apparmor 때문이다.
/var/log/kern.log 나 message.log 등을 확인해보면
kernel: [77536.598461] type=1503 audit(1295939125.913:24):  operation="open" pid=4565 parent=4561 profile="/usr/lib/firefox-3.6.13/firefox-*bin" requested_mask="::r" denied_mask="::r" fsuid=1000 ouid=0 name="/opt/google/talkplugin/libnpgoogletalk.so"
이런 메세지를 볼 수 있다. 우분투의 보안강화를 위해 적용된 기술인데, 불편하지만 가급적 따라 주는것이 좋다고 본다.

3. /etc/apparmor.d/usr.bin.firefox  파일에 다음을 추가한다.
  # for google talk
  /opt/google/talkplugin/* mr,
  /opt/google/talkplugin/GoogleTalkPlugin Uxr,
  /opt/google/talkplugin/lib/* mr,
  /dev/ati/card0 rw,
  /proc/ati/major r,
   위 3줄은 플러그인을 사용할 수 있는 권한을 추가한 것이다. 그 밑의 ati 나오는 부분은 사운드카드를 사용하기 위한 것인데, 사용자의 보드에 따라 다른 값이 나올 수 있을 듯 하니 kern.log 에 나오는 메세지를 확인해서 추가해준다.

gmail -> settings -> chat 항목에서 비디오,사운드 등을 확인해본다.
실제 영상채팅을 테스트해보진 않았지만, 테스트시 화면과 사운드가 정상적으로 나오는 것 까지 확인했다.



WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret
그동안 주로 8.04 LTS 를 써왔다. 얼마전부터 10.04 LTS 로 업그레이드 하고 있다.
그렇다보니, 설정이 바뀐것이 꽤 된다.
8.10,9.04,9.10 등 3단계를 뛰어 넘어서 언제 바뀌었는지는 정확하지 않다.
(https://wiki.ubuntu.com/LucidLynx/ReleaseNotes 여기를 참조)

1. /etc/inittab 이 어디로 갔지?
  inittab 에서 runlevel 설정을 하게 된다. 그런데 없어졌다. 어리둥절.

  부팅설정등이 init 이라는 디렉토리로 바뀌었다.
 /etc/init/rc-sysinit.conf 에서 기본런레벨을 설정한다.
env DEFAULT_RUNLEVE=2
라는 항목이다. (이놈은 9.04, 9.10 부터 바뀐것 같다)

2. 키보드, 모니터 를 빼면 부팅이 안되요.
http://ubuntuforums.org/showthread.php?t=1452600

grub 을 콘솔로 부팅하는 것이 좋다.
/etc/default/grub

GRUB_TERMINAL=console
GRUB_CMDLINE_LINUX="nomodeset"

gdm 은 모니터,키보드 kvm 체크를 하지 않는다.
http://ubuntuforums.org/showthread.php?t=1452600&page=3
echo options nouveau modeset=0 > /etc/modprobe.d/nouveau-kms.conf
xorg.conf 설정 변경( http://ubuntuforums.org/showthread.php?t=1297815)
Section "Device"
  Identifier "VNC Device"
  Driver "vesa"
EndSection

Section "Screen"
  Identifier "VNC Screen"
  Device "VNC Device"
  Monitor "VNC Monitor"
  SubSection "Display"
    Modes "1024x768"
  EndSubSection
EndSection

Section "Monitor"
  Identifier "VNC Monitor"
  HorizSync 30-70
  VertRefresh 50-75
EndSection

BIOS 도 손봐야 하나?
Halt On 이라는 옵션을 No errors 로 해도 별 차이가 없어 보인다.
[All , But keyboard]
[All errors]
[No errors]
키보드/모니터 어댑터를 연결한다.(하드웨어적 해결방법 - 이건 좀.)


3. gdm 은 자동으로 실행이 안되나?
  위 2번의 xorg.conf 설정을 바꿔서 해결한다. /etc/init/gdm 으로 설정이 바뀌었다.

4. fsck 검사가 민감해 졌나?
보통 /etc/fstab 에서 하드디스크를 마운트 시킨다.
마운트 옵션에서 파일시스템을 체크하도록 하는데, 이게 좀 민감해졌나?
계속 하드디스크에 에러가 있다면서 부팅이 멈춘다.

UUID=0685beb5-ac3f-4308-8cb1-bc1a70a05a42 /user  ext3 defaults 0 0
(정확한 원인을 아직 찾지 못했다.)
일단 뒤의 맨 숫자를 0 으로 해서 파일시스템을 체크하지 않도록 했다.(수동으로 해줘야 겠다)

5. php , ereg 함수는 사용하지 않아.
php 새 버전은 ereg 함수등 deprecate 된 함수들이 있다. 소스를 수정하는 것이 좋다.
그렇지만 임시적으로
/etc/php5/apache2/php.ini  에서
mbstring.func_overload = 4
로 임시조치한다.



ps. 사용하면서 이상한 부분을 클린설치한 시스템과 비교해 보면서 추가 작성할 예정이다.



WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret
얼마전부터 우분투 10.04 LTS 버전으로 업그레이드 하고 있다.
데스크탑, 프린터/팩스 서버, 개발서버 등..

데스크탑쪽에서는 별 문제 없었다.

프린터/팩스 서버에서 좀 문제가 되는 부분이 있었다.
서버를 업그레이드하고, 프린트 테스트를 해보니. cups 로는 넘어갔는데, 프린트를 하지 못하는 것이었다.
혹시나 해서 /dev/lp0 를 보니, 디바이스가 만들어져 있지 않았다.
프린터를 구형 레이저를 쓰는데(패러렐 포트를 쓰는) 이 것이 제대로 잡히지 않은 것이다.

정상적으로는 이런식으로 나와야 한다.
# lpinfo -v
network beh
network socket
direct scsi
network lpd
network http
network ipp
direct parallel:/dev/lp0
serial serial:/dev/ttyS0?baud=115200
serial serial:/dev/ttyS1?baud=115200
network smb
direct hp:/par/HP_LaserJet_1100?device=/dev/parport0
direct hpfax
그런데, 문제가 생긴 부분은 위의 진한 부분이 제대로 나오지 않는 것이었다.

문제는 
# lsmod | grep par
parport_pc             25962  1
parport                32635  3 lp,ppdev,parport_pc
parport_pc 모듈이 올라오지 않는 문제였다. 10.04 의 버그인지는 모르겠지만, 기본적으로 로딩이 되지 않았다.
그래서  /etc/modules 에 parport_pc 를 한줄 추가해줬다.

재부팅해보면 정상적으로 로딩되는 것을 볼 수 있다.


팩스쪽도 자동으로 모듈이 올라오지 않았다.
http://blog.1day1.org/306 에서는 기본으로 드라이버가 있었던것 같은데, 이번에는 기본드라이버가 없었다.
http://linmodems.technion.ac.il/packages/ltmodem/kernel-2.6/
에서 ltmodem-20100102.tar.gz 의 최신버전으로 컴파일후 설치했다.
10.04 출시전인 1월경의 파일이라 안될지도 몰랐지만 시도했는데, 정상적으로 로딩이 되었다.

예전과는 모듈이 좀 달라진것 같다.( 예전에는 ltmodem , ltserial 이었다)
# lsmod | grep lt
ltmodem               554956  0
ungrab_serial           1075  1 ltmodem
v8250                   9643  3 ltmodem
일단 모듈이 올라오면 성공이다.
/dev/ttySV0  디바이스가 생겼을것이다.(예전과는 이름이 달라졌다. 예전은 ttySLTM0 )

hylafax , minicom 등에서 사용하기 위해 /dev/modem 을 심볼릭링크 시켜주는것이 좋다.
udev 로 자동 링크시켜주는 방법을 사용한다.

/etc/udev/rules.d 에 92-ltmodem.rules  이런식으로 파일을 만들어주고 내용에는
KERNEL=="ttySV[0-9]", NAME="%k", MODE="0660", GROUP="dialout", SYMLINK="modem"
처럼 넣어준다. KERNEL 다음에 == 을 넣어줘야 한다. ( = 가 두개이다. )
부팅해보면,
# ll /dev/modem
lrwxrwxrwx 1 root root 6 2010-09-28 18:17 /dev/modem -> ttySV0
이런식으로 자동으로 링크가 되어 있을 것이다.

ps. 참고로 팩스를 테스트 하는데, 인터넷팩스 제공업체에 가입해서 테스트를 했다.
 보통 가입시 포인트를 주어서 무료로 테스트 해볼 수 있었다.



WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret
우분투가 벌써 10.10 버전이 나오는구나.
아직 베타버전이지만, 곧 나올겠구나.

virtualbox 에서 테스트로 설치해봤다.
virtualbox 를 기본적으로 지원하나 보다.

게스트확장(guest additions) 설치도 패키지로 제공한다.

apt-get install virtualbox-ose-guest-x11
으로 바로 적용된다.

아직 10.04 와의 차이점은 모르겠다. (좀더 써보면서...)

ps. 혹시 설치가 안된다면 다음 명령을 해본다.
apt-get install build-essential linux-headers-$(uname -r)




WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret
간만에 추석을 맞이하여(?) 업그레이드 했다. 기존은 8.04 LTS (주로 LTS 를 사용한다.)
ubuntu 10.04 LTS 버전이 나온지 꽤 되었는데 그동안 테스트를 미뤄왔다.(안정화 될때까지)

데스크탑으로 쓰고 있는 시스템을 업그레이드했다.

update-manage -d 로 하면 된다.

업그레이드 중에  zoneminder 때문에 에러가 생겨 삽질을 했다.(거의 다 깔린 상태였다)
(zoneminder 를 쓰신다면 삭제하고 업그레이드 하는 것이 좋을 듯 함)

재부팅하니, 예전 grub 화면이 나오고, 커널패닉이 발생하는 상황이었다.
즉, 마지막 단계에서 grub 을 업데이트 하지 못한 것이다.
일단 새 커널로 부팅을 해야 한다. grub 화면에서 c 를 눌러 grub 콘솔로 진입한다.
grub> 이런 화면이 나올 것이다.
grub> root (hd0,0)  
탭을 눌러주면 중간중간 뭘 입력할지 힌트를 준다
grub> kernel /boot/vmlinuz-2.6.32-24-generic root=/dev/sda1
역시 tab 으로 뭘 찾을지 선택한다. - sda 는 자신의 설정에 맞게 바꿔준다.
grub> initrd /boot/initrd.img-2.6.32-24-generic
각종 모듈이 들어 있는 이미지이다. 이 부분을 빼면 거의 커널패닉을 보게되니 추가해 준다.
grub> boot
그리고 부팅해주면, 새로 지정한 커널로 부팅이 된다.

부팅이 완료되면, grub-install , update-grub 등으로 grub 을 재설치 해준다.

대부분 기존설정이 따라오니, 크게 바꿔줄것은 없다.
다만, 내 경우에 vmware player 2.5.4 를 사용했었는데, 10.04 에서는 에러가 난다.(gcc 쪽의 문제인듯?)
vmware player  새버전을 설치하면 된다. 현재 버전은 3.1.1 버전이다.

그리고, compiz 상태에서 기본 vnc 는 성능이 좋지 못하다.(화면 갱신이 안된다)
그렇다고 compiz 를 끄기는 애매한 경우 x11vnc 를 설치해서 사용한다.

apt-get install x11vnc xinetd
로 설치해준다.
그리고, xinetd 는 x11vnc 를 자동실행시켜주기 위해 사용한다(취향에 따라 gdm 로그인시 자동실행시켜도 된다.)

/etc/xinetd.d/x11vnc 로 다음내용을 저장한다.
service x11vnc
{
   port = 5901
   type = UNLISTED
   socket_type = stream
   protocol = tcp
   wait = no
   user = root
   server = /usr/bin/x11vnc
   server_args = -inetd -o /var/log/x11vnc.log -display :0 -auth /var/lib/gdm/:0.Xauth -many -bg -noxdamage -rfbauth /etc/x11vnc.passwd
   disable = no
}
여기서 조심할 항목은 /etc/x11vnc.passwd 의 암호를 지정하는 것이다.
x11vnc -storepasswd /etc/x11vnc.passwd
로 하면 암호를 물어보고, 해당 파일로 저장이 된다.

server_args 부분에서  -noxdamage 가 있는데,  compiz 상에서 화면갱신등의 성능이 좋지 않는데, 저 옵션을 주면 좋아진다.

일단 이 정도만으로 기존 쓰던 부분에서 크게 지장되는 부분은 없다.
좀더 알아볼 부분은 virtualbox , 폰트 등을 알아볼 예정.(나눔폰트로 바꿔볼까?)
그냥 느낌인지 모르겠지만, 좀 빨라진 느낌이다.


WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  2개가 달렸습니다.
  1. 안녕하세요. 원격 OS에서 로그인하지 않고도 vnc로 접속할 수 있게 하려고 뒤지던 중에 여기까지 와서 올타쿠나하고 그대로 따라해 봤는데 안되네요 ㅠ.ㅠ
    아래와 같은 로그만 찍힙니다.
    하루종일 이거 붙들고 있었는데 새벽 1시가 되도록 해결 못하니까 정말 힘드네요...에효... 혹시 추가로 확인해야 할 사항 있는건 아닌지요?
    염치없이 질문 남깁니다. ㅠ.ㅠ
    아... port를 5900으로도 해봤는데 그쪽도 안되네요...
    ----

    27/03/2012 01:13:22 XOpenDisplay(":0") failed.
    27/03/2012 01:13:22 Trying again with XAUTHLOCALHOSTNAME=localhost ...
    No protocol specified

    27/03/2012 01:13:22 ***************************************
    27/03/2012 01:13:22 *** XOpenDisplay failed (:0)

    *** x11vnc was unable to open the X DISPLAY: ":0", it cannot continue.
    *** There may be "Xlib:" error messages above with details about the failure.
  2. vnc 가 띄워줄 DISPLAY 를 못찾는 듯 하네요.
    정확한 방법은 알 수 없지만,
    http://blog.1day1.org/470 여기 뒷부분을 참조해보세요.
secret
http://www.ubuntu.com/products/whatisubuntu/1004features

LTS 버전을 주로 사용한다. 그래서 현재 Hardy 를 쓰고 있다.
이번 우분투는 LTS 버전.  즉, 대대적인 업그레이드의 계절이 돌아왔다.

서버 - 우분투 서버
데스크탑 - 우분투 데스크탑
노트북 - 우분투 alternate

다양하게 설치하게 된다. 우선 데스크탑 부터 테스트. 노트북, 서버 순으로 할 예정.

그동안 데스크탑. hardy 32bit 버전이었는데, 새로 설치하면서 64bit 로 바꿔봐야 겠다.

다운로드.
http://www.ubuntu.com/getubuntu/download



WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  2개가 달렸습니다.
  1. 우분투 alternate는 어떤 용도인 거예요?
    • 제가 알기로는 우분투데스크탑은 X윈도를 띄우고 설치를 진행하는데, 간혹 그래픽드라이버를 잡아주지 못하는 경우 설치를 진행할 수 없게 됩니다.
      그래서 텍스트모드로 설치를 할 수 있게 한 버전이 alternate 로 알고 있습니다. ^^
      텍스트모드로 설치한 후에 별도로 드라이버들을 수동(?) 설치하거나 하지요.

      제 노트북도 무선랜 같은것을 수동 설치할 예정.
      그래픽카드는 제대로 잡아주는 것 같음.
secret
우분투 10.04 알파버전을 깨고, 베타1 이 나왔습니다.
http://www.ubuntu.com/testing/lucid/beta1

간만에 LTS 업그레이드라 바로 업그레이드 했습니다.(베타라 virtualbox 에만.)
애칭은 Lucid Lynx 라고 함.

설치하고, 게스트 확장을 설치하니 X윈도 인식이 제대로 안되네요.
버쳘박스 버전은 3.1.4 입니다.

그래서 찾아보던중.
https://launchpad.net/ubuntu/lucid/+source/virtualbox-guest-additions/3.1.4-1
이건 소스로 해야 하는듯. 일단 패스.
http://www.virtualbox.org/ticket/6404
여기 괜찮은 해답이. 결론은 새 것으로 교체.

http://www.virtualbox.org/download/testcase/VBoxGuestAdditions-r59118.iso

를 다운받아서 설치.

OK 정상작동함.  대충 화면은 이렇다.


ps. 혹시나 virtualbox guest addition ISO 파일 다운속도가 늦다면. => 이곳에서
   (단, 호스팅계정이라 트래픽이 얼마안되서 몇번 다운 못받을 것임. 링크는 언제 끊어질지 모름.)



WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  3 , 댓글  5개가 달렸습니다.
  1. 저기... 죄송하지만.. 10.4 가 아니라 10.04입니다.;;; 우분투 배포판은 매년 4월과 10월에 배포하는데 버전의 04는 4월 출시 배포판을 의미하죠. ^^;;;
    태클은 아니고요. 이왕이면 잘못된 부분은 알려드리는게 좋을 것 같아서 글 남깁니다. ^^;;
  2. 아직 베타라 다시 갈아타기도 뭐하고,,,

    9.10에서 바로 올라갈 수 있나요?
    • 터미널 여시고.

      update-manager -d

      명령으로 업데이트관리자를 실행시키면, 10.04 로 업그레이드 할 수 있습니다. 저도 그 방법으로 업그레이드 했습니다.
  3. 상단 패널 하나로 구성된 그놈을 기대했는데 그건 다음 판인가보군요 ^^

    배경이 맘에 드네요. 잘 보고 갑니다.
secret
현재 모토로이를 우분투와 윈도우7 에 세팅해서 개발중에 있다.
윈도우7 은 모토로이 드라이버가 있어서 설치하면 된다.

우분투는 따로 모토로라에서 드라이버를 제공하지 않는다.
우분투의 usb 장치를 인식시키는 방법을 사용한다. 이때 udev 를 이용한다.
테스트는 우분투 8.04 hardy 버전과 9.10 karmic 버전에서 테스트했다.

먼저 안드로이드 SDK 를 설치한다.

$ adb devices

를 해보면.. (sdk 의 tools 디렉토리에  adb 명령이 있다.)

List of devices attached
???????????? no permissions


처럼 나온다.
디바이스가 인식되지 않아서 그렇다. udev 를 이용해 인식시켜보자.
(정확히 말하면 권한이 없다고 해야 겠다. lsusb 로는 이미 인식은 되어 있다)

모토로이를 연결하고 lsusb 명령을 내려보면.
$ lsusb

Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 005: ID 22b8:41db Motorola PCS
Bus 001 Device 002: ID 148f:2573 Ralink Technology, Corp. RT2501USB Wireless Adapter
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 003: ID 05af:0802 Jing-Mold Enterprise Co., Ltd
Bus 004 Device 002: ID 045e:0040 Microsoft Corp. Wheel Mouse Optical
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub



이런식으로 나온다. 모토로이가 어떤 것인지 딱 감이 올 것이다.

Bus 001 Device 005: ID 22b8:41db Motorola PCS


adb 에서 인식할 수 있도록, 장치를 등록한다.(진한 부분이 핵심이다)

관리자 권한으로 udev rules 를 만들어 준다.

# vi /etc/udev/rules.d/99-android.rules


위와 같이 파일을 만들어서 내용은 다음과 같이 넣어준다.(vi 등의 편집기)

SUBSYSTEM=="usb", ATTRS{idVendor}=="22b8", SYMLINK+="android_adb", MODE="0666"


한줄로 위 내용을 적어주고, 저장한다.

$ ls /etc/udev/rules.d/ -al
합계 24
drwxr-xr-x 2 root root 4096 2010-02-14 01:54 .
drwxr-xr-x 3 root root 4096 2009-12-06 02:15 ..
-rw-r--r-- 1 root root 1405 2009-12-21 20:25 70-persistent-cd.rules
-rw-r--r-- 1 root root  787 2009-12-11 00:51 70-persistent-net.rules
-rw-r--r-- 1 root root   91 2010-02-14 01:54 99-android.rules
-rw-r--r-- 1 root root 1157 2009-10-16 15:01 README


위처럼 rules 파일을 만들어 주면 된다.

udev 를 다시 실행시켜주면 정상적으로 사용할 수 있게 된다.(관리자권한 필요)


/etc/init.d/udev restart
또는
restart udev


이때 모토로이의 usb 저장소(외장형 SD)도 같이 인식되는 것을 볼 수 있다.


adb 명령을 다시 해보면.(처음과 다른것을 볼 수 있다)

$ adb devices
List of devices attached
04031826748580332373    device


위 처럼 인식된 장치가 보이게 된다.(보이는 숫자는 다를 것이다.)

이클립스에서 빌드명령을 내려보면, 타겟이 모토로이로 지정되어 뜨게 된다.



WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  1 , 댓글  3개가 달렸습니다.
  1. 꼭 필요한 정보였는데 ㅠㅠ 감사드려요 ㅠ ^^
  2. 좋은 팁, 감사합니다... ^^;

    저는 Karmic Koalal를 쓰는데...

    마지막 $ adb devices명령어전에,

    adb kill-server
    adb start-server
    라고 해서 adb를 restart시켜줘야 인식을 하더라구여~~
  3. 뭐라는지 하나도 모르겠네.. 그래 나 기계치다
secret
모토로이를 usb 디버깅 모드로  바로 실행시켜볼려고 하는데, 잘 안된다.

현재 virtualbox + ubuntu ( http://blog.1day1.org/394 ) 조합으로 사용중이다.
호스트OS인 윈7에 모토로이 드라이버 설치하고,
http://www.mymotorola.co.kr/product/PrdDownUsb.aspx?id=0045

가상머신에 우분투를 실행시켜 udev 로 인식시키는 것 까지는 되었는데.
http://aphyr.com/journals/show/debugging-the-droid-on-ubuntu-karmic

이클립스에서 어플을 실행시키면 연결된 모토로이로 apk 파일을 업로드해서 실행되는데.
업로드를 못하는 것 같다. 가상머신과 연결상의 문제가 있는 것 같다.
따로 우분투용 드라이버를 설치해야 하는 것인지? (모토로라 쪽에서는 윈도우 드라이버만 제공하는데.)

가상머신이 아닌, 우분투 호스트로 부팅을 해서 다시 테스트 해봐야 겠다.
이것도 안되면 윈도우7 에 개발환경을 만들어야 할 듯 하다.


에뮬을 로딩하는 방식보다 엄청빠르다고 한다.(당연하지만...)
그래서 꼭 하긴 해야 하는데...


[추가]
우분투를 가상머신이 아닌, 호스트로 부팅해서 테스트를 해봤다. 잘 된다.
(android 개발환경을 처음부터 다시 세팅했다.)
64bit 환경이라 몇가지 32bit 라이브러리를 설치해줘야 하는 것 빼고는 별 차이가 없다.

정말 빠르다. 바로 실행되네.

새해첫날에 이상한 짓 하고 있는것 같군요. ^^
개발폰에 직접 실행시키는 재미가 색다르네요.
에뮬에서 실행시키는 것과는 느낌이 상당히 다릅니다. 좋습니다.



WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  1 , 댓글  0개가 달렸습니다.
secret
2010년에는 안드로이드폰이 많이 나올것이다. 그러나 국내에서는 과연 나올까?
나온다고 본다. 다만 그 시기가 언제일지는 모르겠다.
빠르면 2월정도, 상반기에는 꼭 출시되었으면 한다.(구글코리아야! 도와줘!!  전파인증)

안드로이드 개발환경을 구축하기로 했다. 플랫폼은 우분투.
조합은 이렇다.
우분투 9.10 + eclipse 3.5 (galileo) + android eclair (2.01)
가능한 쉽고, 빠른 개발환경 구축을 목표로 한다.
핵심은 어플개발이기 때문에 개발환경에서 삽질은 최소로 줄여야 겠지.

일단 eclipe 까지는 한방에(우분투는 먼저 깔려있어야죠.)
apt-get install eclipse eclipse-jdt
를 하면 관련 패키지를 알아서 설치해준다.


그다음은 developer.android.com 에서 관련 정보를 찾는다.

기본 Quick Start 문서 : http://developer.android.com/sdk/index.html

1. Android SDK 설치.
  링크를 찾아 설치 : linux 를 찾아서 설치해야 겠죠.
  실행할 수 있도록 패스를 설정한다.(PATH=andriod-sdk/tools:$PATH)

2. eclipse 플러그인 설치 (ADT)

 http://developer.android.com/sdk/eclipse-adt.html
 이클립스를 잘 안다면  이 주소만 알려주면 알아서 깔겠죠.
https://dl-ssl.google.com/android/eclipse/
install/update 로 설치하면 됨.

이부분은 eclipse / eclipse-pde 패키지를 설치하면 되는 듯.

3. android SDK 컴포넌트 추가
http://developer.android.com/sdk/adding-components.html
SDK 를 설치하고 AVD Manager 를 실행한다.
왼쪽메뉴의 Avaliable Packages 를 선택하고, 필요한 패키지(컴포넌트)를 설치한다.
혹시 에러가 난다면.

난 2.0 버전 이상의 패키지를 설치했다.(목표는 eclair 이기 때문에...)

4. 안녕! 빵꾸똥꾸야!
자! 여기까지는 준비운동은 끝났다. 본격적인 어플개발을 시작.
제대로 되나. 확인할 겸.
http://developer.android.com/resources/tutorials/hello-world.html
안녕! 세상아를 찍어봐야지.

이클립스에서 android 프로젝트를 생성한다.
이때 이런 메세지가 나올 것이다.
The location of the Android SDK has not been setup. Please go to Preferences > Android and set it up
처음 실행시 기본 SDK 의 위치를 찾지 못하는 것이다. 메뉴의 Window > Preference > Android 탭으로 가서
설치한 SDK 위치를 지정해준다.  (andriod-sdk 까지 지정해주면 된다. 풀패스로.)

그리고, 소스를 알맞게 수정을 하고, Run 해주면 나온다.
이렇게! (에뮬실행이 오래걸리는구나! vbox 에서 실행해서 그런가?)

좀더 개발환경에 적응을 하고, 어플을 만들어 봐야 겠다.
뭘 만들지...

아이폰어플에 비해 참 쉽다. 물론 맥북사면 비슷하려나? ^^


[참조]
# avd 디바이스 설정.(Android Virtual Devices)
android list targets
android 타겟지정 avd 생성

 android create avd -n my_avd -t 1

 

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  5개가 달렸습니다.
  1. 윈도우에서는 개발을 못하나요?
    무조건 리눅스에서 해야하나요?
    • 윈도우, 리눅스, 맥 모두 가능합니다. ^^

      윈도우가 편하시면 윈도우로...
  2. 잘 보고 갑니다 ^^
  3. 덕분에 큰 도움 되었습니다. 아이폰때는 정말 쉽고 빨랐는데 안드로이드는 힘드네요. 에뮬레이터도 무진장 느리고;;;;;(아이폰 시뮬레이터는 진짜 폰같고 뜨는데 처음에 2~3초밖에 안걸리고 두번째 뜰때는 그냥 바로 뜨더군요)
  4. 견가가 2012.10.16 20:28
    으흐흐 혹시 사용자 계정에서 eclipse android ADT 설치하고 나서
    root 에서는 사용 못하나요 ㅎㅎ ADT 가 안깔려있는걸로 나오네요 ~_~
secret
우분투 9.10 을 설치하고, 파이어폭스를 띄우면 자동으로 플래시플레이어 플러그인을 설치한다.
그런데, 이상하게 플레이는 되는데, 컨트롤을 할 수 없다.
그래서 혹시나 해서 64bit 버전으로 수동설치해봤다.


지난번. 우분투 9.04 의 방법과 크게 다르지않다. ( http://blog.1day1.org/262 )

다운로드 주소가 바뀐것 같다.
http://labs.adobe.com/technologies/flashplayer10/64bit.html

다운로드주소
http://labs.adobe.com/downloads/flashplayer10_64bit.html

압축풀고. 해당위치에 복사.


flashplugin-installer 라는 패키지로 설치한 듯 하다.
이상하게 동작하는 것 같아. 그냥 예전방식으로 처리했다.
위 방법도 상관없는 듯. (방법은 알아서 )



WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret
리눅스용 구글크롬이 나온지 좀 지난것 같은데.
지금 설치해 봤다.


우분투용  deb 를 지원하니 다운받아 바로 설치하면 끝이다.

설치후 실행.
역시나 빨라서 좋다. 근데, 폰트가 안 맞는지 이상하다.(우분투 8.04)


ps. 우분투 9.10 에서는 폰트도 괜찮게 나온다.


WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret
우분투의 디스크도구에서 이런 경고메세지를 보낸다.

Pallmpsest 이라는 디스크도구 인 듯 하다.

하나는 "디스크가 현재 잘못된 속성을 사용하고 있습니다."  이런메세지
하나는 배드섹터.
둘다 삼성 하드디스크라는 것이 불안.

윈도우7 을 쓰고 있는데, 별다른 에러메세지를 내보내지는 않는다.
디스크도구가 민감한 것인가?
두 하드디스크가 윈도우7 이 설치되어 있다.
윈도우7 이 설치되면서 하드디스크의 속성을 변화시킨 것일까?

Pallmpsest 가 SMART 기능에 관한 것인듯 하다.

윈도우쪽에서 따로 테스트해보려면 어떻게 해야 하나?

일단 데이터를 백업해야 겠다.
문제는 윈도우7 시스템이 깔려있는데, 뭘로 옮기면 좋으려나!


WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret
하드디스크를 점검하다가 윈도우7 의 부트매니저가 이상이 생겼었다.
어떻게 할까 하다가. 윈도우7 정품받은거 설치해보자 라는 생각에 이르렀다.
윈도우7 과 얼마전 출시한 우분투 9.10 을 설치하기로 했다.

그동안 이렇게 쓰고 있었다. ( 윈도우7 + 비스타 + 우분투9.04 )
윈도우7 영문판을 새로 설치하기 위해 공간정리가 필요했다.
문제는 비스타의 처리였다. 업그레이드를 할 것인가? 삭제를 할 것인가?
결론은 쉽게 내려졌다. 비스타여! 안녕~~  잘가~~  영원히...  ( 아! 비운의 비스타여... )


필요한 공간을 위해 파티션을 삭제해서 공간을 확보했다.
56 기가를 윈도우7 , 39기가를 우분투9.10 를 위한 공간으로 사용하기로 했다.

기존의 윈도우7 RC 64bit 로 부팅해서 설치해보기로 했다(32bit 라 안될 것 같긴하다)

시디의 setup 을 눌러 실행하니 다음 화면이 나왔다. 어! 되나?

그러나, 파일을 복사하는 것처럼 진행하는 듯 보이더니,
다음과 같은 에러가 났다.

그래서 부팅DVD 로 부팅해서 설치하기로 했다. 설치과정은 생략한다.(식상하다.)
다시 한번 느낀것은 확실히  설치절차도 참 쉬워졌다는 것이다.(지가 알아서 다 한다)

설치후에 부트매니저 상황을 봤다. 다시 살아났다.(비스타의 흔적은 남아있지만...)


영문판을 설치하고 잠깐 써봤는데, 원래 이렇게 빨랐었나? 설치한 어플이 없어서 그런가?
한동안 한글팩을 설치하지 않고, 그냥 써봐야 겠다. (영문판이라 빠른것인지...)



WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret
http://www.ubuntu.com
4월이 지나고, 10월이 되어 벌써 우분투 9.10 의 출시일이 얼마남지 않았다.

코드명은 Karmic Koala   보통 우분투 버전을 풀네임으로 쓰지 않으면 앞글자를 썼는데.
이번 버전은 뒷글자가 많이 쓰일듯 하다. 코알라. ^^

난 주로 LTS 버전을 사용한다. 그렇다 보니 아직 Hardy 를 쓰고 있다.
다음 LTS 버전은 10.04 인 Lucid Lynx 라고 한다.

이번 버전은 부팅속도가 상당히 빨라졌다고 한다.
아직 베타버전이지만, 설치해서 테스트 해봐야 겠다.


코알라.

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret