$ sudo passwd root
[sudo] password for kimyonghwan:
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

$  su
Password:
Posted by 김용환 '김용환'
TAG ubuntu

Applications->Accessories->Disk Usage Analyzer 를 통해서 디스크 용량 확인
Scan Home 버튼을 눌러스 디렉토리 용량 확인
Posted by 김용환 '김용환'
TAG ubuntu

원래 root 패스워드를 알 수 없어서 . 변경한다. sudo 쓰기 진짜 귀찮다...

$ sudo passwd root
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

Posted by 김용환 '김용환'
TAG ubuntu


참조
http://www.linux-radar.net/reset-password-ubuntu.html


재시작시키고, Esc 키를 눌러 GRUB 메뉴가 나오게 한다. recovery menu를 선택한다.

How to reset your password in Ubuntu How To Reset Your Password In Ubuntu


아래와 같은 Recovery Menu가 나오면, root 메뉴를 선택하고, 셀로 나오게 한다.

 
How to reset your password in Ubuntu 2 How To Reset Your Password In Ubuntu

패스워드를 수정하고 다시 재부팅해서 ubuntu가 정상적으로 뜨게 한다.
passwd '계정명'

Posted by 김용환 '김용환'
TAG ubuntu

ubuntu 11.04 (내가 제일 좋아하는 ubuntu 버전)에서 android gingerbread(진저브레드)  소스 컴파일에 대한 정보이다.
 인터넷에서 검색하면 예전 버전들이 많았다. git repository 위치도 달라서 그냥 다 될 것이라는 기대는 하면 안된다. 공식싸이트(http://source.android.com/source/downloading.html)가 그나마 가장 신뢰해야한다는 생각을 다시 하게 되었다. 

구글에 올라온 정보가 약간 틀려서, 조금 수정했다. 

$ sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
$ sudo apt-get update
$ sudo apt-get install sun-java6-jdk

$ sudo apt-get install git-core gnupg flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev  ant gcc-multilib g++-multilib

$ mkdir ~/bin
$ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo

$ chmod a+x ~/bin/repo

$mkdir my-android

$ cd my-android

나는 진저 브레드 브랜치로 다운받음
$  ~/bin/repo init -u https://android.googlesource.com/platform/manifest -b  gingerbread
($ ~/bin/repo init -u https://android.googlesource.com/platform/manifest 이렇게 해서 받을 수도 있지만, 

$ ~/bin/repo sync
check out 받는 거라 시간이 많이 소요됨

$  source build/envsetup.sh

$  lunch full-eng


빌드과정이라 시간이 많이 소요됨. 4cpu를 다쓸 수 있게 설정함.
$ make -j4

============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=2.3.7
TARGET_PRODUCT=full
TARGET_BUILD_VARIANT=eng
TARGET_SIMULATOR=false
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a
HOST_ARCH=x86
HOST_OS=linux
HOST_BUILD_TYPE=release
BUILD_ID=GINGERBREAD
============================================

 

디폴트는 타겟이 arm 기반이라서 안드로이드를 ubuntu에서 돌릴 수 없으나, 잘 바꾸면 돌아갈 수도 있을 것 같다. 





ramdisk.img,  system.img, userdata.img  파일이 빌드 결과물에 있다.
ramdisk.img 는 개발할때 root fs를 ram에서 실행하기 위해서 필요하다.
system.img는 안드로이드 플랫폼용 이미지이다.
userdata.img는 임베디드 어플단 이미지이다.

이렇게 이미지를 나누어서 flash에 구워진다.

이외,  root.img가 만들 수 있는데. 이는 root 디렉토리를 이미지화한 것으로 '/'를 의미한다. 즉 부팅에 대한 초기화 내용이 들어가 있다.
시스템에서는 root/init.rc에 정보를 읽을 것이다.


/system 은 system.img, /data는 userdata.img, 나머지 /는 root.img 을 의미한다.
그래서 안드로이드 파일 시스템 구조는 이렇게 구성이 된다.




(http://blog.naver.com/PostView.nhn?blogId=limpe&logNo=20115813026&redirect=Dlog&widgetTypeCall=true 그림만 참조)


재미있는 것은  root/init.goldfish.rc 파일도 볼 수 있는데, 이는 가상의 하드웨어의 이름이다. init.xxx.rc 파일은 하드웨어 vendor에 따른 초기화를 의미한다 .

arm9기반에서 동작되는 것처럼 지원하는 초기화 이름을 goldfish 라고 해서 사용되고 있는데, 이 파일이 init.goldfish.rc 파일이다.


Posted by 김용환 '김용환'


1. ubuntu 한글 환경 (입력) 구축
http://skcha.tistory.com/196


2. ubuntu 자동 로그인
http://log.bestf.net/230


3. ubuntu Lock Screen 설정 해지 및 시작 설정/ 데스크탑 설정 / 개인 설정

tweak 설치

$ sudo add-apt-repository ppa:tualatrix/ppa
$ sudo apt-get update
$ sudo apt-get install ubuntu-tweak



좌측메뉴에서 security related 를 선택하고,  disable "Lock Screen"하니, timeout되면서 screen lock되는게 사라진다.



4. root 패스워드 변경
sudo 쓰기 귀찮음.
http://knight76.tistory.com/entry/Ubuntu-11-root-password패스워드-변경

5. ssh 서버 및 클라이언트 쓰기
윈도우에서 작업하기 편하게 함

sudo apt-get install openssh-server openssh-client



Posted by 김용환 '김용환'
TAG ubuntu


블로그에 작성한 1.5.0.4-beta서버 설치 방법과 비슷하다.


XE 1.5.0 beta 버전의 UI는 아직 익숙치 않고, 어디에 무엇이 있는지 전혀 모르겠음.. 다시 UI를 1.4대로 바꾸는 게 나을 것 같아..

1.4.5.10으로 설치하는 것으로 하고, cubrid 연동하는 것에 대한 설치 문서이다.




ubuntu 에서 가장 먼저  큐브리드 8.4을 설치해야 하고, test 라는 DB를 만든다.
(큐브리드는 버전에 영향을 받으니. 늘 버젼을 기억해야 한다. 하위 호환성을 절대 생각하면 안됨.)

 

$  sudo add-apt-repository ppa:cubrid/cubrid-8.4.0

$  sudo apt-get update

$ sudo apt-get install cubrid


http://www.cubrid.com/zbxe/152840 에 보면. 그 다음 synaptic package manager를 실행하고 재설치하라고 해서.. 재설치해 본다.

 


cubrid를 검색한다.

 

 

다시 설치 표시를 하고 난다 . 또는 설치를 선택한다.


php5-cubrid를 설치하지 말자, 꼬일 수 있다.


툴 바에 있는 Apply를 선택을 하면 아래 창을 뜨면서  설치를 진행할 것인지 묻는다. 설치를 진행한다.

image007.png 


시냅틱 꾸러미 관리자를 사용하고 나면 반드시 종료해야한다. apt-get을 하려다가 시냅틱 꾸러미 관리자가 사용한 lock때문에 진행이 안될 수 있다.


$ vi /home/kimyonghwan/.bashrc

   .   /etc/profile.d/cubrid.sh  추가



$  source /home/kimyonghwan/.bashrc

$ cubrid createdb test
    512.0M 크기의 데이터베이스 생성 중.

     CUBRID 2008 R4.0

 
$ cubrid service start
@ cubrid master start
++ cubrid master (이)가 수행되고 있습니다.
@ cubrid broker start
++ cubrid broker (이)가 수행되고 있습니다.
@ cubrid manager server start
cubrid manager server is not installed.






데몬이 정상적인지 확인 한다. 잘 되고 있다.

 


   /opt/cubrid/bin 디렉토리에서 db를 생성한다.

$ cubrid createdb test




$ cubrid server start test
@ cubrid server start: test

This may take a long time depending on the amount of recovery works to do.

CUBRID 2008 R4.0

++ cubrid server start: success


$ cubrid server status
@ cubrid server status
 Server test (rel 8.4, pid 5606)


$ ps -ef | grep 5606
1000      5606     1  0 10:48 ?        00:00:00 cub_server test
1000      5829  1874  0 10:49 pts/0    00:00:00 grep --color=auto 5606



 

그 다음은 XE에서 cubrid를 쓸 수 있도록 php-cubrid integration library(so)가 필요하다.  (내용을 읽다보면, 이 방법이 안통할 수 있다. 따라서, apt-get 방식을 사용해야 한다. 아래 내용을 다볼 것!!!)

http://www.cubrid.org/php_api_for_cubrid 에 접속


이 중에서 CUBRID 8.4.0, PHP 5.3.x를 선택하고, CUBRID-PHP5-5.3-LINUX-X86-8.4.0.0003.bin.zip을 클릭

그러면, 다음 주소로 연결된다.

http://sourceforge.net/projects/cubridinterface/files/PHP/PHP%20Driver/CUBRID%208.4.0/Linux/CUBRID-PHP5-5.3-LINUX-X86-8.4.0.0003.bin.zip/download


zip 파일을 /var/www/에 설치후, php5 lib 폴더로 이동한다. php가 로딩하면서 so 파일을 읽어서 작동되게 하기 위함이다.

$ sudo mv /var/www/cubrid.so /usr/lib/php5/20090626+lfs/


 

그리고, php.ini 파일을 수정하고 아파치 서버를 재시작한다.

$ vi /etc/php5/apache2/php.ini

[CUBRID]
extension=cubrid.so



$ sudo service apache2 restart





그러나 에러로그 보니. cubrid 라이브러리 로딩 실패..

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php5/20090626+lfs/cubrid.so' - /usr/lib/php5/20090626+lfs/cubrid.so: undefined symbol: executor_globals_id in Unknown on line 0

음. 이거 머냐.. so 파일에 심볼하나가 없다..ㅡ.ㅡ;;





그냥 cubrid 공식 페이지에 있는 apt-get을 이용해서 ubuntu php-cubrid 설치 방법 선택한다.


 

$ sudo rm /usr/lib/php5/20090626+lfs/cubrid.so

$ sudo apt-get install php5-dev
$ sudo apt-get install php-pear
$ sudo pecl install cubrid
$ sudo pecl install cubrid-8.4.0.0003

설치 위치를 물어볼 때. /opt/cubrid 로 선택



다음과 같은 내용이 나오고, cubrid.so파일을 잘 저장했다고 나온다.
 

Build process completed successfully
Installing '/usr/lib/php5/20090626+lfs/cubrid.so'
install ok: channel://pecl.php.net/CUBRID-8.4.0.0003
configuration option "php_ini" is not set to php.ini location
You should add "extension=cubrid.so" to php.ini


다시 한번 확인하고, 아파치 재실행

$ cat /etc/php5/apache2/php.ini

[CUBRID]
extension=cubrid.so


$ sudo service apache2 restart






아파치 에러 로그에 deprecated는 되지만.. 큰 문제는 없다. 그대로 진행

[

Thu Oct 13 11:44:32 2011] [error] [client 127.0.0.1] PHP Deprecated:  Call-time pass-by-reference has been deprecated in /var/www/xe/classes/db/DBCubrid.class.php on line 682, referer: http://localhost/xe/index.php?act=dispInstallCheckEnv
[Thu Oct 13 11:44:32 2011] [error] [client 127.0.0.1] PHP Deprecated:  Call-time pass-by-reference has been deprecated in /var/www/xe/classes/db/DBCubrid.class.php on line 735, referer: http://localhost/xe/index.php?act=dispInstallCheckEnv
[Thu Oct 13 11:44:32 2011] [error] [client 127.0.0.1] PHP Deprecated:  Call-time pass-by-reference has been deprecated in /var/www/xe/classes/db/DBFirebird.class.php on line 710, referer: http://localhost/xe/index.php?act=dispInstallCheckEnv
[Thu Oct 13 11:44:32 2011] [error] [client 127.0.0.1] PHP Deprecated:  Call-time pass-by-reference has been deprecated in /var/www/xe/classes/db/DBMssql.class.php on line 552, referer: http://localhost/xe/index.php?act=dispInstallCheckEnv
[Thu Oct 13 11:44:32 2011] [error] [client 127.0.0.1] PHP Deprecated:  Call-time pass-by-reference has been deprecated in /var/www/xe/classes/db/DBMssql.class.php on line 596, referer: http://localhost/xe/index.php?act=dispInstallCheckEnv
[Thu Oct 13 11:44:32 2011] [error] [client 127.0.0.1] PHP Deprecated:  Call-time pass-by-reference has been deprecated in /var/www/xe/classes/db/DBMysql.class.php on line 460, referer: http://localhost/xe/index.php?act=dispInstallCheckEnv
[Thu Oct 13 11:44:32 2011] [error] [client 127.0.0.1] PHP Deprecated:  Call-time pass-by-reference has been deprecated in /var/www/xe/classes/db/DBMysql.class.php on line 487, referer: http://localhost/xe/index.php?act=dispInstallCheckEnv
[Thu Oct 13 11:44:32 2011] [error] [client 127.0.0.1] PHP Deprecated:  Call-time pass-by-reference has been deprecated in /var/www/xe/classes/db/DBPostgresql.class.php on line 587, referer: http://localhost/xe/index.php?act=dispInstallCheckEnv
[Thu Oct 13 11:44:32 2011] [error] [client 127.0.0.1] PHP Deprecated:  Call-time pass-by-reference has been deprecated in /var/www/xe/classes/db/DBPostgresql.class.php on line 621, referer: http://localhost/xe/index.php?act=dispInstallCheckEnv
[Thu Oct 13 11:44:32 2011] [error] [client 127.0.0.1] PHP Deprecated:  Call-time pass-by-reference has been deprecated in /var/www/xe/classes/db/DBSqlite2.class.php on line 436, referer: http://localhost/xe/index.php?act=dispInstallCheckEnv
[Thu Oct 13 11:44:32 2011] [error] [client 127.0.0.1] PHP Deprecated:  Call-time pass-by-reference has been deprecated in /var/www/xe/classes/db/DBSqlite2.class.php on line 467, referer: http://localhost/xe/index.php?act=dispInstallCheckEnv
[Thu Oct 13 11:44:32 2011] [error] [client 127.0.0.1] PHP Deprecated:  Call-time pass-by-reference has been deprecated in /var/www/xe/classes/db/DBSqlite3_pdo.class.php on line 465, referer: http://localhost/xe/index.php?act=dispInstallCheckEnv
[Thu Oct 13 11:44:32 2011] [error] [client 127.0.0.1] PHP Deprecated:  Call-time pass-by-reference has been deprecated in /var/www/xe/classes/db/DBSqlite3_pdo.class.php on line 502, referer: http://localhost/xe/index.php?act=dispInstallCheckEnv
[Thu Oct 13 11:44:32 2011] [error] [client 127.0.0.1] File does not exist: /var/www/favicon.ico

 
phpinfo로 cubrid가 제대로 설치되었는지 확인한다.


이렇게만 따라오면, xe 설치에서 DB를 cubrid로 선택할 수 있다.


터미널에서 cubrid 의 db와 계정을 만들어야 한다.

cubrid 서버를 실행할때 함께 띄우는 db를 지정하고, cubrid 서버를 재시작한다.

$ vi /opt/cubrid/conf/cubrid.conf

# server=foo,bar

이렇게 되어 있는 설정을 아래와 같이 수정 (아까 위에서 test라는 db를 만들었었다.)

server=test

 

$ sudo cubrid server restart


kimyonghwan@kimyonghwan-desktop:~$ csql test

 CUBRID SQL 수행기


도움말 메시지를 보려면 ';help' 명령어를 입력하세요.

csql>




csql 이라는 명령어를 이용해서 test 라는 db에 잘 접근했다.


xe 설치화면에서 cubrid DB 설정에서 admin 계정으로 접근하면 그냥 더이상의 진전이 안된다.


그래서, 오류 메시지가 잘 나오는 큐브리드 쿼리 브라우져를 이용하였다. 윈도우에 설치하고, ubuntu에 설치된 cubrid db에 접근해보았다.





xe 설정에서 admin계정으로 접근하니. 165 에러 발생


검색해보니. 계정에러이다.

4, Error Code:-165
"User "aaa(user name)" is invalid
- 원인 및 확인 사항:
1) aaa(user name) user가 없는 경우

   

윈도우에 큐브리드 DB 를 설치할 때는 admin /admin 으로 접속 가능했지만, 리눅스는 따로 계정을 만들어야 한다.


$ csql -C -u dba test

 CUBRID SQL 수행기


도움말 메시지를 보려면 ';help' 명령어를 입력하세요.

csql> create user root password 'root';

csql> commit

csql> select * from db_user;

 
만들어진 root 계정으로 접속하면, 잘 접근이 된다.

$csql -C -u root test


 

사용자 등록을 마치고 나서 XE DB  &관리자 정보 입력 에 정보만 잘 지정하면 된다.



db : test
사용자 이름 : root
비밀번호 : root
ip : 192.168.56.102
port : 30000

이렇게 입력하고 등록 버튼을 누른다.



 

 







큐브리드 쿼리 브라우저를 통해서 보면.. 아래와 같이 잘 table이 만들어졌는지 확인가능하다.

Posted by 김용환 '김용환'
TAG CUBRID, php, ubuntu, xe

How to change screen size of virtual box.

Virtual box를 이용해서 운영체제를 설치하면 화면 크기는 보통 작다. 따라서 window 크기에 맞춰서 설치된 운영체제가 보이고 싶었다. 대충 찾아보니 VboxAddition을 설치하면 된다고 해서 해본다.

virtualbox 4.1.4를 설치하고, ubuntu를 설치했다.
그리고, 장치->게스트 확장 설치를 선택한다.




그러면, 바탕화면에 VBOXAdditions4.1.4 게스트 확장 마운트 파일이 생긴다.



더블클릭 해서  autorun.sh 을 실행시키고 나서, restart 하면 된다.





화면 크기에 따라서 게스트 운영체제의 화면 크기도 변경된다.

아 편하다.
Posted by 김용환 '김용환'
TAG ubuntu