红联Linux门户
Linux帮助

ubuntu没网环境安装libreoffice和unoconv,用以word转pdf用

发布时间:2017-05-27 11:16:31来源:linux网站作者:霹雳小智哥
有个需求。linux ubuntu服务器上需要安装执行命令转pdf,需要使用libreoffice。
但是有些机器没联网,需要一个这样的离线安装包。
思路步骤:
1.在本地虚拟机进行安装
2.步骤一安装完成后复制deb包
3.编写脚本一键安装
 
实际操作:
1.装好虚拟机,由于虚拟机ubuntu版本是16.04,更新不到最新的libreoffice,所以需要先添加PPA的sudo add-apt-repository ppa:libreoffice/ppa。然后再更新sudo apt update,若是之前装了老版本先卸载掉sudo apt remove libreoffice-gtk,执行sudo apt  -d dist-upgrade && sudo -d apt install libreoffice-gtk2 libreoffice-gnome下载所需的软件包。然后到软件包存储的默认的路径下面手动安装,sudo dpkg -i *.deb。然后再安装unoconv。
ok,现在试了下是可以进行转化的了,命令doc2pdf template.docx,但是若是存在中文可能会有乱码问题,安装字体即可。
2.copy上一步的包出来,到一个干净的ubuntu16.04环境尝试。目录如下,执行手动安装 ,发现是ok的。
3.现在可以完整地编写脚本。此时的目录结构如下,sh文件夹下的install-libreoffice.sh内容如下。
ubuntu没网环境安装libreoffice和unoconv,用以word转pdf用
 
------------------install-libreoffice.sh
echo "start install libreoffice..."
#sudo dpkg -i install-font/*.deb
sudo dpkg -i libreoffice/*.deb
sudo dpkg -i unoconv/*.deb
sudo cp -r winfonts /usr/share/fonts
cd /usr/share/fonts/winfonts/
sudo mkfontscale
sudo mkfontdir
sudo fc-cache -fv
echo "install libreoffice finished."
cd -
doc2pdf *.docx
doc2pdf *.docx
result=$(ls -l *.pdf|grep "^-" | wc -l)
echo $result
if [ $result -ge 1 ]
then 
echo "install success"
else
echo "install fail, please check install.log for details"
fi
 
---------------------install.sh
echo "start exec install-libreoffice.sh"
source sh/install-libreoffice.sh 2>&1 | tee install.log
 
执行方式:
1.执行命令chmod +x install.sh
2.执行安装脚本./install.sh
 
注意:
1.执行过程可能需要键盘操作设置一次协议的确定和同意操作:第一个选OK,第二个选Yes。
2.执行完脚本后看最后输出,install success或者install fail, please check install.log for details既知道安装是否成功。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/31098.html