[关闭]
@Rookie 2017-09-14T09:13:49.000000Z 字数 9065 阅读 1378

服务器维护指南

服务器


随机密码生成

  1. openssl rand -base64 32
    date | md5sum
    date +%s | sha256sum | base64 | head -c 32 ; echo
    cat /dev/urandom | tr -dc _A-Z-a-z-0-9+$.?*<span class="hljs-preprocessor">#\/@! | head -c${1:-64};echo;

SSH免密码登陆

    在本地输入ssh-keygen -t rsa ,PS:如果已有,可跳过1、2步 本地~/.ssh目录会生成两个文件:id_rsaid_rsa.pub scp ~/.ssh/id_rsa.pub www@112.124.121.91:/home/www,将本地id_rsa.pub拷贝到服务器 登录www用户,输入cat ~/id_rsa.pub >> authorized_keys 这是就可以免密码登陆了

添加用户和用户组

  1. groupadd www //新建www工作组
    useradd -g www www //新建www用户并增加到test工作组
    passwd www // 修改www用户密码
  1. visudo //需要修改此文件,使新创建的用户可以使用sudo命令, 仿照文件内容修改即可

环境搭建(以下操作均在www用户下进行)

  1. curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh | bash
  1. nvm install v6.10.0
  1. # 查看系统版本
    lsb_release -a
    # 下载 for CenteOS 7
    wget http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
    # 添加资源库
    yum localinstall mysql57-community-release-el7-7.noarch.rpm
    # 验证MySQL是否已被添加到本地资源库
    yum repolist enabled | grep "mysql.*-community.*"
    # 安装
    sudo yum install mysql-community-server
    # 启动
    sudo service mysqld start
    # 查看启动状态
    sudo service mysqld status
    # 生成root临时密码
    grep 'temporary password' /var/log/mysqld.log
    # 安全设置
    mysql_secure_installation
    # 更新MySQL
    yum update mysql-server
    # 创建数据库
    create database wisdom_estate;
    # 授予www用户的数据库的所有权限
    grant all privileges on wisdom_estate.* to www@'%' identified by '此处是密码';
    # 修改www用户密码
    mysqladmin -u www -p password
  1. 下载,解压,编译:
    $ wget http:<span class="hljs-comment">//download.redis.io/releases/redis-3.2.8.tar.gz</span><br>$ tar xzf redis-3.2.8.tar.gz
    $ cd redis-<span class="hljs-number">3.2</span><span class="hljs-number">.8</span><br>$ make

PS: Redis 客户端

ngix

/etc/yum.repos.d/nginx.repo
  1. [nginx]
    name=nginx repo
    baseurl=http://nginx.org/packages/centos/7/$basearch/
    gpgcheck=0
    enabled=1

sudo yum install nginxservice nginx startservice nginx statussystemctl status nginx.service

Default configuration directory: /etc/nginx/
Default SSL and vhost config directory: /etc/nginx/conf.d/
Default log file directory: /var/log/nginx/
Default document root directory: /usr/share/nginx/html
Default configuration file: /etc/nginx/nginx.conf
Default server access log file: /var/log/nginx/access.log
Default server access log file: /var/log/nginx/error.log

CentOS 7 默认使用firewall,不是iptables。在不开防火墙的情况下,80端口默认是关闭的,必须开放80端口,才能访问服务器
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
firewall-cmd --list-ports

ssh登录服务器

ssh username@domain
$ ssh -p vps 端口号 root@vpsIP 地址
示例: ssh -p 27887 root@104.224.173.167

新建文件夹:
mkdir /tmp/wp

查看80端口是否被占用
sudo netstat -tnlp | grep :80 or ss -tnlp | grep :80

docker

查看docker程序是否正常工作
sudo docker info

常看 docker 运行
docker ps -a

