미디어위키/미디어위키 설치 및 관리

미디어위키(Mediawiki) 1.35 LTS 설치 - 터미널 환경(CLI)

씨실과 날실 2021. 4. 28. 09:00

 

안녕하세요. 씨실과 날실입니다.

위 두 글을 통해 미디어위키 1.35 LTS 버전을 설치하기 위한 조건과 사전 설치 패키지 등에 대해 알아보았습니다.

이것으로 미디어위키 1.35를 설치하기 위한 준비 작업은 마쳤습니다.

 

이제 본격적으로 미디어위키를 설치하는 작업에 대해 알아보도록 하겠습니다.

예전에 미디어위키 1.31 관련 연재를 진행했을 때는 미디어위키를 설치하는 방법으로 GUI를 이용하는 방법과 Git을 이용한 방법 이렇게 두 방법을 설명했었습니다. 그러나 이번에는 위의 두 방법 뿐만 아니라 GUI를 사용하지 않는 서버 관리자를 위한 CLI 설치 방법도 설명하고자 합니다. 즉 총 3가지 설치 방법을 연재할 예정입니다.

 

세 가지 설치 방법 중 CLI를 통한 설치 방법을 설명하고자 합니다. 이 방법은 시스템 환경과 관련하여 가장 적은 제한 조건을 요구하며  최소한의 설정으로 가장 간편하게 그리고 가장 빠르게 미디어위키를 구축하는 방법입니다. 뿐만 이나리 GUI를 통한 미디어위키 설치 과정을 진행하더라도 미디어위키 공식 배포 아카이브 파일 다운로드 등 실제적인 설치 과정을 거치기 전 준비 작업은 역시 CLI를 통한 작업 과정이 필요합니다. (물론 파일 다운로드 및 압축 해제 과정 등도 GUI(웹브라우저 화면)를 통해 진행할 수 있습니다. 그러나 GUI(웹브라우저 화면) 방식이 CLI 방식보다 더 번거로운 편이고 작업 과정에 따라 GUI 작업을 위한 다른 애플리케이션이 필요할 수도 있습니다.)

 

만약 GUI(웹브라우저 화면) 방식을 통해 미디어위키를 설치하고자 하는 분들은  실선의 윗 부분까지만 CLI로 사전 작업을 진행하시고 이후 DB 생성과 설정 파일 생성 등 본격적인 설치 진행 과정은 따로 링크를 건 글을 참고하시기 바랍니다. 

 

Git을 통해 미디어위키를 유지보수하게 되면 버전 관리가 굉장히 수월해집니다. 그러나 이 방법을 사용하기 위해서는 GIt 사용법 뿐만 아니라 프로그램 개발(특히분산 버전 관리)에 대한 개념 이해와 제반 지식이 필요합니다. 따라서 Git을 이용한 미디어위키 설치 방법은 학습 용도가 아니라면 비개발자인 초심자들에게는 그다지 권해드리지 않는 방법입니다.

 

미디어위키 설치 환경

OS : Ubuntu 20.04.2 LTS

WebServer : Apache 2

PHP : PHP 7.4

DB : MariaDB 10.5.x

설치할 미디어위키 버전 : Mediawiki 1.35.2 LTS

설치 호스트 환경 : 로컬호스트(Localhost)

앞으로 미디어위키를 설치하고 운용하는 방법에 대한 연재의 환경은 위와 같습니다.

물론 위에 게시한 환경과 다르다 할지라도 미디어위키가 공식적으로 지원한다고 언급한 환경이라면 얼마든지 설치, 운용할 수 있습니다만 리눅스, 서버 구축, 미디어위키 초심자인 경우 적어도 웹서버와 DB 프로그램 그리고 PHP 버전 정도는 위와 유사한 환경을 사용하시는 것을 권장드립니다.

미디어위키 설치를 위한 서버 환경에 대한 보다 자세한 정보는 위 링크를 참고하시기 바랍니다.

 


미디어위키 관련 파일 다운로드 디렉터리 생성

study@study-VirtualBox:~$ cd 다운로드
study@study-VirtualBox:~/다운로드$ mkdir mediawiki
study@study-VirtualBox:~/다운로드$ cd mediawiki
study@study-VirtualBox:~/다운로드/mediawiki$ 

위와 같이 미디어위키 관련 배포 파일을 다운로드하고 작업할 디렉터리를 생성하고 해당 디렉터리로 이동해줍니다.

 

미디어위키 1.35.2 LTS 파일 다운로드

study@study-VirtualBox:~/다운로드/mediawiki$ wget https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.2.tar.gz

미디어위키 측에서 배포하는 미디어위키 1.35.2 버전 공식 압축 아카이브 파일은 위 명령을 실행함으로써 다운받을 수 있습니다. 참고로 이 글을 공개한 시점에서 최신 버전이 1.35.2였기 때문에 해당 버전의 다운로드 주소를 적은 것입니다.

 

미디어위키 측이 공식적으로 배포한 미디어위키 1.35의 최신 버전 뿐만 아니라 그 이전의 브랜치 파일 및 관련 서명 파일들은 위 링크에서 확인할 수 있습니다.

 

https://releases.wikimedia.org/mediawiki/메이저 버전/mediawiki-버전.zip.sig
https://releases.wikimedia.org/mediawiki/메이저 버전/mediawiki-버전.zip

https://releases.wikimedia.org/mediawiki/메이저 버전/mediawiki-버전.tar.gz.sig
https://releases.wikimedia.org/mediawiki/메이저 버전/mediawiki-버전.tar.gz

https://releases.wikimedia.org/mediawiki/메이저 버전/mediawiki-버전.patch.zip.sig
https://releases.wikimedia.org/mediawiki/메이저 버전/mediawiki-버전.patch.zip

https://releases.wikimedia.org/mediawiki/메이저 버전/mediawiki-버전.patch.gz.sig
https://releases.wikimedia.org/mediawiki/메이저 버전/mediawiki-버전.patch.gz        

미디어위키 공식 배포 파일의 공식 배포 주소는 다음과 같은 규칙을 가집니다.

 

