Centos7 使用 Ansible 批量安装中文字体
需求背景
Centos7 下 Java 生成图片水印时中文乱码,原因是没有安装中文字体。
安装中文字体
以下是基于 Centos7 手动安装中文字体的详细步骤。当测试或者生产环境服务器比较多的时候,建议使用自动化运维工具。
# 安装字体库
$ yum -y install fontconfig
# 查看是否有中文字体
$ fc-list :lang=zh
# 创建中文字体目录
$ mkdir /usr/share/fonts/chinese
# 在 windows 的 C:\Windows\Fonts 目录下找到相应的字体 copy 到 chinese 目录下,这里以 宋体 为例
$ scp simsun.ttc simsunb.ttf root@xxxxx:/usr/share/fonts/chinese
# 查看是否有中文字体
$ fc-list :lang=zh
/usr/share/fonts/chinese/simsun.ttc: SimSun,宋体:style=Regular,常规
/usr/share/fonts/chinese/simsun.ttc: NSimSun,新宋体:style=Regular,常规
Ansible 批量安装
通常测试或者生产环境服务器比较多,下面记录如何使用 Ansbile 来批量安装中文字体。
# ansbile playbook 执行
$ ansible-playbook fonts.yml
# 验证所有服务器是否生效
$ ansible all -m shell -a "fc-list :lang=zh"
sever01 | SUCCESS | rc=0 >>
/usr/share/fonts/chinese/simsun.ttc: SimSun,宋体:style=Regular,常规
/usr/share/fonts/chinese/simsun.ttc: NSimSun,新宋体:style=Regular,常规
sever02 | SUCCESS | rc=0 >>
/usr/share/fonts/chinese/simsun.ttc: SimSun,宋体:style=Regular,常规
/usr/share/fonts/chinese/simsun.ttc: NSimSun,新宋体:style=Regular,常规
......
fonts.yml 内容:
---
- name: Install Chinese Fonts.
  hosts: all
  remote_user: root
  become: yes
  become_method: sudo
  become_user: root
  roles:
    - fonts
ansible playbook 目录结构(删除了无用目录):
$ tree roles/fonts
roles/fonts
├── files
│   ├── simsun.ttc
│   └── simsunb.ttf
└── tasks
    └── main.yml
2 directories, 3 files
task/main.yml 内容:
---
# tasks file for fonts
- name: install fontconfig.
  yum:
    name: "{{ item }}"
    state: installed
  with_items:
    - fontconfig
  ignore_errors: true
- name: mkdir /usr/share/fonts/chinese.
  file:
    path: /usr/share/fonts/chinese
    state: directory
    mode: 0755
- name: Copy fonts to agent.
  copy:
    src: "{{ item }}"
    dest: /usr/share/fonts/chinese
  with_items:
    - simsun.ttc
    - simsunb.ttf
微信公众号:daodaotest
Centos7 使用 Ansible 批量安装中文字体的更多相关文章
- linux安装中文字体
		一.查看系统字体 在开始安装之前,我们先查看系统中已经安装的字体. 要查看系统中已经安装的字体,我们可以使用fc-list命令进行查看.如果系统中没有该命令的话,我们需要先安装相关的软件包. 在cen ... 
- 3、树莓派的配置:改静态IP、连接ssh、安装中文字体、安装谷歌输入法、增加USB电流、修改触摸屏分辨率、扩展sd卡空间、修复vi和vim乱码问题、安装配置远程桌面vnc
		本博文仅作本人操作过程的记录,留作备忘.自强不息 QQ1222698 1.连接上HDMI线,插上触摸屏,插上键盘,鼠标,网线,启动.系统正常启动,但是一直闪烁,不停的黑屏,是由于触摸屏的usb口供电不 ... 
- 对linux安装中文字体库
		问题描述: linux提供的web服务,能在网页展示中文,下载pdf出现中文无法读取!,甚是迷瞪,经分析展示是本地浏览器的解析,下载pdf是服务器端的响应,因此要在服务端安装对应的字体库就可以解决此问 ... 
