资讯专栏INFORMATION COLUMN

个人服务器常用基础配置

MoAir / 593人阅读

摘要:买了一个服务器,系统是做了一番基础设置,在此记录一下。安装成功后重启服务。我采用源码编译的方式安装默认安装到,可以通过指定安装目录。几个常用的命令启动停止

买了一个服务器,系统是CentOS7.2 .做了一番基础设置,在此记录一下。

更新 yum 源仓库
yum update
安装 Git

yum 源仓库里最新版本的 Git 是 1.8.3.1,但是官方最新版本已经到了 2.9.2。想要安装最新版本的的 Git,只有下载源码进行安装。

可以通过info命令查看源仓库中git的信息

$ yum info git

在开始编译安装git之前,需要安装一些依赖

$ yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
$ yum install gcc perl-ExtUtils-MakeMaker

下载源码压缩包,解压之后编译和安装

$ wget https://www.kernel.org/pub/software/scm/git/git-2.9.5.tar.gz -O git.tar.gz
$ tar -zxf git.tar.gz
$ cd git.tar.gz
$ make prefix=/usr/local all
$ sudo make prefix=/usr/local install
可以在这里找到所有的版本。
安装 fish-shell

CentOS 6和CentOS 7使用的源不同,需要注意一下:

// CentOS 7
$ cd /etc/yum.repos.d/
$ wget https://download.opensuse.org/repositories/shells:fish:release:2/CentOS_7/shells:fish:release:2.repo
$ yum install fish

// CentOS 6
$ cd /etc/yum.repos.d/
$ wget https://download.opensuse.org/repositories/shells:fish:release:2/CentOS_6/shells:fish:release:2.repo
$ yum install fish

安装oh-my-fish

curl -L https://get.oh-my.fish | fish

安装oh-my-fish的主题clearance

$ omf install clearance
安装Node.js

安装Node.js方式有多种:

更新yum源,使用yum安装

下载源代码编译安装

使用nvm安装

我选择使用nvm安装和管理服务器上的Node。

wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash

nvm在fish-shell下无法使用,需要做一些其他的工作。可以通过bass让 fish-shell 可以使用 bash 环境下的工具。

// 先安装fisherman
curl -Lo ~/.config/fish/functions/fisher.fish --create-dirs https://git.io/fisher

// 安装 bass
fisher edc/bass

编辑fish的配置文件~/.config/fish/config.fish(如果文件不存在就创建一个),增加一段 bass 命令的封装代码

function nvm
  bass source ~/.nvm/nvm.sh ";" nvm $argv
end

现在就可以在fish-shell中使用nvm了。

// 安装 nodev8.10.0
nvm install 8.10.0

// 设置 npm 的 Taobao 源
npm config set registry https://registry.npm.taobao.org --global
npm config set disturl https://npm.taobao.org/dist --global
安装 Python3

CentOS 7系统自带 Python2.7.5。我需要在安装最新的Python v3.x版本。
在安装之前,有几个依赖工具需要提前装好。

$ yum install gcc zlib-devel

之前安装git时已经安装过。所以接下来时下载源码、编译安装。

$ wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tar.xz -O python3.6.tar.xz
$ tar xJf python3.6.tar.xz
$ cd python3.6.tar.xz
$ ./configure

// 因为我使用的是 fish-shell。其实就是 bash 中的 `make && make install`
$ make; and  make install

// 检查安装结果。输出 `/usr/local/bin/python3`
$ which python3
安装 MySQL
MySQL 被 Oracle 收购后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。

MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。

更多详情可访问Wiki-MariaDB。

MySQL 被 Oracle 收购后,CentOS 的镜像仓库中提供的默认的数据库也变为了 MariaDB。所以从官网安装。

$ wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
$ rpm -ivh mysql-community-release-el7-5.noarch.rpm
$ yum install mysql-community-server

// 安装成功后重启mysql服务。
$ service mysql restart
设置编码

在 /etc/my.cnf 中设置默认的编码

[client]
default-character-set = utf8

[mysqld]
default-storage-engine = INNODB
character-set-server = utf8
collation-server = utf8_general_ci #不区分大小写
collation-server =  utf8_bin #区分大小写
collation-server = utf8_unicode_ci #比 utf8_general_ci 更准确
安装 Nginx

yum 在线安装会将 nginx 的安装文件放在系统的不同位置,可以通过命令 rpm -ql nginx 来查看安装路径