study@study-VirtualBox:~/다운로드/mediawiki$ wget https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.2.tar.gz
--2021-04-21 12:52:16--  https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.2.tar.gz
releases.wikimedia.org (releases.wikimedia.org)을(를) 해석하는 중... 103.102.166.224, 2001:df2:e500:ed1a::1
접속 releases.wikimedia.org (releases.wikimedia.org)|103.102.166.224|:443... 접속됨.
HTTP 요청을 전송했습니다. 응답을 기다리는 중입니다... 200 OK
길이: 48109666 (46M) [application/x-gzip]
다음 위치에 저장: `mediawiki-1.35.2.tar.gz'

mediawiki-1.35.2.ta 100%[===================>]  45.88M  10.0MB/s    / 6.0s     s

2021-04-21 12:52:24 (7.61 MB/s) - `mediawiki-1.35.2.tar.gz' 저장됨 [48109666/48109666]

study@study-VirtualBox:~/다운로드/mediawiki$ 

다운로드 진행 과정은 위와 같습니다.

 

curl -O https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.2.tar.gz

wget 명령 대신 curl을 사용해 다운로드받을 수 있습니다.

wget VS curl

프로토콜 호환성과 기능 면에서 curl이 wget보다 우월한 듯합니다.

 

GPG키 서명 확인

일반적으로 전자 메일, 문서 또는 다운로드 한 파일의 신뢰성을 확인하여 믿을만한 장소에서 가져온 것인지 확인합니다.

예를 들어 패키지 저장소(Repository)에 보관된 소프트웨어의 신뢰성을 해당 패키지에 대응되는 GPG키 서명을 이용하여 확인합니다.

 

미디어위키 공개 GPG키 다운로드

study@study-VirtualBox:~/다운로드/mediawiki$ gpg --fetch-keys "https://www.mediawiki.org/keys/keys.txt"

위 명령은 위키미디어 공개키 리스트 임포트 명령입니다.

 

참고로 위키미디어가 공개한 공개키 블록은 위 링크에서 확인할 수 있습니다.

 

study@study-VirtualBox:~/다운로드/mediawiki$ gpg --fetch-keys "https://www.mediawiki.org/keys/keys.txt"
gpg: keybox '/home/study/.gnupg/pubring.kbx' created
gpg: requesting key from 'https://www.mediawiki.org/keys/keys.txt'
gpg: /home/study/.gnupg/trustdb.gpg: trustdb created
gpg: key 73F146FECF9D333C: public key "Tim Starling <tstarling@wikimedia.org>" imported
gpg: key C119E1A64D70938E: public key "Brion Vibber <brion@pobox.com>" imported
gpg: key 9B69B3109D3BB7B0: public key "Sam Reed <reedy@wikimedia.org>" imported
gpg: key 72BC1C5D23107F8A: public key "Chad Horohoe <chad@wikimedia.org>" imported
gpg: key F6DAD285018FAC02: public key "Tyler Cipriani <tcipriani@wikimedia.org>" imported
gpg: key 361F943B15C08DD4: public key "Brian Wolff (Bawolff) <bawolff@gmail.com>" imported
gpg: key 131910E01605D9AA: public key "Mukunda Modell (WMF) <mmodell@wikimedia.org>" imported
gpg: Total number processed: 7
gpg:               imported: 7
study@study-VirtualBox:~/다운로드/mediawiki$ 

 

미디어위키 1.35.2 LTS 서명 파일 다운로드

study@study-VirtualBox:~/다운로드/mediawiki$ wget https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.2.tar.gz.sig

이제 위 명령으로 미디어위키 1.35.2 서명 파일을 미디어위키 1.35.2 압축 아카이브 파일과 같은 디렉터리에 다운받습니다.

study@study-VirtualBox:~/다운로드/mediawiki$ wget https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.2.tar.gz.sig
--2021-04-21 12:53:49--  https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.2.tar.gz.sig
releases.wikimedia.org (releases.wikimedia.org)을(를) 해석하는 중... 103.102.166.224, 2001:df2:e500:ed1a::1
접속 releases.wikimedia.org (releases.wikimedia.org)|103.102.166.224|:443... 접속됨.
HTTP 요청을 전송했습니다. 응답을 기다리는 중입니다... 200 OK
길이: 95 [application/pgp-signature]
다음 위치에 저장: `mediawiki-1.35.2.tar.gz.sig'

mediawiki-1.35.2.ta 100%[===================>]      95  --.-KB/s    / 0s       

2021-04-21 12:53:50 (2.18 MB/s) - `mediawiki-1.35.2.tar.gz.sig' 저장됨 [95/95]

study@study-VirtualBox:~/다운로드/mediawiki$ 

 

다운로드된 파일 확인

study@study-VirtualBox:~/다운로드/mediawiki$ ls
mediawiki-1.35.2.tar.gz  mediawiki-1.35.2.tar.gz.sig
study@study-VirtualBox:~/다운로드/mediawiki$ 

ls 명령을 이용하여 미디어위키 1.35.2 압축 아카이브 본 파일(.tar.gz)과 그 파일에 대응되는 서명 파일(.sig)이 정상적으로 다운로드된 것을 확인합니다.

 

study@study-VirtualBox:~/다운로드/mediawiki$ ls -l
합계 46988
-rw-rw-r-- 1 study study 48109666  4월  9 04:31 mediawiki-1.35.2.tar.gz
-rw-rw-r-- 1 study study       95  4월  9 04:31 mediawiki-1.35.2.tar.gz.sig
study@study-VirtualBox:~/다운로드/mediawiki$ 

파일의 자세한 정보는 -l 옵션을 덧붙여 확인할 수 있습니다.

 

서명 확인

study@study-VirtualBox:~/다운로드/mediawiki$ gpg --verify mediawiki-1.35.2.tar.gz.sig mediawiki-1.35.2.tar.gz

이제 본 파일과 서명 파일을 대칭하여 GPG키를 확인해봅시다.

$ gpg --verify [서명 파일] [서명이 포함된 무결성 검사 대상 파일]

GPG키 확인 명령 구문은 위와 같습니다.

 

