반응형

OS: Ubuntu 14.04.2 LTS (amd64)

KVM: 2.0.0 (qemu-system-x86_64)

Virt-manager: 0.9.5


위와 같은 상태에서 가상 머신(VM)을 만들고 Windows 8.1을 설치하였다. VM의 Display 설정을 VNC 대신 SPICE로 하였고, spicec (콘솔에서 실행하는 spice client)를 통해서는 접근이 잘 되었다.


그러나 virt-manager에서 VM 선택해서 확인하는 창에서는 VNC와 달리 볼 수 없었다. 그 이유는 "Cannot display graphical console type 'spice': No module named SpiceClientGtk" 라는 에러 메세지 때문이었는데, virt-manager와 연동해서 spice 서버의 화면을 보여줄 client 모듈이 없다는 것이었다.


virt-manager에서 spice 방식 display를 확인하기 위한 모듈은 spice-vdagent이고, 우분투에서도 apt-get install로 설치는 가능하지만, 문제는 Ubuntu 소프트웨어 센터에서 제공하는 버전을 설치하고 나면 virtio device를 찾지 못해서 virt-manager 자체가 실행이 안되는 버그가 있는 버전이라는 것이다. 로그 확인을 위해 /var/log/spice-vdagent.log 파일을 보면 아래처럼 에러 메세지가 찍혀 있다.

Sep 7 21:14:52.746986 spice-vdagent[2960]: Missing virtio device '/dev/virtio-ports/com.redhat.spice.0': No such file or directory


이 문제는 아래 링크 페이지에 설명되어있다.

https://bugzilla.redhat.com/show_bug.cgi?id=1006205


확인해 보면 spice-vdagent-0.14.0-5.el7 이후 버전은 이 문제가 해결되었다고 나오지만, 2015년 9월 7일 현재 우분투 소프트웨어 센터(apt-get install)를 통해서 설치되는 패키지는 spice-vdagent-0.14.0-1ubuntu1 이라서 아마도 위의 버그를 포함하는 것 같다.


따라서 2015년 9월 7일 현재로써는 최신 버전의 spice-vdagent를 별도로 다운로드 받아야 한다. 아래 링크에서 spice-vdagent로 시작하는 압축파일을 다운받아서 압축을 풀고 설치 스크립트를 실행해서 설치한다.

http://www.spice-space.org/download/releases/



반응형
블로그 이미지

Bryan_

,
반응형

OS: Ubuntu Desktop 14.04.2 LTS (64-bit)

Wordpress: version 4.3


Ubuntu Desktop에 아무것도 없는 상태에서 맨 처음 워드프레스(Wordpress) 설치 및 설정하는 방법을 메모로 남긴다.


<준비물>

*인터넷 연결되어 있고 apt-get isntall 사용 또는 우분투 소프트웨어 센터 사용이 가능해야 함

*워드프레스 홈페이지에서 설치용 패키지 (zip파일)을 다운로드받아 둔다.


1. Apache 설치

$ sudo apt-get install apache2


2. PHP 설치

$ sudo apt-get install php5

php5-common, php5-cli 등이 다같이 설치된다.


3. MySQL 설치

$ sudo apt-get install mysql-server


4. PHP와 MySQL 연동

테스트는 못해봤지만, MySQL을 먼저 설치하고 나서 PHP를 설치하면 자동으로 같이 설치될 수도 있다.

$ sudo apt-get install php5-mysql



5-1. MySQL 계정 및 암호 설정

방금 설치를 끝낸 MySQL에는 root 암호가 없으므로 아래와 같이 지정한다.

$ mysql -u root 입력해서 로그인부터 하고,

> SET PASSWORD FOR root@localhost = PASSWORD('원하는 암호');


5-2. MySQL에 워드프레스를 위한 데이터베이스 생성

워드프레스 설정하기 전에 데이터베이스부터 만들어야 한다. 그 다음에야 워드프레스에서 원하는 테이블 등을 자동으로 생성할 수 있다. 안그러면 데이터베이스 접근 에러 메세지를 보게 된다.

> CREATE DATABASE wp_database_sample



6. 워드프레스 기본값 설정

워드프레스 압축파일의 압축을 풀고 나오는 wordpress 디렉토리에 가서, wp-config-sample.php를 복사해서 wp-config.php 파일을 새로 만든다.

wp-config.php 파일을 열고, 앞부분에 MySQL settings 부분을 앞에서 설정한 대로 바꾼다.

define('DB_NAME', 'wp_database_sample');

define('DB_USER', 'root');

define('DB_PASSWORD', 'MySQL에서 설정한 root 계정 암호');



7. 워드프레스 디렉토리 복사(또는 옮기기)

2015년 9월 7일 기준으로, Ubuntu desktop 14.04(넓게 봐서 최근의 Debian 계열)에서는 사용자 웹페이지를 읽어들이는 디렉토리가 /var/www/html로 되어 있다. 따라서 방금 wp-config.php 파일을 만들었던 워드프레스 디렉토리 전체를 /var/www/html 에 복사한다.

$ sudo cp -R [워드프레스 압축을 푼 위치]/wordpress /var/www/html/


복사하고 나서 디렉토리의 사용자와 그룹을 변경한다.

$ sudo chown -R www-data:www-data /var/www/html/wordpress



8. 웹 브라우저를 통해 워드프레스 나머지 설정 진행

웹 브라우저에서 http://localhost/wordpress/ 주소를 입력하면 나머지 설치 과정을 진행할 수 있다.




반응형
블로그 이미지

Bryan_

,
반응형

OS: Ubuntu 14.04.2 LTS (amd64)