> $ rpm -ql nginx
/etc/logrotate.d/nginx
/etc/nginx
/etc/nginx/conf.d
/etc/nginx/conf.d/default.conf
/etc/nginx/conf.d/ssl.conf
/etc/nginx/conf.d/virtual.conf
/etc/nginx/fastcgi.conf
/etc/nginx/fastcgi.conf.default
/etc/nginx/fastcgi_params
/etc/nginx/fastcgi_params.default
/etc/nginx/koi-utf
/etc/nginx/koi-win
/etc/nginx/mime.types
/etc/nginx/mime.types.default
/etc/nginx/nginx.conf
/etc/nginx/nginx.conf.default
/etc/nginx/scgi_params
/etc/nginx/scgi_params.default
/etc/nginx/uwsgi_params
/etc/nginx/uwsgi_params.default
/etc/nginx/win-utf
/etc/rc.d/init.d/nginx
/etc/sysconfig/nginx
/usr/lib/perl5/vendor_perl/auto/nginx
/usr/lib/perl5/vendor_perl/auto/nginx/nginx.so
/usr/lib/perl5/vendor_perl/nginx.pm
/usr/sbin/nginx
/usr/share/doc/nginx-1.0.15
/usr/share/doc/nginx-1.0.15/CHANGES
/usr/share/doc/nginx-1.0.15/LICENSE
/usr/share/doc/nginx-1.0.15/README
/usr/share/man/man3/nginx.3pm.gz
/usr/share/man/man8/nginx.8.gz
/usr/share/nginx/html/404.html
/usr/share/nginx/html/50x.html
/usr/share/nginx/html/index.html
/usr/share/nginx/html/nginx-logo.png
/usr/share/nginx/html/poweredby.png
/usr/share/vim/vimfiles/ftdetect/nginx.vim
/usr/share/vim/vimfiles/indent/nginx.vim
/usr/share/vim/vimfiles/syntax/nginx.vim
/var/lib/nginx
/var/lib/nginx/tmp
/var/log/nginx

源码包 安装他的所有文件(包括配置文件,库文件,资源文件等)都在同一个目录下,我们想卸载的时候,直接将这个文件删除就可以,不会有任何垃圾文件存在。

我采用源码编译的方式安装

$ yum -y install gcc gcc-c++ make libtool zlib zlib-devel openssl openssl-devel pcre pcre-devel
$ wget http://nginx.org/download/nginx-1.12.2.tar.gz
$ tar -zxvf nginx-1.12.2.tar.gz

// 默认安装到 /usr/local/nginx,可以通过--prefix指定安装目录。我这边显式声明一次。
$ ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
$ make; and make install

nginx 几个常用的命令

/usr/local/nginx/sbin/nginx # 启动
/usr/local/nginx/sbin/nginx -s stop # 停止

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/39886.html

相关文章

  • 详细整理5款较为常用的Linux VPS务器WEB一键安装工具

    摘要:第一个人记忆中这款工具至今估计有十年左右时间当初也是个人站长为方便自己使用环境配置开发的。第二一键脚本也是由于个人站长提供的,经过几年的改善目前也是比较完善。 早年我们如果在Linux服务器配置网站环境的时候一般如何操作的?安装cPanel面板?这个是要花钱的,记忆中好像每个月需要十多美元,对于普通的个人站长用户来说确实是不小的费用。即便我们用破解版也不行,因为这个牵扯到安全问题。那我...

    techstay 评论0 收藏0
  • 必看!java后端,亮剑诛仙(最全知识点)

    摘要:鉴于目前大多数服务器环境都是,提前接触能够相辅相成。正则也是必须要掌握的一个知识点。有多种创建多线程的方式,不过目前使用线程池的多一些。 原创:小姐姐味道(微信公众号ID:xjjdog),欢迎分享,转载请保留出处。 你可能有所感悟。零散的资料读了很多,但是很难有提升。到处是干货,但是并没什么用,简单来说就是缺乏系统化。另外,噪音太多,雷同的框架一大把,我不至于全都要去学了吧。 这里,我...

    陈江龙 评论0 收藏0
  • 【Java EE】从零开始写项目【总结】

    摘要:目前该功能并未完善,敬请期待。反正每次都会有新的东西补充上去一开始我本来想做的是可以使用微信登陆,也可以使用账户邮箱登陆,也可以使用短信登陆的。后来发现微信登陆要企业认证,做不了。 从零开发项目概述 最近这一直在复习数据结构和算法,也就是前面发出去的排序算法八大基础排序总结,Java实现单向链表,栈和队列就是这么简单,十道简单算法题等等... 被虐得不要不要的,即使是非常简单有时候绕半...

    imtianx 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<