study@study-VirtualBox:~/다운로드/mediawiki$ gpg --verify mediawiki-1.35.2.tar.gz.sig mediawiki-1.35.2.tar.gz
gpg: Signature made 2021년 04월 09일 (금) 
gpg:                using DSA key 1D98867E82982C8FE0ABC25F9B69B3109D3BB7B0
gpg: Good signature from "Sam Reed <reedy@wikimedia.org>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: 1D98 867E 8298 2C8F E0AB  C25F 9B69 B310 9D3B B7B0
study@study-VirtualBox:~/다운로드/mediawiki$ 

위와 같이 출력되면 파일에 문제 없는 것입니다.

 

다운로드된 미디어위키 1.35.2 압축 아카이브 파일 해제

study@study-VirtualBox:~/다운로드/mediawiki$ sudo tar xzvf mediawiki-1.35.2.tar.gz -C /var/www/html

이제 tar를 이용해 웹서버의 문서(Document) 루트 디렉터리에 풀어줍니다.

/var/www/html

우분투에서 공식 저장소를 통해 아파치를 설치, 구축한 경우 웹서버 문서 루트 디렉터리 기본값은 위와 같습니다.

 

정상 압축 해제 여부 확인

study@study-VirtualBox:~/다운로드/mediawiki$ cd /var/www/html
study@study-VirtualBox:/var/www/html$ ls -F
index.html  mediawiki-1.35.2/
study@study-VirtualBox:/var/www/html$ 

압축을 푼 디렉터리로 이동해 정상적으로 풀렸는지 확인합니다.

mediawiki-1.35.2라는 디렉터리가 생긴 것을 확인할 수 있습니다.

 

미디어위키 디렉터리명 변경

study@study-VirtualBox:~$ cd /var/www/html
study@study-VirtualBox:/var/www/html$ ls -F
index.html  mediawiki-1.35.2/
study@study-VirtualBox:/var/www/html$ sudo mv mediawiki-1.35.2 w
[sudo] study의 암호: 
study@study-VirtualBox:/var/www/html$ ls -F
index.html  w/
study@study-VirtualBox:/var/www/html$ 

mv 명령을 이용해 mediawiki-1.35.2라는 디렉터리명을 좀 더 짧은 디렉터리명으로 바꿔줍니다.

여기서는 미디어위키 디렉터리를 w로 바꿔주었습니다.

위키를 구축하고 있는 많은 사이트에서 미디어위키 디렉터리명으로 w를 사용하고 있습니다. 그래서 여기서도 해당 이름을 사용하였습니다.

참고로 미디어위키 공식 설명서에서는 디렉터리명으로 wiki를 쓰지 말라고 말하고 있는데 이는 Short URL 구축을 위한 기본 설정값으로 사용하고 있기 때문입니다.

 

study@study-VirtualBox:/var/www/html$ ls -l
합계 16
-rw-r--r--  1 root root 10918  4월 18 11:23 index.html
drwxr-xr-x 14 root root  4096  4월 21 17:24 w
study@study-VirtualBox:/var/www/html$ 

ls -l 명령을 이용해 디렉터리명과 퍼미션 정보 등을 확인합니다.

미디어위키 최상위 디렉터리의 퍼미션은 755(rwxr-xr-x)입니다.

 

study@study-VirtualBox:/var/www/html$ ls -dl w
drwxr-xr-x 14 root root 4096  4월 21 17:24 w
study@study-VirtualBox:/var/www/html$ 

참고로 위 명령은 특정 디렉터리의 정보만 확인하는 방법입니다.

 

study@study-VirtualBox:/var/www/html$ tree w -d -L 1
w
├── cache
├── docs
├── extensions
├── images
├── includes
├── languages
├── maintenance
├── mw-config
├── resources
├── skins
├── tests
└── vendor

12 directories
study@study-VirtualBox:/var/www/html$ 

시스템에 tree 패키지가 설치되어 있다면 위와 같이 미디어위키 디렉터리의 트리 구조를 확인할 수 있습니다.

참고로 위 예시는 첫 단계 하위 디렉터리 정보만 파악한 경우입니다.

 

보다 자세한 tree 명령 사용법은 위 링크를 참고하시기 바랍니다.

 

images 디렉터리의 소유권과 퍼미션 설정

study@study-VirtualBox:/var/www/html$ cd w
study@study-VirtualBox:/var/www/html/w$ ls -dl images
drwxr-xr-x 2 root root 4096  4월 21 17:24 images
study@study-VirtualBox:/var/www/html/w$ 

미디어이키의 하위 디렉터리 중 images 디렉터리의 소유권 정보와 퍼미션 정보도 확인합니다. images 디렉터리의 소유권과 퍼미션 설정을 확인한 이유는 설정값이 올바르지 않으면 위키의 파일 업로드 기능을 사용할 수 없기 때문입니다.

먼저 알아본 미디어위키 최상위 디렉터리와 마찬가지로 퍼미션 설정값이 755입니다. 정상적입니다.

그러나 소유권 정보는 변경해주는 것이 좋습니다.

study@study-VirtualBox:/var/www/html/w$ sudo chown -R www-data:www-data images 
study@study-VirtualBox:/var/www/html/w$ sudo chmod 0755 images
study@study-VirtualBox:/var/www/html/w$

위는 순서대로 소유권 정보와 퍼미션 정보를 변경하는 명령입니다.

 

 


이것으로 GUI 즉 웹브라우저로 접속해 미디어위키를 설치하기 위한 사전 작업이 끝났습니다.

링크

이후 웹브라우저로 인스톨 과정을 밟으실 분들은 위 링크를 참고하시기 바랍니다.

 

계속 CLI로 미디어위키를 설치하고자 하시는 분들(주로 서버 관리자)은 아래 과정을 진행하시기 바랍니다.

 


 

미디어위키가 사용할 DB 계정과 데이터베이스 생성

미디어위키는 설치 작업  진행 시 DB 자동 생성을 지원하기 때문에 아래 과정은 불필요하긴 합니다.

그러나 DB 초심자를 위하여 적어둡니다.

study@study-VirtualBox:~$ sudo mysql
[sudo] study의 암호: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 30
Server version: 10.5.9-MariaDB-1:10.5.9+maria~focal mariadb.org binary distribution

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

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

MariaDB [(none)]> CREATE DATABASE wikidb;
Query OK, 1 row affected (0.000 sec)

