전자정부 cron 사용

JAVA 2024. 11. 21. 07:57

 

    <bean id="sysLogging" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
        <property name="targetObject" ref="egovSysLogScheduling" />
        <property name="targetMethod" value="sysLogSummary" />
        <property name="concurrent" value="false" />
    </bean>

    <bean id="sysLogTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean">
        <property name="jobDetail" ref="sysLogging" />
        <property name="startDelay" value="30000" />
        <property name="repeatInterval" value="864000000" />
    </bean>

    <bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
        <property name="jobDetail" ref="sysLogging" />
        <property name="cronExpression" value="0 11 * * * ?" />
    </bean>

    <bean id="sysLogScheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
        <property name="triggers">
            <list>
                <ref bean="cronTrigger" />
            </list>
        </property>
    </bean>

 

 

sysLogTrigger 에서 cronTrigger 로 변경

cronTriggerBean 에서 cronTriggerFactoryBean 으로 변경

 

 

 

블로그 이미지

엘로드넷

,

render_list 옵션

OSM 2024. 10. 13. 10:57
-a, --all render all tiles in given zoom level range instead of reading from STDIN
-f, --force render tiles even if they seem current
-m, --map=MAP render tiles in this map style (defaults to 'default')
-l, --max-load=LOAD sleep if load is this high (defaults to 16)
-s, --socket=SOCKET unix domain socket name for contacting renderd
-n, --num-threads=N the number of parallel request threads, and consequently the number of parallel rendering threads (default 1)
-t, --tile-dir tile cache directory (defaults to '/var/lib/mod_tile'). Has to be consistent with what renderd uses, as it is used (only) for checking if up-to-date tiles exist.
-z, --min-zoom=ZOOM filter input to only render tiles greater or equal to this zoom level (default is 0)
-Z, --max-zoom=ZOOM filter input to only render tiles less than or equal to this zoom level (default is 20)
-x, --min-x=X minimum X tile coordinate
-X, --max-x=X maximum X tile coordinate
-y, --min-y=Y minimum Y tile coordinate
-Y, --max-y=Y maximum Y tile coordinate

 

source : https://www.volkerschatz.com/net/osm/render_list.html

 

Online manual of render_list

-t, --tile-dir tile cache directory (defaults to '/var/lib/mod_tile'). Has to be consistent with what renderd uses, as it is used (only) for checking if up-to-date tiles exist.

www.volkerschatz.com

 

아래 두 명령어는 동일하다.

 

render_list -v --all -n 4 --socket=/var/run/renderd/renderd.sock --min-zoom=6 --max-zoom=6 --map=ajt --tile-dir=/home3/mod_tile

 

render_list -v -a -n 4 -s /var/run/renderd/renderd.sock -z 6 -Z 6 -m ajt -t /home3/mod_tile
블로그 이미지

엘로드넷

,

1. 서버사양(Server Spec) :

 

Model : Dell Precision T5600 (PCIe v3)

ubuntu 20.04.6

cpu : Xeon E5-2643 3.3GHz Dual

ram : 32G

hdd : samsung nvme m.2 980 Pro with heatsink 2TB

 

2. planet-latest.osm.pbf (2024.09)

renderaccount@ellord-Precision-T5600:/home3/data$ du -sh planet-latest.osm.pbf 
77G	planet-latest.osm.pbf
renderaccount@ellord-Precision-T5600:/home3/data$

 

 

3. osm2pgsql

renderaccount@ellord-Precision-T5600:/home3/data$ osm2pgsql -d gis --create --slim -G --hstore --tag-transform-script ~/src/openstreetmap-carto/openstreetmap-carto.lua -C 12000 --number-processes 10 -S ~/src/openstreetmap-carto/openstreetmap-carto.style /home3/data/planet-latest.osm.pbf 
osm2pgsql version 1.2.1 (64 bit id space)

Allocating memory for dense node cache
Allocating dense node cache in one big chunk
Allocating memory for sparse node cache
Sharing dense sparse
Node-cache: cache=12000MB, maxblocks=192000*65536, allocation method=11
Mid: pgsql, cache=12000
Setting up table: planet_osm_nodes
Setting up table: planet_osm_ways
Setting up table: planet_osm_rels
Using lua based tag processing pipeline with script /home/renderaccount/src/openstreetmap-carto/openstreetmap-carto.lua
Using projection SRS 3857 (Spherical Mercator)
Setting up table: planet_osm_point
Setting up table: planet_osm_line
Setting up table: planet_osm_polygon
Setting up table: planet_osm_roads

Reading in file: /home3/data/planet-latest.osm.pbf
Using PBF parser.
Processing: Node(9392643k 491.5k/s) Way(1050544k 3.70k/s) Relation(12528500 189.62/s)  parse time: 369432s
Node stats: total(9392643418), max(12179381022) in 19111s
Way stats: total(1050544832), max(1315819058) in 284248s
Relation stats: total(12528527), max(18049831) in 66073s
Sorting data and creating indexes for planet_osm_line
Sorting data and creating indexes for planet_osm_polygon
Sorting data and creating indexes for planet_osm_roads
Stopping table: planet_osm_nodes
Stopping table: planet_osm_ways
Sorting data and creating indexes for planet_osm_point
Stopping table: planet_osm_rels
Building index on table: planet_osm_ways
Building index on table: planet_osm_rels
Stopped table: planet_osm_nodes in 0s
Copying planet_osm_roads to cluster by geometry finished
Creating geometry index on planet_osm_roads
Creating osm_id index on planet_osm_roads
Creating indexes on planet_osm_roads finished
All indexes on planet_osm_roads created in 1385s
Completed planet_osm_roads
Copying planet_osm_point to cluster by geometry finished
Creating geometry index on planet_osm_point
Stopped table: planet_osm_rels in 2576s
Copying planet_osm_line to cluster by geometry finished
Creating geometry index on planet_osm_line
Creating osm_id index on planet_osm_point
Creating indexes on planet_osm_point finished
All indexes on planet_osm_point created in 6749s
Completed planet_osm_point
Creating osm_id index on planet_osm_line
Creating indexes on planet_osm_line finished
All indexes on planet_osm_line created in 13915s
Completed planet_osm_line
WARNING:  terminating connection because of crash of another server process
DETAIL:  The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory.
HINT:  In a moment you should be able to reconnect to the database and repeat your command.

Osm2pgsql took 389484s overall
node cache: stored: 1460253237(15.55%), storage efficiency: 92.84% (dense blocks: 168803, sparse nodes: 95018032), hit rate: 15.29%

 

 

흠...

 

마지막 polygon import 단계에서 오류발생하여 종료됨.

 

총 시간 : 389484 초 (4일 12시간 정도 소요됨)

 

 

 

4. polygon에서 오류는 발생하였지만 polygon을 제외하고 지도는 정상적으로 표시됨.

 

 

 

 

5. postgis database 용량

 

renderaccount@ellord-Precision-T5600:/home3$ sudo du -sh postgres-data/
1.5T	postgres-data/
renderaccount@ellord-Precision-T5600:/home3$ sudo du -s postgres-data/
1603660736	postgres-data/
renderaccount@ellord-Precision-T5600:/home3$ sudo du postgres-data/
4	postgres-data/main/pg_stat_tmp
20	postgres-data/main/pg_xact
4	postgres-data/main/pg_serial
4	postgres-data/main/pg_logical/mappings
4	postgres-data/main/pg_logical/snapshots
16	postgres-data/main/pg_logical
184	postgres-data/main/pg_subtrans
632	postgres-data/main/global
4	postgres-data/main/pg_commit_ts
4	postgres-data/main/pg_snapshots
4	postgres-data/main/pg_tblspc
12	postgres-data/main/pg_multixact/offsets
12	postgres-data/main/pg_multixact/members
28	postgres-data/main/pg_multixact
4	postgres-data/main/pg_wal/archive_status
1048584	postgres-data/main/pg_wal
1415201364	postgres-data/main/base/16385
7852	postgres-data/main/base/1
187386284	postgres-data/main/base/pgsql_tmp
7844	postgres-data/main/base/13462
7852	postgres-data/main/base/13463
1602611200	postgres-data/main/base
12	postgres-data/main/pg_notify
4	postgres-data/main/pg_stat
4	postgres-data/main/pg_dynshmem
4	postgres-data/main/pg_replslot
4	postgres-data/main/pg_twophase
1603660732	postgres-data/main
1603660736	postgres-data/
renderaccount@ellord-Precision-T5600:/home3$

 

polygon  까지 합하면 2TB 가까이 예상됨.

 

블로그 이미지

엘로드넷

,

1. 현재 디렉토리 확인

 

renderaccount@ellord-Precision-T5600:/home2/data$ sudo -u postgres -i
postgres@ellord-Precision-T5600:~$ psql
psql (12.20 (Ubuntu 12.20-0ubuntu0.20.04.1))
Type "help" for help.

postgres=# 
postgres=# show data_directory;
       data_directory        
-----------------------------
 /var/lib/postgresql/12/main
(1 row)

postgres=#

 

 

2. postgresql 중지

renderaccount@ellord-Precision-T5600:/home3$ sudo service postgresql stop
renderaccount@ellord-Precision-T5600:/home3$

 

 

3. 새로운 위치 생성

renderaccount@ellord-Precision-T5600:/home3$ mkdir postgres-data
renderaccount@ellord-Precision-T5600:/home3$ sudo chown postgres:postgres postgres-data/
[sudo] renderaccount 암호: 
renderaccount@ellord-Precision-T5600:/home3$ sudo chmod 700 postgres-data/
renderaccount@ellord-Precision-T5600:/home3$ ls -la
합계 36
drwxr-xr-x  6 renderaccount renderaccount  4096 10월  8 19:54 .
drwxr-xr-x 22 root          root           4096 10월  8 19:30 ..
drwx------  2 postgres      postgres       4096 10월  8 19:54 postgres-data

 

 

4. 새로운 공간으로 데이터 이전

renderaccount@ellord-Precision-T5600:/home3$ sudo mv /var/lib/postgresql/12/main/ /home3/postgres-data/
renderaccount@ellord-Precision-T5600:/home3$

 

 

5. conf 파일 수정

root@ellord-Precision-T5600:/home3/postgres-data# cd /etc/postgresql/12/main/postgresql.conf

data_directory = '/home3/postgres-data/main'

 

 

6. PostgreSQL 서비스 시작

renderaccount@ellord-Precision-T5600:/home3$ sudo service postgresql start
renderaccount@ellord-Precision-T5600:/home3$ sudo service postgresql status
● postgresql.service - PostgreSQL RDBMS
     Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor pr>
     Active: active (exited) since Tue 2024-10-08 20:03:28 KST; 16s ago
    Process: 12867 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
   Main PID: 12867 (code=exited, status=0/SUCCESS)

10월 08 20:03:28 ellord-Precision-T5600 systemd[1]: Starting PostgreSQL RDBMS...
10월 08 20:03:28 ellord-Precision-T5600 systemd[1]: Finished PostgreSQL RDBMS.
lines 1-8/8 (END)
블로그 이미지

엘로드넷

,

 

1. event_scheduler 설정 확인

 

MariaDB [mysql]> show variables like'%event_scheduler%';
+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| event_scheduler | OFF   |
+-----------------+-------+
1 row in set (0.001 sec)

 

 

2. event_scheduler 를 ON 으로 설정

 

MariaDB [mysql]> set global event_scheduler = ON;
ERROR 1408 (HY000): Event Scheduler: An error occurred when initializing system tables. Disabling the Event Scheduler.

 

에러가 난다.

 

 

3. Mariadb 서버를 빠져나와  mysql_upgrade 를 실행

mysql_upgrade 파일은 /usr/bin 에 있다.

[root@localhost my.cnf.d]# whereis mysql
mysql: /usr/bin/mysql /usr/lib64/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz
[root@localhost my.cnf.d]# cd /usr/bin
[root@localhost bin]# pwd
/usr/bin
[root@localhost bin]# ls mysql* -ls
 4308 -rwxr-xr-x. 1 root root  4409824 Aug 10  2022 mysql
  112 -rwxr-xr-x. 1 root root   111950 Aug 10  2022 mysqlaccess
 3828 -rwxr-xr-x. 1 root root  3917696 Aug 10  2022 mysqladmin
 4076 -rwxr-xr-x. 1 root root  4171992 Aug 10  2022 mysqlbinlog
 3820 -rwxr-xr-x. 1 root root  3910760 Aug 10  2022 mysqlcheck
    8 -rwxr-xr-x. 1 root root     4217 Aug 10  2022 mysql_convert_table_format
   28 -rwxr-xr-x. 1 root root    27326 Aug 10  2022 mysqld_multi
   32 -rwxr-xr-x. 1 root root    30778 Aug 10  2022 mysqld_safe
 3464 -rwxr-xr-x. 1 root root  3543896 Aug 10  2022 mysqld_safe_helper
 3920 -rwxr-xr-x. 1 root root  4010816 Aug 10  2022 mysqldump
   12 -rwxr-xr-x. 1 root root     8242 Aug 10  2022 mysqldumpslow