새로 설치한 우분투 14.04에 xrdp를 설치하고 나서 바로 접속해 보면 회색 화면만 잠시 나오다가 연결이 끊어진다.


~/.xsession-errors 파일을 열어서 에러 메세지를 확인해 보면 다음과 같다:

Xsession: X session started for  at 2015. 08. 06. (목) 20:59:04 KST

X Error of failed request:  BadValue (integer parameter out of range for operation)

  Major opcode of failed request:  109 (X_ChangeHosts)

  Value in failed request:  0x5

  Serial number of failed request:  6

  Current serial number in output stream:  8

localuser:usera being added to access control list


이는 세션을 제대로 연결해 주지 않아서 생기는 문제이다.

원래 gnome session을 쓰려고 했지만 잘 되지 않아서 fxce4 세션으로 시도한 것을 기록으로 남긴다.


xrdp 설치는 이미 되어 있는 것으로 가정한다.

xfce4 데스크탑 환경을 설치한다.


$ sudo apt-get install xfce4


.xsession 파일을 만든다.

$ vi ~/.xsession


.xsession 파일에 아래와 같이 입력한다.

xfce4-session


xrdp 서비스를 재시작한다.

$ sudo service xrdp restart


다시 원격 데스크톱 연결 앱에서 접속을 시도해 본다.


반응형
블로그 이미지

Bryan_

,
반응형

OS: Ubuntu 12.04 LTS (64-bit)

Kernel: 3.5.0-54-generic

Wine version: 1.4

한컴오피스 한글 버전: 한글 2010


와인(wine)을 이용해서 한컴오피스 한글 워드프로세서(Hwp)를 실행할 수 있으나, 이미지가 들어가 있는 페이지에 접근하면 아래와 같은 오류를 내면서 강제 종료되는 문제가 있다.

Unhandled exception: unimplemented function gdiplus.dll.GdipEnumerateMetafileSrcRectDestRectI called in 32-bit code (0x7b839cf2).

Register dump:

 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b

 EIP:7b839cf2 ESP:0033db1c EBP:0033db80 EFLAGS:00000287(   - --  I S - -P-C)

 EAX:7b826245 EBX:7b894ff4 ECX:7d099549 EDX:0033db44

 ESI:80000100 EDI:0033e28c

Stack dump:

0x0033db1c:  0033dba0 00000008 7d050000 80000100


... (이하 생략)


즉 gdiplus 라이브러리가 필요한데, 기존에 알려진 방법(https://kldp.org/node/136898)을 따라해도 오히려 한글 2010 실행이 안되고 "Could not load GdiPlus.dll" 이라는 오류 메세지가 뜨는 것이었다.


다른 방법이 없을지 찾아보던 중에 アリア님의 블로그에서 Linux Mint 17에서 Wine으로 카카오톡, 한글 2010 설치하기(http://jetzt.tistory.com/810) 포스팅에서 도움을 받아서, 간단하게 해결할 수 있었다. 이 분의 블로그를 확인하기 전까지는 winetricks의 존재도 모르고 있었는데 감사한 일이다.


아래와 같이 명령을 치면 알아서 라이브러리를 직접 다운로드 받아서 설치한다.

$ winetricks gdiplus


アリア님에 의하면 한글 2010에서 닷넷2.0 라이브러리도 필요한 것 같은데, 아직까지는 gdiplus 라이브러리 문제만 해결한 채 계속 사용하고 있다. 사용하다가 또 오류가 나서 필요한 경우 추가해야 할 것 같다.



반응형
블로그 이미지

Bryan_

,
반응형


연구 목적으로 compat-wireless 패키지에 들어 있는 Qualcomm Atheros 칩셋 중 하나인 ath9k의 소스코드를 고치고 있는데,아무리 봐도 내가 원하는 기능을 해당 코드에서 달성할 수 없는 것 같다. 디바이스 드라이버(device driver) 레벨보다 더 하위 레벨로 내려가야 할 것 같아서 찾아보니, 내가 갖고 있는 USB 랜카드(TP-LINK TL-WN722N)는 htc_9271.fw 라는 이름의 펌웨어를 쓴다는 것을 알게 되었다.


해당 펌웨어의 소스코드가 있는지 찾아 보니, 반갑게도 Qualcomm Atheros에서 htc 9271 펌웨어 소스코드를 오픈소스로 git에 올려 놓았다.


아래와 같은 순서대로 하면 ath9k 펌웨어 개발 환경을 얻을 수 있다. (주의사항: ath9k 디바이스 드라이버와는 다르다. 디바이스 드라이버는 compat-wireless 소스코드를 받아서 빌드해야 한다.)



1. Git에서 소스코드 다운받기 (https://github.com/qca/open-ath9k-htc-firmware)

 $ git clone https://github.com/qca/open-ath9k-htc-firmware



2. make 명령으로 toolchain 다운받고 설치하기

 $ cd ./open-ath9k-htc-firmware

 $ make toolchain

(한참 걸린다. 약 30분~1시간)



3. Firmware 빌드하기 

(참고로 cmake가 필요하다. 없으면 sudo apt-get install cmake 로 설치하자.)

 $ make -C target_firmware

(그리 오래 걸리지 않는다.)



4. open-ath9k-htc-firmware/target_firmware 디렉토리에 .fw 파일이 생성되어 있으면 빌드 성공.

htc_9271.fw 파일을 /lib/firmware/ 에 복사한 뒤에, 기존에 설치된 ath9k_htc 커널 모듈을 지우고 재설치한다.

$ sudo cp htc_9271.fw /lib/firmware/

$ sudo rmmod ath9k_htc

$ sudo modprobe ath9k_htc





반응형
블로그 이미지

Bryan_

,