MariaDB [(none)]> CREATE USER 'wikiuser'@'localhost' IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.070 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON wikidb.* TO 'wikiuser'@'localhost' WITH GRANT OPTION;
Query OK, 0 rows affected (0.014 sec)

MariaDB [(none)]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]> 

DB 콘솔에 접속하여 위 과정을 참고하여 미디어위키가 사용할 DB와 해당 DB를 관리할 전용 계정을 생성해줍니다.

 

MariaDB [(none)]> SELECT user, host from mysql.user;
+-------------+-----------+
| User        | Host      |
+-------------+-----------+
| mariadb.sys | localhost |
| mysql       | localhost |
| root        | localhost |
| wikiuser    | localhost |
+-------------+-----------+
4 rows in set (0.001 sec)

MariaDB [(none)]>

계정이 정상적으로 생성되었는지 확인합니다.

 

MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| wikidb             |
+--------------------+
4 rows in set (0.001 sec)

MariaDB [(none)]> 

DB도 정상적으로 생성되었는지 확인합니다.

 

MariaDB [(none)]> GRANT ALL PRIVILEGES ON wikidb.* TO 'wikiuser'@'mediawiki.example.com' IDENTIFIED BY 'password';

만약 DB가 웹서버와 동일한 곳에서 구동되지 않는 경우 윙 예시와 같이 적절한 호스트 이름을 지정해주어야 합니다.

 

MariaDB [(none)]> exit;
Bye
study@study-VirtualBox:~$ 

DB 설정 후 콘솔에서 빠져나옵니다.

 


 

CLI에서 미디어위키 Install 명령 실행

CLI에서 미디어위키를 인스톨 작업을 진행하기 위해서는 미디어위키의 유지보수 디렉터리 안의 install.php 파일을 적절한 옵션을 지정하여 실행해주어야 합니다.

install.php 파일의 자세한 사용법은 위 링크르 참고하시기 바랍니다.

 

install.php 파일은 자체적인 도움말도 제공하고 있습니다. --help 옵션을 붙여 실행하면 아래와 같이 간략한 도움말을 확인할 수 있습니다.

study@study-VirtualBox:/var/www/html/w$ php maintenance/install.php --help
Argument <admin> required!

CLI-based MediaWiki installation and configuration.
Default options are indicated in parentheses.

Usage: php install.php [--conf|--confpath|--dbgroupdefault|--dbname|--dbpass|--dbpassfile|--dbpath|--dbport|--dbprefix|--dbschema|--dbserver|--dbtype|--dbuser|--env-checks|--extensions|--globals|--help|--installdbpass|--installdbuser|--lang|--memory-limit|--pass|--passfile|--profiler|--quiet|--scriptpath|--server|--skins|--wiki|--with-extensions] [name] <admin>

Generic maintenance parameters:
    --help (-h): Display this help message
    --quiet (-q): Whether to suppress non-error output
    --conf: Location of LocalSettings.php, if not default
    --wiki: For specifying the wiki ID
    --globals: Output globals at the end of processing for debugging
    --memory-limit: Set a specific memory limit for the script, "max"
        for no limit or "default" to avoid changing it
    --server: The protocol and server name to use in URLs, e.g.
        http://en.wikipedia.org. This is sometimes necessary because server name
        detection may fail in command line scripts.
    --profiler: Profiler output format (usually "text")

Script dependant parameters:
    --dbuser: The DB user to use for this script
    --dbpass: The password to use for this script
    --dbgroupdefault: The default DB group to use.

Script specific parameters:
    --confpath: Path to write LocalSettings.php to (/var/www/html/w)
    --dbname: The database name (my_wiki)
    --dbpassfile: An alternative way to provide dbpass option, as the
        contents of this file
    --dbpath: The path for the SQLite DB ($IP/data)
    --dbport: The database port; only for PostgreSQL (5432)
    --dbprefix: Optional database table name prefix
    --dbschema: The schema for the MediaWiki DB in PostgreSQL/Microsoft
        SQL Server (mediawiki)
    --dbserver: The database host (localhost)
    --dbtype: The type of database (mysql)
    --env-checks: Run environment checks only, don't change anything
    --extensions: Comma-separated list of extensions to install
    --installdbpass: The password for the DB user to install as.
    --installdbuser: The user to use for installing (root)
    --lang: The language to use (en)
    --pass: The password for the wiki administrator.
    --passfile: An alternative way to provide pass option, as the
        contents of this file
    --scriptpath: The relative path of the wiki in the web server
        (/wiki)
    --skins: Comma-separated list of skins to install (default: all)
    --with-extensions: Detect and include extensions

Arguments:
    [name]: The name of the wiki (MediaWiki)
    <admin>: The username of the wiki administrator.

study@study-VirtualBox:/var/www/html/w$ 

위 정보를 참고하여 아래와 같이 각종 옵션을 붙여 실행해줍니다.

 

study@study-VirtualBox:/var/www/html/w$ php maintenance/install.php --env-checks

먼저 위 명령을 실행하여 미디어위키를 정상적을 설치할 수 있는 환경인지 확인합니다.

 

study@study-VirtualBox:/var/www/html/w$ php maintenance/install.php --env-checks
PHP 7.4.3 is installed.
Found ImageMagick: /usr/bin/convert. Image thumbnailing will be enabled if you enable uploads.
Found the Git version control software: /usr/bin/git.
Using server name "http://localhost".
Warning: No --scriptpath specified, using default: /wiki.
Using server URL "http://localhost/wiki".
Warning: Your default directory for uploads (/var/www/html/w/images/) is not checked for vulnerability to arbitrary script execution during the CLI install.
Using the PHP intl extension for Unicode normalization.
The environment has been checked. You can install MediaWiki.
study@study-VirtualBox:/var/www/html/w$ 

이때 주의할 점은 Warning: 구문입니다.

위 예시에서는 두 Warning: 구문이 보입니다.

Warning: No --scriptpath specified, using default: /wiki.

Warning: Your default directory for uploads (/var/www/html/w/images/) is not checked for vulnerability to arbitrary script execution during the CLI install.