20876 -rwxr-xr-x. 1 root root 21373048 Aug 10  2022 mysql_embedded
    4 -rwxr-xr-x. 1 root root     3290 Aug 10  2022 mysql_find_rows
    4 -rwxr-xr-x. 1 root root     1250 Aug 10  2022 mysql_fix_extensions
   36 -rwxr-xr-x. 1 root root    34963 Aug 10  2022 mysqlhotcopy
 3816 -rwxr-xr-x. 1 root root  3905592 Aug 10  2022 mysqlimport
   20 -rwxr-xr-x. 1 root root    20092 Aug 10  2022 mysql_install_db
 3504 -rwxr-xr-x. 1 root root  3587144 Aug 10  2022 mysql_plugin
   16 -rwxr-xr-x. 1 root root    12527 Aug 10  2022 mysql_secure_installation
   20 -rwxr-xr-x. 1 root root    17542 Aug 10  2022 mysql_setpermission
 3812 -rwxr-xr-x. 1 root root  3899944 Aug 10  2022 mysqlshow
 3832 -rwxr-xr-x. 1 root root  3923520 Aug 10  2022 mysqlslap
 3500 -rwxr-xr-x. 1 root root  3582424 Aug 10  2022 mysql_tzinfo_to_sql
 3596 -rwxr-xr-x. 1 root root  3678784 Aug 10  2022 mysql_upgrade
 3492 -rwxr-xr-x. 1 root root  3573856 Aug 10  2022 mysql_waitpid

 

 

4. mysql_upgrade 를 수행해 본다.

[root@localhost bin]# ./mysql_upgrade 
This installation of MariaDB is already upgraded to 10.11.8-MariaDB.
There is no need to run mysql_upgrade again for 10.11.8-MariaDB.
You can use --force if you still want to run mysql_upgrade

 

이미 업그레이드가 되어 있어서 할 필요가 없다 하므로 강제로 다시 시도한다.

 

[root@localhost bin]# ./mysql_upgrade -f
Phase 1/8: Checking and upgrading mysql database
Processing databases
mysql
mysql.column_stats                                 OK
mysql.columns_priv                                 OK
mysql.db                                           OK
mysql.event                                        OK
mysql.func                                         OK
mysql.global_priv                                  OK
mysql.gtid_slave_pos                               OK
mysql.help_category                                OK
mysql.help_keyword                                 OK
mysql.help_relation                                OK
mysql.help_topic                                   OK
mysql.host                                         OK
mysql.index_stats                                  OK
mysql.innodb_index_stats                           OK
mysql.innodb_table_stats                           OK
mysql.plugin                                       OK
mysql.proc                                         OK
mysql.procs_priv                                   OK
mysql.proxies_priv                                 OK
mysql.roles_mapping                                OK
mysql.servers                                      OK
mysql.table_stats                                  OK
mysql.tables_priv                                  OK
mysql.time_zone                                    OK
mysql.time_zone_leap_second                        OK
mysql.time_zone_name                               OK
mysql.time_zone_transition                         OK
mysql.time_zone_transition_type                    OK
mysql.transaction_registry                         OK
Phase 2/8: Installing used storage engines... Skipped
Phase 3/8: Running 'mysql_fix_privilege_tables'
Phase 4/8: Fixing views

...

중략

...

performance_schema
sys
sys.sys_config                                     OK
test
Phase 7/8: uninstalling plugins
Phase 8/8: Running 'FLUSH PRIVILEGES'
OK

 

 

5. my.cnf 파일에도 추가한다.

 

[root@localhost bin]# vi /etc/my.cnf.d/server.cnf

 

[mysqld]

 

event_scheduler = on

 

 

 

6. Mariadb 서버를 재시작한다.

 

[root@localhost bin]# systemctl restart mariadb

 

 

 

7. Mariadb 서버에 접속하여 event_scheduler 설정상태를 확인해 본다.

 

MariaDB [mysql]> show variables like '%event_scheduler%';
+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| event_scheduler | OFF   |
+-----------------+-------+
1 row in set (0.001 sec)

MariaDB [mysql]>

 

 

event_scheduler 를 ON 으로 세팅한다.

MariaDB [mysql]> set global event_scheduler = ON;
Query OK, 0 rows affected (0.000 sec)

MariaDB [mysql]> show variables like '%event_scheduler%';
+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| event_scheduler | ON    |
+-----------------+-------+
1 row in set (0.002 sec)

MariaDB [mysql]>

 

 

 

 

 

 

 

 

 

블로그 이미지

엘로드넷

,

 

osm2pgsql --append 가 속도가 느리므로 osm2pgsql --create 를 사용하기 위해 pbf파일을 묶어준다.

 

1. osmium-tool 설치

                    
renderaccount@ellord-Precision-T5600:/var/lib/postgresql$ sudo apt install osmium-tool
패키지 목록을 읽는 중입니다... 완료
의존성 트리를 만드는 중입니다       
상태 정보를 읽는 중입니다... 완료
다음 새 패키지를 설치할 것입니다:
  osmium-tool
0개 업그레이드, 1개 새로 설치, 0개 제거 및 65개 업그레이드 안 함.
749 k바이트 아카이브를 받아야 합니다.
이 작업 후 2,461 k바이트의 디스크 공간을 더 사용하게 됩니다.
받기:1 http://kr.archive.ubuntu.com/ubuntu focal/universe amd64 osmium-tool amd64 1.11.1-1build2 [749 kB]
내려받기 749 k바이트, 소요시간 2초 (338 k바이트/초)
Selecting previously unselected package osmium-tool.
(데이터베이스 읽는중 ...현재 220379개의 파일과 디렉터리가 설치되어 있습니다.)
Preparing to unpack .../osmium-tool_1.11.1-1build2_amd64.deb ...
Unpacking osmium-tool (1.11.1-1build2) ...
osmium-tool (1.11.1-1build2) 설정하는 중입니다 ...
Processing triggers for man-db (2.9.1-1) ...
renderaccount@ellord-Precision-T5600:/var/lib/postgresql$

 

 

2. pdf merge

 

osmuim cat asia.pbf africa.pbf -o merged.osm

cat 대신에  merge 를 사용해도 됨.

 

 

3. osm2pgsql 를 실행한다.

 

 

 

블로그 이미지

엘로드넷

,

줌 레벨별로 미리 렌더링 하기

 

 

$ render_list  --all -num-threads=1 --socket=/var/run/renderd/renderd.sock --tile-dir=/home2/mod_tile --map=ajt --min-zoom=10 --max-zoom=11 

 

1. --all : render all tiles

2. -num-threads : rendering에 사용될 cpu core 수 (default 1)

3. --tile-dir : 지도 이미지 저장 경로

4. --map :  zoom별 지도 이미지 저장 폴더

5. --min-zoom : 최소레벨( default 0)

6. --max-zoom : 최대레벨(default 20)

 

ajt : 맵데이터가 저장된 폴더명 (--tile-dir 옵션이 주어지지 않으면 디폴트는 /var/lib/mod_tile/ajt)

 

 

 

위 명령어는 다음과 같이 해도 된다.

 

$ render_list  -a -n 1 -s /var/run/renderd/renderd.sock -t /home2/mod_tile -m ajt -z 10 Z 11 

 

renderaccount@48efa0ebd424:/var/lib/mod_tile$ render_list -v --all -n 1 --socket=/var/run/renderd/renderd.sock --min-zoom=10 --max-zoom=11 --map=ajt
debug: init_storage_backend: initialising file storage backend at: /var/lib/mod_tile
Rendering client
Starting 1 rendering threads
Rendering all tiles from zoom 10 to zoom 11
Rendering all tiles for zoom 10 from (0, 0) to (1023, 1023)

 

 

renderd 로그 보기

 

아래와 같은 로그를 확인할 수 있다.

 

 

renderd[58384]: DEBUG: Sending render cmd(3 ajt 10/72/472) with protocol version 2 to fd 11
renderd[58384]: DEBUG: Got incoming request with protocol version 2
renderd[58384]: DEBUG: Got command RenderBulk fd(11) xml(ajt), z(10), x(72), y(480), mime(image/png), options()
renderd[58384]: DEBUG: START TILE ajt 10 72-79 480-487, new metatile
renderd[58384]: Rendering projected coordinates 10 72 480 -> -17219733.732094|939258.203569 -16906647.664237|1252344.271425 to a 8 x 8 tile
renderd[58384]: DEBUG: DONE TILE ajt 10 72-79 480-487 in 0.369 seconds
debug: Creating and writing a metatile to /var/lib/mod_tile/ajt/10/0/0/1/78/128.meta

renderd[58384]: DEBUG: Sending render cmd(3 ajt 10/72/480) with protocol version 2 to fd 11
renderd[58384]: DEBUG: Got incoming request with protocol version 2
renderd[58384]: DEBUG: Got command RenderBulk fd(11) xml(ajt), z(10), x(72), y(488), mime(image/png), options()
renderd[58384]: DEBUG: START TILE ajt 10 72-79 488-495, new metatile
renderd[58384]: Rendering projected coordinates 10 72 488 -> -17219733.732094|626172.135713 -16906647.664237|939258.203569 to a 8 x 8 tile
renderd[58384]: DEBUG: DONE TILE ajt 10 72-79 488-495 in 0.369 seconds
debug: Creating and writing a metatile to /var/lib/mod_tile/ajt/10/0/0/1/78/136.meta

renderd[58384]: DEBUG: Sending render cmd(3 ajt 10/72/488) with protocol version 2 to fd 11
renderd[58384]: DEBUG: Got incoming request with protocol version 2
renderd[58384]: DEBUG: Got command RenderBulk fd(11) xml(ajt), z(10), x(72), y(496), mime(image/png), options()
renderd[58384]: DEBUG: START TILE ajt 10 72-79 496-503, new metatile
renderd[58384]: Rendering projected coordinates 10 72 496 -> -17219733.732094|313086.067856 -16906647.664237|626172.135713 to a 8 x 8 tile
renderd[58384]: DEBUG: DONE TILE ajt 10 72-79 496-503 in 0.369 seconds
debug: Creating and writing a metatile to /var/lib/mod_tile/ajt/10/0/0/1/79/128.meta

renderd[58384]: DEBUG: Sending render cmd(3 ajt 10/72/496) with protocol version 2 to fd 11
renderd[58384]: DEBUG: Got incoming request with protocol version 2
renderd[58384]: DEBUG: Got command RenderBulk fd(11) xml(ajt), z(10), x(72), y(504), mime(image/png), options()
renderd[58384]: DEBUG: START TILE ajt 10 72-79 504-511, new metatile
renderd[58384]: Rendering projected coordinates 10 72 504 -> -17219733.732094|0.000000 -16906647.664237|313086.067856 to a 8 x 8 tile
renderd[58384]: DEBUG: DONE TILE ajt 10 72-79 504-511 in 0.373 seconds
debug: Creating and writing a metatile to /var/lib/mod_tile/ajt/10/0/0/1/79/136.meta

renderd[58384]: DEBUG: Sending render cmd(3 ajt 10/72/504) with protocol version 2 to fd 11
renderd[58384]: DEBUG: Got incoming request with protocol version 2
renderd[58384]: DEBUG: Got command RenderBulk fd(11) xml(ajt), z(10), x(72), y(512), mime(image/png), options()
renderd[58384]: DEBUG: START TILE ajt 10 72-79 512-519, new metatile
renderd[58384]: Rendering projected coordinates 10 72 512 -> -17219733.732094|-313086.067856 -16906647.664237|0.000000 to a 8 x 8 tile
renderd[58384]: DEBUG: DONE TILE ajt 10 72-79 512-519 in 0.374 seconds
debug: Creating and writing a metatile to /var/lib/mod_tile/ajt/10/0/0/2/64/128.meta

renderd[58384]: DEBUG: Sending render cmd(3 ajt 10/72/512) with protocol version 2 to fd 11
renderd[58384]: DEBUG: Got incoming request with protocol version 2
renderd[58384]: DEBUG: Got command RenderBulk fd(11) xml(ajt), z(10), x(72), y(520), mime(image/png), options()
renderd[58384]: DEBUG: START TILE ajt 10 72-79 520-527, new metatile
renderd[58384]: Rendering projected coordinates 10 72 520 -> -17219733.732094|-626172.135713 -16906647.664237|-313086.067856 to a 8 x 8 tile
renderd[58384]: DEBUG: DONE TILE ajt 10 72-79 520-527 in 0.368 seconds
debug: Creating and writing a metatile to /var/lib/mod_tile/ajt/10/0/0/2/64/136.meta

