<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://workspace.onionmixer.net/wiki/index.php?action=history&amp;feed=atom&amp;title=Gentoo_mwlib</id>
	<title>Gentoo mwlib - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://workspace.onionmixer.net/wiki/index.php?action=history&amp;feed=atom&amp;title=Gentoo_mwlib"/>
	<link rel="alternate" type="text/html" href="https://workspace.onionmixer.net/wiki/index.php?title=Gentoo_mwlib&amp;action=history"/>
	<updated>2026-04-20T17:46:14Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.0</generator>
	<entry>
		<id>https://workspace.onionmixer.net/wiki/index.php?title=Gentoo_mwlib&amp;diff=311&amp;oldid=prev</id>
		<title>Onionmixer: 내용추가 및 수정</title>
		<link rel="alternate" type="text/html" href="https://workspace.onionmixer.net/wiki/index.php?title=Gentoo_mwlib&amp;diff=311&amp;oldid=prev"/>
		<updated>2013-03-24T12:35:59Z</updated>

		<summary type="html">&lt;p&gt;내용추가 및 수정&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;;MediaWiki에서 사용할 수 있는 Collection Extension에 대한 렌더서버 구축하기&lt;br /&gt;
&lt;br /&gt;
==적용범위 및 목적==&lt;br /&gt;
&lt;br /&gt;
이 문서는 Mediawiki에서 사용할 수 있는 Collection Extension에 대한 렌더링 서버를 Gentoo Linux 에서 구축하는것을 그 목적으로 한다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==용어정의==&lt;br /&gt;
&lt;br /&gt;
* Mediawiki :: Wiki System중 하나. php로 만들어져있으며 여러가지 DB Backend를 사용할 수 있다 - http://www.mediawiki.org/wiki/MediaWiki&lt;br /&gt;
* Collection :: Mediawiki의 extension중 하나. wiki페이지들을 모아서 원하는 양식으로 내보내기 할 수 있다 - http://www.mediawiki.org/wiki/Extension:Collection&lt;br /&gt;
* mwlib :: Mediawiki의 내용을 다른 형식으로 내보내기 위한 도구들 - http://mwlib.readthedocs.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==기준내용==&lt;br /&gt;
&lt;br /&gt;
===시스템을 구성하기 위한 준비===&lt;br /&gt;
&lt;br /&gt;
일단 mwlib을 사용하기에 앞서 어느경우에 렌더서버를 구축해야하는지 생각해보도록 하자&lt;br /&gt;
&lt;br /&gt;
# pediapress서버와 통신이 느리거나 해서 제대로 파일을 생성할 수 없는경우&lt;br /&gt;
# 내부망에 mediawiki를 설치하는경우 외부의 pediapress 서버와 연결될 수 없는경우&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
물론 위의 2가지 경우 모두 다 Collection Extension을 사용하는것을 전제로 한다.&lt;br /&gt;
&lt;br /&gt;
Collection Extension을 Mediawiki에 설치하는 방법은 [http://trans.onionmixer.net/mediawiki/index.php?title=WikiTips::Collection_Extension 여기]를 참고하도록 한다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
본 문서에서는 이미 서버에 Mediawiki정도는 어느 db가 되었든 세팅하고 문제없이 사용할 수 있는 사람들을 대상으로 설명을 진행하려 한다. 당연히 Collection 은 미리 설치되어있어야하며 사용법은 숙지하고 있어야 한다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===미리 읽어두면 좋을 내용들===&lt;br /&gt;
&lt;br /&gt;
* mwlib의 설치에 대해서 나와있다. 모두 pip를 사용한 설치를 진행하는것으로 기준이 잡혀있어 gentoo 에서 100% 다 사용할 수는 없지만 관련된 내용은 읽어두면 도움이 된다.&amp;lt;BR&amp;gt; http://mwlib.readthedocs.org/en/latest/installation.html&lt;br /&gt;
* mwlib의 구동방법에 대해 나와있다. 사실 자세히는 몰라도 되며 웬지는 모르겠지만 설치후 저 문서대로 동작하지는 않는다. 다만 띄우는 순서는 메모해놓을 필요가 있음.&amp;lt;BR&amp;gt; http://mwlib.readthedocs.org/en/latest/renderserver.html#mwlib-renderserver&lt;br /&gt;
* mwlib을 세팅한후 Mediawiki의 Collection Extension 을 세팅하는 방법에 대해 나와있다. 읽어두면 도움이 된다.&amp;lt;BR&amp;gt; http://mwlib.readthedocs.org/en/latest/collection.html&lt;br /&gt;
* 아직 테스트는 해보지 않았지만 Collection Extension 에 대한 새 버전의 wiki문서가 있다. 다음을 참고하도록 한다.&amp;lt;BR&amp;gt; http://www.mediawiki.org/wiki/Collection_Extension_2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===mwlib의 설치===&lt;br /&gt;
&lt;br /&gt;
mwlib은 현재 opensource로서 이 글을 작성하는현재 0.15.3 버전이 나와있다. 물론 이것을 사용할 예정이다.&lt;br /&gt;
&lt;br /&gt;
다만 gentoo에서는 gentoo만의 방법이 있는법. emerge mwlib으로 설치하면 잘 될거같지만.............. 버전이 틀리므로 안된다.&lt;br /&gt;
&lt;br /&gt;
그럼 최신버전을 구해야겠지... 인터넷을 뒤져서 다음의 URL을 찾는다&lt;br /&gt;
&lt;br /&gt;
:http://code.google.com/p/gentoo-progress/source/detail?r=3266&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
아 좋다. 역시 gentoo는 다르다. 삽질거리는 참 풍부하다.. 당연히 위의 파일을 받아서 사용하는 gentoo system의 overlay에 넣는다. 하지만.. manifest가 안된다. 안되는게 정상이다.. 수정할 부분이 있기 때문이다.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
# Copyright owners: Gentoo Foundation&lt;br /&gt;
#                   Arfrever Frehtes Taifersar Arahesis&lt;br /&gt;
# Distributed under the terms of the GNU General Public License v2&lt;br /&gt;
&lt;br /&gt;
EAPI=&amp;quot;4&amp;quot;&lt;br /&gt;
PYTHON_MULTIPLE_ABIS=&amp;quot;1&amp;quot;&lt;br /&gt;
PYTHON_RESTRICTED_ABIS=&amp;quot;2.5 3.* *-jython *-pypy-*&amp;quot;&lt;br /&gt;
SUPPORT_PYTHON_ABIS=&amp;quot;1&amp;quot;&lt;br /&gt;
RESTRICT_PYTHON_ABIS=&amp;quot;3.* *-pypy-* *-jython&amp;quot;&lt;br /&gt;
DISTUTILS_SRC_TEST=&amp;quot;py.test&amp;quot;&lt;br /&gt;
PYTHON_NAMESPACES=&amp;quot;mwlib&amp;quot;&lt;br /&gt;
&lt;br /&gt;
inherit distutils eutils&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION=&amp;quot;mediawiki parser and utility library&amp;quot;&lt;br /&gt;
HOMEPAGE=&amp;quot;http://pediapress.com/code/ https://github.com/pediapress/mwlib https://pypi.python.org/pypi/mwlib&amp;quot;&lt;br /&gt;
SRC_URI=&amp;quot;mirror://pypi/${PN:0:1}/${PN}/${P}.zip&amp;quot;&lt;br /&gt;
&lt;br /&gt;
LICENSE=&amp;quot;BSD&amp;quot;&lt;br /&gt;
SLOT=&amp;quot;0&amp;quot;&lt;br /&gt;
KEYWORDS=&amp;quot;*&amp;quot;&lt;br /&gt;
IUSE=&amp;quot;doc latex&amp;quot;&lt;br /&gt;
&lt;br /&gt;
RDEPEND=&amp;quot;dev-lang/perl&lt;br /&gt;
     &amp;gt;=dev-python/apipkg-1.2&lt;br /&gt;
     dev-python/bottle&lt;br /&gt;
     dev-python/gevent&lt;br /&gt;
     dev-python/imaging&lt;br /&gt;
     dev-python/lxml&lt;br /&gt;
     =dev-python/odfpy-0.9*&lt;br /&gt;
     &amp;gt;=dev-python/py-1.4&lt;br /&gt;
     &amp;gt;=dev-python/pyPdf-1.12&lt;br /&gt;
     &amp;gt;=dev-python/pyparsing-1.4.11&lt;br /&gt;
     dev-python/roman&lt;br /&gt;
     &amp;gt;=dev-python/qserve-0.2.7&lt;br /&gt;
     dev-python/setuptools&lt;br /&gt;
     &amp;gt;=dev-python/simplejson-2.3&lt;br /&gt;
     dev-python/sqlite3dbm&lt;br /&gt;
     &amp;gt;=dev-python/timelib-0.2&lt;br /&gt;
     latex? ( virtual/latex-base )&amp;quot;&lt;br /&gt;
DEPEND=&amp;quot;${RDEPEND}&lt;br /&gt;
    doc? ( dev-python/sphinx )&amp;quot;&lt;br /&gt;
&lt;br /&gt;
S=&amp;quot;${WORKDIR}/${P}&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
다운받은 ebuild파일의 상단부를 위와같이 싹 바꿔준다. 실제로 바꿀내용이 많은것은 아니니 뭐뭐를 바꿔야 하는지 궁굼한 사람들은 본인이 직접 비교해가면서 바꿔보도록 한다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
이후 해당되는 ebuild의 emerge를 진행하도록 한다. 본인이 이때 사용한 USE flag는 대략 다음과 같다.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
USE=&amp;quot;-X -ipv6 -gtk -alsa -esd -svg raw openexr lcms fftw fpx hdri jbig lqr q8 i18n dbus udev hal unicode cjk bash-completion cscope ruby vim-pager vim-syntax mmx sse sse2 nptl nptlonly ctype ftp fastcgi spl xml soap cli jpeg jpeg2k python tiff gif png truetype corefonts xetex&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
물론 본인의 경우니 적절히 가려가며 쓰도록 한다. 다만.... 그림파일 관련된 부분은 몽조리 들어가주는것이 좋다.&lt;br /&gt;
&lt;br /&gt;
또한! python의 버전은 eselect python set 을 통해서 미리 맞춰놓도록 한다.&lt;br /&gt;
&lt;br /&gt;
:주의사항::가능하면 &amp;#039;&amp;#039;&amp;#039;dev-python/imaging&amp;#039;&amp;#039;&amp;#039; 과 &amp;#039;&amp;#039;&amp;#039;dev-python/pygments&amp;#039;&amp;#039;&amp;#039; 정도를 미리 설치하는것이 좋다. 이후 좀 덜 귀찮아진다.&lt;br /&gt;
&lt;br /&gt;
:주의사항::귀찮다고 ACCEPT_KEYWORDS 따위를 쓸생각은 하지말자. 사용하는 패키지중에 perl이 걸리면서 perl이 불안정버전으로 올라가는 경우가 생긴다. 이렇게되면 vi도 안뜨는 경우가 발생할 수 있기때문에 심히 곤란한 상황이 벌어진다. accept keyword가 필요한 패키지의 경우 gentoo만의 방법으로 하나하나 따로 설치해주길 바란다.&lt;br /&gt;
&lt;br /&gt;
:참고사항::왜인지 이유는 모르겠으나 texlive 2011버전이 r6는 gcc 4.5.3에서 설치가 잘 되지 않는다. texlive-core 2011 r6 이 잘 설치되지 않는 경우에는 r7을 설치하도록 한다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
이렇게 설치가 완료되면 이제 재대로 동작하는지 확인을 해봐야 한다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====mwlib의 동작확인====&lt;br /&gt;
&lt;br /&gt;
간단하다. 별 이상 없으면 다음과같은 명령어를 진행해보자.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
# mw-render --list-write&lt;br /&gt;
odf	OpenDocument Text&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
윗줄은 명령어와 옵션이고 아랫줄은 출력결과물이다. 이야.. 일단 동작은 하게된거같다.&lt;br /&gt;
&lt;br /&gt;
위에서 odf가 나왔다는건 Mediawiki의 Collection extension을 이용해 pdf포맷으로 내용을 내보내기 할 수 있다는 의미가 된다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===mwlib.rl의 설치===&lt;br /&gt;
&lt;br /&gt;
mwlib.rl은 mwlib에서 pdf로 내보내기를 가능하게 해주는 모듈이다.&lt;br /&gt;
&lt;br /&gt;
[http://mwlib.readthedocs.org/en/latest/installation.html 이 페이지] 를 참고해서 mwlib.rl 을 설치하도록 한다.&lt;br /&gt;
&lt;br /&gt;
물론 pip를 사용해서 설치해줘야하며.. 이 문서를 제대로 읽고 왔다면 다른 추가패키지 설치없이 mwlib.rl 만 설치가 진행된다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====mwlib.rl의 설치확인====&lt;br /&gt;
&lt;br /&gt;
다음과같은 명령어와 결과를 확인할 수 있으면 된다.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
$ mw-render --list-write&lt;br /&gt;
odf	OpenDocument Text&lt;br /&gt;
rl	PDF documents (using ReportLab)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
어.. 뭔가 늘었다. 맨 아랫줄을 확인하면 &amp;#039;&amp;#039;&amp;#039;rl	PDF documents (using ReportLab)&amp;#039;&amp;#039;&amp;#039; 이라는 부분이 있다. mwlib.rl 이 제대로 설치되었다. 그부분만 정상적으로 떠있으면 일단 제대로 작동된다고 생각하면 된다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===mwlib.epub의 설치===&lt;br /&gt;
&lt;br /&gt;
mwlib.epub은 mwlib에서 epub으로 내보내기를 가능하게 해주는 모듈이다.&lt;br /&gt;
&lt;br /&gt;
[https://pypi.python.org/pypi/mwlib.epub/0.14.2 이 페이지] 를 참고해서 mwlib.epub 을 설치하도록 한다.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
Requirement already satisfied (use --upgrade to upgrade): mwlib.epub in /usr/lib64/python2.7/site-packages&lt;br /&gt;
Requirement already satisfied (use --upgrade to upgrade): mwlib in /usr/lib64/python2.7/site-packages (from mwlib.epub)&lt;br /&gt;
Requirement already satisfied (use --upgrade to upgrade): lxml in /usr/lib64/python2.7/site-packages (from mwlib.epub)&lt;br /&gt;
Requirement already satisfied (use --upgrade to upgrade): cssutils in /usr/lib64/python2.7/site-packages (from mwlib.epub)&lt;br /&gt;
Requirement already satisfied (use --upgrade to upgrade): ordereddict in /usr/lib64/python2.7/site-packages (from mwlib.epub)&lt;br /&gt;
Requirement already satisfied (use --upgrade to upgrade): pyparsing&amp;gt;=1.4.11,&amp;lt;1.6 in /usr/lib64/python2.7/site-packages (from mwlib-&amp;gt;mwlib.epub)&lt;br /&gt;
Requirement already satisfied (use --upgrade to upgrade): timelib&amp;gt;=0.2 in /usr/lib64/python2.7/site-packages (from mwlib-&amp;gt;mwlib.epub)&lt;br /&gt;
Requirement already satisfied (use --upgrade to upgrade): bottle&amp;gt;=0.10 in /usr/lib64/python2.7/site-packages (from mwlib-&amp;gt;mwlib.epub)&lt;br /&gt;
Requirement already satisfied (use --upgrade to upgrade): pyPdf&amp;gt;=1.12 in /usr/lib64/python2.7/site-packages (from mwlib-&amp;gt;mwlib.epub)&lt;br /&gt;
Requirement already satisfied (use --upgrade to upgrade): apipkg&amp;gt;=1.2 in /usr/lib64/python2.7/site-packages (from mwlib-&amp;gt;mwlib.epub)&lt;br /&gt;
Requirement already satisfied (use --upgrade to upgrade): qserve&amp;gt;=0.2.7 in /usr/lib64/python2.7/site-packages (from mwlib-&amp;gt;mwlib.epub)&lt;br /&gt;
Requirement already satisfied (use --upgrade to upgrade): py&amp;gt;=1.4 in /usr/lib64/python2.7/site-packages (from mwlib-&amp;gt;mwlib.epub)&lt;br /&gt;
Requirement already satisfied (use --upgrade to upgrade): sqlite3dbm in /usr/lib64/python2.7/site-packages (from mwlib-&amp;gt;mwlib.epub)&lt;br /&gt;
Requirement already satisfied (use --upgrade to upgrade): simplejson&amp;gt;=2.3 in /usr/lib64/python2.7/site-packages (from mwlib-&amp;gt;mwlib.epub)&lt;br /&gt;
Requirement already satisfied (use --upgrade to upgrade): roman in /usr/lib64/python2.7/site-packages (from mwlib-&amp;gt;mwlib.epub)&lt;br /&gt;
Requirement already satisfied (use --upgrade to upgrade): gevent in /usr/lib64/python2.7/site-packages (from mwlib-&amp;gt;mwlib.epub)&lt;br /&gt;
Requirement already satisfied (use --upgrade to upgrade): odfpy&amp;gt;=0.9,&amp;lt;0.10 in /usr/lib64/python2.7/site-packages (from mwlib-&amp;gt;mwlib.epub)&lt;br /&gt;
Requirement already satisfied (use --upgrade to upgrade): greenlet in /usr/lib64/python2.7/site-packages (from gevent-&amp;gt;mwlib-&amp;gt;mwlib.epub)&lt;br /&gt;
Clear...뭐시기&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
위의같은 메세지가 나와서 설치 못할줄 알았는데....&lt;br /&gt;
&lt;br /&gt;
사실 이전에 설치하다가 중간에 중단하는바람에 그냥 진행이 안됐던것뿐.&lt;br /&gt;
&lt;br /&gt;
pip에서 진행되던 cache를 날려주면 되는거였다. 방법인즉슨&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
# rm -rf /usr/lib64/python(파이선버전)/site-packages/mwlib.epub*&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
이렇게 기존에 설치가 진행되던 흔적을 없애주면 다시 잘 설치가 될 수 있다.&lt;br /&gt;
(물론 지금은 잘 설치해서 쓰는중... 다크서클님 감사합니다)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===mwlib을 서버로 띄우기===&lt;br /&gt;
&lt;br /&gt;
mwlib에서 핵심적인 4개 파일은 다음과같다.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
nserve.py&lt;br /&gt;
mw-qserve&lt;br /&gt;
nslave.py&lt;br /&gt;
postman&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
위의 4개파일이 순서대로 뜨면 일단 daemon은 제대로 구동이 되는거라고 보면 된다. 문제는.....&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====gentoo에서 emerge로 설치했을때 문제가되는 2개의 파일====&lt;br /&gt;
&lt;br /&gt;
gentoo에서 mwlib을 서버로 띄우는데 2개정도의 문제가 되는 파일이 있다.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;nserve.py, nslave.py&amp;#039;&amp;#039;&amp;#039; 이 두개 파일이 그것이다. 이 파일들은 대단히 엽기적인 동작을 보여주는데..&lt;br /&gt;
&lt;br /&gt;
(물론 nserve.py는 nserve-2.7 파일의 wrapper, nslave.py는 nslave-2.7의 wrapper되시겠다)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
아래와 같이 실행하면 미묘한 결과가 나오면서 실행이 되지 않는다...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
# /usr/bin/nserve-2.7 &lt;br /&gt;
This Python implementation (python2.7) is not supported by the script.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
...................응? 이게 뭔소리지?&lt;br /&gt;
&lt;br /&gt;
이유는 잘 모르겠지만 /usr/bin 디렉토리에 있으면 실행이 안된다.&lt;br /&gt;
&lt;br /&gt;
그래서 본인은 따로 디렉토리를 만든후 그 안에 파일을 복사하고 실행한다.. 잘된다...-.-;&lt;br /&gt;
&lt;br /&gt;
대략 다음의 파일들을 복사하면 된다.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
/usr/bin/nslave.py&lt;br /&gt;
/usr/bin/nslave-2.7&lt;br /&gt;
/usr/bin/nserve.py&lt;br /&gt;
/usr/bin/nserve.2.7&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
이렇게 파일을 복사햐면 서버를 띄울 최소한의 준비가 된다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====mwlib 서버를 띄우는 방법====&lt;br /&gt;
&lt;br /&gt;
# 먼저 위의 파일이 복사된 디렉토리로 이동한다. 그리고 다음과 같은 내용으로 shell script를 하나 만든다.&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
./nserve.py &amp;amp;&lt;br /&gt;
mw-qserve &amp;amp;&lt;br /&gt;
./nslave.py --cachedir /var/log/cache/mediawiki/ &amp;amp;&lt;br /&gt;
postman&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
# 이후 &amp;#039;&amp;#039;&amp;#039;screen&amp;#039;&amp;#039;&amp;#039; 을 이용해서 별도의 session을 연다.&lt;br /&gt;
# 해당되는 shell script를 실행한다.&lt;br /&gt;
# 에러같지 않으며 idle 어쩌고..하는 메세지가 뜨면 daemon 기동 성공&lt;br /&gt;
&lt;br /&gt;
물론 screen 의 사용법은 이 문서에서 다루지 않겠다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====mwlib서버를 죽이는 방법====&lt;br /&gt;
&lt;br /&gt;
# 이전의 구동용 shell script를 만들 디렉토리로 이동해서 다음과같은 내용으로 shell script를 하나 더 만든다.&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
killall nserve.py&lt;br /&gt;
killall mw-qserve&lt;br /&gt;
killall nslave.py&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
# 서버 daemon을 종료하려는경우 사용하면 된다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====mwlib 서버 daemon의 테스트====&lt;br /&gt;
&lt;br /&gt;
telnet을 이용해서 아래와같은 방법으로 테스트를 진행하면 된다.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
# telnet localhost 8899&lt;br /&gt;
Trying 127.0.0.1...&lt;br /&gt;
Connected to localhost.&lt;br /&gt;
Escape character is &amp;#039;^]&amp;#039;.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
물론 telnet이 깔려있어야 테스트가 가능하다. telnet이 깔려있는 다른 windows머신에서 테스트를 해보는 방법도 있겠다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mediawiki의 설정변경===&lt;br /&gt;
&lt;br /&gt;
Mediawiki의 Collection Extension 은 기본적으로 아무것도 설정하지 않은경우 pediabook 의 서버로 연결되게 된다. 이걸 바꿔야 직접 띄운 render서버로 연결이 되어 사용할 수 있게된다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mediawiki의 LocalSettings.php 파일에 다음 부분을 추가한다.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$wgCollectionMWServeURL=&amp;quot;http://렌더링서버IP:8899&amp;quot;;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
이후 Collection Extension 기능을 사용해서 pdf 또는 odf 파일을 생성해보면 된다.&lt;br /&gt;
&lt;br /&gt;
파일이 제대로 생성되면 성공!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==rc-script 만들기==&lt;br /&gt;
&lt;br /&gt;
[http://wiki.gentoo.or.kr/index.php?title=Gentoo_mwlib#rc-script_.EB.A7.8C.EB.93.A4.EA.B8.B0 다크서클님이 추가하신 문서] 부분을 참고&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==참고사항==&lt;br /&gt;
&lt;br /&gt;
# 페이지수가 너무 많으면 pdf 파일의 경우생성을 제대로 못한다. 아마도 페이지에 들어있는 이미지의 개수와 상관이 있는듯. 이런경우에는 페이지수를 적게해서 pdf를 여러개 생성해야 한다&lt;br /&gt;
# 아마도 epub을 쓰려면...... python관련 library도 좀 올려야하는데.. ebuild가 없어서 근성부족으로 포기&lt;br /&gt;
# pyfribidi는.. 설치하다가 ctrl+c를 눌러서 중지했더니... 설치가 똑바로 안되고있다... 역시 근성부족으로 포기&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===참고문서===&lt;br /&gt;
&lt;br /&gt;
* pip의 사용법 :: http://www.ironbag.net/page/f0cdac78477145cbb5767e23f49496c9&lt;br /&gt;
* 여러개의 pdf문서를 합치는방법(linux-pdftk) :: http://blog.naver.com/PostView.nhn?blogId=skidsy&amp;amp;logNo=40071552769&amp;amp;redirect=Dlog&amp;amp;widgetTypeCall=true&lt;/div&gt;</summary>
		<author><name>Onionmixer</name></author>
	</entry>
</feed>