첫 번째 Warning: 구문은 --scriptpath(스크립트 경로) 옵션이 지정되어 있지 않았다는 경고 문구입니다. 이 말을 쉽게 설명하자면 웹서버에 설치 될 미디어위키의 상대 경로가 지정되어 있지 않았다는 말입니다.

이 옵션값을 따로 명시적으로 지정해주지 않으면 기본값은 /wiki로 사용됩니다. 즉 'http://도메인주소/wiki'가 미디어위키 접속 주소가 된다는 뜻입니다.

우리는 미디어위키 디렉터리명을 w로 바꾸었으므로 설치 시 반드시 --scriptpath 옵션값을 따로 지정해주어야 합니다.

 

두 번째 Warning: 구문은 단순한 안내입니다. CLI를 통한 미디어위키 설치 과정 중에는 미디어위키의 기본 업로드 디렉터리에 대한 임의 스크립트 실행으로 인한 취약점을 따로 검사하지 않는다는 말입니다.

 

시스템 또는 서버 환경에 따라 다른 Warning: 구문이 출력될 수 있으며 해당 구문을 읽고 적절히 조치해주시면 됩니다.

 

 환경 검사 옵션을 붙여 install.php를 실행하면 아래와 같은 조건들을 확인합니다.

CLI 방식으로 미디어위키 설치 환경 검사할 때 확인하는 정보들

이미지 썸네일 생성에 사용할 패키지

Git 설치 여부와 설치 경로

서버 이름

미디어위키 디렉터리 상대 경로

미디어위키 URL

미디어위키 설치 가능 여부

 

미디어위키를 설치할 수 있는 최소한의 환경이 마련되면 맨 마지막에 아래와 같은 문구가 출력됩니다.

The environment has been checked. You can install MediaWiki.

 

CLI에서의 미디어위키 설치 명령은 아래와 같습니다.

study@study-VirtualBox:/var/www/html/w$ sudo php maintenance/install.php --dbserver="localhost" --dbname=wikidb --dbprefix=w_ --installdbuser=root --installdbpass=0000 --dbuser=wikiuser --dbpass=0000 --confpath=/var/www/html/w --scriptpath=/w --lang=ko --with-extensions --pass=xxxxxxxxxx "씨실과 날실" "관리자"

그런데 위와 같이 한줄에 모든 옵션을 지정하는 방식은 가독성이 굉장히 떨어집니다.

따라서 명령 작성 실수를 막기 위해 아래와 같이 줄을 넘기기 전에 \문자를 붙이고 Shift+Enter키를 눌러 옵션별로 개행하여 한줄에 모든 옵션과 인수를 붙여 명령을 실행하는 기본 방법과 동일한 효과를 낼 수 있습니다.

study@study-VirtualBox:/var/www/html/w$ sudo php maintenance/install.php \
--dbserver="localhost" \
--dbname=wikidb \
--dbprefix=w_ \
--installdbuser=root \
--installdbpass=0000 \
--dbuser=wikiuser \
--dbpass=0000 \
--confpath=/var/www/html/w \
--scriptpath=/w \
--lang=ko \
--with-extensions \
--pass=xxxxxxxxxx \
"씨실과 날실" "관리자"

만약 지정한 옵션값 중에 유효하지 않은 값이 존재하는 경우 오류 메시지를 출력하게 됩니다.

아래는 그 예 중 하나입니다.

 

study@study-VirtualBox:/var/www/html/w$ sudo php maintenance/install.php \
> --dbserver="localhost" \
> --dbname=wikidb \
> --dbprefix=w_ \
> --installdbuser=root \
> --installdbpass=0000 \
> --dbuser=wikiuser \
> --dbpass=0000 \
> --confpath=/var/www/html/w \
> --scriptpath=/w \
> --lang=ko \
> --with-extensions \
> --pass=xxxxxxxxxx \
> "씨실과 날실" "관리자"
[sudo] study의 암호: 
Invalid wiki admin password: The password entered is in a list of very commonly used passwords. Please choose a more unique password.
study@study-VirtualBox:/var/www/html/w$

위키 설치자가 지정한 미디어위키 관리자의 암호가 매우 일반적으로 사용되는 암호이므로 보다 독특한 암호로 지정할 것을 요구하는 메시지가 출력되었습니다.

참고로 미디어위키 1.31이전까지 최소 8자리 이상의 암호를 지정하도록 요구했지만 이번에 설치하는 1.35의 경우 최소 10자리 이상의 암호를 지정하도록 규칙이 변경되었습니다.

 

study@study-VirtualBox:/var/www/html/w$ sudo php maintenance/install.php \
> --dbserver="localhost" \
> --dbname=wikidb \
> --dbprefix=w_ \
> --installdbuser=root \
> --installdbpass=0000 \
> --dbuser=wikiuser \
> --dbpass=0000 \
> --confpath=/var/www/html/w \
> --scriptpath=/w \
> --lang=ko \
> --with-extensions \
> --pass=xxxxxxxxxx \
> "씨실과 날실" "관리자"
[sudo] study의 암호: 
PHP 7.4.3이(가) 설치되어 있습니다.
ImageMagick를 찾았습니다: /usr/bin/convert. 올리기를 활성화할 경우 그림 섬네일이 활성화됩니다.
Git 버전 관리 소프트웨어를 찾았습니다: /usr/bin/git.
"http://localhost" 서버 이름을 사용 중입니다.
"http://localhost/w" 서버 URL을 사용 중입니다.
경고: 올리기를 위한 기본 디렉터리(/var/www/html/w/images/)는 CLI를 설치하는 동안 임의의 스크립트 실행에 대한 취약점에 대해 검사되지 않습니다.
유니코드 정규화에 PHP intl 확장 기능을 사용합니다.
환경이 확인되었습니다. 미디어위키를 설치할 수 있습니다.
확장 기능을 포함하는 중
완료
데이터베이스를 설정하는 중
완료
테이블을 만드는 중
완료
데이터베이스 사용자를 만드는 중
완료
Creating tables, step two
완료
기본 인터위키 테이블을 채우는 중
완료
통계를 초기화하는 중
완료
보안 키를 만드는 중
완료
불필요한 업데이트 실행 방지
완료
Restoring mediawiki services
완료
관리자 사용자 계정을 만드는 중
완료
기본 내용으로 대문을 만드는 중
완료
활성화된 확장 기능을 위한 테이블을 만드는 중
Creating oathauth_users table ...done.
...oathauth_users table does not contain secret_reset field.
...have module field in oathauth_users table.
...oathauth_users table does not contain secret field.
완료
데이터베이스가 성공적으로 구축되었습니다
미디어위키가 성공적으로 설치되었습니다. 이제 <http://localhost/w>에 방문하여 위키를 볼 수 있습니다. 질문이 있으시다면 자주 묻는 질문 목록을 살펴보십시오: <https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ> 아니면 해당 문서에 연결된 지원 포럼 중 한곳을 이용하십시오.
study@study-VirtualBox:/var/www/html/w$ 