renderd[58384]: DEBUG: Sending render cmd(3 ajt 10/72/520) with protocol version 2 to fd 11
renderd[58384]: DEBUG: Got incoming request with protocol version 2
renderd[58384]: DEBUG: Got command RenderBulk fd(11) xml(ajt), z(10), x(72), y(528), mime(image/png), options()
renderd[58384]: DEBUG: START TILE ajt 10 72-79 528-535, new metatile
renderd[58384]: Rendering projected coordinates 10 72 528 -> -17219733.732094|-939258.203569 -16906647.664237|-626172.135713 to a 8 x 8 tile
renderd[58384]: DEBUG: DONE TILE ajt 10 72-79 528-535 in 0.379 seconds
debug: Creating and writing a metatile to /var/lib/mod_tile/ajt/10/0/0/2/65/128.meta

renderd[58384]: DEBUG: Sending render cmd(3 ajt 10/72/528) with protocol version 2 to fd 11
renderd[58384]: DEBUG: Got incoming request with protocol version 2
renderd[58384]: DEBUG: Got command RenderBulk fd(11) xml(ajt), z(10), x(72), y(536), mime(image/png), options()
renderd[58384]: DEBUG: START TILE ajt 10 72-79 536-543, new metatile
renderd[58384]: Rendering projected coordinates 10 72 536 -> -17219733.732094|-1252344.271425 -16906647.664237|-939258.203569 to a 8 x 8 tile
renderd[58384]: DEBUG: DONE TILE ajt 10 72-79 536-543 in 0.377 seconds
debug: Creating and writing a metatile to /var/lib/mod_tile/ajt/10/0/0/2/65/136.meta

renderd[58384]: DEBUG: Sending render cmd(3 ajt 10/72/536) with protocol version 2 to fd 11
renderd[58384]: DEBUG: Got incoming request with protocol version 2
renderd[58384]: DEBUG: Got command RenderBulk fd(11) xml(ajt), z(10), x(72), y(544), mime(image/png), options()
renderd[58384]: DEBUG: START TILE ajt 10 72-79 544-551, new metatile
renderd[58384]: Rendering projected coordinates 10 72 544 -> -17219733.732094|-1565430.339281 -16906647.664237|-1252344.271425 to a 8 x 8 tile
renderd[58384]: DEBUG: DONE TILE ajt 10 72-79 544-551 in 0.378 seconds
debug: Creating and writing a metatile to /var/lib/mod_tile/ajt/10/0/0/2/66/128.meta

renderd[58384]: DEBUG: Sending render cmd(3 ajt 10/72/544) with protocol version 2 to fd 11
renderd[58384]: DEBUG: Got incoming request with protocol version 2
renderd[58384]: DEBUG: Got command RenderBulk fd(11) xml(ajt), z(10), x(72), y(552), mime(image/png), options()
renderd[58384]: DEBUG: START TILE ajt 10 72-79 552-559, new metatile
renderd[58384]: Rendering projected coordinates 10 72 552 -> -17219733.732094|-1878516.407137 -16906647.664237|-1565430.339281 to a 8 x 8 tile
renderd[58384]: DEBUG: DONE TILE ajt 10 72-79 552-559 in 0.386 seconds
debug: Creating and writing a metatile to /var/lib/mod_tile/ajt/10/0/0/2/66/136.meta

renderd[58384]: DEBUG: Sending render cmd(3 ajt 10/72/552) with protocol version 2 to fd 11
renderd[58384]: DEBUG: Got incoming request with protocol version 2
renderd[58384]: DEBUG: Got command RenderBulk fd(11) xml(ajt), z(10), x(72), y(560), mime(image/png), options()
renderd[58384]: DEBUG: START TILE ajt 10 72-79 560-567, new metatile
renderd[58384]: Rendering projected coordinates 10 72 560 -> -17219733.732094|-2191602.474994 -16906647.664237|-1878516.407137 to a 8 x 8 tile
renderd[58384]: DEBUG: DONE TILE ajt 10 72-79 560-567 in 0.378 seconds
debug: Creating and writing a metatile to /var/lib/mod_tile/ajt/10/0/0/2/67/128.meta

renderd[58384]: DEBUG: Sending render cmd(3 ajt 10/72/560) with protocol version 2 to fd 11
renderd[58384]: DEBUG: Got incoming request with protocol version 2
renderd[58384]: DEBUG: Got command RenderBulk fd(11) xml(ajt), z(10), x(72), y(568), mime(image/png), options()
renderd[58384]: DEBUG: START TILE ajt 10 72-79 568-575, new metatile
renderd[58384]: Rendering projected coordinates 10 72 568 -> -17219733.732094|-2504688.542850 -16906647.664237|-2191602.474994 to a 8 x 8 tile

 

 

 

렌더링된 맵데이터 용량 확인

 

아래와 같이 점점 증가하고 있음을 확인할 수 있다.

root@48efa0ebd424:/var/lib/mod_tile# pwd
/var/lib/mod_tile
root@48efa0ebd424:/var/lib/mod_tile# du -sh ajt
412M	ajt
root@48efa0ebd424:/var/lib/mod_tile# du -sh ajt
412M	ajt
root@48efa0ebd424:/var/lib/mod_tile# du -sh ajt
413M	ajt
root@48efa0ebd424:/var/lib/mod_tile# du -sh ajt
414M	ajt
root@48efa0ebd424:/var/lib/mod_tile#

 

블로그 이미지

엘로드넷

,

 

9.1  apache - render 설정

설정파일 : /usr/local/etc/renderd.conf

 

[renderd]
num_threads=4
tile_dir=/var/lib/mod_tile
stats_file=/var/run/renderd/renderd.stats

[mapnik]
plugins_dir=/usr/lib/mapnik/3.0/input
font_dir=/usr/share/fonts/truetype
font_dir_recurse=1

[ajt]
URI=/hot/
TILEDIR=/var/lib/mod_tile
XML=/home/renderaccount/src/openstreetmap-carto/mapnik.xml
HOST=localhost
TILESIZE=256
MAXZOOM=20

 

 

 

9.2 apache 설정

$ sudo mkdir /var/lib/mod_tile

$ sudo chown renderaccount /var/lib/mod_tile

$ sudo mkdir /var/run/renderd

$ sudo chown renderaccount /var/run/renderd

$ sudo vi /etc/apache2/conf-available/mod_tile.conf

 

LoadModule tile_module /usr/lib/apache2/modules/mod_tile.so

 

 

$ sudo a2enconf mod_tile

Enabling conf mod_tile.

To activate the new configuration, you need to run:

  service apache2 reload

 

 

$ sudo vi /etc/apache2/sites-available/000-default.conf

아래와 같이 추가

        LoadTileConfigFile /usr/local/etc/renderd.conf

        ModTileRenderdSocketName /var/run/renderd/renderd.sock

        ModTileRequestTimeout 0

        ModTileMissingRequestTimeout 30

 

<VirtualHost *:80>
        # The ServerName directive sets the request scheme, hostname and port that
        # the server uses to identify itself. This is used when creating
        # redirection URLs. In the context of virtual hosts, the ServerName
        # specifies what hostname must appear in the request's Host: header to
        # match this virtual host. For the default virtual host (this file) this
        # value is not decisive as it is used as a last resort host regardless.
        # However, you must set it for any further virtual host explicitly.
        #ServerName www.example.com

        ServerAdmin webmaster@localhost
        
        LoadTileConfigFile /usr/local/etc/renderd.conf
        ModTileRenderdSocketName /var/run/renderd/renderd.sock
        ModTileRequestTimeout 0
        ModTileMissingRequestTimeout 30

        DocumentRoot /var/www/html

        # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
        # error, crit, alert, emerg.
        # It is also possible to configure the loglevel for particular
        # modules, e.g.
        #LogLevel info ssl:warn

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

        # For most configuration files from conf-available/, which are
        # enabled or disabled at a global level, it is possible to
        # include a line for only one particular virtual host. For example the
        # following line enables the CGI configuration for this host only
        # after it has been globally disabled with "a2disconf".
        #Include conf-available/serve-cgi-bin.conf
</VirtualHost>

 

 

웹서버 시작

$ sudo service apache2 start

 * Starting Apache httpd web server apache2                                                    [Sun Sep 08 20:19:08.359783 2024] [tile:notice] [pid 23931:tid 140630557449280] Loading tile config ajt at /hot/ for zooms 0 - 20 from tile directory /var/lib/mod_tile with extension .png and mime type image/png

AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 172.17.0.2. Set the 'ServerName' directive globally to suppress this message

 * 

$ sudo service apache2 status

 * apache2 is running

$ 

 

 

 

웹서버 타일 보기

$ sudo cp ~/src/mod_tile/extra/sample_leaflet.html /var/www/html/

$ sudo vi /var/www/html/sample_leaflet.html

 

중심좌표 :   우리나라 중심 좌표 : 위도(latitude) 36.355, 경도(longitude) 127.766

배율 : 5

맵타일서버  IP : http://0.0.0.0 (상황에 맞게 별도 포트인 경우 포트까지 적어줌)

<!DOCTYPE html>
<html style="height:100%;margin:0;padding:0;">
<title>Leaflet page with tiles from localhost</title>
<meta charset="utf-8">
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.3/dist/leaflet.css" />
<script src="https://unpkg.com/leaflet@1.3/dist/leaflet.js"></script>
<script src="https://unpkg.com/leaflet-hash@0.2.1/leaflet-hash.js"></script>
<style type="text/css">
.leaflet-tile-container { pointer-events: auto; }
</style>
</head>
<body style="height:100%;margin:0;padding:0;">
<div id="map" style="height:100%"></div>
<script>
//<![CDATA[
var map = L.map('map').setView([36.355, 127.766], 5);

L.tileLayer('http://0.0.0.0:8888/hot/{z}/{x}/{y}.png', {
    attribution: '&copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors',
    maxZoom: 21,
    maxNativeZoom: 20
}).addTo(map);


var hash = L.hash(map)
//]]>
</script>
</body>
</html>
~

 

 

 

렌더링을 시작한다.

$ renderd -f -c /usr/local/etc/renderd.conf

폰트 관련 경로들이 많이 뜬다.

일단 이대로 두고 브라우저에서 지도를 호출해 본다.

