• CentOS7 安装配置备忘录


    0. 安装 epel 源

    $ sudo yum install epel-release.noarch

    如果想强制服务器使用 tuna 的镜像,可以如下修改 /etc/yum.repos.d/epel.repo,

    [epel]
    name=Extra Packages for Enterprise Linux 7 - $basearch
    baseurl=https://mirrors.tuna.tsinghua.edu.cn/epel/7/$basearch
    #metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch
    failovermethod=priority
    enabled=1
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
    
    [epel-debuginfo]
    name=Extra Packages for Enterprise Linux 7 - $basearch - Debug
    baseurl=https://mirrors.tuna.tsinghua.edu.cn/epel/7/$basearch/debug
    #metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-7&arch=$basearch
    failovermethod=priority
    enabled=0
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
    gpgcheck=1
    
    [epel-source]
    name=Extra Packages for Enterprise Linux 7 - $basearch - Source
    baseurl=https://mirrors.tuna.tsinghua.edu.cn/epel/7/SRPMS
    #metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-source-7&arch=$basearch
    failovermethod=priority
    enabled=0
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
    gpgcheck=1

    然后更新 package cache,使用命令 $ sudo yum makecache 测试一下。

    1. 高分屏字体调整

    $ sudo yum install gnome-tweak-tool.noarch

    Applications  >  Accessories  >  Tweaks  >  Fonts  > Scaling Factor 

    2. 支持 exfat 的 U 盘

    添加 nux 源,

    $ sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm

    因为 nux 仓库和其它第三方仓库可能有兼容性问题,所以一般不建议启用 nux 仓库,打开文件 /etc/yum.repos.d/nux-dextop.repo,修改 enable=0

    安装 exfat 相应驱动,

    $ sudo yum --enablerepo=nux-dextop install fuse-exfat exfat-utils

    注意:安装完成之后,插入 exfat 格式的 U 盘,可能不能自动挂载,这时就只能手动 mount 使用了,例如 $ sudo mount -t exfat /dev/sdb1 /mnt/

    3. 编译安装 python3.7 (默认的 $ sudo yum install python36.x86_64,安装的版本是 3.6)
    参见:https://www.cnblogs.com/gaowengang/p/10111520.html

    4. 编译安装 gvim 8.x  (默认的 $ sudo yum install vim-X11.x86_64 ,安装的版本是 7.x ,ycmd 补全时,会有些许兼容性问题)

    参见:https://www.cnblogs.com/gaowengang/p/10546815.html

    5. 安装 emacs 及 ycmd 相关配置工具

    # yum install vim-X11.x86_64
    # yum install emacs.x86_64
    # yum install clang.x86_64
    # yum install python-devel.x86_64
    # yum install cmake

    6. 一些小工具

    # yum install p7zip.x86_64       # 注意,CentOS 下的 7z,使用命令为 "7za"

    # yum install tree.x86_64

    # yum install chromium.x86_64

    # yum install screen.x86_64

    7. Python3 异步开发相关

    # pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ aiohttp

    # pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ jinja2

    # pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ aiomysql

    # pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ flask

    # pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ mysql-connector-python

    # pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ sqlalchemy

    8. 安装 pycharm 和 vscode

    参见官方网站。

    9. 安装配置 mysql 5.7

    注意:在安装 CentOS Server with GUI 版本时,选择软件的时候,最好不要选择安装 MariaDB,否则之后安装 MySQL 可能会出现兼容性问题。如果已经默认安装 MariaDB,则卸载方法如下:

    # rpm -qa | grep mariadb    # 检查相关包

    # yum remove akonadi-mysql-1.9.2-4.el7.x86_64
    # yum remove mariadb-server-5.5.60-1.el7_5.x86_64
    # yum remove mariadb-5.5.60-1.el7_5.x86_64
    # yum remove mariadb-libs-5.5.60-1.el7_5.x86_64 

    参见: https://www.cnblogs.com/gaowengang/p/10744746.html

    10. 安装 MySQL python 接口 mysqlclient (Django need this)

    # yum install mysql-community-devel.x86_64

    # pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ mysqlclient

    11. 编译安装 sqlite3

    因为 CentOS7 默认的 sqlite3 版本是 3.7.17,而 django 2.2.1 本地开发要求 sqlite3 版本最小为 3.8.3,所以需要编译安装。

    获取源代码包 https://www.sqlite.org/download.html  sqlite-autoconf-3280000.tar.gz

    $ ./configure --prefix=/usr/local
    $ make
    $ sudo make install
    $ sudo mv /usr/bin/sqlite3 /usr/bin/sqlite3.ori.bak
    $ sudo ln -s /usr/local/bin/sqlite3 /usr/bin/sqlite3
    $ sudo echo "/usr/local/lib" > /etc/ld.so.conf.d/sqlite3.conf
    $ sudo ldconfig

    这样 sqlite 会装在 /usr/local/bin/ 下,因为在 CentOS 的默认 PATH 路径中 /usr/local/bin/ 在 /usr/bin/ 之前,所以最终生效的就是这个新安装的 sqlite3 (可以把 /usr/bin/sqlite 删掉了),测试如下,

    $ which sqlite3
    /usr/local/bin/sqlite3
    $ sqlite3 --version
    3.28.0 2019-04-16 19:49:53 884b4b7e502b4e991677b53971277adfaf0a04a284f8e483e2553d0f83156b50
    
    $ python3
    Python 3.6.8 (default, Apr 25 2019, 21:02:35) 
    [GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> 
    >>> import sqlite3
    >>> sqlite3.sqlite_version
    '3.28.0'
    
    $ python
    Python 2.7.5 (default, Apr  9 2019, 14:30:50) 
    [GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> 
    >>> import sqlite3
    >>> sqlite3.sqlite_version
    '3.28.0'

    12. 安装 rar

    因为 7za 在 CentOS 上不支持 rar 压缩解压 ( RAR (it was removed due a non-free license) ),所以需要安装专有工具 rar,

    下载安装包 https://www.rarlab.com/download.htm  RAR 5.71 for Linux x64

    解压缩后,不用编译,直接 sudo make install,则 rar 和 unrar 会自动安装在 /usr/local/bin 下,一般仅使用 rar 即可。

    常用命令选项和 7za 类似, x 为解压,a 为添加到压缩包,其它选项,直接在命令行输入 $ rar 运行查看即可。

    X1. 解决 yum 安装软件时出现 Another app is currently holding the yum lock; waiting for it to exit...

    $ sudo rm -f /var/run/yum.pid
    $ sudo yum install yum-cron.noarch
    $ sudo vim /etc/yum/yum-cron.conf

    修改

    [commands]
    #  What kind of update to use:
    # default                            = yum upgrade
    # security                           = yum --security upgrade
    # security-severity:Critical         = yum --sec-severity=Critical upgrade
    # minimal                            = yum --bugfix update-minimal
    # minimal-security                   = yum --security update-minimal
    # minimal-security-severity:Critical =  --sec-severity=Critical update-minimal
    update_cmd = default
    
    # Whether a message should be emitted when updates are available,
    # were downloaded, or applied.
    update_messages = yes
    
    # Whether updates should be downloaded when they are available.
    download_updates = no

    X2. 笔记本电脑安装 CentOS7 后,默认情况下,WiFi 指示灯在连接状态下,会一直保持闪烁,太晃眼睛。将其更改为连接状态下常亮

    查看 WiFi 的 mode 名称,

    $ lsmod | grep iwl
    iwldvm                189350  0 
    mac80211              718956  1 iwldvm
    iwlwifi               223575  1 iwldvm
    cfg80211              632335  3 iwlwifi,mac80211,iwldvm

    在 /etc/modprobe.d/ 下新建配置文件 wlanled.conf (文件名可任意),

    $ cd /etc/modprobe.d/
    $ sudo touch wlanled.conf

    打开此文件,并插入以下内容,

    # Add for adjust the wifi led mode:
    #   wifi on  - light on always (CentOS7 default mode is blinking)
    #   wifi off - light off
    
    options iwlwifi led_mode=1

    Reboot 即可。

     X3.  安装 thefuck

    $ sudo pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ thefuck

    配置 .bashrc

    # for thefuck
    eval "$(thefuck --alias fuck)"   # to supress the python2 warning: eval "$(thefuck --alias fuck 2>/dev/null)"

    然后命令行有 typo 时就可以 fuck 修正了。

    X4. Gnome 版本查询

    $ gnome-shell --version
    GNOME Shell 3.28.3

    X5. Gnome Night Light 色温调节

    安装 dconf-editor

    $ sudo yum install dconf-editor.x86_64

    启动 dconf-editor,在 org/gnome/settings-daemon/plugins/color/night-light-temperature,常用色温值如下,

    • 1000 — Lowest value (super warm/red)
    • 4000 — Default night light on temperature
    • 5500 — Balanced night light temperature
    • 6500 — Default night light off temperature
    • 10000 — Highest value (super cool/blue)

    X6. Chromium 指定默认搜索引擎为百度

    Settings  >  Search engine  >  Manage search engines  >  Add,  set as following,

    Search engine: Baidu

    Keyword: baidu

    URL with %s in place of query: https://www.baidu.com/s?wd=%s

    then,  Make default.

    X7. 关闭 tracker 索引功能

    安装

    $ sudo yum install tracker-preferences.x86_64

    运行打开 UI 配置界面,把能去掉的都去掉

    $ tracker-preferences

    (关于 tracker 的功能,请参阅 https://wiki.gnome.org/Projects/Tracker/WhatIsTracker)

    X8. pycharm 2019.1 输入中文的问题 (Ubuntu 18.04 没有这个问题,CentOS7 有这个问题)

    修改 .bashrc,加入如下配置

    # for pycharm with zh
    export GTK_IM_MODULE=ibus
    export QT_IM_MODULE=ibus
    export XMODIFIERS=@im=ibus

    X9. Nodejs

    由于 CentOS7 默认安装的 gcc 版本太旧,编译安装 Nodejs 要先升级 gcc,所以直接使用官方的预编译版本。

    在 https://nodejs.org/en/download/ 下载 node-v10.16.0-linux-x64.tar.gz

    解压缩到 /usr/local/ 下,在 /usr/local/bin/ 下加入软链接即可,

    $ sudo ln -s /usr/local/node-v10.16.0-linux-x64/bin/node /usr/local/bin/node
    $ sudo ln -s /usr/local/node-v10.16.0-linux-x64/bin/npm /usr/local/bin/npm
    $ sudo ln -s /usr/local/node-v10.16.0-linux-x64/bin/npx /usr/local/bin/npx

    X10. CentOS7添加/删除用户和用户组

    新建用户 (例如 peter)

    # adduser peter
    # passwd peter    

    建工作组 (例如 xxx)

    # groupadd xxx

    新建用户 peter 并将其添加到工作组 xxx

    # useradd -g xxx peter

    将已有用户 peter 添加到工作组 xxx

    # usermod -G xxx peter

    临时关闭用户 peter 的账户

    # passwd peter -l

    重新打开用户 peter 的账户

    # passwd peter -u

    删除用户 peter 的账户

    # userdel peter

    删除工作组 xxx

    # groupdel xxx

    查看当前登陆用户

    # who

    查看登陆历史记录

    # last

    X11. 安装 Opera 浏览器

    导入已签名密钥

    sudo rpm --import https://rpm.opera.com/rpmrepo.key

    添加 repo

    sudo tee /etc/yum.repos.d/opera.repo <<RPMREPO
    [opera]
    name=Opera packages
    type=rpm-md
    baseurl=https://rpm.opera.com/rpm
    gpgcheck=1
    gpgkey=https://rpm.opera.com/rpmrepo.key
    enabled=1
    RPMREPO

    更新本地 cache 及安装

    $ sudo yum makecache
    $ sudo yum install opera-stable.x86_64

    更多信息参见 https://rpm.opera.com/manual.html

    Debian 系列可参考  https://deb.opera.com/manual.html

    X12. 关闭 SELinux

    $ sudo vim /etc/selinux/config

    改为,

    # This file controls the state of SELinux on the system.
    # SELINUX= can take one of these three values:
    #     enforcing - SELinux security policy is enforced.
    #     permissive - SELinux prints warnings instead of enforcing.
    #     disabled - No SELinux policy is loaded.
    #SELINUX=enforcing
    SELINUX=disabled
    # SELINUXTYPE= can take one of three values:
    #     targeted - Targeted processes are protected,
    #     minimum - Modification of targeted policy. Only selected processes are protected. 
    #     mls - Multi Level Security protection.
    SELINUXTYPE=targeted 

    reboot 后,查看结果,

    $ sestatus
    

    X13. 关闭 kdump

    $ sudo service kdump stop
    $ sudo chkconfig kdump off
    $ reboot

    X14. 安装 redhat-lsb (这样就能使用 lsb_release -a 查看当前系统的版本信息了)

    $ sudo yum install redhat-lsb

    X15. 升级 Git (直接官网下载 tarball,编译安装即可)

    $ tar --xz -xvf git-2.23.0.tar.xz
    $ cd git-2.23.0/
    $ ./configure --prefix=/usr/local
    $ make
    $ sudo make install
    # (如果 PATH 中 /usr/bin 在 /usr/local/bin 之前,则备份好原文件,做软连接,添加 load config 文件到 /etc/ld.so.conf.d/xxx.conf,然后 sudo ldconfig)
    $ git --version
    git version 2.23.0

    Note: tarball 方式安装的 Git 没有 tab 自动补全功能,解决方法如下:

    $ cp git-2.23.0/contrib/completion/git-completion.bash ~/.git-completion.bash

    在 ~/.bashrc 中添加语句,

    source ~/.git-completion.bash

    然后 source .bashrc 即可。

    X15.1 安装可视化 Git 工具 gitk

    The gitk tool provides a graphical display of a git tree. It can be helpful for exploring the branches in a tree.

    $ sudo yum install gitk

    安装完成,切换到 git repo 下,直接使用 $ gitk 打开 GUI 窗口。

    X16. Linux 下 PDF 分割,剪切,合并等神器 cpdf

    直接下载预编译的二进制文件,将对应系统的文件拷贝到  /usr/local/bin 下即可。

    下载地址及常用操作方法见: http://community.coherentpdf.com/

    PDF 解密名令,

    $ cpdf -decrypt in.pdf owner=<owner password> -o out.pdf

     X17. 安装 Zeal

    Zeal 官方没有提供 CentOS7 的安装方法,所以必须编译安装。

    1. 因为不同版本的 Zeal 对应不同的 Qt 版本,我这里选择 Zeal 0.6,对应要求 Qt version 5.5.1 or above.

    从 github 下载源文件 https://github.com/zealdocs/zeal/tree/release/0.6

    2. 安装合适的 Qt 版本,我这里使用 qt-opensource-linux-x64-5.8.0.run

    3. 设置必要的环境变量

    # for use Qt5.8 tools (for install zeal)
    export PATH=$PATH:/opt/Qt5.8.0/Tools/QtCreator/bin:/opt/Qt5.8.0/5.8/gcc_64/bin:/opt/Qt5.8.0/5.8/Src

    4. 升级 cmake

    CentOS7 默认安装的 cmake 版本是 2.8.12 ,而编译 Zeal 需要 cmake 3.x 版本,所以从 https://cmake.org/ 下载最新的源文件 cmake-3.17.0-rc1-Linux-x86_64.tar.gz,解压缩进入文件夹,

    $ ./bootstrap --prefix=/usr/local
    $ gmake
    $ sudo make install

    5. 安装必要的依赖包

    sudo yum install qt5-qtwebkit.x86_64 qt5-qtwebkit-devel.x86_64 
    sudo yum install libarchive libarchive-devel.x86_64 
    sudo yum install qt5-qtbase-devel.x86_64
    sudo yum install xcb-util-keysyms-devel.x86_64 
    sudo yum install extra-cmake-modules.noarch 
    sudo yum install qt5-qtx11extras.x86_64 qt5-qtx11extras-devel.x86_64 

    6. 解压缩并进入 zeal 源代码文件夹

    mkdir build
    cd build/
    cmake ..
    make
    sudo make install

    X18. 安装 OpenJDK 开发工具

    $ sudo yum install java-1.8.0-openjdk-devel.x86_64

    X19. 录屏工具 simplescreenrecorder

    $ sudo yum install simplescreenrecorder

    (待续)

  • 相关阅读:
    Codeforces Round #592 (Div. 2)C. The Football Season(暴力,循环节)
    Educational Codeforces Round 72 (Rated for Div. 2)D. Coloring Edges(想法)
    扩展KMP
    poj 1699 Best Sequence(dfs)
    KMP(思路分析)
    poj 1950 Dessert(dfs)
    poj 3278 Catch That Cow(BFS)
    素数环(回溯)
    sort与qsort
    poj 1952 buy low buy lower(DP)
  • 原文地址:https://www.cnblogs.com/gaowengang/p/10794334.html
Copyright © 2020-2023  润新知