- 在CentOS 6.X中安装中文字体
		1.从Windows中 拷贝或者网络上下载你想要安装的字体文件(*.ttf文件) 2.新建字体目录 #mkdir /usr/share/fonts/ 3.修改字体文件的权限,使root用户以外的用户也 ... 
- debian安装中文字体
		debian刚安装完成之后,因为没有中文字体,会出现方框. 安装中文字体: $ su # apt-get install fonts-arphic-bkai00mp fonts-arphic-bsmi ... 
- Linux 下安装中文字体
		本文以安装黑体为例,简单演示如何在Linux下安装中文字体. 环境信息介绍 [root@thatsit ~]# cat /etc/redhat-release CentOS Linux release ... 
- docker容器中安装中文字体
		在项目中用到pdf导出功能,需要安装中文字体,项目使用docker部署,为了方便决定在将字体安装在镜像中. 1.在dockerfile文件中添加字体copy语句(本次用是的宋体,字体源文件放在dock ... 
- Linux安装中文字体(已验证)
		1.安装字体命令 sudo apt install -y fontconfig 2.查看已安装的字体 (1)查看linux已安装字体 fc-list (2)查看linux已安装中文字体 fc-list ... 
- linux 安装中文字体
		工具/原料 centos6.5_x64 方法/步骤 centos6.5下使用下面命令进行安装 yum install -y fontconfig mkfontscale 使用fc-list ... 
随机推荐
- 解决同层hover事件重叠闪烁问题
			完整代码如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ... 
- 常用App用户体验找茬
			冯晓云: 哔哩哔哩手机客户端:视频播放只允许横屏全屏:还有长视频的“5分钟诅咒”,遇到网速不好的时候是个大写的悲剧: 必应词典UWP版本:主页新闻链接跳转后,一些页面不支持划词取译,当然本身各个页面也 ... 
- work of weekend 12/12/2015~12/14/2015
			part 组员 周末工作+今日工作 工作耗时/h 明日计划 工作耗时/h backup 冯晓云 try the backup plan:brower:rewrite bi ... 
- 关于vue切换用户,路由表不更新问题
			简介 我想很多同学在项目中可能会遇到类似的问题,然后一顿操作,发现结果不尽人意.于是查阅各种资料,走进很多坑(可能你阅读的这篇随笔也是个坑).接下来我所描述的是关于我使用不同权限的用户切换登陆后,需要 ... 
- Xss Game挑战
			前言 最新学习了下xss的更深入的东西,学习了一波浏览器解析机制和XSS向量编码的知识. 这里就些xss的练习题巩固知识 学习的话结合如下两篇文章看,从例子和基础原理层面都有: http://boba ... 
- SpringCloud-Hystrix 服务降级、熔断
			Hystrix 是什么? Hystrix 是一个用于处理分布式系统的延迟和容错的开源库,在分布式系统里,许多依赖不可避免的会调用失败,比如超时.异常等,Hystrix 能够保证在一个依赖出问题的情况下 ... 
- Elasticsearch 集群部署
			本文部署环境 $ cat /etc/redhat-release CentOS Linux release (Core) 部署前系统优化 $ /etc/security/limits.conf roo ... 
- 免费 https 申请步骤,你必须知道
			不适用 https 加密的网站,基本上就等于在裸奔. 来,开始开始动手做 我的系统是 CentOS6 第一步:安装Certbot Certbot可以用于管理(申请.更新.配置.撤销和删除等)Let's ... 
- Spring Cloud 系列之 Stream 消息驱动(二)
			本篇文章为系列文章,未读第一集的同学请猛戳这里:Spring Cloud 系列之 Stream 消息驱动(一) 本篇文章讲解 Stream 如何实现消息分组和消息分区. 消息分组 如果有多个消息消费者 ... 
- 自动获取时间html代码
			<button type="button" onclick="document.getElementById('demo').innerHTML = Date()& ... 