$ renderd -f -c /usr/local/etc/renderd.conf
renderd[26286]: Rendering daemon started
renderd[26286]: Initiating request_queue
renderd[26286]: Parsing section renderd
renderd[26286]: Parsing render section 0
renderd[26286]: Parsing section mapnik
renderd[26286]: Parsing section ajt
renderd[26286]: config renderd: unix socketname=/var/run/renderd/renderd.sock
renderd[26286]: config renderd: num_threads=4
renderd[26286]: config renderd: num_slaves=0
renderd[26286]: config renderd: tile_dir=/var/lib/mod_tile
renderd[26286]: config renderd: stats_file=/var/run/renderd/renderd.stats
renderd[26286]: config mapnik:  plugins_dir=/usr/lib/mapnik/3.0/input
renderd[26286]: config mapnik:  font_dir=/usr/share/fonts/truetype
renderd[26286]: config mapnik:  font_dir_recurse=1
renderd[26286]: config renderd(0): Active
renderd[26286]: config renderd(0): unix socketname=/var/run/renderd/renderd.sock
renderd[26286]: config renderd(0): num_threads=4
renderd[26286]: config renderd(0): tile_dir=/var/lib/mod_tile
renderd[26286]: config renderd(0): stats_file=/var/run/renderd/renderd.stats
renderd[26286]: config map 0:   name(ajt) file(/home/renderaccount/src/openstreetmap-carto/mapnik.xml) uri(/hot/) htcp() host(localhost)
renderd[26286]: Initialising unix server socket on /var/run/renderd/renderd.sock
renderd[26286]: Created server socket 3
renderd[26286]: Renderd is using mapnik version 3.0.23
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/unifont/unifont_csur.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/unifont/unifont.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/unifont/unifont_sample.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/unifont/unifont_upper.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSerif-BoldItalic.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSans-ExtraLight.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSans-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSans-BoldOblique.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSansCondensed-BoldOblique.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSansMono-Oblique.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSerifCondensed.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSansMono-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSerif-Italic.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSerifCondensed-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSansMono-BoldOblique.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSansCondensed-Oblique.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSansCondensed.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSans-Oblique.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSansMono.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSerif.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSerif-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSerifCondensed-Italic.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSansCondensed-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuSerifCondensed-BoldItalic.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/dejavu/DejaVuMathTeXGyre.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansBengali-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoKufiArabic-Black.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansArabic-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoNaskhArabicUI-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansHebrew-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMyanmarUI-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansDevanagari-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifKhmer-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansPhagsPa-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansKhmer-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansAnatolianHieroglyphs-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansPhoenician-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMalayalam-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansLaoUI-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifTelugu-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMendeKikakui-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansWancho-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansLydian-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansDisplay-BoldItalic.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansSymbols-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansGothic-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansLaoUI-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansNewTaiLue-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansLisu-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansCypriot-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansHatran-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansPsalterPahlavi-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansSoyombo-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansSinhala-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSans-Italic.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansTelugu-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansOlChiki-SemiBold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansCarian-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansOriyaUI-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansOldPermic-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansGujarati-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMyanmar-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansGurmukhiUI-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansInscriptionalParthian-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifEthiopic-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifTamil-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoNaskhArabicUI-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifGujarati-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansLycian-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansKhmerUI-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansTaiLe-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansSundanese-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansNabataean-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansChakma-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifDisplay-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansGeorgian-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansSyriac-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMongolian-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansTelugu-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansThaiUI-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMalayalamUI-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMyanmarUI-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifHebrew-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansEthiopic-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifKannada-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansNewa-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansLisu-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansRejang-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMono-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansGujaratiUI-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansBrahmi-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansTaiViet-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMarchen-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMultani-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMono-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifBalinese-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansThaana-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansRunic-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansOriyaUI-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifThai-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoKufiArabic-Extrabold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansCherokee-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansArmenian-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifDevanagari-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansThai-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansOlChiki-Medium.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansKannada-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansBuginese-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansGlagolitic-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansSymbols2-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansArabic-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansGujaratiUI-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansKannada-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansDevanagariUI-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansDisplay-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMandaic-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansBuhid-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansThai-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansBhaiksuki-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansArmenian-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifDisplay-BoldItalic.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansTibetan-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansTamil-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansBatak-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansWarangCiti-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMalayalamUI-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansArabicUI-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansJavanese-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansTamilUI-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansKannadaUI-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansSinhala-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansLinearA-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansOgham-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifMyanmar-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMahajani-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansJavanese-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansBamum-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansOldItalic-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoKufiArabic-Thin.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifArmenian-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansDeseret-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansLao-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoKufiArabic-Light.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansTamilUI-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansSymbols-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifGeorgian-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansThaiUI-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoKufiArabic-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansThaana-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansManichaean-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSans-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoMusic-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerif-Italic.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansElbasan-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSans-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansTagbanwa-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansCuneiform-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifThai-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansAdlam-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansDevanagariUI-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansBassaVah-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansArabicUI-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansKhmer-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansLisu-SemiBold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansEthiopic-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMyanmar-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansCoptic-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoKufiArabic-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifTamil-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansCham-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansGurmukhiUI-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifKhmer-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansSogdian-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansAvestan-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifTibetan-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansPahawhHmong-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansCaucasianAlbanian-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifLao-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansTeluguUI-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoKufiArabic-Extralight.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansTamil-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansOldSogdian-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansSiddham-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifTibetan-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansTakri-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansOriya-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansOldSouthArabian-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansTamilSupplement-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansNKo-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansIndicSiyaqNumbers-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansKharoshthi-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansGurmukhi-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifMalayalam-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansSaurashtra-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansSinhalaUI-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansSharada-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansVai-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansGunjalaGondi-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansTeluguUI-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifKannada-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansSylotiNagri-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansGurmukhi-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifBengali-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansKannadaUI-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansCherokee-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansOsmanya-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansCham-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifLao-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansHebrew-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansPauCinHau-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansLimbu-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansInscriptionalPahlavi-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansYi-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansZanabazarSquare-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifArmenian-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansGujarati-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansLepcha-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansOldHungarian-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansShavian-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMalayalam-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansOlChiki-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansGrantha-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifDevanagari-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansEgyptianHieroglyphs-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifMalayalam-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansBengali-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMasaramGondi-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMath-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansLisu-Medium.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansLinearB-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansOlChiki-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansSinhalaUI-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSans-BoldItalic.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifAhom-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifDisplay-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansTirhuta-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifBengali-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifHebrew-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifDogra-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansKhmerUI-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifSinhala-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifTelugu-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansBengaliUI-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifSinhala-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansGeorgian-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansDevanagari-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMro-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoNaskhArabic-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansHanunoo-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansOriya-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansTagalog-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansTibetan-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifMyanmar-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerif-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMeroitic-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifGeorgian-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansTaiTham-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansKhudawadi-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansSamaritan-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMayanNumerals-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansOldPersian-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansImperialAramaic-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansDisplay-Italic.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansKaithi-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansUgaritic-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansOsage-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansModi-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansKayahLi-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerif-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifGujarati-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansOldTurkic-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoNaskhArabic-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansPalmyrene-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansKhojki-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifDisplay-Italic.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerif-BoldItalic.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansBengaliUI-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansDuployan-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansDisplay-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifTangut-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansMiao-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansOldNorthArabian-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSerifEthiopic-Bold.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansLao-Regular.ttf
renderd[26286]: DEBUG: Loading font: /usr/share/fonts/truetype/noto/NotoSansTifinagh-Regular.ttf
Running in foreground mode...
renderd[26286]: Starting stats thread
debug: init_storage_backend: initialising file storage backend at: /var/lib/mod_tile
debug: init_storage_backend: initialising file storage backend at: /var/lib/mod_tile
renderd[26286]: Loading parameterization function for 
renderd[26286]: Loading parameterization function for 
debug: init_storage_backend: initialising file storage backend at: /var/lib/mod_tile
renderd[26286]: Loading parameterization function for 
debug: init_storage_backend: initialising file storage backend at: /var/lib/mod_tile
renderd[26286]: Loading parameterization function for 
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Balinese Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans CJK JP Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Emoji Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinA Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinB Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Balinese Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans CJK JP Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Emoji Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinA Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinB Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Adlam Unjoined Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Balinese Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Bamum Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Kayah Li Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Sundanese Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Syriac Black' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Tai Tham Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans CJK JP Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Emoji Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Balinese Regular' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans CJK JP Regular' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Emoji Regular' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinA Regular' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinB Regular' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Balinese Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans CJK JP Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Emoji Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinA Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinB Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Balinese Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans CJK JP Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Emoji Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinA Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinB Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Adlam Unjoined Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Balinese Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Bamum Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Kayah Li Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Sundanese Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Syriac Black' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Tai Tham Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans CJK JP Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Emoji Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Balinese Regular' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans CJK JP Regular' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Emoji Regular' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinA Regular' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinB Regular' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Balinese Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Balinese Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans CJK JP Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Emoji Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinA Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinB Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Balinese Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans CJK JP Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Emoji Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinA Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinB Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Adlam Unjoined Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Balinese Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Bamum Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Kayah Li Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Sundanese Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Syriac Black' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Tai Tham Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans CJK JP Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans CJK JP Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Emoji Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Emoji Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Balinese Regular' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans CJK JP Regular' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinA Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Emoji Regular' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinB Regular' in FontSet 'fontset-0'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinA Regular' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinB Regular' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Balinese Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans CJK JP Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Emoji Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinA Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinB Regular' in FontSet 'fontset-1'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Adlam Unjoined Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Balinese Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Bamum Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Kayah Li Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Sundanese Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Syriac Black' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Tai Tham Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans CJK JP Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Emoji Bold' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans Balinese Regular' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Sans CJK JP Regular' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'Noto Emoji Regular' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinA Regular' in FontSet 'fontset-2'
Mapnik LOG> 2024-09-08 20:57:39: warning: unable to find face-name 'HanaMinB Regular' in FontSet 'fontset-2'
renderd[26286]: Using web mercator projection settings
renderd[26286]: Using web mercator projection settings
renderd[26286]: Using web mercator projection settings
renderd[26286]: Using web mercator projection settings

 

 

브라우저에서 호출해 본다.

http://0.0.0.0:8888/sample_leaflet.html

렌더링이 필요하므로 잠시 기다리면 아래와 같이 뜰 것이다.

그런데...

 

 

한글이 깨진다.

 

Mapnik LOG> 2024-09-08 21:27:16: warning: unable to find face-name 'Noto Sans CJK KR Regular' in FontSet 'fontset-0'

 

해당 폴더의 경로가 다르게 지정되어 있어서 변경해 준다.

truetype --> opentype

 

 

$ sudo vi /usr/local/etc/renderd.conf

[mapnik]

plugins_dir=/usr/lib/mapnik/3.0/input

font_dir=/usr/share/fonts/truetype

font_dir_recurse=1

 

==>

 

[mapnik]

plugins_dir=/usr/lib/mapnik/3.0/input

font_dir=/usr/share/fonts/truetype

font_dir_recurse=1

 

 

mapnik.xml 파일에 해당 폰트를 추가해 준다.

 

$ vi ~/src/openstreetmap-carto/mapnik.xml

각 FontSet에 아래 내용을 추가

 

    <Font face-name="Noto Sans CJK KR Regular" />

 

 

 

타일서버와 브라우저 캐시를 모두 삭제하고 다시 렌더한다.

 

서버 캐시삭제 : 

$ cd /var/lib/mod_tile

$ ls

ajt

$ cd ajt

10 11 5 6 

 

각 배율별 지도 캐시데이터 폴더가 존재한다 

모두 삭제한다.

$ rm -rf *

 

브라우저 캐시삭제 : 강제 새로고침

 

 

다시 랜더링을 건다.

$ renderd -f -c /usr/local/etc/renderd.conf

 

 

 

 

브라우저를 다시 호출해 본다.

한글이 정상적으로 나온다.

 

 

 

 

 

 

 

 

 

블로그 이미지

엘로드넷

,

 

8.1 폰트설치

$ sudo apt install fonts-noto-cjk fonts-noto-hinted fonts-noto-unhinted ttf-unifont
[sudo] password for renderaccount: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
ttf-unifont is already the newest version (1:12.0.01-2).
The following additional packages will be installed:
  fonts-noto-core fonts-noto-ui-core
Suggested packages:
  fonts-noto-cjk-extra
The following NEW packages will be installed:
  fonts-noto-cjk fonts-noto-core fonts-noto-hinted fonts-noto-ui-core fonts-noto-unhinted
0 upgraded, 5 newly installed, 0 to remove and 0 not upgraded.
Need to get 68.1 MB of archives.
After this operation, 134 MB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://archive.ubuntu.com/ubuntu focal/main amd64 fonts-noto-cjk all 1:20190410+repack1-2 [55.7 MB]
Get:2 http://archive.ubuntu.com/ubuntu focal-updates/main amd64 fonts-noto-core all 20200323-1build1~ubuntu20.04.1 [10.9 MB]
Get:3 http://archive.ubuntu.com/ubuntu focal-updates/main amd64 fonts-noto-ui-core all 20200323-1build1~ubuntu20.04.1 [1326 kB]
Get:4 http://archive.ubuntu.com/ubuntu focal-updates/universe amd64 fonts-noto-hinted all 20200323-1build1~ubuntu20.04.1 [4000 B]
Get:5 http://archive.ubuntu.com/ubuntu focal-updates/universe amd64 fonts-noto-unhinted all 20200323-1build1~ubuntu20.04.1 [252 kB]
Fetched 68.1 MB in 18s (3773 kB/s)                                                            
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package fonts-noto-cjk.
(Reading database ... 67844 files and directories currently installed.)
Preparing to unpack .../fonts-noto-cjk_1%3a20190410+repack1-2_all.deb ...
Unpacking fonts-noto-cjk (1:20190410+repack1-2) ...
Selecting previously unselected package fonts-noto-core.
Preparing to unpack .../fonts-noto-core_20200323-1build1~ubuntu20.04.1_all.deb ...
Unpacking fonts-noto-core (20200323-1build1~ubuntu20.04.1) ...
Selecting previously unselected package fonts-noto-ui-core.
Preparing to unpack .../fonts-noto-ui-core_20200323-1build1~ubuntu20.04.1_all.deb ...
Unpacking fonts-noto-ui-core (20200323-1build1~ubuntu20.04.1) ...
Selecting previously unselected package fonts-noto-hinted.
Preparing to unpack .../fonts-noto-hinted_20200323-1build1~ubuntu20.04.1_all.deb ...
Unpacking fonts-noto-hinted (20200323-1build1~ubuntu20.04.1) ...
Selecting previously unselected package fonts-noto-unhinted.
Preparing to unpack .../fonts-noto-unhinted_20200323-1build1~ubuntu20.04.1_all.deb ...
Unpacking fonts-noto-unhinted (20200323-1build1~ubuntu20.04.1) ...
Setting up fonts-noto-cjk (1:20190410+repack1-2) ...
Setting up fonts-noto-unhinted (20200323-1build1~ubuntu20.04.1) ...
Setting up fonts-noto-ui-core (20200323-1build1~ubuntu20.04.1) ...
Setting up fonts-noto-core (20200323-1build1~ubuntu20.04.1) ...
Setting up fonts-noto-hinted (20200323-1build1~ubuntu20.04.1) ...
Processing triggers for fontconfig (2.13.1-2ubuntu3) ...
$

 

 

 

8.2 설치된 폰트 확인

$ fc-list

 