yum install docker #安装docker
systemctl start docker.service#启动docker
systemctl enable docker.service #docker开机启动
docker -v #查看docker版本
docker info #查看docker具体信息
docker pull centos#下载官网centos image
docker images #显示已有image
docker stop $(docker ps -a -q)#停止所有容器
docker stop container_id #停止特定容器
docker rm $(docker ps -a -q) #删除所有container
docker rmi $(docker images -q) #删除所有image
docker inspect container_name #查看容器信息
docker inspect container_name | grep IPAddress #查看当前容器ip地地址
docker attach --sig-proxy=false 304f5db405ec (按control +c 退出不停止容器)
docker commit <容器id> <新镜像名称>
docker rmi imageid #删除image
sudo usermod -a -G docker wisely#非root用户使用
docker run -i -t centos /bin/bash #启动系统 此方式运行的容器,退出后容器就会关闭。

进入 docker 容器
docker exec -ti phabricator bash

Linux 命令

新建一个文件夹
/srv/docker

权限问题
sudo chmod -R 777 /srv/

结束程序:
killall -9 wnTKYg

查看是否有 java程序
ps aux | grep java

查看临时文件夹
ls /tmp/

查看所有的东西
ls la

查看操作系统的版本
cat /etc/redhat-release

查看当前打开的端口
netstat –an

查看磁盘信息
fdisk –l
df –h

查看cpu的信息
cat /proc/cpuinfo

查看内存信息
cat /proc/meminfo

查看板卡信息
lspci
cat /proc/pci

查看当前系统运行情况
ps –aux

输入下面的ps命令,显示所有运行中的进程:
ps aux | less

scp 复制
scp [OPTIONS] file_source file_target

命令格式:
scp local_file remote_username@remote_ip:remote_folder

OPTIONS:
-v 和大多数 linux命令中的-v意思一样,用来显示进度。可以用来查看连接、认证、或是配置错误
-C 使能压缩选项
-P 选择端口
-r 复制目录
示例:
scp /Users/rookie/Desktop/appdistribute.zip root@218.61.208.73:/home/test

安装 zip unzip

检查是否有包含 zip(unzip) 的软件包
yum provides zip

安装 zip、unzip

$ yum install zip $ yum install unzip