미디어위키 설치 명령에 오류가 없다면 위 예시와 같이 진행됩니다.

CLI를 통해 미디어위키 인스톨 과정을 진행하면 자동 생성된 미디어위키 설정 파일 LocalSettings.php 파일을 웹브라우저에서 내려받아 사용자가 수동으로 미디어위키 디렉터리 안에 저장해주어야 하는 GUI 방식과는 달리, 자동 생성, 저장됩니다.

 

study@study-VirtualBox:/var/www/html/w$ cat -n LocalSettings.php
     1	<?php
     2	# This file was automatically generated by the MediaWiki 1.35.2
     3	# installer. If you make manual changes, please keep track in case you
     4	# need to recreate them later.
     5	#
     6	# See includes/DefaultSettings.php for all configurable settings
     7	# and their default values, but don't forget to make changes in _this_
     8	# file, not there.
     9	#
    10	# Further documentation for configuration settings may be found at:
    11	# https://www.mediawiki.org/wiki/Manual:Configuration_settings
    12	
    13	# Protect against web entry
    14	if ( !defined( 'MEDIAWIKI' ) ) {
    15		exit;
    16	}
    17	
    18	
    19	## Uncomment this to disable output compression
    20	# $wgDisableOutputCompression = true;
    21	
    22	$wgSitename = "씨실과 날실";
    23	$wgMetaNamespace = "씨실과_날실";
    24	
    25	## The URL base path to the directory containing the wiki;
    26	## defaults for all runtime URL paths are based off of this.
    27	## For more information on customizing the URLs
    28	## (like /w/index.php/Page_title to /wiki/Page_title) please see:
    29	## https://www.mediawiki.org/wiki/Manual:Short_URL
    30	$wgScriptPath = "/w";
    31	
    32	## The protocol and server name to use in fully-qualified URLs
    33	$wgServer = "http://localhost";
    34	
    35	## The URL path to static resources (images, scripts, etc.)
    36	$wgResourceBasePath = $wgScriptPath;
    37	
    38	## The URL paths to the logo.  Make sure you change this from the default,
    39	## or else you'll overwrite your logo when you upgrade!
    40	$wgLogos = [ '1x' => "$wgResourceBasePath/resources/assets/wiki.png" ];
    41	
    42	## UPO means: this is also a user preference option
    43	
    44	$wgEnableEmail = true;
    45	$wgEnableUserEmail = true; # UPO
    46	
    47	$wgEmergencyContact = "apache@🌻.invalid";
    48	$wgPasswordSender = "apache@🌻.invalid";
    49	
    50	$wgEnotifUserTalk = false; # UPO
    51	$wgEnotifWatchlist = false; # UPO
    52	$wgEmailAuthentication = true;
    53	
    54	## Database settings
    55	$wgDBtype = "mysql";
    56	$wgDBserver = "localhost";
    57	$wgDBname = "wikidb";
    58	$wgDBuser = "wikiuser";
    59	$wgDBpassword = "0000";
    60	
    61	# MySQL specific settings
    62	$wgDBprefix = "w_";
    63	
    64	# MySQL table options to use during installation or update
    65	$wgDBTableOptions = "ENGINE=InnoDB, DEFAULT CHARSET=binary";
    66	
    67	# Shared database table
    68	# This has no effect unless $wgSharedDB is also set.
    69	$wgSharedTables[] = "actor";
    70	
    71	## Shared memory settings
    72	$wgMainCacheType = CACHE_ACCEL;
    73	$wgMemCachedServers = [];
    74	
    75	## To enable image uploads, make sure the 'images' directory
    76	## is writable, then set this to true:
    77	$wgEnableUploads = false;
    78	$wgUseImageMagick = true;
    79	$wgImageMagickConvertCommand = "/usr/bin/convert";
    80	
    81	# InstantCommons allows wiki to use images from https://commons.wikimedia.org
    82	$wgUseInstantCommons = false;
    83	
    84	# Periodically send a pingback to https://www.mediawiki.org/ with basic data
    85	# about this MediaWiki instance. The Wikimedia Foundation shares this data
    86	# with MediaWiki developers to help guide future development efforts.
    87	$wgPingback = false;
    88	
    89	## If you use ImageMagick (or any other shell command) on a
    90	## Linux server, this will need to be set to the name of an
    91	## available UTF-8 locale. This should ideally be set to an English
    92	## language locale so that the behaviour of C library functions will
    93	## be consistent with typical installations. Use $wgLanguageCode to
    94	## localise the wiki.
    95	$wgShellLocale = "C.UTF-8";
    96	
    97	## Set $wgCacheDirectory to a writable directory on the web server
    98	## to make your wiki go slightly faster. The directory should not
    99	## be publicly accessible from the web.
   100	#$wgCacheDirectory = "$IP/cache";
   101	
   102	# Site language code, should be one of the list in ./languages/data/Names.php
   103	$wgLanguageCode = "ko";
   104	
   105	$wgSecretKey = "345a45c845d240850babc4476bcd0d614dc70179a920249695ce98f883680cf7";
   106	
   107	# Changing this will log out all existing sessions.
   108	$wgAuthenticationTokenVersion = "1";
   109	
   110	# Site upgrade key. Must be set to a string (default provided) to turn on the
   111	# web installer while LocalSettings.php is in place
   112	$wgUpgradeKey = "16자리 영숫자";
   113	
   114	## For attaching licensing metadata to pages, and displaying an
   115	## appropriate copyright notice / icon. GNU Free Documentation
   116	## License and Creative Commons licenses are supported so far.
   117	$wgRightsPage = ""; # Set to the title of a wiki page that describes your license/copyright
   118	$wgRightsUrl = "";
   119	$wgRightsText = "";
   120	$wgRightsIcon = "";
   121	
   122	# Path to the GNU diff3 utility. Used for conflict resolution.
   123	$wgDiff3 = "/usr/bin/diff3";
   124	
   125	## Default skin: you can change the default skin. Use the internal symbolic
   126	## names, ie 'vector', 'monobook':
   127	$wgDefaultSkin = "vector";
   128	
   129	# Enabled skins.
   130	# The following skins were automatically enabled:
   131	wfLoadSkin( 'MonoBook' );
   132	wfLoadSkin( 'Timeless' );
   133	wfLoadSkin( 'Vector' );
   134	
   135	
   136	# Enabled extensions. Most of the extensions are enabled by adding
   137	# wfLoadExtension( 'ExtensionName' );
   138	# to LocalSettings.php. Check specific extension documentation for more details.
   139	# The following extensions were automatically enabled:
   140	wfLoadExtension( 'CategoryTree' );
   141	wfLoadExtension( 'Cite' );
   142	wfLoadExtension( 'CiteThisPage' );
   143	wfLoadExtension( 'CodeEditor' );
   144	wfLoadExtension( 'ConfirmEdit' );
   145	wfLoadExtension( 'Gadgets' );
   146	wfLoadExtension( 'ImageMap' );
   147	wfLoadExtension( 'InputBox' );
   148	wfLoadExtension( 'Interwiki' );
   149	wfLoadExtension( 'LocalisationUpdate' );
   150	wfLoadExtension( 'MultimediaViewer' );
   151	wfLoadExtension( 'Nuke' );
   152	wfLoadExtension( 'OATHAuth' );
   153	wfLoadExtension( 'PageImages' );
   154	wfLoadExtension( 'ParserFunctions' );
   155	wfLoadExtension( 'PdfHandler' );
   156	wfLoadExtension( 'Poem' );
   157	wfLoadExtension( 'Renameuser' );
   158	wfLoadExtension( 'ReplaceText' );
   159	wfLoadExtension( 'Scribunto' );
   160	wfLoadExtension( 'SecureLinkFixer' );
   161	wfLoadExtension( 'SpamBlacklist' );
   162	wfLoadExtension( 'SyntaxHighlight_GeSHi' );
   163	wfLoadExtension( 'TemplateData' );
   164	wfLoadExtension( 'TextExtracts' );
   165	wfLoadExtension( 'TitleBlacklist' );
   166	wfLoadExtension( 'VisualEditor' );
   167	wfLoadExtension( 'WikiEditor' );
   168	
   169	
   170	# End of automatically generated settings.
   171	# Add more configuration options below.
   172	
