Deepin常见问题及优化技巧

本文最后由 森林生灵 于 2018/08/14 13:58:50 编辑

文章目录 (?) [+]

    Linux Beyond Compare

    1.WPS 提示缺失字体

    ① 方法一

    安装此补丁,下载地址:https://lanseyujie.com/download/symbol-fonts_1.2_all.deb

    ② 方法二

    字体下载

    CSDN: http://download.csdn.net/download/wl1524520/6333049

    Local: https://lanseyujie.com/download/wps_symbol_fonts.zip

            下载字体,解压后将整个 wps_symbol_fonts 目录移动到 /usr/share/fonts/ 目录下,注意 wps_symbol_fonts 目录要有可读可执行权限

    # 权限设置
    cd /usr/share/fonts/
    chmod 755 wps_symbol_fonts
    cd /usr/share/fonts/wps_symbol_fonts 
    chmod 644 *
    # 生成缓存配置信息 
    cd /usr/share/fonts/wps_symbol_fonts
    mkfontdir
    mkfontscale
    fc-cache


    2.网络传输速度显示插件

            插件1:CMDU_DDE_DOCK (Github:https://github.com/sonichy/CMDU_DDE_DOCK)

            插件2:NetSpeedMonitor


    3.本地 PHP 开发环境

    ① 方法一:[推荐]本地 LNMP 开发环境搭建:https://lanseyujie.com/post/build-local-lnmp-development-environment.html

    ② 方法二:集成 LAMP 环境:XAMPP

            安装与卸载

    #安装
    sudo chmod +x xampp-linux-x64-7.0.13-0-installer.run
    sudo ./xampp-linux-x64-7.0.13-0-installer.run
    
    # 卸载
    cd /opt/lampp/
    sudo ./uninstall

            常用命令

    sudo ln -s /opt/lampp/lampp /usr/bin/lampp
    # 启动
    lampp start
    lampp startapache
    lampp startmysql
    lampp startftp
    
    # 停止
    lampp stop
    lampp stopapache
    lampp stopmysql
    lampp stopftp
    
    # 重载
    lampp reload
    lampp reloadapache
    lampp reloadmysql
    lampp reloadftp
    
    # 重启
    lampp restart
    
    # 安全检查
    lampp security
    
    # SSL
    lampp enablessl
    lampp disablessl
    
    # 备份配置
    lampp backup
    
    # 启用oci8扩展
    lampp oci8
    
    # 打开图形控制界面
    lampp panel

            创建启动图标

    cd /usr/share/applications
    sudo nano bitnami-xampp.desktop
    [Desktop Entry]
    Version=7.0.13-0
    Name=XAMPP
    GenericName=XAMPP
    Comment=XAMPP is the most popular PHP development environment
    Exec=gksudo "/opt/lampp/manager-linux-x64.run" # XAMMP安装路径
    Icon=/opt/lampp/img/favicon.ico # XAMMP启动图标位置
    Terminal=false
    Type=Application
    Categories=Development
    StartupNotify=true
    # Ctrl+x离开
    # Y保存修改
    # Y保存文件


    4.Deepin 安装 Shadowsocks

            请参考https://lanseyujie.com/post/deepin-install-shadowsocks.html


    5.ArduinoIDE 串口权限解决

            ① 插上连接线后查看设备所在的组

    sudo ls -l /dev/ttyUSB*
    # 或者
    sudo ls -l /dev/ttyACM*

            ② 执行后会返回类似如下结果

    choi@lanseyujie:~$ sudo ls -l /dev/ttyUSB*
    crw-rw---- 1 root dialout 188, 0 11月 11 15:53 /dev/ttyUSB0
    # 或者
    choi@lanseyujie:~$ sudo ls -l /dev/ttyACM*
    crw-rw---- 1 root dialout 188, 0 11月 11 15:53 /dev/ttyACM0

            ③ ttyUSB0 和 ttyACM0 中的 0 可能为其他数字,dialout 是串口设备所在的组。然后将用户添加进设备所在的组,以用户名 choi 为例:

    sudo usermod -a -G dialout choi

            ④ 注销后重新登陆,串口就可以使用了。


    6.创建 WiFi 热点

            如果网卡支持创建热点可以参考如下方法创建 WiFi 热点,如果不支持可以买一个 Linux 可用的随身 WiFi,比如常见的 RTL8188CUS(亲测可用)。

    sudo apt install hostapd dnsmasq iptables git
    cd /opt/
    sudo git clone https://github.com/oblique/create_ap.git
    cd /opt/create_ap/
    sudo make install
    sudo create_ap wlan0 eth0 SSID Password
    # wlan0 是要创建热点的网卡名,eth0是已连接到互联网的网卡名,可以用 ifconfig 命令查看具体网卡名。SSID 是创建的热点名,Password 是连接密码。


    7.配置 Java 环境

    ① 方法一:安装 Oracle 版 Java

    # 安装位置
    # 去官网下载 JDK: http://www.oracle.com/technetwork/java/javase/downloads/index.html
    # 解压缩
    sudo tar zxvf jdk-10.0.2_linux-x64_bin.tar.gz
    sudo mv jdk-10.0.2 /opt
    # 环境变量
    sudo nano /etc/profile
    
    #Java Environment Config
    export JAVA_HOME=/opt/jdk-10.0.2
    export CLASSPATH=.:$JAVA_HOME/lib
    export PATH=$PATH:$JAVA_HOME/bin

    P.S. 网传方法将环境变量配置到 /etc/environment 中,这将会导致 Deepin 的 lightdm 登录管理器启动失败,会出现启动黑屏现象。

     ② 方法二:安装 OpenJDK

    sudo apt install openjdk-10-jdk


    8.VMware Workstation 安装与卸载

    # 安装
    # 去官网下载 VMware Workstation:http://www.vmware.com/cn/products/workstation-for-linux.html
    # 设置可执行权限
    sudo chmod +x VMware-Workstation-Full-12.5.2-4638234.x86_64.bundle
    sudo ./VMware-Workstation-Full-12.5.2-4638234.x86_64.bundle
    # 最新可用激活序列号请参考 https://lanseyujie.com/post/software-serial-number.html
    
    # 卸载
    # 查看安装的 VMware 产品名和版本
    vmware-installer -l
    # 卸载 VMware 产品
    sudo vmware-installer -u vmware-workstation

            初次运行 VMware Workstation 可能会因 build kernel 的 gcc 版本跟系统使用中的 gcc 版本不一致,会出现找不到某个版本的 GCC(如 GNU C Compiler(gcc) version 5.4.1 was not found),可以在路径填写 /usr/bin/gcc-5,第一次会失败,但第二次就可以编译通过了。


    9.更换镜像源

    # Deepin 配置阿里云镜像源
    echo -e "deb [by-hash=force] http://mirrors.aliyun.com/deepin unstable main contrib non-free \ndeb-src http://mirrors.aliyun.com/deepin unstable main contrib non-free" | sudo tee /etc/apt/sources.list
    
    # Deepin 配置中科大镜像源
    echo -e "deb [by-hash=force] http://mirrors.ustc.edu.cn/deepin unstable main contrib non-free \ndeb-src http://mirrors.ustc.edu.cn/deepin unstable main contrib non-free" | sudo tee /etc/apt/sources.list


    10.Sublime Text 3 相关

    ① 安装包管理器:https://packagecontrol.io/installation

    ② 搜狗输入法补丁:https://lanseyujie.com/download/sublime_text_patch.tar.gz

    ③ 汉化:安装好包管理器点击 Preferences 里的 Package Control 选项,然后选中 Package Control:Install Package 在弹出的命令界面输入 Chinese 选中 ChineseLocalization 安装语言包,在帮助选项中可以切换语言。

    ④ 常用插件:安装方法同 ③。

            ConvertToUTF8: 编辑并保存目前编码不被 Sublime Text 支持的文件,特别是中日韩用户使用的GB2312,GBK,BIG5,EUC-KR,EUC-JP ,ANSI等。( 注:需安装依赖插件 Codecs33

            DocBlockr: 代码注释插件,标准的注释,包括函数名、参数、返回值等,并以多行显示,省去手动编写。

            AutoFileName: 快捷输入文件名插件,自动完成文件名的输入,如图片选取,输入”/”即可看到相对于本项目文件夹的其他文件。

            BracketHighlighter: 代码匹配插件,可匹配[], (), {}, “”, ”, ,高亮标记,便于查看起始和结束标记,点击对应代码即可。

            Emmet: HTML/CSS代码快速编写插件,对于前端来说,可是必备插件。

            FileDiffs: 强大的比较代码不同工具,比较当前文件与选中的代码、剪切板中代码、另一文件、未保存文件之间的差别,右键标签页,出现FileDiffs Menu或者Diff with Tab…选择对应文件比较即可。


    11.解决 id_rsa 权限问题

    # 现象
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    @         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Permissions 0777 for '/home/choi/.ssh/id_rsa' are too open.
    It is required that your private key files are NOT accessible by others.
    This private key will be ignored.
    Load key "/home/choi/.ssh/id_rsa": bad permissions
    Permission denied (publickey).
    
    # 解决方法(权限不可过大或过小)
    chmod 755 ~/.ssh/
    chmod 600 ~/.ssh/id_rsa ~/.ssh/id_rsa.pub
    chmod 644 ~/.ssh/known_hosts ~/.ssh/authorized_keys


    12.Chrome 强制启用 GPU 渲染 WebGL

    ① 地址栏输入 chrome://flags#ignore-gpu-blacklist 和 chrome://flags/#enable-es3-apis,分别启用。

    ② 地址栏输入 chrome://settings,点击”显示高级选项“,找到”系统“,勾选”使用硬件加速模式(如果可用)“,然后重启 Chrome。

    ③ 验证 WebGL 是否可用,访问 http://doesmybrowsersupportwebgl.com,出现 Yay 代表可用。查看 GPU 可以通过chrome://gpu。


    13.文件关联

    根据 MIME 类型关联

    ① 查看文件 MIME 类型

    xdg-mime query filetype <your-file-path>
    
    # 或者
    
    mimetype <your-file-path>
    
    # 或者
    
    file -i <your-file-path>

    ② 查询打开某类文件的默认程序

    gio mime <mime-type>
    
    # 或者
    
    xdg-mime query default <mime-type>

    ③ 设置打开某类文件的默认程序

    gio mime <mime-type> <application>
    
    # 或者
    
    mimeopen -d <your-file-path>
    
    # 或者
    
    xdg-mime default <application> <mime-type>

    ④ 使用示例

    choi@lanseyujie:~/Desktop$ xdg-mime query filetype Complete_NGINX_Cookbook.pdf 
    application/pdf
    choi@lanseyujie:~/Desktop$ gio mime application/pdf
    Default application for “application/pdf”: foxitreader.desktop
    已注册的应用程序:
    	foxitreader.desktop
    	gimp.desktop
    	krita_pdf.desktop
    	display-im6.q16.desktop
    推荐的应用程序:
    	foxitreader.desktop
    	gimp.desktop
    	krita_pdf.desktop
    	display-im6.q16.desktop
    choi@lanseyujie:~/Desktop$ gio mime application/pdf foxitreader.desktop
    Set foxitreader.desktop as the default for application/pdf

    根据后缀名关联

            ① 创建新的 MIME 类型,此处以为 *.tvs 文件为例,*.tvs 是 TeamViewer 的录制的视频文件,使用 mimetype 命令查看得知其本质为 text/plain 类型,需要为其设置新的 MIME 类型以便进行关联。

    cd ~/.local/share/mime/packages
    nano application-x-tvs.xml
    
    # 写入如下内容
    
    <?xml version="1.0" encoding="UTF-8"?>
    <mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
      <mime-type type="application/x-tvs">
        <glob pattern="*.tvs"/>
        <comment>TeamViewer Screen Record</comment>
      </mime-type>
    </mime-info>
    
    
    # 更新 MIME 数据库
    update-mime-database ~/.local/share/mime

            ② 创建关联的应用程序启动图标

             如果没有启动图标,推荐使用 menulibre 来辅助创建,menulibre 的安装参考 #23 。

            ③ 关联默认使用的程序

    nano ~/.config/mimeapps.list
    
    [Added Associations]
    application/x-tvs=com.teamviewer.TeamViewer.desktop;

            ④ 关联文件类型图标

            将图标命名为 application-x-tvs 按不同尺寸放在 ~/.local/share/icons/hicolor/mimetypes/<icon-size>/ 或 /usr/share/icons/hicolor/<icon-size>/mimetypes/ 文件夹里重启一下 dde-desktop 进程即可生效。

    killall dde-desktop

    14.MATLAB 安装与激活

            请参考:https://lanseyujie.com/post/matlab-download-and-activate.html


    15.手动升级 Deepin Wine 程序

            Deepin Wine 中的 Windows 程序版本更新的实在太慢了,通过软件自带的升级功能又不能使用,对于那种功能没有太大变动而稳定性提高的软件升级,可以直接拷贝 Windows 上的安装好的文件到 Deepin Wine 相应目录替换。

            比如 TIM ,直到我更新这一条的时候,Deepin Wine 里的 TIM 版本还是最初的测试版,新版本 TIM 更新幅度不是很大又提高了稳定性,可以直接拷贝安装在的 Windows 上的 TIM 替换掉原来的 Deepin Wine 的 TIM,即用 Windows 的 D:\Tencent\TIM 文件夹替换掉 Deepin Wine 的 ~/.deepinwine/Deepin-TIM/drive_c/Program Files/Tencent/TIM 文件夹,为了防止失败可以先将 Deepin Wine 的 TIM 重命名备份一下。

    # 安装的 DeepinWine 程序要先打开运行一次才会在 .deepinwine 目录解压程序文件
    
    # 切换到 DeepinWine 程序文件目录
    cd ~/.deepinwine/Deepin-TIM/drive_c/Program Files/Tencent/TIM
    
    # 备份原来的程序文件
    mv TIM/ TIM.bak/
    # 复制 Windows 中安装的新版本程序文件
    cp -r /media/choi/WinApps/Tencent/TIM/ ./
    
    # 设置权限
    sudo chmod 644 TIM/ -R
    sudo find TIM/ -type d -print|xargs chmod 755;
    sudo find TIM/ -name "*.exe" -print|xargs chmod +x;


    16.安装配置 Go 语言环境

            下载 Go 安装文件:https://golang.org/dl/

            参考链接:https://golang.org/doc/install

    # 设置要下载的 Go 版本
    VERSION=1.10
    OS=linux
    ARCH=amd64
    
    wget -c https://dl.google.com/go/go$VERSION.$OS-$ARCH.tar.gz
    
    sudo tar -C /usr/local -xzf go$VERSION.$OS-$ARCH.tar.gz
    
    # 配置环境,所有用户有效配置到 /etc/profile,单用户有效配置到 ~/.profile
    # GOPATH 为 Go 工作目录
    export GOROOT=/usr/local/go
    export GOPATH=$HOME/go
    export GOBIN=$GOROOT/bin:$GOPATH/bin
    export PATH=$PATH:$GOBIN
    
    
    # 使配置在当前终端立即生效
    # 多用户
    source /etc/profile
    # 单用户
    source ~/.profile
    
    # 查看 Go 环境
    go env


    17.安装 Docker

            参考链接:https://docs.docker.com/engine/installation/linux/docker-ce/debian/#install-using-the-repository

    sudo apt-get update
    
    # 安装以下软件包以允许 apt 通过 HTTPS 使用仓库
    sudo apt-get install apt-transport-https ca-certificates curl python-software-properties software-properties-common
    
    # 添加 Docker 的官方 GPG 密钥
    curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
    
    # 验证密钥是不是 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
    sudo apt-key fingerprint 0EBFCD88
    # 正确密钥应该如下显示
    pub   4096R/0EBFCD88 2017-02-22
          Key fingerprint = 9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88
    uid                  Docker Release (CE deb) <docker@docker.com>
    sub   4096R/F273FCD8 2017-02-22 
    
    # 添加 Docker 官方仓库
    sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian jessie stable"
    
    # 安装 Docker-CE
    sudo apt-get update
    sudo apt-get install docker-ce

            免 sudo 使用 docker,注销再登录即可生效。参考链接:http://tinylab.org/use-docker-without-sudo/

    sudo groupadd docker
    sudo usermod -aG docker $USER

    18.串口通信工具 MiniCOM

    # 安装
    sudo apt-get minicom
    
    # 设置串口
    sudo minicom -s
    
    # 打开串口
    minicom -D <your-serial-port>

            基本操作:如果上面设置顺利,按开发板上的 Reset 键复位,此时窗口里就有信息打印出来了。功能设置需要先按组合键 Ctrl + A 进入设置状态,再按其它键。

            Z 键:打开帮助菜单;

            S 键:发送文件到目标系统中;

            W 键:自动滚屏。当显示的内容超过一行之后,自动将后面的内容换行。这个功能在查看内核的启动信息时很有用;

            C 键:清除屏幕的显示内容;

            B 键:浏览 minicom 的历史显示;

            X 键:退出 minicom ,会提示确认退出。

    19.多线程下载

    # 安装
    sudo apt install axel
    # 使用示例:以 32 线程下载 deepin.iso 到当前路径
    axel -n 32 -o ./ http://cdimage.deepin.com/releases/15.6/deepin-15.6-amd64.iso


    20.查看系统信息

    # 安装
    sudo apt install screenfetch
    
    # 查看系统信息
    screenfetch


    21.为控制中心设置快捷键

            打开控制中心设置快捷键命令 dde-control-center -t,直接打开网络设置的命令为 dde-control-center -m network,更多关于控制中心的使用说明使用命令行 dde-control-center -h 查看,快捷键可以设置一个不冲突的,比如类似 Windows 10 的 Super + I。


    22.打开 Fcitx 剪贴板历史

            快捷键 Ctrl + ; 通过应用 输入法配置 中的 附加组件 - 剪切板 - 配置 可以调整剪贴板历史长度。


    23.启动器菜单编辑

            此工具可以显示、隐藏、修改、创建、删除一些启动器菜单图标。

    sudo apt-get install menulibre

            安装后无启动图标的解决方法。

    sudo nano /usr/share/applications/menulibre.desktop
    
    使用 # 注释掉 OnlyShowIn=Budgie;Cinnamon;GNOME;KDE;LXDE;LXQt;MATE;Pantheon;Unity;XFCE;


    24.QT 相关

    安装过程

            ① 方法一:离线安装包

            安装必要的 GNU 开发工具集和 OpenGL 开发库

    sudo apt install build-essential libgl1-mesa-dev
    # 未安装会导致某些 OpenGL 头文件不存在问题,例如:/opt/Qt5.9.1/5.9.1/gcc_64/include/QtGui/qopengl.h:139: error: GL/gl.h: 没有那个文件或目录 # include <GL/gl>

            官方正式版离线安装包下载:http://download.qt.io/official_releases/qt/

            安装方法:下载 Linux 版本,使用 md5sum 命令校验无误后,给 run 文件添加可执行权限,然后使用 sudo ./*.run 进行安装。

    # 命令行编译需要的环境
    export QT_VERSION=5.10.1
    export QT_DIR=/opt/qt/$QT_VERSION/gcc_64
    export PATH=$QT_DIR/bin:$PATH
    export LD_LIBRARY_PATH=$QT_DIR/lib:$LD_LIBRARY_PATH
    
    cd ~
    deepin-terminal
    
    # 测试命令
    qmake -v
    assistant
    designer
    linguist

            Qt 编程指南:https://qtguide.ustclug.org

            ② 方法二:源安装

    sudo apt-get install qt5-default qt5-qmake g++ qtcreator build-essential libgl1-mesa-dev

    输入法补丁

            搜狗输入法不能使用?下载补丁,修改 shell 里的 userdir 和 qtversion 并执行即可。

            补丁下载:https://lanseyujie.com/download/qtcreator_input_method_patch.zip

    启动图标

    [!] Exec 的可执行文件路径需要根据实际情况修改

    qt-assistant.desktop(QT 助手)

    [Desktop Entry]
    Version=1.1
    Type=Application
    Name=Qt 5 助手
    GenericName=文档浏览器
    Icon=assistant-qt5
    Exec=/usr/lib/qt5/bin/assistant
    Actions=
    Categories=Development;Documentation;Qt;

    qt-designer.desktop(QT 设计师)

    [Desktop Entry]
    Version=1.1
    Type=Application
    Name=Qt 5 设计器
    GenericName=界面设计器
    Icon=designer-qt5
    Exec=/usr/lib/qt5/bin/designer %F
    Actions=
    MimeType=application/x-designer;
    Categories=Development;GUIDesigner;Qt;

    qt-linguist.desktop(QT 语言家)

    [Desktop Entry]
    Version=1.1
    Type=Application
    Name=Qt 5 Linguist
    GenericName=翻译工具
    Icon=linguist-qt5
    Exec=/usr/lib/qt5/bin/linguist %F
    Actions=
    MimeType=application/x-linguist;
    Categories=Development;Qt;Translation;

    25.双系统时差

            Linux 系统将主板时钟时间认作为 UTC (协调世界时),然后再根据系统设置的时区确定当前时间。而 Windows 系统却直接将主板时钟认作为当前时间,这就导致了双系统会有 8 个小时时差。在 Windows 系统执行如下内容的批命令即可解决此问题。

    @echo off
    Reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1
    echo .注册表添加成功,重启后生效
    pause


    26.Deepin 字体

            用于兼容 Deepin Wine 应用和 WPS 的宋体,链接:https://lanseyujie.com/download/simsun.ttc.zip

    其它:

    # 推荐字体 文鼎字体
    sudo apt install fonts-arphic-uming fonts-arphic-ukai


    27.Android Studio

            解决依赖包错误

    sudo apt-get install libz1 libncurses5 libbz2-1.0:i386 libstdc++6 libbz2-1.0

            解决 Gradle 下载超时,修改全局 gradle.properties ,注释其中的  http(s) 代理并设置  socks 代理(本地的 Shadowsocks 代理)。

    #systemProp.https.proxyPort=1080
    #systemProp.http.proxyHost=127.0.0.1
    #systemProp.https.proxyHost=127.0.0.1
    #systemProp.http.proxyPort=1080
    systemProp.socks.proxyHost=127.0.0.1
    systemProp.socks.proxyPort=1080


    28.Node.js

           参考 https://www.ubuntuupdates.org/ppa/nodejs_10.x?dist=bionic

    curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -
    sudo sh -c "echo deb https://deb.nodesource.com/node_10.x bionic main > /etc/apt/sources.list.d/nodesource.list"
    sudo apt update
    sudo apt install nodejs


    29.网络相关

            ① 查看已保存的 WiFi 连接密码

    cd /etc/NetworkManager/system-connections/
    sudo cat <your-wifi-ssid>

            ② 刷新 DNS

    sudo /etc/init.d/networking restart

            ③ 切换 WiFi 时出现连接异常,可以尝试重启网络管理器解决

    sudo /etc/init.d/network-manager restart


    30.VSCode

            解决 文件管理器 被 VSCode 接管。

    gio mime inode/directory dde-file-manager.desktop





    未完待续...

    本文标题:Deepin常见问题及优化技巧
    本文链接:https://lanseyujie.com/post/deepin-optimization-techniques.html
    版权声明:本文使用「署名-非商业性使用-相同方式共享」创作共享协议,转载或使用请遵守署名协议。
    点赞 0 分享 0