常用命令
将当前目录下的所有文件和文件夹全部压缩成 myfile.zip 文件,-r 表示递归压缩子目录下所有文件.
zip -r myfile.zip ./*

把 myfile.zip 文件解压到 /home/sunny/
-o :不提示的情况下覆盖文件
-d:将文件解压缩到指定目录下
unzip -o -d /home/sunny myfile.zip

删除压缩文件中 smart.txt 文件
zip -d myfile.zip smart.txt

向压缩文件中 myfile.zip 中添加 rpm_info.txt 文件
zip -m myfile.zip ./rpm_info.txt

wget 安装与配置

安装
yum -y install wget

centOS 分区

华为云参照

淘宝资料

http://116.62.27.51/bc-atlassian-jira-software-7.3.1.zip
http://116.62.27.51/bc-atlassian-confluence-6.2.0.zip
http://116.62.27.51/jdk-8u91-linux-x64.tar.gz
http://116.62.27.51/xx/jira安装指南v1.0.pdf
http://116.62.27.51/xx/confluence安装指南v1.1.pdf
对方消息中包含的链接安全性未知,请谨慎访问。
http://116.62.27.51/AdminJIRAServer073-130117-0317-654.pdf

安装 sbDoc

  1. 安装Development Tools
    # yum group install "Development Tools"

1.1 验证是否成功

[kael@localhost Download]$ whereis gcc
gcc: /usr/bin/gcc /usr/lib/gcc /usr/libexec/gcc /usr/share/man/man1/gcc.1.gz
[kael@localhost Download]$ gcc --version
gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-4)
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

  1. 安装 nodejs
    wget https://nodejs.org/dist/v6.11.0/node-v6.11.0.tar.gz
    2.1 解压
    tar -xvf node-v6.11.0.tar.gz
    2.2 进入 node目录
    cd node-v6.11.0
    2.3 执行脚本
    ./configure
    2.4 编译代码
    make
    2.5 编译完成之后,安装到本地
    make install
    2.6 安装完成,接下来验证一下
    [kael@localhost node-v6.9.1]$ node --version
    v6.9.1

    安装完成

查看正在运行
ps -ef | grep mongo

CentOS 中使用 yum 安装 mongodb

安装python3

这里,我选择的版本是 3.5.2 。

# wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz

解压缩

下载完成之后,进行解压缩:

# tar -zxvf Python-3.5.2.tgz
安装配置

进入解压缩后的目录,安装配置:

# cd Python-3.5.2/
# ./configure

执行 ./configure 时,如果报错:

configure: error: no acceptable C compiler found in $PATH
说明没有安装合适的编译器。这时,需要安装/升级 gcc 及其它依赖包。

# yum install make gcc gcc-c++

完成之后,重新执行:

# ./configure

安装pip
使用脚本安装和升级pip
要安装或升级pip,需要下载 get-pip.py. 地址:https://bootstrap.pypa.io/get-pip.py

然后运行以下命令 (需要管理员权限):

$ wget https://bootstrap.pypa.io/get-pip.py
$ python get-pip.py
$ pip -V  #查看pip版本

最后重启下网卡确保dns可以解析:

# service network restart

重启完后查看下dns解析情况:

# grep hosts /etc/nsswitch.conf

hosts: files dns

步骤1:卸载python//慎用慎用 ,因为卸载后会直接把系统中Python卸载,会影响到yum

rpm -qa|grep python|xargs rpm -e --allmatches --nodeps

whereis python|xargs rm -fr
步骤2:卸载yum

rpm -qa|grep yum|xargs rpm -e --allmatches --nodeps

rm -rf /etc/yum.repos.d/*

whereis yum|xargs rm -fr

网卡配置

配置网卡
vm /etc/sysconfig/network-scripts/ifcfg-eth0

  1. DEVICE="eth0"
  2. HWADDR="00:0C:29:FD:FF:2A"
  3. NM_CONTROLLED="yes"
  4. ONBOOT="yes"
  5. IPADDR=192.168.1.31
  6. NETMASK=255.255.255.0
  7. GATEWAY=192.168.1.1
  8. BOOTPROTO=static
  9. DNS1=114.114.114.114
  10. DNS2=8.8.8.8.8
  11. <div class="md-section-divider"></div>

这里如果配置了DNS1.2 在resolv文件中,可以不用添加nameserver DNS 请注意

记得重启网卡:

[root@localhost ~]# /etc/init.d/network stop
[root@localhost ~]# /etc/init.d/network start

添加DNS

  1. vi /etc/resolv.conf
  2. 在里面添加二个dns
  3. nameserver 114.114.114.114
  4. nameserver 8.8.8.8
  5. <div class="md-section-divider"></div>

[root@localhost ~]# service network stop #关闭网络服务
[root@localhost ~]# service network start #启动网络服务
[root@localhost ~]# service network restart #重启网络服务

网卡状态查询
[root@localhost ~]# service network status

查看当前路由及网关信息
[root@localhost ~]# netstat -r

VBoxManage

  1. 命令一:$ VBoxManage modifyhd VDI_FILE --resize SIZE_IN_MB // 改虚拟机硬盘尺寸
  2. 命令二:$ VBoxManage showhdinfo VDI_FILE // 显示虚拟机硬盘信息
  3. 命令三:$ VBoxManage clonehd VDI_FILE CLONED_VDI_FILE // 复制虚拟机硬盘文件
  4. <div class="md-section-divider"></div>

1.查看主机上的可用虚拟机:

  1. $VBoxManage list vms
  2. //显示详细信息。
  3. VBoxManage list vms -l
  4. 打开无窗口的虚拟机(无外设):
  5. vboxmanage startvm Ubuntu16.04 --type=headless
  6. //列出所有正在运行
  7. vboxmanage list runningvms
  8. //关机保存
  9. VBoxManage controlvm Ubuntu16.04 savestate
  10. 控制已经运行的虚拟机:(暂停|恢复|重启|关机|休眠)
  11. VBoxManage controlvm <uuid>|<name> pause|resume|reset|poweroff|savestate
  12. 注:更多参数详见 VBoxManage --help 输出的帮助。
  13. //查看详细信息
  14. vboxmanage showvminfo Ubuntu16.04
  15. <div class="md-section-divider"></div>

CentOS 中 YUM 安装桌面环境

https://cnzhx.net/blog/centos-yum-install-desktop/

要安装 KDE 桌面环境,执行指令,

# yum groupinstall "X Window System" "KDE Desktop" Desktop
即可,同时安装了 3 个软件包。注意,因为 KDE Desktop 和 X Window System 两个软件包名称中间都包含空格,需要用引号引起来才行。

要安装 Gnome 桌面环境,执行指令,

# yum groupinstall "X Window System" "Desktop Platform" Desktop
即可,也是同时安装了 3 个软件包,其中 X Window System 是必须的,不管是 Gnome 还是 KDE。

既然是桌面环境,可能还需要诸如字体、管理工具之类的,如
yum -y groupinstall "Graphical Administration Tools"
yum -y groupinstall "Internet Browser"
yum -y groupinstall "General Purpose Desktop"
yum -y groupinstall "Office Suite and Productivity"
yum -y groupinstall "Graphics Creation Tools"

启用
从命令行直接启动图形桌面环境,
# startx

如果有问题:http://blog.csdn.net/zq9017197/article/details/50975578

centos 中安装docker

uname -a
cat /etc/redhat-release

Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,需要内核版本是 2.6.32-431 或者更高版本 ,因为这是允许它运行的指定内核补丁版本。

导入public key :
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
安装ELRepo到CentOS-6.5中:
rpm -ivh http://www.elrepo.org/elrepo-release-6-5.el6.elrepo.noarch.rpm
安装 kernel-lt(lt=long-term):
yum --enablerepo=elrepo-kernel install kernel-lt -y
或者安装kernel-ml(ml=mainline):
yum --enablerepo=elrepo-kernel install kernel-ml -y

安装ELRepo网上的地址找不到

rpm -Uvh http://www.elrepo.org/elrepo-release-6-8.el6.elrepo.noarch.rpm

然后安装kernel-ml

随后,编辑以下配置文件:
vi /etc/grub.conf
default=1修改为default=0

重启
init 6

重新查看内核
uname -r
哈哈 。。。
4.13.0-1.el6.elrepo.x86_64

No package docker available.

sudo yum install epel-release
and then run

sudo yum install docker-io

卸载旧版 docker

rpm -qa | grep docker
docker-engine-1.13.0-1.el7.centos.x86_64
docker-engine-selinux-1.13.0-1.el7.centos.noarch
yum remove docker-engine-1.13.0-1.el7.centos.x86_64
yum remove docker-engine-selinux-1.13.0-1.el7.centos.noarch

启动
service docker start
检查docker状态
service docker status

设置开机启动
sudo chkconfig docker on

卸载mysql

  1. yum remove mysql-community-server
  2. rpm -qa |grep mysql
  3. <div class="md-section-divider"></div>

然后逐一卸载

首先我们使用find命令来查找:

  1. find / -name mysql
  2. /usr/share/mysql
  3. /var/lib/mysql
  4. /var/lib/mysql/mysql
  5. <div class="md-section-divider"></div>

接着我们使用rm命令删除即可:

  1. rm -rf /var/lib/mysql/
  2. 挨个删除就好了。

博客地址: https://zhangzifan.com/centos-7-remove-mysql.html

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注