CentOS
备注:在实践中,选择的常用虚拟机使用系统是CentOS6.6
1.关于CentOS6.6
虽然 RHEL/CentOS 7 已经发布一段时间了,但是 6 系列仍然在继续更新和维护。昨日,该系列跟随其上游版本,2014年10月28日CentOS官网发布了其最新更新版本 CentOS 6.6。由于 RHEL/CentOS 7 带来了很多大幅变化,包括 systemd 之类,其是非功过不好评价,将来的是非功过也需要时间来证明,但是,目前使用 RHEL/CentOS 6 的生产环境迁移到 RHEL/CentOS 7 还需要很多工作,
可以预见的是,RHEL/CentOS 6 系列会和 RHEL/CentOS 7 共存很长时间。
2.安装与配置
参考:http://www.centoscn.com/image-text/setup/2014/1128/4199.html
安装的系统:CentOS 6.6
2.1 安装的步骤参考:http://www.centoscn.com/image-text/setup/2014/1128/4199.html 即可
2.2 关于静态IP的设置:按照参照文档出现错误,选择如下的方式进行配置
参考:设置静态IP且能上网 :http://m.blog.csdn.net/article/details?id=52839105
(1) 在安装时我选择将虚拟机的网络连接方式改为桥接,为了可以在客户端工具内方便的配置
cd /etc/sysconfig/network-scripts/
vi ifcfg-eth0
*********
DEVICE=eth0
HWADDR=00:0C:29:2A:6F:DF
TYPE=Ethernet
UUID=fbfb9ec9-c30a-4d9a-8212-5e1b0be323d1
ONBOOT=yes
NM_CONTROLLED=yes
# BOOTPROTO=dhcp
IPV6INIT=yes
BOOTPROTO=static
IPADDR=192.168.1.109
GATEWAY=192.168.1.2 #这个参照说明设置
NETMASK=255.255.255.0
DNS1=192.168.1.2
*********
最佳实践:
1一定要把VM连接模式从bridge 改成 NAT,尤其发现无法ping通和上网时候
2发现192.168.1.101无法使用。。
2.3 配置主机名
比如:主机名 edu-proxy-02 静态IP地址 192.168.1.121
(1) hostname edu-proxy-02
(2) vi /etc/sysconfig/network
HOSTNAME=edu-proxy-02
NETWORKING=yes
(3) vi /etc/hosts
127.0.0.1 edu-proxy-02 localhost
192.168.1.121 edu-proxy-02
:wq! #保存退出
shutdown -r now #重启系统
3.实践问题总结:
(1) CentOS 6若出现;This device may need to be reinitialized.的问题,底下有四个按钮,Ignore、Ignore all、Re-initialize、Re-initialize all
原因:因为CentOS的界面安装非常的不流畅。需要1G以上内存的支持,所以才会出现这个提示。因此,建议安装的童鞋使用1G以上的内存作为虚拟机的内存,酱紫就不会出现这个提示了。
(2)切记安装非桌面版的
(3)以下命令有问题
service yum-updatesd stop #关闭系统自动更新
chkconfig yum-updatesd off #禁止开启启动
这个命令在6.6被删除掉了
参考:http://blog.csdn.net/qadworld/article/details/29923747
4.一些配置实践
4.1 配置和启用防火墙(限于6.6)
随机启动:
chkconfig iptables on
启用防火墙:
service iptables start
配置防火墙:
vi /etc/sysconfig/iptables
# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended.
*filter
## fastdfs
-A INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT
COMMI
重启防火墙:
service iptables restart
查看防火墙端口状态:
service iptables status
4.2 问题:centos 文件不能上传
权限是777的就行了, 用chmod 777 -R /opt/目录根据你自己的改,没有什么难的
4.3当工具不存在时的安装
比如安装 unzip
yum -y install zip unzip #-y 一路绿灯的安装
4.4时间不一致的情况调整
yum -y install ntp;
ntpdate time.nist.gov
如果上面time.nist.gov服务器同步不了,可以换下面几个时间服务器试试:
time.nist.gov
time.nuri.net
0.asia.pool.ntp.org
1.asia.pool.ntp.org
2.asia.pool.ntp.org
3.asia.pool.ntp.org
4.5 新建、配置用户
4.5.1 新建用户
例如,我们要给系统添加一个用户叫bypay,密码为123456,那相关的操作是:
(1) 设置用户名
# useradd bypay <回车>
这时候系统没有任何显示。接着:
(2) 设置密码
# passwd bypay <回车>
系统显示:
Changing password for user floatboat
New UNIX password:
你输入密码:
123456<回车>
注:由于linux并不采用类似windows的密码回显(显示为*号)——为避免你输入密码时被人注意到有多少位——所以,输入的这些字符你是看不见的。
(3)确认密码
系统显示:
Retype new UNIX password:
你再重新输入一次密码,然后回车确认,这时系统会显示:
passwd:all authentication tokens updated successfully
表示你修改密码成功了。
4.5.2 配置用户
(1)useradd所做的初始化操作已经包括在/home目录下为bypay帐号建立一个名为bypay的主目录。如果你不想使用这个缺省的目录,而希望把他的主目录放在/home/goal里(还放在/home下,只是一种良好的习惯,没有其他什么特别的要求),可以使用useradd的参数-d,命令如下:
useradd -d /home/goal bypay
(2)useradd的初始化操作还包括为用户单独建立一个与用户名同名的组(floatboat组)。这叫用户私有组的机制,与默认组机制相对应。对用户分组一是方便管理,二是可以明确权限。复杂的我们将在以后的深入内容中探讨。我们如果想让此用户加入一个已有的组的话,可以使用-g参数。例如我们想让floatboat加入webusers组,那么可以使用以下命令:
useradd -g webusers floatboat
同样的,我们还可以使用-G参数使他同时加入多个组,例如webusers和ftpusers:
useradd -G ftpusers,webusers floatboat
(3)passwd命令为一个用户设置密码,但它实质上是一个修改密码的程序。只有超级用户和用户自己可以修改密码,其它的普通用户没有给他修改密码的 权利。用户密码的组成要尽量的复杂,最好包括字母、数字和特殊符号,而且最好设成6位以上。太短passwd程序不允许,只是单纯的字母或单纯的数 字,passwd也会有意见。你都会看见passwd出现的提示的,不要害怕,仔细看看到底它是怎么说的:)
(4)你在增加一个新用户的时候,也可以设置用户登录的shell。缺省的,系统提供了/bin/bash。你如果非要指定的话,可以使用-s参数就可以了。例如
useradd -d /www -s /usr/bin/passwd floatboat
注意,这些参数是可以一块使用的,如上例所示,它表示增加新用户,并把其主目录路径设置在/www,登录的shell为/usr/bin/passwd。关于shell的更详细的说明,请参考下面的修改用户的个人设置相关内容。
(5)删除一个用户可以使用userdel命令,直接带用户名做参数就可以了。
修改用户的设置
对现有用户的修改,比较常用的主要是修改密码(使用passwd就好了),修改用户的登录shell,修改用户所属的默认组,设置帐号有效期,修改用户的说明信息等等,偶尔也会用到修改用户主目录。
修改用户的登录shell
使用chsh命令可以修改自己的shell,只有超级用户才能用chsh username为其它用户修改shell设置。注意,指定的shell必须是列入/etc/shells文件中的shell,否则该用户将不能登陆。
4.6 解决端口占用
参考:http://www.laozuo.org/3510.html
4.7 误删了文件咋办
参考:http://www.centoscn.com/CentOS/Intermediate/2014/0318/2586.html
************************************以下是centOS7的安装配置***********************************
0.安装CentOS
安装参考:http://www.osyunwei.com/archives/7829.html(选址这个)
其它: http://jingyan.baidu.com/article/a3aad71aa180e7b1fa009676.html(带桌面)
分区前先规划好
swap #交换分区,一般设置为内存的2倍
挂载点:swap ,期望容量:2048
/ #剩余所有空间
备注:生产服务器建议单独再划分一个/data分区存放数据
1.登录:
root 1qaz2wsx
2.centos系统查看本机IP地址,输入 ifconfig -a查看
2.1 问题: centos ifconfig command not found
2.2 分析:
情况1:使用su虽然切换到了root,但是环境变量并没有一起跟着变过来。所以,执行"su -",使环境变量也一起跟着变过来。超级用户使用的命令大多是在 /sbin里面,一般用户使用的命令一般是在/bin里面,而/bin里面是没有ifconfig命令的。
所以centos下command not found
情况2:echo $PATH 环境变量是正确的,但是/etc/sbin下并没安装ifconfig
我们的解决办法是:yum安装ifconfig这个命令包
yum search ifconfig
yum install net-tools.x86_64
事实上我们发现并没有这个包,需要在线安装:【yum install net-tools】又发现没有联网,需要:找到网卡,设置onboot=true(ONBOOT是指明在系统启动时是否激活网卡,只有在激活状态的网卡才能去连接网络,进行网络通讯)
cd /etc/sysconfig/network-script/
修改ifcfg-eno16777736(数字部门可能不一样)这个文件
把 onboot 改成yes,然后重启网络:service network restart即可联网
问题:出现如下异常[原创]Failed to start LSB: Bring up/down networking
一般解决方案:http://blog.vsharing.com/wpskl/A1779934.html
我解决的方式VM设置为:桥接模式
反向往上解决,即解决完,执行: yum install net-tools,这样就可以执行ifconfig -a 了
3.使用工具连接很顺畅
以下有问题:
4.CentOs 设置静态IP 方法
参考:http://www.cnblogs.com/coacaio/archive/2011/12/12/2284715.html
1.修改网卡配置 编辑:vi /etc/sysconfig/network-scripts/ifcfg-eth0
实际文件是ifcfg-ens33,网卡的名字就是 ens33
vi /etc/sysconfig/network-scripts/ifcfg-ens33
DEVICE=eth0 #描述网卡对应的设备别名,例如ifcfg-eth0的文件中它为eth0
BOOTPROTO=static #设置网卡获得ip地址的方式,可能的选项为static,dhcp或bootp,分别对应静态指定的 ip地址,通过dhcp协议获得的ip地址,通过bootp协议获得的ip地址
BROADCAST=192.168.0.255 #对应的子网广播地址
HWADDR=00:07:E9:05:E8:B4 #对应的网卡物理地址
IPADDR=12.168.0.33 #如果设置网卡获得 ip地址的方式为静态指定,此字段就指定了网卡对应的ip地址
NETMASK=255.255.255.0 #网卡对应的网络掩码
NETWORK=192.168.0.0 #网卡对应的网络地址
DEVICE=ens33
BOOTPROTO=static
BROADCAST=192.168.199.255
IPADDR=192.168.199.141
NETMASK=0.0.0.0
NETWORK=192.168.0.0
HWADDR=00:0c:29:75:bb:be
1.获取centos 查看网卡名字:
cd /etc/sysconfig/network-script/,ifcfg-eno16777736(数字部门可能不一样)这个文件,实际文件是ifcfg-ens33,网卡的名字就是 ens33
2.ifconfig
[root@localhost network-scripts]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.199.138 netmask 255.255.255.0 broadcast 192.168.199.255
inet6 fe80::20c:29ff:fe75:bbbe prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:75:bb:be txqueuelen 1000 (Ethernet)
RX packets 10803 bytes 14756309 (14.0 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 4465 bytes 292081 (285.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 102 bytes 13586 (13.2 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 102 bytes 13586 (13.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
broadcast 192.168.199.255
netmask 255.255.255.0
ether 00:0c:29:75:bb:be
2.修改网关配置
编辑:vi /etc/sysconfig/network 修改后如下:
NETWORKING=yes(表示系统是否使用网络,一般设置为yes。如果设为no,则不能使用网络,而且很多系统服务程序将无法启动)
HOSTNAME=centos(设置本机的主机名,这里设置的主机名要和/etc/hosts中设置的主机名对应)
GATEWAY=192.168.0.1(设置本机连接的网关的IP地址。)
NETWORKING=yes
HOSTNAME=mysqlsvr1
GATEWAY=0.0.0.0
注:
1)centos查看/修改主机名
查看: hostname
第一种:hostname 主机名
01.hostname 主机名称
这种方式,只能修改临时的主机名,当重启机器后,主机名称又变回来了。
第二种:hostnamectl set-hostname <hostname>
命令行中输入
01.hostnamectl set-hostname <主机名>
使用这种方式修改,可以永久性的修改主机名称!
2)可获得IP的一些详细信息
ip route
route -n
3.修改DNS 配置
编辑:vi /etc/resolv.conf 修改后如下:
nameserver 即是DNS服务器IP地址,第一个是首选,第二个是备用。
4.重启网络服务
执行命令:
service network restart 或 /etc/init.d/network restart
遗留问题:连不上网
ifconfig ens33 192.168.1.100 up
ifconfig ens33 192.168.199.141 up
=============================
说明:centos7和文档中开放端口的方法不一致,所有有如下的说明
参考:http://www.cnblogs.com/moxiaoan/p/5683743.html
1、firewalld的基本使用
启动: systemctl start firewalld
查看状态: systemctl status firewalld
停止: systemctl disable firewalld
禁用: systemctl stop firewalld
2.systemctl是CentOS7的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体。
启动一个服务:systemctl start firewalld.service
关闭一个服务:systemctl stop firewalld.service
重启一个服务:systemctl restart firewalld.service
显示一个服务的状态:systemctl status firewalld.service
在开机时启用一个服务:systemctl enable firewalld.service
在开机时禁用一个服务:systemctl disable firewalld.service
查看服务是否开机启动:systemctl is-enabled firewalld.service
查看已启动的服务列表:systemctl list-unit-files|grep enabled
查看启动失败的服务列表:systemctl --failed
3.配置firewalld-cmd
查看版本: firewall-cmd --version
查看帮助: firewall-cmd --help
显示状态: firewall-cmd --state
查看所有打开的端口: firewall-cmd --zone=public --list-ports
更新防火墙规则: firewall-cmd --reload
查看区域信息: firewall-cmd --get-active-zones
查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0
拒绝所有包:firewall-cmd --panic-on
取消拒绝状态: firewall-cmd --panic-off
查看是否拒绝: firewall-cmd --query-panic
设置开放端口:(--permanent永久生效,没有此参数重启后失效)
firewall-cmd --zone=public --add-port=20880/tcp --permanent
firewall-cmd --zone=public --add-port=9090/tcp --permanent
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --zone=public --add-port=8080/tcp --permanent
重新载入
firewall-cmd --reload
查看所有开放的端口
firewall-cmd --zone=public --list-ports
删除
firewall-cmd --zone= public --remove-port=80/tcp --permanent