放假闲来无事,研究了一下centos 7.0,发现变化真大。。。。。。ifconfig
竟然都被废了,以后看IP就要用ip addr
了。
下面记录一下需要注意的地方。
语言选择
老高在此建议不要使用中文,默认英文最好,否则后期可能会出现一些由于语言不兼容的错误,更不要担心设了英文以后就不支持中文了。
网络设置
ifconfig
ifconfig被整合到了net-tools,nslookup、dig在bind-utils中。
网络配置
网卡配置文件的位置不变,但文件名好像变了:/etc/sysconfig/network-scripts/ifcfg-en******
让我们cat一下,以下是配置(博主用的dhcp 桥接模式)
代码语言:javascript复制TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=enp0s3
UUID=c686ed3b-b3e2-499c-9196-d51bdb8ab9c4
ONBOOT=yes
HWADDR=08:00:27:FB:3E:5C
PEERDNS=yes
PEERROUTES=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
如果IP为静态分配,那么应该是这样配置的:
代码语言:javascript复制TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=enp0s3
UUID=c686ed3b-b3e2-499c-9196-d51bdb8ab9c4
ONBOOT=yes
HWADDR=08:00:27:FB:3E:5C
PEERDNS=yes
PEERROUTES=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPADDR0=192.168.1.128 #设置IP地址
PREFIXO0=24 #设置子网掩码
GATEWAY0=192.168.21.2 #设置网关
DNS1=114.114.114.114 #设置备DNS
DNS2=8.8.8.8 #设置备DNS
systemctl的使用
这个命令估计以后大家会经常接触,他整合了service和chkconfig命令,使用帮助命令systemctl -h
或者参考下图
升级系统
这个就不多说了yum -y update
VIM安装
安装
代码语言:javascript复制yum -y install vim-enhanced
把 vi
替换为 vim
代码语言:javascript复制vi /etc/profile
# 最后一行
alias vi='vim'
netstat哪儿去了
代码语言:javascript复制yum install net-tools -y
安装http服务器
这里我们选用Apache,安装命令:
代码语言:javascript复制yum install httpd -y
# 服务设置
systemctl start httpd.service #启动apache
systemctl stop httpd.service #停止apache
systemctl restart httpd.service #重启apache
systemctl enable httpd.service #设置apache开机启动
# 看看是否监听80端口
netstat -nplt
默认的web根目录再/var/www/html下,一会儿会用到。
现在在浏览器使用IP地址访问默认页面试试,如果还是不行,那估计是防火墙没有配置好。
防火墙设置
centos7默认使用的是firewall
,所以安装web服务器的时候需要打开80端口,使用下面的命令打开80和443端口。
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload
如果是在测试机中,防火墙不是那么必要,就可以先关闭防火墙:
代码语言:javascript复制systemctl stop firewalls
systemctl disable firewalld
如果你觉得iptables
用的更顺手,可以使用yum install iptables-services
安装。
关闭selinux
代码语言:javascript复制vi /etc/selinux/config
#找到SELINUX=enforcing改为:
SELINUX=disabled
mariadb
mariadb是mysql的一个分支,使用它是因为mysql被sun收购后有闭源的风险。
安装:
代码语言:javascript复制yum -y install mariadb-server
vi /etc/my.cnf.d/server.cnf
#在13行添加
[mysqld]
character-set-server=utf8
#开启mysql
systemctl start mariadb
#开机自运行
systemctl enable mariadb
初始化工具:
代码语言:javascript复制mysql_secure_installation
登录:
代码语言:javascript复制mysql -u root -p
PHP
这个是重头戏哦!
安装
代码语言:javascript复制yum install -y php
配置PHP
代码语言:javascript复制vi /etc/php.ini
找到:
代码语言:javascript复制disable_functions =
修改为:
代码语言:javascript复制disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid, posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname
找到:
代码语言:javascript复制;date.timezone =
修改为:
代码语言:javascript复制date.timezone = PRC #设置时区
找到:
代码语言:javascript复制expose_php = On
修改为:
代码语言:javascript复制expose_php = Off #禁止显示php版本的信息
找到:
代码语言:javascript复制short_open_tag = Off
修改为:
代码语言:javascript复制short_open_tag = ON #支持php短标签
找到
代码语言:javascript复制opcache.enable=0
修改为
代码语言:javascript复制opcache.enable=1 #php支持opcode缓存
找到:
代码语言:javascript复制opcache.enable_cli=1 #php支持opcode缓存
修改为:
代码语言:javascript复制opcache.enable_cli=0
在最后一行添加
代码语言:javascript复制zend_extension=opcache.so #开启opcode缓存功能
重启服务器
代码语言:javascript复制systemctl restart httpd
测试phpinfo()
代码语言:javascript复制vi /var/www/html/phpinfo.php
#写入以下信息:
<?php
phpinfo();
?>
访问你的http://your_IP/phpinfo.php
,看是否出现以下页面
安装扩展库
这时的PHP只有最基础的功能,需要我们手动加上各种库以增强PHP功能
代码语言:javascript复制yum -y install php-mysql
yum -y install php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap curl curl-devel
# 接着重启服务器
systemctl restart httpd
其他
yum install lsof nmap
通过这次安装,能够发现centos7.0的这次更新略显激进,但是同时也反映出centos也受到足够的重视,所谓开发者和运维人员,需要不断的学习以适应不断变化的环境。同时,新技术的不断涌现也给我们带来了更多的安全隐患,这一点上也我们不能放松警惕!
部分参考:
http://www.jb51.net/os/188489.html
http://www.howtoforge.com/apache_php_mysql_on_centos_7_lamp
http://www.server-world.info/en/note?os=CentOS_7