study@study-VirtualBox:/var/www/html/w$ 

CLI에서 인스톨 과정을 거쳐 자동으로 생성된 LocalSettings.php 파일은 위와 같습니다.

이렇게 생성된 LocalSettings.php 파일 안의 설정값들은 GUI를 통해 생성된 것들과 비교하여 설정 자유도가 떨어집니다. 따라서 미디어위키 기본 설정값들을 커스터마이징하는데 GUI 방식보다 더 품이 더 많이 들게 됩니다.

 

http://localhost/w

인스톨 과정이 마무리된 후 웹브라우저로 미디어위키 도메인 주소에 접속하면 미디어위키 대문 문서에 정상적으로 접속되는 것을 확인할 수 있습니다.

 


아래는 터미널에서 이루어지는 미디어위키 전체 설치 과정입니다. 

study@study-VirtualBox:~$ cd 다운로드
study@study-VirtualBox:~/다운로드$ mkdir mediawiki
study@study-VirtualBox:~/다운로드$ cd mediawiki
study@study-VirtualBox:~/다운로드/mediawiki$ wget https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.2.tar.gz
--2021-04-22 16:08:12--  https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.2.tar.gz
releases.wikimedia.org (releases.wikimedia.org)을(를) 해석하는 중... 103.102.166.224, 2001:df2:e500:ed1a::1
접속 releases.wikimedia.org (releases.wikimedia.org)|103.102.166.224|:443... 접속됨.
HTTP 요청을 전송했습니다. 응답을 기다리는 중입니다... 200 OK
길이: 48109666 (46M) [application/x-gzip]
다음 위치에 저장: `mediawiki-1.35.2.tar.gz'

mediawiki-1.35.2.ta 100%[===================>]  45.88M  11.0MB/s    / 5.8s     s

2021-04-22 16:08:19 (7.89 MB/s) - `mediawiki-1.35.2.tar.gz' 저장됨 [48109666/48109666]

study@study-VirtualBox:~/다운로드/mediawiki$ gpg --fetch-keys "https://www.mediawiki.org/keys/keys.txt"
gpg: keybox '/home/study/.gnupg/pubring.kbx' created
gpg: requesting key from 'https://www.mediawiki.org/keys/keys.txt'
gpg: /home/study/.gnupg/trustdb.gpg: trustdb created
gpg: key 73F146FECF9D333C: public key "Tim Starling <tstarling@wikimedia.org>" imported
gpg: key C119E1A64D70938E: public key "Brion Vibber <brion@pobox.com>" imported
gpg: key 9B69B3109D3BB7B0: public key "Sam Reed <reedy@wikimedia.org>" imported
gpg: key 72BC1C5D23107F8A: public key "Chad Horohoe <chad@wikimedia.org>" imported
gpg: key F6DAD285018FAC02: public key "Tyler Cipriani <tcipriani@wikimedia.org>" imported
gpg: key 361F943B15C08DD4: public key "Brian Wolff (Bawolff) <bawolff@gmail.com>" imported
gpg: key 131910E01605D9AA: public key "Mukunda Modell (WMF) <mmodell@wikimedia.org>" imported
gpg: Total number processed: 7
gpg:               imported: 7
study@study-VirtualBox:~/다운로드/mediawiki$ wget https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.2.tar.gz.sig
--2021-04-22 16:09:29--  https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.2.tar.gz.sig
releases.wikimedia.org (releases.wikimedia.org)을(를) 해석하는 중... 103.102.166.224, 2001:df2:e500:ed1a::1
접속 releases.wikimedia.org (releases.wikimedia.org)|103.102.166.224|:443... 접속됨.
HTTP 요청을 전송했습니다. 응답을 기다리는 중입니다... 200 OK
길이: 95 [application/pgp-signature]
다음 위치에 저장: `mediawiki-1.35.2.tar.gz.sig'

mediawiki-1.35.2.ta 100%[===================>]      95  --.-KB/s    / 0s       

2021-04-22 16:09:31 (1.75 MB/s) - `mediawiki-1.35.2.tar.gz.sig' 저장됨 [95/95]

