ubuntu在4月21日发布了16.04LTS版本,网上已经有大家疯狂转载的类似标题的文章,这里记录适用于我个人的要做的9件事(目前我电脑还安装了win10),

一.将CAPSLOCK改为ctrl键

alt+F2,搜索gnome-session-properties,添加启动命令

1
setxkbmap -option ctrl:nocaps

谁用谁知道

二.修改root密码,取消sudo密码

新安装的linux系统默认是没有启用root账户的,需要使用sudo命令修改root密码,同时作为桌面版系统,每次使用sudo命令都需要输入密码显得很多余
使用如下命令修改root密码

1
sudo passwd root

使用如下命令取消sudo密码

1
sudo visudo

该命令实际作用是打开编辑器编辑 /etc/sudoers 里面的内容,只是在修改完成后会自动检查格式是否有效,这里只要修改sudo用户组,添加 NOPASSWD 即可

1
2
#Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) NOPASSWD:ALL

三.修改grub引导等待时间

grub的配置文件在 /boot/grub/grub.cfg,但该文件实际上是根据 /etc/default/grub 的配置自动生成的,So

1
sudo vim /etc/default/grub

注释掉 GRUB_HIDDEN_TIMEOUT=0 修改 GRUB_TIMEOUT=3 这里的3指的是等待3秒的意思,Then

1
sudo update-grub

即重新生成grub的配置文件

四.禁止开机时的系统错误弹窗

ubuntu系统的老问题了,只要 /var/crash/ 目录中有文件存在,则每次开机都会弹窗“检查到系统程序错误”,可以通过 rm /var/crash/* 暂时解决这个问题,但每当有新的 "crash" 文件生成,则该问题重现,推荐的办法是

1
sudo vim /etc/default/apport

将其中的 enabled 属性由1改成0

五.将用户目录的文件夹改回英文

ubuntu安装语言选择中文,自动生成的目录也成了中文,导致命令行操作非常麻烦,打开终端输入

1
2
3
export LANG=en_US
xdg-user-dirs-gtk-update
export LANG=zh-CN

在弹出的窗口中选择将文件夹改成英文,在下次启动时选择不改成中文并且不再提示即可

六.梯子

  1. shadowsocks-qt5

    1
    2
    3
    sudo add-apt-repository ppa:hzwhuang/ss-qt5
    sudo apt-get update
    sudo apt-get install shadowsocks-qt5

    将命令/usr/bin/ss-qt5添加至开机启动

  2. lantern
    将如下命令添加至开机启动
    1
    /usr/bin/nohup sh -c "/bin/sleep 3 && /usr/lib/lantern/lantern.sh -addr 0.0.0.0:8787 -startup=true &> /dev/null" &> /dev/null

七.设置系统时间为本地时间(单操作系统可忽略)

linux系统向来将BIOS时间视为GMT标准时间,于是将当前BIOS时间+当前时区的时差作为当前系统时间,而windows则直接使用BIOS时间作为当前系统时间,且两个系统都会在关机时将时间回写到BIOS上,这就造成了两个系统之间永远都有8小时(以北京时间计算)的时差,随便修改哪个系统都可以解决这个问题,这里只说linux解决方案,在16.04以前的版本中,可以修改 /etc/default/rcS 将里面的 UTC=yes 改成 no 即可,而ubuntu16.04无法再通过该文件配置,现在应该运行如下命令

1
sudo timedatectl set-local-rtc 1

八.开机自动挂载ntfs分区(单操作系统可忽略)

ubuntu只会自动挂载安装时分配给ubuntu的分区,导致每次开机后都要手动mount其它分区
可以修改 /etc/fstab 按照该文件的格式添加要挂载的分区即可,UUID可以通过 blkid 命令获取,文件系统格式一般写 auto 就可以了

九.搭建开发环境(非码农可忽略)

  • 安装java

    1
    2
    3
    sudo add-apt-repository ppa:webupd8team/java
    sudo apt update
    sudo apt install oracle-java8-installer
  • 安装node
    推荐使用nvm安装node,将以下命令中 "$HOME/.nvm" 替换成你想要的安装路径即可

    1
    curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.0/install.sh | NVM_DIR="$HOME/.nvm" bash

    重新打开终端,输入以下命令安装任意版本的nodejs

    1
    nvm install <version>

    如果在使用“局域网”,考虑将npm切换至淘宝镜像(下面的命令等价于修改~/.npmrc)

    1
    2
    3
    npm config set registry "https://registry.npm.taobao.org"
    npm config set phantomjs_cdnurl "http://cnpmjs.org/downloads"
    npm config set sass_binary_site "https://npm.taobao.org/mirrors/node-sass/"

    使用nvm管理node版本的好处是,当需要升级node版本时,可以直接使用如下命令自动安装全局模块

    1
    nvm install NEW_VERSION --reinstall-packages-from=OLD_VERSION
  • 安装mysql

    1
    sudo apt install mysql-server mysql-client

    之后修改/etc/mysql/my.cnf,添加如下配置节修改默认的字符集

    1
    2
    3
    4
    5
    6
    7
    8
    [client]
    default-character-set=utf8
    [mysql]
    default-character-set=utf8
    [mysqld]
    collation-server = utf8_unicode_ci
    init-connect='SET NAMES utf8'
    character-set-server = utf8
  • 安装mongodb
    可以直接使用apt命令来安装mongodb,但建议使用mongodb官方的仓库来安装最新版本(当前版本为3.4),安装过程要稍微麻烦一些,首先需要导入GPGkey

    1
    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6

    添加软件源

    1
    echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

    之后就可以直接使用apt命令安装了

    1
    sudo apt update && sudo apt install mongodb-org

    如果你安装的不是最新版,可能还需要手动添加service unit,类似下面这样

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    [Unit]
    Description=High-performance, schema-free document-oriented database
    After=network.target
    [Service]
    User=mongodb
    ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf
    [Install]
    WantedBy=multi-user.target

return 0;