收藏 分销(赏)

虚拟机CentOS服务器搭建备忘录.docx

上传人:pc****0 文档编号:8936844 上传时间:2025-03-08 格式:DOCX 页数:53 大小:753.79KB 下载积分:10 金币
下载 相关 举报
虚拟机CentOS服务器搭建备忘录.docx_第1页
第1页 / 共53页
虚拟机CentOS服务器搭建备忘录.docx_第2页
第2页 / 共53页


点击查看更多>>
资源描述
一、 基础环境搭建 ***ifconfig位于 /sbin路径下**************************************************** 1.以root用户登录 2.查看环境变量 echo $PATH 3.到sbin目录下查看是否有ifconfig文件 ls /sbin|grep ifconfig 4.若果没有,则查找ifconfig 文件 yum search ifconfig 5.安装ifconfig包 yum install –y net-tools/* ***配置网络(虚拟机作为服务器VMware+CentOS)**************************** 1.设置 虚拟机网卡为 桥接模式,不勾选复制物理机网络 2.虚拟机网卡设为动态获取ip 3.修改配置文件ifcfg-eth0(/etc/sysconfig/network-scripts/ifcfg-eth0 (有可能是ifcfg-eno16777736)) 需要注意: 1. mac地址 配置文件(ifcfg-eth0)的地址和ifconfig查看的一致 2. 手动添加IP等照图片设置 3. /etc/resolv.conf设置空 ***配置网络(虚拟机作为服务器VMware+CentOS且与宿主机一样可以连接外网)******** 1. 设置桥接模式,勾选复制物理机网络 2. 设置静态ip与宿主机在同一网段 (1) 宿主机 ip (2) 虚拟机网卡 VMnet8 (3) CentOS 静态ip 修改配置文件ifcfg-eth0( /etc/sysconfig/network-scripts/ifcfg-eth0 (有可能是ifcfg-eno16777736)) 必须重新启动网卡: Service network restart 重新装成图行界面,外网不知为啥不通,后来把ifcfg-exxx(网卡配置文件)的HWADDR设为一个错误的,又改为正确的,重启,就好了,不知为啥。 ***安装VMware Tools*************************************************** Vmware tool需要perl环境和gcc编译环境 1.先安装内核 yum install kernel-devel (必须是与gcc版本一致的) 查看内核版本:# uname –r 安装GCC: # yum install gcc 安装perl # yum install –y perl* 注意要在线安装:因为有得包需要即时下载 2.安装VMware Tools (1)、在VMWare选VM -> Install VMWare Tools…,就会在桌面出现VMWare Tools图示让你安裝 在这里要挂载光驱: 1、mkdir /mnt/cdrom 2、加载:mount /dev/cdrom /mnt/cdrom 3、挂载:      umount /dev/cdrom /mnt/cdrom (2)、#cd /mnt/cdrom 显示:VMWareTools-6.0.2.59824.tar.gz。 (3)、将VMWareTools-6.0.2.59824.tar.gz复制到/tmp,进行解压缩。 #cp  VMWareTools-6.0.2.59824.tar.gz /tmp # tar -zxvf VMwareTools-6.0.2-59824.tar.gz (4)、进入解压缩后的vmware-tools-distrib目录 # cd vmware-tools-distrib/ 执行vmware-install.pl安裝VMWare Tools [root@localhost vmware-tools-distrib]# ./vmware-install.pl !!!可能会遇到的问题: (1) 在安装时,会找不到header路径 原因:gcc版本与kernel版本不一致 解决方法: 分别查CentOS kernel版本 kernel-devel及kernel-headers版本 先查找centos的kernel版本:uname -r 版本号为3.10.0-123.el7.x86_64 但我通过命令行查找安装的kernel-devel 和kernel-headers如下 kernel-devel: 命令:rpm -qa|grep kernel-devel 输出:kernel-devel-3.10.0-123.13.2.el7.x86_64 kernel-headers:命令:rpm -qa|grep kernel-headers 输出:kernel-headers-3.10.0-123.13.2.el7.x86_64 具体版本和centos内核的版本有一些出入,如果主版本是相同的,但还是找不到kernel-header.于是我打算安装和kernel相同的版本 yum install kernel-devel-3.10.0-123.el7.x86_64 (2) 一路下来还会报错,需要根据错误改.c或.h文件 我遇到的时报filesystems.c的gui_t和kgui_t类型不兼容 /tmp/modconfig-vD6daJ/vmhgfs-only/filesystem.c:240:15: error: incompatible types when assigning to type ‘gid_t’ from type ‘kgid_t’ si->gid = current_gid(); 解决方法: The solution above worked for me: cd <...>/vmware-tools-distrib/lib/modules/source tar xf vmhgfs.tar cd vmhgfs-only/shared apply change to compat_dcache.h (remove line 54,56-60 ) then tar up the new directory into vmhgfs.tar, and run the install. 大概意思就是,先把compat_dcache.h文件修改保存了,然后把原来的vmhgfs.tar删除或备份一下,重新打包一个vmhgfs.tar替代原来的vmghfs.tar然后再重新安装./vmware-install.pl (3) 挂载共享文件夹 Windows 机器192.168.1.103共享了 /share/yasi 目录,并且赋予了写的权限,在Windows机器下可以用 yasi/pass 登录。在一台CentOS 6.3机器上尝试将该共享目录 mount 到 /mnt/yasi 上 #mount -t cifs //192.168.1.103/share/yasi  /mnt/yasi  -o  username="yasi",password="pass"   特别注意:这里的username和password都是windows系统的用户名和密码(在windows下能够访问yasi文件夹的用户) 在这里还有坑………………… 1. mount: block device //192.168.1.103/share/yasi is write-protected, mounting read-only   2. mount: cannot mount block device //192.168.1.103/share/yasi read-only   【原因】 需要安装cifs-utils 【解决】 安装cifs-utils #yum install cifs-utils.x86_64   然后重新执行 1. mount -t cifs //192.168.1.103/share/yasi /mnt/win -o username="yasi",password="pass"   就mount上了,并且具有写的权限。查看mount的文件#df –h 二、 定制环境搭建(维修客) 1. 安装MongoDB (1) 下载压缩包 www.mongodb.org 选择RHEL 7 linux 64 bit 压缩包(mongodb-linux-x86_64-2.6.10.tgz.gz) (2) 上传到 /usr/local/mongodb目录下(mongodb需要自己创建) (3) 解压# tar –zxvf mongodb-linux-x86_64-2.6.10.tgz.gz (4) #cd mongodbxxxxxx (5) #cd bin (6) 新建配置文件 vi mongodb.conf 其中/data/test/db和/data/test/logs都是自己新建的目录 #mkdir –p /data/test/db #mkdir –p /data/test/logs 2. 安装nginx (1)下载http://nginx.org/en/download.html 传到/usr/local/nginx目录下 (2)解压 #tar –zxv -f nginxxxxxx (3) ./configure --prefix=/usr/local/nginx 可能会遇到一些问题,解决方法: 有时候,我们需要单独安装nginx,来处理大量的下载请求。单独在Centos5安装nginx遇到的rewrite和HTTP cache错误解决办法: wget http://nginx.org/download/nginx-0.8.33.tar.gz tar -zxvf nginx-0.8.33.tar.gz  cd nginx-0.8.33 ./configure --prefix=/usr/local/nginx   安装Nginx时报错 ./configure: error: the HTTP rewrite module requires the PCRE library. 安装pcre-devel解决问题 yum -y install pcre-devel   错误提示:./configure: error: the HTTP cache module requires md5 functions from OpenSSL library.   You can either disable the module by using --without-http-cache option, or install the OpenSSL library into the system, or build the OpenSSL library statically from the source with nginx by using --with-http_ssl_module --with-openssl=<path> options. 解决办法: yum -y install openssl openssl-devel   /configure: error: the HTTP gzip module requires the zlib library. You can either disable the module by using –without-http_gzip_module option, or install the zlib library into the system, or build the zlib library statically from the source with nginx by using –with-zlib=<path> option. 则需要安装“zlib-devel”即可。SSH执行以下命令: yum install -y zlib-devel 总结: yum -y install pcre-devel openssl openssl-devel ./configure --prefix=/usr/local/nginx make make install 一切搞定 刚不久安装了一台centos7,发现有很多的不同,现在说一下,我发现的不同的操作,希望大家在操作过程中发现了不同也记录下来,以被查询 与centos6一样,采用的是最小化安装,进入后用ifconfig查看网络情况,结果没这个命令,只能装一个了yum -y install net-tools,装好了之后,看看发现网卡没启动,到/etc/sysconfig/network-scripts/这个目录下去改发现网卡名也不 一样了,以前是叫ifcfg-eht0,现在是这个ifcfg-enp4s0,改好了之后,用service network restart启动一下,这个还是可用。 想关掉防火墙:用service iptables stop结果是不行了出现:Redirecting to /bin/systemctl stop iptables.service 听说以systemd代替了upstart和system V,防火墙也改了,改成了firewalld,,以后的启动与关闭程序只能以 systemctl stop(或start) firewalld.service 查看防火墙状态:firewall-cmd –state 永久性关闭防火墙 #chkconfig --level 35 iptables off (注意中间的是两个英式小短线;重启) 抛砖引玉,大家每人补充一条吧! 安装说明 系统环境:CentOS-6.3 软件:nginx-1.2.6.tar.gz 安装方式:源码编译安装 安装位置:/usr/local/nginx 下载地址:http://nginx.org/en/download.html 安装前提 在安装nginx前,需要确保系统安装了g++、gcc、openssl-devel、pcre-devel和zlib-devel软件。安装必须软件: [root@admin /]#yum install gcc-c++ yum -y install zlib zlib-devel openssl openssl--devel pcre pcre-devel 检查系统安装的Nginx: [root@admin local]# find -name nginx ./nginx ./nginx/sbin/nginx ./nginx-1.2.6/objs/nginx 卸载原有的Nginx [root@admin /]# yum remove nginx 安装 将安装包文件上传到/usr/local中执行以下操作: [root@admin local]# cd /usr/local [root@admin local]# tar -zxv -f nginx-1.2.6.tar.gz [root@admin local]# rm -rf nginx-1.2.6.tar.gz [root@admin local]# mv nginx-1.2.6 nginx [root@admin local]# cd /usr/local/nginx [root@admin nginx]# ./configure --prefix=/usr/local/nginx [root@admin nginx]# make [root@admin nginx]# make install 配置 #修改防火墙配置: [root@admin nginx-1.2.6]# vi + /etc/sysconfig/iptables #添加配置项 -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT #重启防火墙 [root@admin nginx-1.2.6]# service iptables restart 启动 #方法1 [root@admin nginx-1.2.6]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf #方法2 [root@admin nginx-1.2.6]# cd /usr/local/nginx/sbin [root@admin sbin]# ./nginx 停止 #查询nginx主进程号 ps -ef | grep nginx #停止进程 kill -QUIT 主进程号 #快速停止 kill -TERM 主进程号 #强制停止 pkill -9 nginx 重启 [root@admin local]# /usr/local/nginx/sbin/nginx -s reload 测试 #测试端口 netstat –na|grep 80 #浏览器中测试 http://ip:80 在图行界面系统,又出了新问题,解决方法如下: **********************开关服务器步骤****************************************** 1. 点虚拟机绿色按钮,开启CentOS 2. 登录 3. 开启反向代理服务器nginx (1) 开启网卡service network start (2) 到sbin下 # ./nginx (3) 关闭防火墙 systemctl stop firewalld.service (4) 用浏览器方式测试http://ip:80 4. 关服务器按相反顺序取反stop/start 5. 关机 shutdown ********************88故障排查************************************************ 1. 查看nginx是否ok #./nginx –t 使用系统信号控制Nginx进程。 Nginx通过识别标准的系统信号来控制进程状态。如:HUP、QUIT、TERM、INT等。(可以使用“kill  -l”命令查看可用的进程控制信号列表) 1. killall  -s   HUP  nginx       //重新加载配置文件,等同于“killall  -1  nginx”   2. killall  -s   QUIT  nginx      //安全退出,等同于“kill –3  nginx”   3. killall  -s   TERM  nginx    //快速退出,不等待处理完当前连接  添加Nginx服务控制脚本。 考虑到CentOS的使用习惯,可以添加一个Nginx服务脚本,以便使用chkconfig和service命令管理Nginx服务。(本脚本在RHEL上可以使用) 1. vi  /etc/init.d/nginx  2.   3. #!/bin/sh   4. #chkconfig: – 90 20   5. #description: Nginx Server Control Script   6. #          //如需使用chkconfig管理,注意以上两行内容不可少   7. case “$1” in   8.     start)   9.           /usr/local/nginx/sbin/nginx   10.           ;;   11.     stop)   12.          /usr/bin/killall  -s  QUIT  nginx   13.          ;;   14.     restart)   15.         $0  stop   16.         $0  start   17.          ;;   18.     reload)   19.          /usr/bin/killall   -s   HUP  nginx   20.          ;;   21.     *)   22.                    echo “Usage: $0 {start|stop|restart|reload}”   23.                    exit  1   24. esac   25. exit  0  26.   27. chmod  a+x  /etc/init.d/nginx     //添加执行权限   28. chkconfig  --level  2345  nginx  on    //设置开机启动  以上Nginx脚本可以通过service命令进行管理控制。 1. service  nginx  stop     //关闭   2. service  nginx  start    //启动   3. service  nginx  restart  //重启  4. service  nginx  reload   //重新加载  小知识: 安装中文语言包: yum groupinstall chinese-support 于是开装中文语言包: yum install fonts-chinese.noarch yum install m17n-db-common-cjk yum install m17n-db-chinese centos7命令行解决中文乱码 时间:2015-03-13 01:50:32     标签:centos7   中文乱码    参考了一些网上的资料 -----------------版本信息 [zhangfen@localhost ~]$ cat /etc/redhat-release  CentOS Linux release 7.0.1406 (Core)  [zhangfen@localhost ~]$ uname -m x86_64 [zhangfen@localhost ~]$ uname -r 3.10.0-123.el7.x86_64 [zhangfen@localhost ~]$ uname -a Linux localhost.localdomain 3.10.0-123.el7.x86_64 #1 SMP Mon Jun 30 12:09:22 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux [zhangfen@localhost ~]$ -------------centos7解决中文乱码问题 [root@localhost ~]# cat /etc/locale.conf  LANG=en_US.UTF-8 [root@localhost ~]# cp /etc/locale.conf /etc/locale.conf_bak [root@localhost ~]# vim /etc/locale.conf    LANG="zh_CN.GB18030"   LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"   SUPPORTED="zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en"   SYSFONT="lat0-sun16" **************************前端部署***************************************** 1. 从版本库取被测试版本,比如:wxk_front.tar.gz 2. 通过ftp或共享文件夹 上传到服务器 /mnt/hgfs 目录下 3. 通过 tar –zxvf wxk_front.tar.gz 解压 4. 拷贝到/var/www/wxk/ 目录下(www和wxk目录 手动创建) 5. 修改service.js(/var/www/wxk/app/scripts/service.js) ip设置为服务器ip **************************后端部署***************************************** 1./var/hfga 把服务端开发提供的三个文件(api-service,auth-service,store-service)放到该目录下,另外需要自行写两个.sh文件,驱动执行(run-api.sh,run-store.sh),写好要运行一下,把服务起来. 2. 起数据库 mongo 3. 起服务器 nginx 4. 如果服务器睡眠了,还需要起网service network start 5. 关防火墙 systemctl stop firewalld.servicre 注意:数据库那块有一些需要配置(数据库授权) 维修客环境搭建记录: 1. cp nginx* /mnt/hgfs stat -na|grep 80 3.nginx -t 4.cd /usr/local/nginx/ 5.ln -s /usr/local/nginx/sbin/nginx . 6.nginx -s 7.cd /usr/local/nginx/conf/ 8.vi nginx.conf 9.nginx -s reload 10.cd /var/ 11.mkdir hfga 12.cd hfga 13.cp /mnt/hgfs/* . 14.mongo 15.cd /bin/ 16.ln -s /usr/local/mongodb/mongodb-iunx-x86_64-2.6.9/bin/* . 17.mongo 18.cd /var/hfga/ 19.mongod -h | less 20.mkdir db 21.mongod --syslog --fork --dbpath ./db/ 22.mongo 23.mongo -version 24.ssh neutrous@192.169.2.112(不用) 25.vi run-api.sh 26.vi run-store.sh 27.chmod a+x run-api.sh run-store.sh 28../run-store.sh 29../run-api.sh 30.mkdir conf 31.cd conf/ 32.vi conf.json 33.mkdir wxk-web 34.mv app/ bower_components/ bower.json wxk-web/ 35.cd /var/ 36.vi /usr/local/nginx/conf/ 37.cd /usr/local/nginx/ 38.cd conf 39.vi nginx.conf 40.cd html 41.vi conf 42.cd conf 43.vi nginx.conf 44.cd /var 45.mkdir -p www 46.cd www 47.mv /var/hfga/wxk-web/ wxk 48.cd wxk 49.nginx -s reload 总结: 1.安装虚拟机 2.安装CentOS 3.配置网络 4.安装nginx(要修改nginx.conf文件,监听端口)注意:配置路劲 5.安装mongodb(启动并配置表) 6.编写conf.json 7.把服务程序放到指定目录(写run-api.sh,run-store.sh脚本,并运行) 8.把前端程序放到指定目录(修改service.js的ip与服务器一致) 9.如果部局域网,记得关防火墙 systemctl stop firewalld.service,其他机子才能访问 前端:Angular + js 后端:Martini + go 服务器:Nginx 数据库:MongoDB 操作系统:CentOS 从git取版本 1. 注册git账户 2. 激活 3. 生成pub 公钥和私钥 $ssh-keygen –t rsa –f ~/.ssh/a(a为公钥文件名) 4. 然后把公钥的内容放到 点:add 5. 到命令行 ,建一个文件夹比如:wxk 然后在wxk目录下执行:git clone ssh://lijun@192.168.2.112:29418/wxk/release 如果做了这个配置文件就可以这样用clone命令了 $git clone gerrit2:wxk/release 理论上是吧版本克隆到release目录下 6. 取版本,在release目录下执行 $git fetch origin –tags $git tag $git checkout v2.4.3 $cat README 或者 $git branch $git checkout master $git tag $git pull origin master 都可以 ------------------------------------- Git常用命令 查看、添加、提交、删除、找回,重置修改文件 git help <command> # 显示command的help git show # 显示某次提交的内容 git show $id git co -- <file> # 抛弃工作区修改 git co . # 抛弃工作区修改 git add <file> # 将工作文件修改提交到本地暂存区 git add . # 将所有修改过的工作文件提交暂存区 git rm <file> # 从版本库中删除文件 git rm <file> --cached # 从版本库中删除文件,但不删除文件 git reset <file> # 从暂存区恢复到工作文件 git reset -- . # 从暂存区恢复到工作文件 git reset --hard # 恢复最近一次提交过的状态,即放弃上次提交后的所有本次修改 git ci <file> git ci . git ci -a # 将git add, git rm和git ci等操作都合并在一起做                                    git ci -am "some comments" git ci --amend # 修改最后一次提交记录 git revert <$id> # 恢复某次提交的状态,恢复动作本身也创建次提交对象 git revert HEAD # 恢复最后一次提交的状态 查看文件diff git diff <file> # 比较当前文件和暂存区文件差异 git diff git diff <id1><  id2> # 比较两次提交之间的差异 git diff <branch1>..<branch2> # 在两个分支之间比较 git diff --staged # 比较暂存区和版本库差异 git diff --cached # 比较暂存区和版本库差异 git diff --stat # 仅仅比较统计信息 查看提交记录 git log git log <file> # 查看该文件每次提交记录 git log -p <file> # 查看每次详细修改内容的diff git log -p -2 # 查看最近两次详细修改内容的diff git log --stat #查看提交统计信息 tig Mac上可以使用tig代替diff和log,brew install tig Git 本地分支管理 查看、切换、创建和删除分支 git br -r # 查看远程分支 git br <new_branch> # 创建新的分支 git br -v # 查看各个分支最后提交信息 git br --merged # 查看已经被合并到当前分支的分支 git br --no-merged # 查看尚未被合并到当前分支的分支 git co <branch> # 切换到某个分支 git co -b <new_branch> # 创建新的分支,并且切换过去 git co -b <new_branch> <branch> # 基于branch创建新的new_branch git co $id # 把某次历史提交记录checkout出来,但无分支信息,切换到其他分支会自动删除 git co $id -b <new_branch> # 把某次历史提交记录checkout出来,创建成一个分支 git br -d <branch> # 删除某个分支 git br -D <branch> # 强制删除某个分支 (未被合并的分支被删除的时候需要强制)  分支合并和rebase git merge <branch> # 将branch分支合并到当前分支 git merge origin/master --no-ff # 不要Fast-Foward合并,这样可以生成merge提交 git rebase master <branch> # 将master rebase到branch,相当于: git co <branch> && git rebase master && git co master && git merge <branch>  Git补丁管理(方便在多台机器上开发同步时用) git diff > ../sync.patch # 生成补丁 git apply ../sync.patch # 打补丁 git apply --check ../sync.patch #测试补丁能否成功  Git暂存管理 git stash # 暂存 git stash list # 列所有stash git stash apply # 恢复暂存的内容 git stash drop # 删除暂存区 Git远程分支管理 git pull # 抓取远程仓库所有分支更新并合并到本地 git pull --no-ff # 抓取远程仓库所有分支更新并合并到本地,不要快进合并 git fetch origin # 抓取远程仓库更新 git merge origin/master # 将远程主分支合并到本地当前分支 git co --track origin/branch # 跟踪某个远程分支创建相应的本地分支 git co -b <local_branch> origin/<remote_branch> # 基于远程分支创建本地分支,功能同上
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服