$ fc-list
/usr/share/fonts/truetype/dejavu/DejaVuSerif-Bold.ttf: DejaVu Serif:style=Bold
/usr/share/fonts/truetype/noto/NotoSansThai-Regular.ttf: Noto Sans Thai:style=Regular
/usr/share/fonts/truetype/noto/NotoSansModi-Regular.ttf: Noto Sans Modi:style=Regular
/usr/share/fonts/truetype/noto/NotoSansPahawhHmong-Regular.ttf: Noto Sans Pahawh Hmong:style=Regular
/usr/share/fonts/truetype/noto/NotoSansOldNorthArabian-Regular.ttf: Noto Sans Old North Arabian,Noto Sans OldNorArab:style=Regular
/usr/share/fonts/truetype/dejavu/DejaVuSansMono.ttf: DejaVu Sans Mono:style=Book
/usr/share/fonts/truetype/noto/NotoSansCypriot-Regular.ttf: Noto Sans Cypriot:style=Regular
/usr/share/fonts/truetype/noto/NotoSansPsalterPahlavi-Regular.ttf: Noto Sans Psalter Pahlavi,Noto Sans PsaPahlavi:style=Regular
/usr/share/fonts/truetype/noto/NotoKufiArabic-Black.ttf: Noto Kufi Arabic,Noto Kufi Arabic Black:style=Black,Regular
/usr/share/fonts/truetype/noto/NotoSansWarangCiti-Regular.ttf: Noto Sans Warang Citi:style=Regular
/usr/share/fonts/truetype/noto/NotoSansTeluguUI-Bold.ttf: Noto Sans Telugu UI:style=Bold
/usr/share/fonts/truetype/noto/NotoSansLisu-Regular.ttf: Noto Sans Lisu:style=Regular
/usr/share/fonts/truetype/noto/NotoSansThaiUI-Bold.ttf: Noto Sans Thai UI:style=Bold
/usr/share/fonts/truetype/noto/NotoSansTamilUI-Regular.ttf: Noto Sans Tamil UI:style=Regular
/usr/share/fonts/truetype/noto/NotoSansSogdian-Regular.ttf: Noto Sans Sogdian:style=Regular
/usr/share/fonts/truetype/noto/NotoSansMongolian-Regular.ttf: Noto Sans Mongolian:style=Regular
/usr/share/fonts/truetype/dejavu/DejaVuSansCondensed-Oblique.ttf: DejaVu Sans,DejaVu Sans Condensed:style=Condensed Oblique,Oblique
/usr/share/fonts/truetype/noto/NotoSansLimbu-Regular.ttf: Noto Sans Limbu:style=Regular
/usr/share/fonts/opentype/noto/NotoSerifCJK-Bold.ttc: Noto Serif CJK SC:style=Bold
/usr/share/fonts/truetype/noto/NotoSansArabicUI-Regular.ttf: Noto Sans Arabic UI:style=Regular
/usr/share/fonts/truetype/noto/NotoSansUgaritic-Regular.ttf: Noto Sans Ugaritic:style=Regular
/usr/share/fonts/truetype/noto/NotoSansMono-Regular.ttf: Noto Sans Mono:style=Regular
/usr/share/fonts/truetype/noto/NotoSansKhmer-Bold.ttf: Noto Sans Khmer:style=Bold
/usr/share/fonts/opentype/noto/NotoSerifCJK-Bold.ttc: Noto Serif CJK TC:style=Bold
/usr/share/fonts/truetype/noto/NotoSansArmenian-Bold.ttf: Noto Sans Armenian:style=Bold
/usr/share/fonts/truetype/noto/NotoSansGujarati-Bold.ttf: Noto Sans Gujarati:style=Bold
/usr/share/fonts/truetype/noto/NotoSansGujaratiUI-Regular.ttf: Noto Sans Gujarati UI:style=Regular
/usr/share/fonts/truetype/noto/NotoSansOriya-Regular.ttf: Noto Sans Oriya:style=Regular
/usr/share/fonts/truetype/noto/NotoSansWancho-Regular.ttf: Noto Sans Wancho:style=Regular
/usr/share/fonts/truetype/noto/NotoSansThaiUI-Regular.ttf: Noto Sans Thai UI:style=Regular
/usr/share/fonts/truetype/dejavu/DejaVuSerifCondensed-BoldItalic.ttf: DejaVu Serif,DejaVu Serif Condensed:style=Condensed Bold Italic,Bold Italic
/usr/share/fonts/truetype/noto/NotoSansCaucasianAlbanian-Regular.ttf: Noto Sans Caucasian Albanian,Noto Sans CaucAlban:style=Regular
/usr/share/fonts/truetype/dejavu/DejaVuSans-ExtraLight.ttf: DejaVu Sans,DejaVu Sans Light:style=ExtraLight
/usr/share/fonts/truetype/noto/NotoSerifHebrew-Bold.ttf: Noto Serif Hebrew:style=Bold
/usr/share/fonts/truetype/noto/NotoSansInscriptionalParthian-Regular.ttf: Noto Sans Inscriptional Parthian,Noto Sans InsParthi:style=Regular
/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf: DejaVu Sans:style=Book
/usr/share/fonts/truetype/noto/NotoSerifHebrew-Regular.ttf: Noto Serif Hebrew:style=Regular
/usr/share/fonts/truetype/noto/NotoSansMayanNumerals-Regular.ttf: Noto Sans Mayan Numerals:style=Regular
/usr/share/fonts/truetype/noto/NotoSansTakri-Regular.ttf: Noto Sans Takri:style=Regular
/usr/share/fonts/truetype/noto/NotoNaskhArabic-Bold.ttf: Noto Naskh Arabic:style=Bold
/usr/share/fonts/truetype/noto/NotoSerifTelugu-Regular.ttf: Noto Serif Telugu:style=Regular
/usr/share/fonts/truetype/noto/NotoSansCuneiform-Regular.ttf: Noto Sans Cuneiform:style=Regular
/usr/share/fonts/opentype/noto/NotoSerifCJK-Bold.ttc: Noto Serif CJK JP:style=Bold
/usr/share/fonts/opentype/noto/NotoSerifCJK-Bold.ttc: Noto Serif CJK KR:style=Bold
/usr/share/fonts/truetype/noto/NotoSansDevanagariUI-Regular.ttf: Noto Sans Devanagari UI:style=Regular
/usr/share/fonts/truetype/dejavu/DejaVuSerifCondensed.ttf: DejaVu Serif,DejaVu Serif Condensed:style=Condensed,Book
/usr/share/fonts/truetype/noto/NotoSerifTamil-Bold.ttf: Noto Serif Tamil:style=Bold
/usr/share/fonts/truetype/dejavu/DejaVuSerifCondensed-Italic.ttf: DejaVu Serif,DejaVu Serif Condensed:style=Condensed Italic,Italic
/usr/share/fonts/truetype/noto/NotoSansTibetan-Regular.ttf: Noto Sans Tibetan:style=Regular
/usr/share/fonts/truetype/noto/NotoSansSyriac-Regular.ttf: Noto Sans Syriac:style=Regular
/usr/share/fonts/opentype/noto/NotoSansCJK-Regular.ttc: Noto Sans CJK JP:style=Regular
/usr/share/fonts/opentype/noto/NotoSansCJK-Regular.ttc: Noto Sans CJK HK:style=Regular
/usr/share/fonts/opentype/noto/NotoSansCJK-Regular.ttc: Noto Sans CJK KR:style=Regular
/usr/share/fonts/truetype/noto/NotoSansTifinagh-Regular.ttf: Noto Sans Tifinagh:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifDisplay-BoldItalic.ttf: Noto Serif Display:style=Bold Italic
/usr/share/fonts/truetype/noto/NotoSansOlChiki-Bold.ttf: Noto Sans Ol Chiki:style=Bold
/usr/share/fonts/truetype/noto/NotoSerifTamil-Regular.ttf: Noto Serif Tamil:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifBalinese-Regular.ttf: Noto Serif Balinese:style=Regular
/usr/share/fonts/truetype/noto/NotoSansMyanmar-Bold.ttf: Noto Sans Myanmar:style=Bold
/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Bold.ttf: Noto Serif Gurmukhi:style=Bold
/usr/share/fonts/truetype/noto/NotoSansGujaratiUI-Bold.ttf: Noto Sans Gujarati UI:style=Bold
/usr/share/fonts/truetype/noto/NotoSansMarchen-Regular.ttf: Noto Sans Marchen:style=Regular
/usr/share/fonts/truetype/noto/NotoSansSaurashtra-Regular.ttf: Noto Sans Saurashtra:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifAhom-Regular.ttf: Noto Serif Ahom:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifBengali-Bold.ttf: Noto Serif Bengali:style=Bold
/usr/share/fonts/opentype/noto/NotoSansCJK-Regular.ttc: Noto Sans CJK SC:style=Regular
/usr/share/fonts/opentype/noto/NotoSansCJK-Regular.ttc: Noto Sans CJK TC:style=Regular
/usr/share/fonts/truetype/noto/NotoSansRunic-Regular.ttf: Noto Sans Runic:style=Regular
/usr/share/fonts/truetype/noto/NotoSansNewTaiLue-Regular.ttf: Noto Sans New Tai Lue:style=Regular
/usr/share/fonts/truetype/noto/NotoSansLisu-SemiBold.ttf: Noto Sans Lisu,Noto Sans Lisu Semi Bold:style=Semi Bold,Regular
/usr/share/fonts/truetype/noto/NotoSansKannadaUI-Regular.ttf: Noto Sans Kannada UI:style=Regular
/usr/share/fonts/truetype/noto/NotoKufiArabic-Regular.ttf: Noto Kufi Arabic:style=Regular
/usr/share/fonts/truetype/noto/NotoSansOldSogdian-Regular.ttf: Noto Sans Old Sogdian:style=Regular
/usr/share/fonts/truetype/noto/NotoSansNKo-Regular.ttf: Noto Sans NKo,Noto Sans N'Ko:style=Regular
/usr/share/fonts/truetype/noto/NotoSansOriyaUI-Bold.ttf: Noto Sans Oriya UI:style=Bold
/usr/share/fonts/truetype/noto/NotoSerifGujarati-Bold.ttf: Noto Serif Gujarati:style=Bold
/usr/share/fonts/truetype/noto/NotoSerifArmenian-Regular.ttf: Noto Serif Armenian:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifDisplay-Regular.ttf: Noto Serif Display:style=Regular
/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Regular.ttf: Noto Sans Canadian Aboriginal,Noto Sans CanAborig:style=Regular
/usr/share/fonts/truetype/noto/NotoSansLisu-Bold.ttf: Noto Sans Lisu:style=Bold
/usr/share/fonts/truetype/noto/NotoSans-Bold.ttf: Noto Sans:style=Bold
/usr/share/fonts/truetype/noto/NotoSansBhaiksuki-Regular.ttf: Noto Sans Bhaiksuki:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifKhmer-Regular.ttf: Noto Serif Khmer:style=Regular
/usr/share/fonts/truetype/dejavu/DejaVuSerif-BoldItalic.ttf: DejaVu Serif:style=Bold Italic
/usr/share/fonts/truetype/noto/NotoSansJavanese-Regular.ttf: Noto Sans Javanese:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Regular.ttf: Noto Serif Malayalam:style=Regular
/usr/share/fonts/truetype/noto/NotoSansDisplay-Italic.ttf: Noto Sans Display:style=Italic
/usr/share/fonts/truetype/noto/NotoSansLinearB-Regular.ttf: Noto Sans Linear B:style=Regular
/usr/share/fonts/truetype/noto/NotoSansKannada-Bold.ttf: Noto Sans Kannada:style=Bold
/usr/share/fonts/truetype/noto/NotoSansLycian-Regular.ttf: Noto Sans Lycian:style=Regular
/usr/share/fonts/truetype/noto/NotoSansThai-Bold.ttf: Noto Sans Thai:style=Bold
/usr/share/fonts/truetype/noto/NotoSansShavian-Regular.ttf: Noto Sans Shavian:style=Regular
/usr/share/fonts/truetype/noto/NotoSansBengali-Bold.ttf: Noto Sans Bengali:style=Bold
/usr/share/fonts/truetype/noto/NotoSansKhudawadi-Regular.ttf: Noto Sans Khudawadi:style=Regular
/usr/share/fonts/truetype/noto/NotoSansYi-Regular.ttf: Noto Sans Yi:style=Regular
/usr/share/fonts/truetype/noto/NotoSansLinearA-Regular.ttf: Noto Sans Linear A:style=Regular
/usr/share/fonts/truetype/noto/NotoSansOlChiki-Regular.ttf: Noto Sans Ol Chiki:style=Regular
/usr/share/fonts/truetype/noto/NotoSansInscriptionalPahlavi-Regular.ttf: Noto Sans Inscriptional Pahlavi,Noto Sans InsPahlavi:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifDogra-Regular.ttf: Noto Serif Dogra:style=Regular
/usr/share/fonts/truetype/noto/NotoSansLydian-Regular.ttf: Noto Sans Lydian:style=Regular
/usr/share/fonts/truetype/noto/NotoKufiArabic-Thin.ttf: Noto Kufi Arabic,Noto Kufi Arabic Thin:style=Thin,Regular
/usr/share/fonts/truetype/noto/NotoSansTagalog-Regular.ttf: Noto Sans Tagalog:style=Regular
/usr/share/fonts/opentype/noto/NotoSerifCJK-Regular.ttc: Noto Serif CJK SC:style=Regular
/usr/share/fonts/truetype/noto/NotoSansOsmanya-Regular.ttf: Noto Sans Osmanya:style=Regular
/usr/share/fonts/truetype/noto/NotoSansHanunoo-Regular.ttf: Noto Sans Hanunoo:style=Regular
/usr/share/fonts/truetype/noto/NotoSansBamum-Regular.ttf: Noto Sans Bamum:style=Regular
/usr/share/fonts/truetype/noto/NotoSansDevanagari-Bold.ttf: Noto Sans Devanagari:style=Bold
/usr/share/fonts/opentype/noto/NotoSerifCJK-Regular.ttc: Noto Serif CJK TC:style=Regular
/usr/share/fonts/truetype/dejavu/DejaVuSansMono-Oblique.ttf: DejaVu Sans Mono:style=Oblique
/usr/share/fonts/truetype/noto/NotoSansKhmerUI-Bold.ttf: Noto Sans Khmer UI:style=Bold
/usr/share/fonts/truetype/noto/NotoSansEthiopic-Regular.ttf: Noto Sans Ethiopic:style=Regular
/usr/share/fonts/truetype/dejavu/DejaVuSerifCondensed-Bold.ttf: DejaVu Serif,DejaVu Serif Condensed:style=Condensed Bold,Bold
/usr/share/fonts/truetype/dejavu/DejaVuSans-Bold.ttf: DejaVu Sans:style=Bold
/usr/share/fonts/truetype/noto/NotoSansOldSouthArabian-Regular.ttf: Noto Sans Old South Arabian,Noto Sans OldSouArab:style=Regular
/usr/share/fonts/truetype/noto/NotoSansOriya-Bold.ttf: Noto Sans Oriya:style=Bold
/usr/share/fonts/truetype/noto/NotoSansElbasan-Regular.ttf: Noto Sans Elbasan:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Bold.ttf: Noto Serif Myanmar:style=Bold
/usr/share/fonts/truetype/noto/NotoSansGeorgian-Regular.ttf: Noto Sans Georgian:style=Regular
/usr/share/fonts/truetype/dejavu/DejaVuSansMono-BoldOblique.ttf: DejaVu Sans Mono:style=Bold Oblique
/usr/share/fonts/truetype/noto/NotoSerifTangut-Regular.ttf: Noto Serif Tangut:style=Regular
/usr/share/fonts/truetype/unifont/unifont.ttf: Unifont:style=Medium
/usr/share/fonts/truetype/noto/NotoSansLaoUI-Bold.ttf: Noto Sans Lao UI:style=Bold
/usr/share/fonts/truetype/unifont/unifont_upper.ttf: Unifont Upper:style=Medium
/usr/share/fonts/truetype/noto/NotoSansGrantha-Regular.ttf: Noto Sans Grantha:style=Regular
/usr/share/fonts/truetype/noto/NotoSansBassaVah-Regular.ttf: Noto Sans Bassa Vah:style=Regular
/usr/share/fonts/opentype/noto/NotoSerifCJK-Regular.ttc: Noto Serif CJK JP:style=Regular
/usr/share/fonts/opentype/noto/NotoSerifCJK-Regular.ttc: Noto Serif CJK KR:style=Regular
/usr/share/fonts/truetype/noto/NotoSansGurmukhiUI-Regular.ttf: Noto Sans Gurmukhi UI:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Regular.ttf: Noto Serif Ethiopic:style=Regular
/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Regular.ttf: Noto Sans Gurmukhi:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifSinhala-Bold.ttf: Noto Serif Sinhala:style=Bold
/usr/share/fonts/truetype/noto/NotoSans-Italic.ttf: Noto Sans:style=Italic
/usr/share/fonts/truetype/noto/NotoSansKharoshthi-Regular.ttf: Noto Sans Kharoshthi:style=Regular
/usr/share/fonts/truetype/noto/NotoSansArmenian-Regular.ttf: Noto Sans Armenian:style=Regular
/usr/share/fonts/truetype/noto/NotoSansRejang-Regular.ttf: Noto Sans Rejang:style=Regular
/usr/share/fonts/truetype/noto/NotoSansJavanese-Bold.ttf: Noto Sans Javanese:style=Bold
/usr/share/fonts/truetype/noto/NotoSansSinhalaUI-Bold.ttf: Noto Sans Sinhala UI:style=Bold
/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Regular.ttf: Noto Sans Meetei Mayek:style=Regular
/usr/share/fonts/truetype/noto/NotoSansDevanagariUI-Bold.ttf: Noto Sans Devanagari UI:style=Bold
/usr/share/fonts/truetype/dejavu/DejaVuMathTeXGyre.ttf: DejaVu Math TeX Gyre:style=Regular
/usr/share/fonts/truetype/noto/NotoSerif-Regular.ttf: Noto Serif:style=Regular
/usr/share/fonts/truetype/dejavu/DejaVuSansCondensed-BoldOblique.ttf: DejaVu Sans,DejaVu Sans Condensed:style=Condensed Bold Oblique,Bold Oblique
/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Regular.ttf: Noto Serif Devanagari:style=Regular
/usr/share/fonts/truetype/noto/NotoSansTaiViet-Regular.ttf: Noto Sans Tai Viet:style=Regular
/usr/share/fonts/truetype/noto/NotoSansDuployan-Regular.ttf: Noto Sans Duployan:style=Regular
/usr/share/fonts/truetype/noto/NotoSansBuhid-Regular.ttf: Noto Sans Buhid:style=Regular
/usr/share/fonts/truetype/noto/NotoSansThaana-Bold.ttf: Noto Sans Thaana:style=Bold
/usr/share/fonts/truetype/noto/NotoSansMro-Regular.ttf: Noto Sans Mro:style=Regular
/usr/share/fonts/truetype/noto/NotoSansTamil-Bold.ttf: Noto Sans Tamil:style=Bold
/usr/share/fonts/truetype/noto/NotoSansDisplay-Regular.ttf: Noto Sans Display:style=Regular
/usr/share/fonts/truetype/noto/NotoSansDeseret-Regular.ttf: Noto Sans Deseret:style=Regular
/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Regular.ttf: Noto Sans Adlam Unjoined:style=Regular
/usr/share/fonts/truetype/noto/NotoSansOsage-Regular.ttf: Noto Sans Osage:style=Regular
/usr/share/fonts/truetype/noto/NotoSansCham-Regular.ttf: Noto Sans Cham:style=Regular
/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Bold.ttf: Noto Sans Canadian Aboriginal,Noto Sans CanAborig:style=Bold
/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Bold.ttf: Noto Serif Ethiopic:style=Bold
/usr/share/fonts/truetype/dejavu/DejaVuSansCondensed.ttf: DejaVu Sans,DejaVu Sans Condensed:style=Condensed,Book
/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Regular.ttf: Noto Serif Tamil Slanted:style=Regular
/usr/share/fonts/truetype/noto/NotoSansLepcha-Regular.ttf: Noto Sans Lepcha:style=Regular
/usr/share/fonts/truetype/noto/NotoSansLao-Regular.ttf: Noto Sans Lao:style=Regular
/usr/share/fonts/truetype/noto/NotoSerif-Italic.ttf: Noto Serif:style=Italic
/usr/share/fonts/truetype/noto/NotoSansMiao-Regular.ttf: Noto Sans Miao:style=Regular
/usr/share/fonts/truetype/noto/NotoSansMyanmarUI-Regular.ttf: Noto Sans Myanmar UI:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Regular.ttf: Noto Serif Georgian:style=Regular
/usr/share/fonts/truetype/noto/NotoSansKhmerUI-Regular.ttf: Noto Sans Khmer UI:style=Regular
/usr/share/fonts/truetype/noto/NotoSansMalayalamUI-Bold.ttf: Noto Sans Malayalam UI:style=Bold
/usr/share/fonts/truetype/noto/NotoSerifDisplay-Italic.ttf: Noto Serif Display:style=Italic
/usr/share/fonts/truetype/noto/NotoSansOldTurkic-Regular.ttf: Noto Sans Old Turkic:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifLao-Bold.ttf: Noto Serif Lao:style=Bold
/usr/share/fonts/truetype/noto/NotoSansNewa-Regular.ttf: Noto Sans Newa:style=Regular
/usr/share/fonts/truetype/noto/NotoMusic-Regular.ttf: Noto Music:style=Regular
/usr/share/fonts/truetype/noto/NotoSansOriyaUI-Regular.ttf: Noto Sans Oriya UI:style=Regular
/usr/share/fonts/truetype/noto/NotoSansEgyptianHieroglyphs-Regular.ttf: Noto Sans Egyptian Hieroglyphs,Noto Sans EgyptHiero:style=Regular
/usr/share/fonts/truetype/noto/NotoSansImperialAramaic-Regular.ttf: Noto Sans Imperial Aramaic,Noto Sans ImpAramaic:style=Regular
/usr/share/fonts/truetype/noto/NotoSansDevanagari-Regular.ttf: Noto Sans Devanagari:style=Regular
/usr/share/fonts/truetype/dejavu/DejaVuSansCondensed-Bold.ttf: DejaVu Sans,DejaVu Sans Condensed:style=Condensed Bold,Bold
/usr/share/fonts/truetype/dejavu/DejaVuSansMono-Bold.ttf: DejaVu Sans Mono:style=Bold
/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Regular.ttf: Noto Sans Sora Sompeng,Noto Sans SoraSomp:style=Regular
/usr/share/fonts/truetype/noto/NotoSansMath-Regular.ttf: Noto Sans Math:style=Regular
/usr/share/fonts/truetype/dejavu/DejaVuSans-Oblique.ttf: DejaVu Sans:style=Oblique
/usr/share/fonts/truetype/noto/NotoSansTirhuta-Regular.ttf: Noto Sans Tirhuta:style=Regular
/usr/share/fonts/truetype/noto/NotoSansDisplay-BoldItalic.ttf: Noto Sans Display:style=Bold Italic
/usr/share/fonts/truetype/noto/NotoSansMalayalamUI-Regular.ttf: Noto Sans Malayalam UI:style=Regular
/usr/share/fonts/truetype/noto/NotoSansBuginese-Regular.ttf: Noto Sans Buginese:style=Regular
/usr/share/fonts/truetype/noto/NotoSansOlChiki-SemiBold.ttf: Noto Sans Ol Chiki,Noto Sans Ol Chiki Semibold:style=Semibold,Regular
/usr/share/fonts/truetype/noto/NotoSansMyanmar-Regular.ttf: Noto Sans Myanmar:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifKhmer-Bold.ttf: Noto Serif Khmer:style=Bold
/usr/share/fonts/truetype/noto/NotoSansOldItalic-Regular.ttf: Noto Sans Old Italic:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifThai-Bold.ttf: Noto Serif Thai:style=Bold
/usr/share/fonts/truetype/noto/NotoSansMyanmarUI-Bold.ttf: Noto Sans Myanmar UI:style=Bold
/usr/share/fonts/truetype/noto/NotoSansMasaramGondi-Regular.ttf: Noto Sans Masaram Gondi:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Regular.ttf: Noto Serif Gurmukhi:style=Regular
/usr/share/fonts/truetype/noto/NotoSansSylotiNagri-Regular.ttf: Noto Sans Syloti Nagri:style=Regular
/usr/share/fonts/truetype/noto/NotoSansBengaliUI-Bold.ttf: Noto Sans Bengali UI:style=Bold
/usr/share/fonts/truetype/noto/NotoSansKannadaUI-Bold.ttf: Noto Sans Kannada UI:style=Bold
/usr/share/fonts/truetype/noto/NotoSansAvestan-Regular.ttf: Noto Sans Avestan:style=Regular
/usr/share/fonts/truetype/noto/NotoSansSinhala-Regular.ttf: Noto Sans Sinhala:style=Regular
/usr/share/fonts/truetype/noto/NotoKufiArabic-Extralight.ttf: Noto Kufi Arabic,Noto Kufi Arabic Extra Light:style=Extra Light,Regular
/usr/share/fonts/truetype/noto/NotoSansOldPermic-Regular.ttf: Noto Sans Old Permic:style=Regular
/usr/share/fonts/truetype/noto/NotoSansPalmyrene-Regular.ttf: Noto Sans Palmyrene:style=Regular
/usr/share/fonts/truetype/noto/NotoSansMalayalam-Bold.ttf: Noto Sans Malayalam:style=Bold
/usr/share/fonts/truetype/noto/NotoSansSundanese-Regular.ttf: Noto Sans Sundanese:style=Regular
/usr/share/fonts/truetype/noto/NotoKufiArabic-Extrabold.ttf: Noto Kufi Arabic,Noto Kufi Arabic Extra Bold:style=Extra Bold,Regular
/usr/share/fonts/truetype/noto/NotoSansEthiopic-Bold.ttf: Noto Sans Ethiopic:style=Bold
/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Regular.ttf: Noto Serif Myanmar:style=Regular
/usr/share/fonts/truetype/noto/NotoSerif-BoldItalic.ttf: Noto Serif:style=Bold Italic
/usr/share/fonts/truetype/noto/NotoSansKhojki-Regular.ttf: Noto Sans Khojki:style=Regular
/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Bold.ttf: Noto Sans Gurmukhi:style=Bold
/usr/share/fonts/truetype/noto/NotoNaskhArabicUI-Bold.ttf: Noto Naskh Arabic UI:style=Bold
/usr/share/fonts/truetype/noto/NotoSerifArmenian-Bold.ttf: Noto Serif Armenian:style=Bold
/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Regular.ttf: Noto Nastaliq Urdu:style=Regular
/usr/share/fonts/truetype/noto/NotoSansBengali-Regular.ttf: Noto Sans Bengali:style=Regular
/usr/share/fonts/truetype/noto/NotoSansSoyombo-Regular.ttf: Noto Sans Soyombo:style=Regular
/usr/share/fonts/truetype/noto/NotoSansPauCinHau-Regular.ttf: Noto Sans Pau Cin Hau:style=Regular
/usr/share/fonts/truetype/noto/NotoSansGothic-Regular.ttf: Noto Sans Gothic:style=Regular
/usr/share/fonts/truetype/noto/NotoSansSamaritan-Regular.ttf: Noto Sans Samaritan:style=Regular
/usr/share/fonts/truetype/noto/NotoSansCoptic-Regular.ttf: Noto Sans Coptic:style=Regular
/usr/share/fonts/truetype/unifont/unifont_csur.ttf: Unifont CSUR:style=Medium
/usr/share/fonts/truetype/noto/NotoSansMalayalam-Regular.ttf: Noto Sans Malayalam:style=Regular
/usr/share/fonts/truetype/noto/NotoSansKaithi-Regular.ttf: Noto Sans Kaithi:style=Regular
/usr/share/fonts/truetype/noto/NotoSansTagbanwa-Regular.ttf: Noto Sans Tagbanwa:style=Regular
/usr/share/fonts/truetype/noto/NotoSansMeroitic-Regular.ttf: Noto Sans Meroitic:style=Regular
/usr/share/fonts/opentype/noto/NotoSansCJK-Bold.ttc: Noto Sans Mono CJK TC:style=Bold
/usr/share/fonts/truetype/noto/NotoSerifKannada-Regular.ttf: Noto Serif Kannada:style=Regular
/usr/share/fonts/opentype/noto/NotoSansCJK-Bold.ttc: Noto Sans Mono CJK SC:style=Bold
/usr/share/fonts/truetype/noto/NotoSansGunjalaGondi-Regular.ttf: Noto Sans Gunjala Gondi:style=Regular
/usr/share/fonts/opentype/noto/NotoSansCJK-Bold.ttc: Noto Sans Mono CJK KR:style=Bold
/usr/share/fonts/opentype/noto/NotoSansCJK-Bold.ttc: Noto Sans Mono CJK HK:style=Bold
/usr/share/fonts/truetype/noto/NotoSansArabic-Bold.ttf: Noto Sans Arabic:style=Bold
/usr/share/fonts/opentype/noto/NotoSansCJK-Bold.ttc: Noto Sans Mono CJK JP:style=Bold
/usr/share/fonts/truetype/noto/NotoSansKhmer-Regular.ttf: Noto Sans Khmer:style=Regular
/usr/share/fonts/truetype/noto/NotoSans-BoldItalic.ttf: Noto Sans:style=Bold Italic
/usr/share/fonts/truetype/noto/NotoSansTamilSupplement-Regular.ttf: Noto Sans Tamil Supplement:style=Regular
/usr/share/fonts/truetype/noto/NotoSansOldPersian-Regular.ttf: Noto Sans Old Persian:style=Regular
/usr/share/fonts/truetype/noto/NotoSansAnatolianHieroglyphs-Regular.ttf: Noto Sans Anatolian Hieroglyphs,Noto Sans AnatoHiero:style=Regular
/usr/share/fonts/truetype/noto/NotoSansTamilUI-Bold.ttf: Noto Sans Tamil UI:style=Bold
/usr/share/fonts/truetype/noto/NotoSansSymbols2-Regular.ttf: Noto Sans Symbols2:style=Regular
/usr/share/fonts/truetype/noto/NotoSansMono-Bold.ttf: Noto Sans Mono:style=Bold
/usr/share/fonts/truetype/dejavu/DejaVuSerif-Italic.ttf: DejaVu Serif:style=Italic
/usr/share/fonts/truetype/noto/NotoSansManichaean-Regular.ttf: Noto Sans Manichaean:style=Regular
/usr/share/fonts/truetype/noto/NotoSansBatak-Regular.ttf: Noto Sans Batak:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifDisplay-Bold.ttf: Noto Serif Display:style=Bold
/usr/share/fonts/truetype/noto/NotoSansSharada-Regular.ttf: Noto Sans Sharada:style=Regular
/usr/share/fonts/truetype/noto/NotoSansTaiTham-Regular.ttf: Noto Sans Tai Tham:style=Regular
/usr/share/fonts/truetype/noto/NotoKufiArabic-Bold.ttf: Noto Kufi Arabic:style=Bold
/usr/share/fonts/truetype/noto/NotoSansHatran-Regular.ttf: Noto Sans Hatran:style=Regular
/usr/share/fonts/truetype/noto/NotoSansThaana-Regular.ttf: Noto Sans Thaana:style=Regular
/usr/share/fonts/truetype/noto/NotoSansSinhalaUI-Regular.ttf: Noto Sans Sinhala UI:style=Regular
/usr/share/fonts/truetype/noto/NotoSansMultani-Regular.ttf: Noto Sans Multani:style=Regular
/usr/share/fonts/truetype/noto/NotoSansLaoUI-Regular.ttf: Noto Sans Lao UI:style=Regular
/usr/share/fonts/truetype/noto/NotoNaskhArabicUI-Regular.ttf: Noto Naskh Arabic UI:style=Regular
/usr/share/fonts/truetype/noto/NotoSansCham-Bold.ttf: Noto Sans Cham:style=Bold
/usr/share/fonts/truetype/noto/NotoSansArabic-Regular.ttf: Noto Sans Arabic:style=Regular
/usr/share/fonts/truetype/noto/NotoSansDisplay-Bold.ttf: Noto Sans Display:style=Bold
/usr/share/fonts/truetype/noto/NotoSansGujarati-Regular.ttf: Noto Sans Gujarati:style=Regular
/usr/share/fonts/truetype/noto/NotoSansCarian-Regular.ttf: Noto Sans Carian:style=Regular
/usr/share/fonts/truetype/noto/NotoSansKannada-Regular.ttf: Noto Sans Kannada:style=Regular
/usr/share/fonts/truetype/noto/NotoSansChakma-Regular.ttf: Noto Sans Chakma:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Bold.ttf: Noto Serif Devanagari:style=Bold
/usr/share/fonts/truetype/noto/NotoSerifGujarati-Regular.ttf: Noto Serif Gujarati:style=Regular
/usr/share/fonts/opentype/noto/NotoSansCJK-Regular.ttc: Noto Sans Mono CJK SC:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifTibetan-Bold.ttf: Noto Serif Tibetan:style=Bold
/usr/share/fonts/opentype/noto/NotoSansCJK-Regular.ttc: Noto Sans Mono CJK TC:style=Regular
/usr/share/fonts/truetype/noto/NotoSansZanabazarSquare-Regular.ttf: Noto Sans Zanabazar Square,Noto Sans Zanabazar:style=Regular
/usr/share/fonts/truetype/noto/NotoSansCherokee-Regular.ttf: Noto Sans Cherokee:style=Regular
/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Regular.ttf: Noto Sans Hanifi Rohingya,Noto Sans HanifiRohg:style=Regular
/usr/share/fonts/truetype/noto/NotoSansBrahmi-Regular.ttf: Noto Sans Brahmi:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Bold.ttf: Noto Serif Georgian:style=Bold
/usr/share/fonts/truetype/noto/NotoSansSymbols-Regular.ttf: Noto Sans Symbols:style=Regular
/usr/share/fonts/truetype/noto/NotoSansMendeKikakui-Regular.ttf: Noto Sans Mende Kikakui:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifBengali-Regular.ttf: Noto Serif Bengali:style=Regular
/usr/share/fonts/truetype/noto/NotoSansVai-Regular.ttf: Noto Sans Vai:style=Regular
/usr/share/fonts/truetype/noto/NotoSansLao-Bold.ttf: Noto Sans Lao:style=Bold
/usr/share/fonts/truetype/noto/NotoSansSinhala-Bold.ttf: Noto Sans Sinhala:style=Bold
/usr/share/fonts/truetype/noto/NotoSansSymbols-Bold.ttf: Noto Sans Symbols:style=Bold
/usr/share/fonts/truetype/noto/NotoSerifTelugu-Bold.ttf: Noto Serif Telugu:style=Bold
/usr/share/fonts/opentype/noto/NotoSansCJK-Regular.ttc: Noto Sans Mono CJK HK:style=Regular
/usr/share/fonts/truetype/noto/NotoSansCherokee-Bold.ttf: Noto Sans Cherokee:style=Bold
/usr/share/fonts/opentype/noto/NotoSansCJK-Regular.ttc: Noto Sans Mono CJK KR:style=Regular
/usr/share/fonts/opentype/noto/NotoSansCJK-Regular.ttc: Noto Sans Mono CJK JP:style=Regular
/usr/share/fonts/truetype/noto/NotoSansGurmukhiUI-Bold.ttf: Noto Sans Gurmukhi UI:style=Bold
/usr/share/fonts/truetype/noto/NotoSansLisu-Medium.ttf: Noto Sans Lisu,Noto Sans Lisu Medium:style=Medium,Regular
/usr/share/fonts/truetype/noto/NotoSerifTibetan-Regular.ttf: Noto Serif Tibetan:style=Regular
/usr/share/fonts/truetype/noto/NotoNaskhArabic-Regular.ttf: Noto Naskh Arabic:style=Regular
/usr/share/fonts/truetype/noto/NotoSansArabicUI-Bold.ttf: Noto Sans Arabic UI:style=Bold
/usr/share/fonts/truetype/noto/NotoSansGeorgian-Bold.ttf: Noto Sans Georgian:style=Bold
/usr/share/fonts/truetype/noto/NotoSansTelugu-Regular.ttf: Noto Sans Telugu:style=Regular
/usr/share/fonts/truetype/noto/NotoSerif-Bold.ttf: Noto Serif:style=Bold
/usr/share/fonts/truetype/noto/NotoSansTeluguUI-Regular.ttf: Noto Sans Telugu UI:style=Regular
/usr/share/fonts/opentype/noto/NotoSansCJK-Bold.ttc: Noto Sans CJK JP:style=Bold
/usr/share/fonts/truetype/noto/NotoSansHebrew-Regular.ttf: Noto Sans Hebrew:style=Regular
/usr/share/fonts/opentype/noto/NotoSansCJK-Bold.ttc: Noto Sans CJK KR:style=Bold
/usr/share/fonts/opentype/noto/NotoSansCJK-Bold.ttc: Noto Sans CJK HK:style=Bold
/usr/share/fonts/truetype/noto/NotoSerifLao-Regular.ttf: Noto Serif Lao:style=Regular
/usr/share/fonts/truetype/noto/NotoSansMandaic-Regular.ttf: Noto Sans Mandaic:style=Regular
/usr/share/fonts/opentype/noto/NotoSansCJK-Bold.ttc: Noto Sans CJK TC:style=Bold
/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Bold.ttf: Noto Serif Tamil Slanted:style=Bold
/usr/share/fonts/truetype/noto/NotoSansKayahLi-Regular.ttf: Noto Sans Kayah Li:style=Regular
/usr/share/fonts/truetype/noto/NotoSansMahajani-Regular.ttf: Noto Sans Mahajani:style=Regular
/usr/share/fonts/opentype/noto/NotoSansCJK-Bold.ttc: Noto Sans CJK SC:style=Bold
/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Bold.ttf: Noto Nastaliq Urdu:style=Bold
/usr/share/fonts/truetype/noto/NotoSansOldHungarian-Regular.ttf: Noto Sans Old Hungarian,Noto Sans OldHung:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifThai-Regular.ttf: Noto Serif Thai:style=Regular
/usr/share/fonts/truetype/noto/NotoKufiArabic-Light.ttf: Noto Kufi Arabic,Noto Kufi Arabic Light:style=Light,Regular
/usr/share/fonts/truetype/noto/NotoSansIndicSiyaqNumbers-Regular.ttf: Noto Sans Indic Siyaq Numbers:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifSinhala-Regular.ttf: Noto Serif Sinhala:style=Regular
/usr/share/fonts/truetype/noto/NotoSansAdlam-Regular.ttf: Noto Sans Adlam:style=Regular
/usr/share/fonts/truetype/noto/NotoSansOlChiki-Medium.ttf: Noto Sans Ol Chiki,Noto Sans Ol Chiki Medium:style=Medium,Regular
/usr/share/fonts/truetype/noto/NotoSansTibetan-Bold.ttf: Noto Sans Tibetan:style=Bold
/usr/share/fonts/truetype/noto/NotoSansBengaliUI-Regular.ttf: Noto Sans Bengali UI:style=Regular
/usr/share/fonts/truetype/noto/NotoSansSiddham-Regular.ttf: Noto Sans Siddham:style=Regular
/usr/share/fonts/truetype/noto/NotoSansOgham-Regular.ttf: Noto Sans Ogham:style=Regular
/usr/share/fonts/truetype/noto/NotoSansTelugu-Bold.ttf: Noto Sans Telugu:style=Bold
/usr/share/fonts/truetype/noto/NotoSansTaiLe-Regular.ttf: Noto Sans Tai Le:style=Regular
/usr/share/fonts/truetype/noto/NotoSansPhagsPa-Regular.ttf: Noto Sans PhagsPa:style=Regular
/usr/share/fonts/truetype/noto/NotoSansPhoenician-Regular.ttf: Noto Sans Phoenician:style=Regular
/usr/share/fonts/truetype/dejavu/DejaVuSerif.ttf: DejaVu Serif:style=Book
/usr/share/fonts/truetype/noto/NotoSans-Regular.ttf: Noto Sans:style=Regular
/usr/share/fonts/truetype/noto/NotoSansHebrew-Bold.ttf: Noto Sans Hebrew:style=Bold
/usr/share/fonts/truetype/noto/NotoSansTamil-Regular.ttf: Noto Sans Tamil:style=Regular
/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Bold.ttf: Noto Serif Malayalam:style=Bold
/usr/share/fonts/truetype/noto/NotoSerifKannada-Bold.ttf: Noto Serif Kannada:style=Bold
/usr/share/fonts/truetype/noto/NotoSansGlagolitic-Regular.ttf: Noto Sans Glagolitic:style=Regular
/usr/share/fonts/truetype/dejavu/DejaVuSans-BoldOblique.ttf: DejaVu Sans:style=Bold Oblique
/usr/share/fonts/truetype/noto/NotoSansNabataean-Regular.ttf: Noto Sans Nabataean:style=Regular
$

 

 

 

