Basic Setup for Ubuntu
Overview
Ubuntu 基础设置,包含一些常用软件安装,配置文件修改等等。
这篇文章的意义在于,当你拿到一个新的 Ubuntu 系统之后,直接按照本文的步骤进行设置,就可以得到一个顺手的开发/部署环境。不再需要逐项搜索每个软件的安装步骤了。
- 设置国内软件镜像源
- node
- git
- docker
- nginx
- oh-my-zsh
- alias
- vim
设置系统软件镜像源
配置系统源第一件事是修改镜像源,这样方便后续其他软件的安装。在国内可以选择阿里云的源。
1# 编辑源文件
2sudo vim /etc/apt/sources.list
3# 在VIM编辑器内替换默认源为阿里云
4:0,$ s/archive.ubuntu.com/mirrors.aliyun.com/
5# 保存源文件并退出
6:wq
包管理工具安装
先更新
1sudo apt update -y && sudo apt upgrade -y
安装常用软件
通常会有一些是默认安装的,比如 git vim wget curl vim,如果没有,用下面方式安装即可。
1sudo apt install zsh nginx tree -y
oh-my-zsh
关于 zsh 和 oh-my-zsh 可以参考: 终极 Shell——ZSH
安装
脚本安装:
1wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh
或者手动安装:
1git clone https://github.com/ohmyzsh/ohmyzsh.git ~/.oh-my-zsh
2cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
安装完成之后退出当前会话重新打开一个终端窗口即可。
插件
(1) autojump github 地址 autojump
下载并执行
1wget https://github.com/downloads/joelthelion/autojump/autojump_v21.1.2.tar.gz
2./install.sh
最后把以下代码加入.zshrc:
1[[ -s ~/.autojump/etc/profile.d/autojump.sh ]] && . ~/.autojump/etc/profile.d/autojump.sh
node(nvm)
nvm github 地址: nvm-sh/nvm
方法一:脚本安装
执行脚本
1curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.1/install.sh | bash
2# 或者
3wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.1/install.sh | bash
最后,将下面内容分别添加到 ~/.bashrc
, ~/.profile
, 和 ~/.zshrc
文件中。
1export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ]
2&& printf %s "${HOME}/.nvm"
3|| printf %s "${XDG_CONFIG_HOME}/nvm")"
4
5[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
加载配置文件:
1source ~/.bashrc
方法二:git 安装
将代码克隆到用户目录下:
1cd ~/
2git clone https://github.com/nvm-sh/nvm.git .nvm
切换到最新版本
1cd ~/.nvm
2git checkout v0.35.1
激活 nvm,在命令行执行:
1. nvm.sh
最后,将下面内容分别添加到 ~/.bashrc
, ~/.profile
, 和 ~/.zshrc
文件中。
1export NVM_DIR="$HOME/.nvm"
2[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
3[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
完成之后,通过 nvm -v
查看版本来验证是否安装成功。
docker
安装 Docker
1curl -fsSL https://get.docker.com -o get-docker.sh && sudo sh get-docker.sh
安装 Compose
1sudo curl -L "https://github.com/docker/compose/releases/download/1.22.0/docke-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
2# 给Docker Compose 执行权限
3sudo chmod +x /usr/local/bin/docker-compose
4
5#查看Docker和Docker Compose的版本
6sudo docker version
7sudo docker-compose version
设置镜像源
执行下面命令进行设置
ps: 阿里云镜像源是个人注册阿里云账号之后分配的个人专属镜像源。
1sudo mkdir -p /etc/docker
2sudo tee /etc/docker/daemon.json <<-'EOF'
3{
4 "registry-mirrors": ["https://oojjt1xs.mirror.aliyuncs.com"]
5}
6EOF
7sudo systemctl daemon-reload
8sudo systemctl restart docker
vim 配置
有些系统默认没有安装
配置文件路径:
- 全局配置文件:
/etc/vim/vimrc
- 当前用户配置文件:
~/.vimrc
将下面内容粘贴到配置文件中:
1" 左单引号表示单行注释
2" 编码指定 UTF-8
3set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936
4set termencoding=utf-8
5set encoding=utf-8
6
7set number " 显示行号
8set cursorline " 突出显示当前行
9set ruler " 打开状态栏标尺
设置别名(alias)
将所有的别名放在单独一个文件 .bash_aliases
中,这样更加方便管理,ubuntu 也推荐这种做法。
1if [ -f ~/.bash_aliases ]; then
2 . ~/.bash_aliases
3fi
注意:等号两侧不能有空格!
1# 代替键盘上难以触及的 ~ 键
2alias home="cd ~"
3
4# 同样也可以为一些深层却很常用的目录设置别名
5# 如:宝塔面包的 nginx 配置目录
6alias ng="cd /www/server/panel/vhost/nginx"
7
8# 回退多级目录
9alias bk1="cd .."
10alias bk2="cd ../.."
11alias bk3="cd ../../.."
12alias bk4="cd ../../../.."
13alias bk5="cd ../../../../.."
14
15# ls 相关
16alias cls='clear'
17alias ll='ls -l'
18alias la='ls -a'
19
20# git 相关
21alias gs='git status'
22alias glog="git log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Cr eset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"
23
24# 解压
25alias -s gz='tar -xzvf'
26alias -s tgz='tar -xzvf'
27alias -s zip='unzip'
28alias -s bz2='tar -xjvf'
29
30# other
31alias vi='vim'
32alias grep="grep --color=auto"
33alias tree="tree -I '*svn|*node_module*'"
Python3
系统升级到 ubuntu 20.04 之后,移除了 Python 2,只保留了 Python 3。
因此默认不能执行 Python 命令,但可以执行 python3。
因此我们可以在 /usr/bin
下创建一个软链接,指向 python3。
1sudo ln -s /usr/bin/python3 /usr/bin/python
注意:避免某些软件需要用的 python3,所以不建议把 python3 的软连接删除
本文完,感谢阅读。:stuck_out_tongue_winking_eye: