[ 利器篇 ] - 升级Ubuntu 18.04系统工具集合

编程知识 更新时间:2023-05-02 23:54:08

工作中大部分的开发环境一般都是 Ubuntu 16.04,而我也不例外,最近几天花部分时间作一下系统的备份和升级, 顺便体验下Ubuntu 18.04 新系统, 新的系统主要大部分时间用于开发环境的搭建,这里围绕两个原则进行新系统的搭建:

  1. 容器化 : 工作中开发环境全部搭建在Docker中,方便环境的快速迁移而又不依赖于主系统 。
  2. 自动化: 新系统的配置文件全部统一管理起来,方便备份和迁移。

原系统中的软件一览:


安装Ubuntu 18.04
  • 安装电脑的为 ThinkPad T430 , 开机之后通过F1 进入BIOS, 设置启动顺序

  • 通过 dd 制作启动盘

Linux dd命令制作U盘系统启动盘

Linux系统下用dd命令制作ISO镜像U盘启动盘

Ubuntu使用dd命令制作U盘系统启动盘

//查看U盘挂在的分区
fdisl -l
//ubuntu 写入U盘
sudo dd bs=1M if=/xxx/ubuntu-18.04.1-desktop-amd64.iso  of=/dev/sdb
实际过程中,如果bs=4M, 制作的系统启动盘,发现启动设置U盘启动,一直进入的是正常系统。 重新制作启动盘, bs=1M之后正常进入装机模式

系统软件

  • 系统基本安装包
sudo apt-get install aptitude 

  • ack- 安装 ack install

  • 通过Ubuntu 18中的 软件中心安装Shutter 截图工具,可以参考ubuntu 16.04 安装并设置使用截图软件 Shutter设置快捷键, 进入系统设置, 其中Ubuntu 18.04中的Shutter禁用了“编辑”选项解决

  • Ubuntu 18.4 设置快捷键每位 Ubuntu 18.04 用户都应该知道的快捷键 | Linux 中国

  • 高效的快捷设置命令行:增强版 | Linux 中国

Configure -> keyboard 

  • 安装Linux sougou输入法,需要初步配置下,配置中添加添加Sougou Pinyin,才可以使用
  • 安装 Linux Xmind,参考之前写的文章Ubuntu安装Xmind,导致无法输入中文

主要原因就是xmind是基于java开发的,系统要安装java 的开发环境JRE才能运行

  • 参考 How do I install openjdk 7 on Ubuntu 16.04 or higher?
    第三个回答解决

  • 由于电脑大小写切换没有灯效提示,需要安装 indicator-keylock作为大小写提示。也有其他方案ubuntu下大小写切换提醒,通过Java写的一个小程序
sudo add-apt-repository ppa:tsbarnes/indicator-keylock
sudo apt-get update
sudo apt-get install indicator-keylock

安装完成之后,在启动器中找到Indicator LockKeys单击运行,或者重启系统
  • 系统问题
    Ubuntu kidle_inject进程占用CPU过高的解决办法

开发软件

zsh
  • 主要参考以下文章安装,主要步骤
//安装zsh
sudo apt-get install zsh
//把默认的Shell改成zsh
chsh -s /bin/zsh
//安装oh-my-zsh,用于用于快速配置zsh
sh -c "$(curl -fsSL https://raw.github/robbyrussell/oh-my-zsh/master/tools/install.sh)"

强烈推荐一款自动跳转目录插件autojump 一键直达目录

Ubuntu 16.04下安装zsh和oh-my-zsh

在 Ubuntu 16.04 中安裝使用 Oh-My-Zsh

  • 可以修改~/.zshrc添加相关配置,如下:
//主要配置相关插件
# Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*)
# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.                              
plugins=(                                                                               
  git
  osx                                                                                   
  extract                                                                               
  sudo 
)

//配置 autojump 
. /usr/share/autojump/autojump.sh

zsh+on-my-zsh配置教程指南

终端 Guake

平常并没有使用使用Ubuntu 自带的Terminal,而是使用下拉式终端Guake,主要优势是任何时候都能够通过快捷键调出来,非常高效。安装完成之后,主要配置:
开机启动设置: 搜索应用程序Startup Applications 中添加/usr/bin/guake
皮肤配置 : Monokai
快捷键 : 切换Tab由默认的 Cttl+1-9 改为Alt+1-9 , 快速调出Guake快捷键由默认的F12改为F11,(主要因为F12和浏览器中的快捷键冲突)

vim
  • 主要是一些配置文件参数和插件的安装,待写 !!!
  • vim插件之ctags的安装与配置
  • 技巧
    vim在系统剪切板的复制与粘贴
Docker
  • 参考Docker 官方文档进行安装 Get Docker CE for Ubuntu
  • 默认情况下,docker 命令会使用 Unix socket 与 Docker 引擎通讯。而只有 root 用户和 docker 组的用户才可以访问 Docker 引擎的 Unix socket。出于安全考虑,一般 Linux 系统上不会直接使用 root 用户。因此,更好地做法是将需要使用 docker 的用户加入 docker 用户组,参考开源电子书Docker — 从入门到实践
//建立 docker 组:
$ sudo groupadd docker
//将当前用户加入 docker 组:

$ sudo usermod -aG docker $USER
退出当前终端并重新登录,进行如下测试。
串口终端SecureCRT
  • 由于minicom的功能有点若,一般使用SecureCRT替代,可以参考之前的博客效率工具之SecureCRT
系统私有配置
  • /etc/hosts 主要添加公司的IP
  • /etc/fstab 开机挂在另外一块硬盘
/dev/sdb1   /xxx/Project              ext4    errors=remount-ro        0       1
/dev/sdb2   /xxx/Code                 ext4    errors=remount-ro        0       1

  • Linux 下回收站机制