블로그 이미지

엘로드넷

,

openstreetmap 다운로드하여 디비에 넣기

 

사용자 계정폴더에 data 폴더 만들기

 

$ mkdir ~/data
$ cd ~/data
$ pwd
/home/renderaccount/data

 

 

군사정보가 빠진 대한민국 지도 가져오기

$ wget https://tiles.osm.kr/download/south-korea-latest-non-military.osm.pbf
--2024-09-08 17:45:29--  https://tiles.osm.kr/download/south-korea-latest-non-military.osm.pbf
Resolving tiles.osm.kr (tiles.osm.kr)... 158.180.95.126
Connecting to tiles.osm.kr (tiles.osm.kr)|158.180.95.126|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 220098826 (210M) [application/octet-stream]
Saving to: 'south-korea-latest-non-military.osm.pbf'

south-korea-latest-non- 100%[==============================>] 209.90M  5.38MB/s    in 42s     

2024-09-08 17:46:11 (5.00 MB/s) - 'south-korea-latest-non-military.osm.pbf' saved [220098826/220098826]

$

 

 

 

osm2pgsql 로 지도정보를 gis 데이터베이스에 인서트하기

시간이 좀 걸리므로 기다림.

484초 소요되었음.

$ osm2pgsql -d gis --create --slim -G --hstore --tag-transform-script ~/src/openstreetmap-carto/openstreetmap-carto.lua -C 2500 --number-processes 1 -S ~/src/openstreetmap-carto/openstreetmap-carto.style ~/data/south-korea-latest-non-military.osm.pbf
osm2pgsql version 1.2.1 (64 bit id space)