study@study-VirtualBox:~/다운로드/mediawiki$ ls
mediawiki-1.35.2.tar.gz  mediawiki-1.35.2.tar.gz.sig
study@study-VirtualBox:~/다운로드/mediawiki$ gpg --verify mediawiki-1.35.2.tar.gz.sig mediawiki-1.35.2.tar.gz
gpg: Signature made 2021년 04월 09일 (금) 
gpg:                using DSA key 1D98867E82982C8FE0ABC25F9B69B3109D3BB7B0
gpg: Good signature from "Sam Reed <reedy@wikimedia.org>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: 1D98 867E 8298 2C8F E0AB  C25F 9B69 B310 9D3B B7B0
study@study-VirtualBox:~/다운로드/mediawiki$ sudo tar xzf mediawiki-1.35.2.tar.gz -C /var/www/html
[sudo] study의 암호: 
study@study-VirtualBox:~/다운로드/mediawiki$ cd /var/www/html
study@study-VirtualBox:/var/www/html$ ls -F -1
index.html
mediawiki-1.35.2/
phpinfo.php
virtualhost01.net/
study@study-VirtualBox:/var/www/html$ ls -lF
합계 24
-rw-r--r--  1 root root 10918  9월  6  2020 index.html
drwxr-xr-x 14 root root  4096  4월 22 16:11 mediawiki-1.35.2/
-rw-r--r--  1 root root    20  9월 20  2020 phpinfo.php
drwxrwxr-x  2 root root  4096 10월 27 13:48 virtualhost01.net/
study@study-VirtualBox:/var/www/html$ sudo mv mediawiki-1.35.2 w
study@study-VirtualBox:/var/www/html$ ls -dl w
drwxr-xr-x 14 root root 4096  4월 22 16:11 w
study@study-VirtualBox:/var/www/html$ tree w -d -L 1
w
├── cache
├── docs
├── extensions
├── images
├── includes
├── languages
├── maintenance
├── mw-config
├── resources
├── skins
├── tests
└── vendor

12 directories
study@study-VirtualBox:/var/www/html$ cd w
study@study-VirtualBox:/var/www/html/w$ ls -dl images
drwxr-xr-x 2 root root 4096  4월 22 16:11 images
study@study-VirtualBox:/var/www/html/w$ sudo chown -R www-data:www-data images 
study@study-VirtualBox:/var/www/html/w$ sudo chmod 0755 images
study@study-VirtualBox:/var/www/html/w$ php maintenance/install.php --env-checks
PHP 7.4.3 is installed.
Found ImageMagick: /usr/bin/convert. Image thumbnailing will be enabled if you enable uploads.
Found the Git version control software: /usr/bin/git.
Using server name "http://localhost".
Warning: No --scriptpath specified, using default: /wiki.
Using server URL "http://localhost/wiki".
Warning: Your default directory for uploads (/var/www/html/w/images/) is not checked for vulnerability to arbitrary script execution during the CLI install.
Using the PHP intl extension for Unicode normalization.
The environment has been checked. You can install MediaWiki.
study@study-VirtualBox:/var/www/html/w$ sudo php maintenance/install.php \
> --dbserver="localhost" \
> --dbname=wikidb \
> --dbprefix=w_ \
> --installdbuser=root \
> --installdbpass=0000 \
> --dbuser=wikiuser \
> --dbpass=0000 \
> --confpath=/var/www/html/w \
> --scriptpath=/w \
> --lang=ko \
> --with-extensions \
> --pass=xxxxxxxxxx \
> "씨실과 날실" "관리자"
[sudo] study의 암호: 
PHP 7.4.3이(가) 설치되어 있습니다.
ImageMagick를 찾았습니다: /usr/bin/convert. 올리기를 활성화할 경우 그림 섬네일이 활성화됩니다.
Git 버전 관리 소프트웨어를 찾았습니다: /usr/bin/git.
"http://localhost" 서버 이름을 사용 중입니다.
"http://localhost/w" 서버 URL을 사용 중입니다.
경고: 올리기를 위한 기본 디렉터리(/var/www/html/w/images/)는 CLI를 설치하는 동안 임의의 스크립트 실행에 대한 취약점에 대해 검사되지 않습니다.
유니코드 정규화에 PHP intl 확장 기능을 사용합니다.
환경이 확인되었습니다. 미디어위키를 설치할 수 있습니다.
확장 기능을 포함하는 중
완료
데이터베이스를 설정하는 중
완료
테이블을 만드는 중
완료
데이터베이스 사용자를 만드는 중
완료
Creating tables, step two
완료
기본 인터위키 테이블을 채우는 중
완료
통계를 초기화하는 중
완료
보안 키를 만드는 중
완료
불필요한 업데이트 실행 방지
완료
Restoring mediawiki services
완료
관리자 사용자 계정을 만드는 중
완료
기본 내용으로 대문을 만드는 중
완료
활성화된 확장 기능을 위한 테이블을 만드는 중
Creating oathauth_users table ...done.
...oathauth_users table does not contain secret_reset field.
...have module field in oathauth_users table.
...oathauth_users table does not contain secret field.
완료
데이터베이스가 성공적으로 구축되었습니다
미디어위키가 성공적으로 설치되었습니다. 이제 <http://localhost/w>에 방문하여 위키를 볼 수 있습니다. 질문이 있으시다면 자주 묻는 질문 목록을 살펴보십시오: <https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ> 아니면 해당 문서에 연결된 지원 포럼 중 한곳을 이용하십시오.
study@study-VirtualBox:/var/www/html/w$