1. 安装 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 测试一下。
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 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
(待续)