Allocating memory for dense node cache
Allocating dense node cache in one big chunk
Allocating memory for sparse node cache
Sharing dense sparse
Node-cache: cache=2500MB, maxblocks=40000*65536, allocation method=11
Mid: pgsql, cache=2500
Setting up table: planet_osm_nodes
Setting up table: planet_osm_ways
Setting up table: planet_osm_rels
Using lua based tag processing pipeline with script /home/renderaccount/src/openstreetmap-carto/openstreetmap-carto.lua
Using projection SRS 3857 (Spherical Mercator)
Setting up table: planet_osm_point
Setting up table: planet_osm_line
Setting up table: planet_osm_polygon
Setting up table: planet_osm_roads

Reading in file: /home/renderaccount/data/south-korea-latest-non-military.osm.pbf
Using PBF parser.
Processing: Node(29685k 333.5k/s) Way(2714k 19.39k/s) Relation(45280 2515.56/s)  parse time: 247s
Node stats: total(29685880), max(12142808882) in 89s
Way stats: total(2714936), max(1311865353) in 140s
Relation stats: total(49583), max(17984534) in 18s
Sorting data and creating indexes for planet_osm_point
Copying planet_osm_point to cluster by geometry finished
Creating geometry index on planet_osm_point
Creating osm_id index on planet_osm_point
Creating indexes on planet_osm_point finished
All indexes on planet_osm_point created in 16s
Completed planet_osm_point
Sorting data and creating indexes for planet_osm_line
Copying planet_osm_line to cluster by geometry finished
Creating geometry index on planet_osm_line
Creating osm_id index on planet_osm_line
Creating indexes on planet_osm_line finished
All indexes on planet_osm_line created in 57s
Completed planet_osm_line
Sorting data and creating indexes for planet_osm_polygon
Copying planet_osm_polygon to cluster by geometry finished
Creating geometry index on planet_osm_polygon
Creating osm_id index on planet_osm_polygon
Creating indexes on planet_osm_polygon finished
All indexes on planet_osm_polygon created in 56s
Completed planet_osm_polygon
Sorting data and creating indexes for planet_osm_roads
Copying planet_osm_roads to cluster by geometry finished
Creating geometry index on planet_osm_roads
Creating osm_id index on planet_osm_roads
Creating indexes on planet_osm_roads finished
All indexes on planet_osm_roads created in 6s
Completed planet_osm_roads
Stopping table: planet_osm_nodes
Stopped table: planet_osm_nodes in 0s
Stopping table: planet_osm_ways
Building index on table: planet_osm_ways
Stopped table: planet_osm_ways in 99s
Stopping table: planet_osm_rels
Building index on table: planet_osm_rels
Stopped table: planet_osm_rels in 1s