vpn 配置
  • Ubuntu 16.04 安装ss客户端
  • update到最新版本后安装shadowsocks服务报错问题
// 参考第二篇文章解决该问题
➜   sudo xxxsslocal  -c /etc/shadowsocks.json -d start
INFO: loading config from /etc/shadowsocks.json
2019-01-06 17:32:56 INFO     loading libcrypto from libcrypto.so.1.1
Traceback (most recent call last):
  File "/home/mike/.local/bin/sslocal", line 11, in <module>
    sys.exit(main())
  File "/home/mike/.local/lib/python2.7/site-packages/shadowsocks/local.py", line 39, in main
    config = shell.get_config(True)
  File "/home/mike/.local/lib/python2.7/site-packages/shadowsocks/shell.py", line 262, in get_config
    check_config(config, is_local)
  File "/home/mike/.local/lib/python2.7/site-packages/shadowsocks/shell.py", line 124, in check_config
    encrypt.try_cipher(config['password'], config['method'])
  File "/home/mike/.local/lib/python2.7/site-packages/shadowsocks/encrypt.py", line 44, in try_cipher
    Encryptor(key, method)
  File "/home/mike/.local/lib/python2.7/site-packages/shadowsocks/encrypt.py", line 83, in __init__
    random_string(self._method_info[1]))
  File "/home/mike/.local/lib/python2.7/site-packages/shadowsocks/encrypt.py", line 109, in get_cipher
    return m[2](method, key, iv, op)
  File "/home/mike/.local/lib/python2.7/site-packages/shadowsocks/crypto/openssl.py", line 76, in __init__
    load_openssl()
  File "/home/mike/.local/lib/python2.7/site-packages/shadowsocks/crypto/openssl.py", line 52, in load_openssl
    libcrypto.EVP_CIPHER_CTX_cleanup.argtypes = (c_void_p,)
  File "/usr/lib/python2.7/ctypes/__init__.py", line 379, in __getattr__
    func = self.__getitem__(name)
  File "/usr/lib/python2.7/ctypes/__init__.py", line 384, in __getitem__
    func = self._FuncPtr((name_or_ordinal, self))
AttributeError: /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1: undefined symbol: EVP_CIPHER_CTX_cleanup

  • 启动命令 sudo sslocal -c /etc/shadowsocks.json -d start
  • 配置文件参数
➜  vpn cat /etc/shadowsocks.json 
{
    "server":"xxx",
    "server_port":xxx,
    "local_address": "127.0.0.1",
    "local_port":xxx,
    "password":"xxx",
    "method":"xxx",
    "fast_open": false,
    "workers": 7
}

  • 运行sudo: sslocal: command not found,发现Command not found when using sudo
➜  vpn env | grep ^PATH
PATH=/home/xxx/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
➜  vpn sudo env | grep ^PATH
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
➜  vpn whereis sslocal 
sslocal: /home/xxx/.local/bin/sslocal
`
// 可以发现sslocal的安装路径没有添加到sudo 中的环境变量中,导致无法发现
Git
  • 第一次安装信息配置初次运行 Git 前的配置
$ git config --global user.name "xxx"
$ git config --global user.email xxx@example
$ git config --global core.editor vim
$ git config --list
  • 将Git工程提交到两个不同的仓库
VMware
➜  Downloads chmod +x VMware-Workstation-Full-12.5.9-7535481.x86_64.bundle 
➜  Downloads sudo ./VMware-Workstation-Full-12.5.9-7535481.x86_64.bundle 
// VMware Workstation v12  激活码
5A02H-AU243-TZJ49-GTC7K-3C61N 
VF5XA-FNDDJ-085GZ-4NXZ9-N20E6 
UC5MR-8NE16-H81WY-R7QGV-QG2D8 
ZG1WH-ATY96-H80QP-X7PEX-Y30V4 
AA3E0-0VDE1-0893Z-KGZ59-QGAVF 

  • 运行vmware 报错
 source vmware
/usr/lib/vmware/bin/vmware-modconfig: Relink `/lib/x86_64-linux-gnu/libbsd.so.0' with `/lib/x86_64-linux-gnu/librt.so.1' for IFUNC symbol `clock_gettime'


//参考如下方案解决

git clone https://github/mkubecek/vmware-host-modules.git
cd vmware-host-modules
git checkout workstation-12.5.9 (change it to your version. it's important)
make && sudo make install
cd /usr/lib/vmware/lib/libz.so.1
sudo mv libz.so.1 libz.so.1.old
sudo ln -s /lib/x86_64-linux-gnu/libz.so.1 .
sudo depmod -a
sudo /etc/init.d/vmware restart

  • 参考Ubuntu 17.10 Upgrade Broke VMWare Workstation 12.5尝试去解决
VirtualBox

由于VirtualBox开源,免费,比较常用,但是配置比较繁琐,没有vmware使用简单

  • 安装win7 镜像 主要设置参数:在Virtual Box 建立虚拟机后需要调整 System/Boot Order,把 Hard Disk 调为第一启动项,Optical调为第二启动项
  • 安装
  • 启用USB设备支持
  • 设置共享目录
代码对比工具 Beyond-Compare
  • Crack-Beyond-Compare 4 -linux
音频编辑器Audacity
  • Audacity 2.2.1发布,增加改变波形色彩功能
sudo add-apt-repository ppa:audacity-team/daily
sudo apt-get update
sudo apt-get install audacity

VSCode
  • Markdown Preview Enhanced 插件

持续更新

更多推荐

[ 利器篇 ] - 升级Ubuntu 18.04系统工具集合

本文发布于:2023-04-29 11:50:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/cd0885059b37c3af643795e0759f3a35.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:利器   工具   系统   Ubuntu

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 110896文章数
  • 28282阅读数
  • 0评论数