Osm2pgsql took 484s overall
node cache: stored: 29685880(100.00%), storage efficiency: 50.61% (dense blocks: 233, sparse nodes: 28373981), hit rate: 100.00%
$

 

 

 

인덱스 생성

CREATE INDEX 16번 표출됨.

$ cd ~/src/openstreetmap-carto
$ psql -d gis -f indexes.sql
CREATE INDEX
CREATE INDEX
CREATE INDEX
CREATE INDEX
CREATE INDEX
CREATE INDEX
CREATE INDEX
CREATE INDEX
CREATE INDEX
CREATE INDEX
CREATE INDEX
CREATE INDEX
CREATE INDEX
CREATE INDEX
CREATE INDEX
CREATE INDEX
$

 

 

 shape file 다운로드

$ cd ~/src/openstreetmap-carto
$ scripts/get-external-data.py
Traceback (most recent call last):
  File "scripts/get-external-data.py", line 25, in <module>
    import requests
ModuleNotFoundError: No module named 'requests'
$

 

 

python request 모듈이 없다고 하므로 설치

$ scripts/get-external-data.py
Traceback (most recent call last):
  File "scripts/get-external-data.py", line 25, in <module>
    import requests
ModuleNotFoundError: No module named 'requests'
$   
sh: 96: ?: not found
$

 

 

pip 모듈이 없으므로 먼저 설치 후 다시 시도

$ sudo apt install python3-pip
[sudo] password for renderaccount: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  python-pip-whl python3-setuptools python3-wheel
Suggested packages:
  python-setuptools-doc
The following NEW packages will be installed:
  python-pip-whl python3-pip python3-setuptools python3-wheel
0 upgraded, 4 newly installed, 0 to remove and 0 not upgraded.
Need to get 2389 kB of archives.
After this operation, 4933 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://archive.ubuntu.com/ubuntu focal-updates/universe amd64 python-pip-whl all 20.0.2-5ubuntu1.10 [1805 kB]
Get:2 http://archive.ubuntu.com/ubuntu focal-updates/main amd64 python3-setuptools all 45.2.0-1ubuntu0.1 [330 kB]
Get:3 http://archive.ubuntu.com/ubuntu focal-updates/universe amd64 python3-wheel all 0.34.2-1ubuntu0.1 [23.9 kB]
Get:4 http://archive.ubuntu.com/ubuntu focal-updates/universe amd64 python3-pip all 20.0.2-5ubuntu1.10 [231 kB]
Fetched 2389 kB in 4s (603 kB/s)    
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package python-pip-whl.
(Reading database ... 67480 files and directories currently installed.)
Preparing to unpack .../python-pip-whl_20.0.2-5ubuntu1.10_all.deb ...
Unpacking python-pip-whl (20.0.2-5ubuntu1.10) ...
Selecting previously unselected package python3-setuptools.
Preparing to unpack .../python3-setuptools_45.2.0-1ubuntu0.1_all.deb ...
Unpacking python3-setuptools (45.2.0-1ubuntu0.1) ...
Selecting previously unselected package python3-wheel.
Preparing to unpack .../python3-wheel_0.34.2-1ubuntu0.1_all.deb ...
Unpacking python3-wheel (0.34.2-1ubuntu0.1) ...
Selecting previously unselected package python3-pip.
Preparing to unpack .../python3-pip_20.0.2-5ubuntu1.10_all.deb ...
Unpacking python3-pip (20.0.2-5ubuntu1.10) ...
Setting up python3-setuptools (45.2.0-1ubuntu0.1) ...
Setting up python3-wheel (0.34.2-1ubuntu0.1) ...
Setting up python-pip-whl (20.0.2-5ubuntu1.10) ...
Setting up python3-pip (20.0.2-5ubuntu1.10) ...
Processing triggers for man-db (2.9.1-1) ...
$ pip --version
pip 20.0.2 from /usr/lib/python3/dist-packages/pip (python 3.8)
$

 

 

 

pip (Python Install Package) 로 request 설치

$ pip install requests
Collecting requests
  Downloading requests-2.32.3-py3-none-any.whl (64 kB)
     |████████████████████████████████| 64 kB 2.5 MB/s 
Collecting certifi>=2017.4.17
  Downloading certifi-2024.8.30-py3-none-any.whl (167 kB)
     |████████████████████████████████| 167 kB 6.3 MB/s 
Collecting urllib3<3,>=1.21.1
  Downloading urllib3-2.2.2-py3-none-any.whl (121 kB)
     |████████████████████████████████| 121 kB 932 kB/s 
Collecting idna<4,>=2.5
  Downloading idna-3.8-py3-none-any.whl (66 kB)
     |████████████████████████████████| 66 kB 2.7 MB/s 
Collecting charset-normalizer<4,>=2
  Downloading charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (141 kB)
     |████████████████████████████████| 141 kB 9.6 MB/s 
Installing collected packages: certifi, urllib3, idna, charset-normalizer, requests
  WARNING: The script normalizer is installed in '/home/renderaccount/.local/bin' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed certifi-2024.8.30 charset-normalizer-3.3.2 idna-3.8 requests-2.32.3 urllib3-2.2.2
$

 

 

shape file 다운로드 

(두시간 이상 소요됨)

$ scripts/get-external-data.py
INFO:root:Starting load of external data into database
INFO:root:Checking table simplified_water_polygons
INFO:root:  Download complete (23875659 bytes)
INFO:root:  Decompressing file
INFO:root:  Importing into database
INFO:root:  Import complete
INFO:root:Checking table water_polygons
INFO:root:  Download complete (865502041 bytes)
INFO:root:  Decompressing file
INFO:root:  Importing into database
INFO:root:  Import complete
INFO:root:Checking table icesheet_polygons
INFO:root:  Download complete (52420602 bytes)
INFO:root:  Decompressing file
INFO:root:  Importing into database
INFO:root:  Import complete
INFO:root:Checking table icesheet_outlines
INFO:root:  Download complete (53083620 bytes)
INFO:root:  Decompressing file
INFO:root:  Importing into database
INFO:root:  Import complete
INFO:root:Checking table ne_110m_admin_0_boundary_lines_land
INFO:root:  Download complete (57325 bytes)
INFO:root:  Decompressing file
INFO:root:  Importing into database
INFO:root:  Import complete
$

 

 

 

 

 

 

블로그 이미지

엘로드넷

,