Linux系统安装和网络配置
系统下载
系统下载地址:http://mirrors.aliyun.com/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1708.iso
https://opsx.alibaba.com/mirror#阿里云官方镜像站
只能下载最新版本,要下载往期版本可以使用http://vault.centos.org/ (在readme中找到)
安装系统
配置虚拟机网络
1、找到VMware的编辑----->虚拟网络编辑器---->
基本配置
基础软件
[root@oldboyedu-c7.4 ~]# yum -y install wget vim lrzsz bash-completion telnet nmap
关闭防火墙
[root@oldboyedu-c7.4 ~]# systemctl stop firewalld.service [root@oldboyedu-c7.4 ~]# systemctl disable firewalld.service [root@oldboyedu-c7.4 ~]# systemctl status firewalld.service
关闭 SElinux
[root@oldboyedu-c7.4 ~]# cat /etc/selinux/config # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=disabled # SELINUXTYPE= can take one of three two values: # targeted - Targeted processes are protected, # minimum - Modification of targeted policy. Only selected processes are protected. # mls - Multi Level Security protection. SELINUXTYPE=targeted [root@oldboyedu-c7.4 ~]# setenforce 0 [root@oldboyedu-c7.4 ~]# getenforce Permissive [root@oldboyedu-c7.4 ~]#
安装系统
系统下载地址:http://mirrors.aliyun.com/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1708.iso ---已失效
只能下载最新版本,要下载往期版本可以使用http://vault.centos.org/ (在readme中找到)
安装过程会比之前简单一点
创建虚拟机(磁盘选100G)
共创建两个网卡(一个NAT,一个LAN区段(172.16.1.0/24))
点击DVD驱动选择系统,开始虚拟机,开始安装
进入安装界面后,选择第一个,按Tab建,进行配置,多按几个空格,到第二行,
输入net.ifnames=0 biosdevname=0,使网卡名统一,自动变成eth0
NETWORK&HOST NAME
进入安装界面,一直往下拉,找到NETWORK&HOST NAME 如果有eth0和eth1就说明我们修改内核成功
选择eth0点击右下角的Configure进行配置
选择General,Automatically 打勾,表示on boot的意思
选择IPV4 settings ,Method选择Manual(手动的)
Addresses中添加10.0.0.201 24(Netmask) 10.0.0.254(Gateway)
DNS添加223.5.5.5
保存
选择eth1进行配置,选择General,Automatically 打勾,选择IPV4 settings ,Method选择Manual
Addresses中添加172.16.1.0 24
保存
然后在NETWORK&HOST NAME界面的最下面有一个 Host name 可以自定义输入,我这里输入Luffy_pizza
部署
LOCALIZATION
往上拉,在最上面有一个LOCALIZATION,选择时间,直接点击地图选择shanghai。
因为之后我们还要配置NTP服务,所以可以将NETWORK TIME关掉
点击左上角的DONE,完成
SOFTWARE
左边的系统所在位置保持默认,不用管,主要是配置右边的
SOFTWARE SELECTION
选择Minimal Install 然后选择前三个(调试、兼容、开发)
点击Done,完成
SYSTEM
第一个INSTALLATION DESTINATION配置把系统安在哪里,默认是自动的。
我们选择 i will configure partitioning
点击Done,下拉框选择Standar Partiton(标准分区)默认是LVM
点击+号,/boot给1个G(直接输入的1G在centos7中或者你要给内核升级,boot可以给的大一点)
可以看到,文件系统是xfs
swap分配1G(分配分区的时候,我们其实只给根目录分配也是可以的)
/分配根目录,不输入任何东西就是剩余多少给多少
点击Done,然后接受
KDUMP
系统挂的时候,把内存中的数据放在一个地方供你分析,
暂时没有用,关掉。把勾去掉就行
点击Done
NETWORK&hostname最开始就配置好了
SECURITY POLICY
OFF就OK了
全部都改完之后,点击开始安装
在安装的过程中,在上面有一个设置root用户密码,一个是设置普通用户
如果不设置,系统会等你...直接点击图标进行设置
设置了一个普通用户,给他勾选了超级管理员权限,猜一猜,这背后做了什么?
等待....安装完毕....点击Reboot
系统启动技术
我们发现Centos7 和 6的启动方式是不一样的,而且更快
之前的那种 叫串行,有一个卡住了,后面的就不运行了(详细见上图),使用pstree命令可以查看进程之间的关系
[root@Dao ~]# pstree init─┬─AliYunDun───16*[{AliYunDun}] ├─AliYunDunUpdate───3*[{AliYunDunUpdat}] ├─agetty ├─aliyun-service───5*[{aliyun-service}] ├─auditd───{auditd} ├─crond ├─dhclient ├─6*[mingetty] ├─nginx───nginx ├─ntpd ├─rsyslogd───3*[{rsyslogd}] ├─sshd───sshd───bash───pstree ├─udevd───2*[udevd] └─uwsgi3───4*[uwsgi3───{uwsgi3}] [root@Dao ~]#
systemd如何实现并发启动的
systemd是并行启动,因为每个任务或多或少都会有联系(比如一个任务需要网络,但是网络没有启动,nfs需要RPC服务),那么并行是怎么实现的呢?
见上图,
第一个原理:socket
第二个原理:D-bus 异步
第三个原理:优先启动要用的文件系统
开始登陆操作
很多软件都没有了
[root@Luffy-pizza ~]# vim 连vim都没有了 -bash: vim: command not found [root@Luffy-pizza ~]# wget -bash: wget: command not found
yum还是有的,如果真的选择的是最小化安装,什么都不会有的,
下面安装常用软件,见上图
[root@Luffy-pizza ~]# yum -y install wget vim lrzsz bash-completion telnet nmap
如果没有网,只能用光盘安装了
如何挂载光盘?首先要在虚拟机的光盘设置中选择---已连接
然后使用命令 mount /dev/cdrom /mnt/
cd /mnt/Packages/
rpm -ivh 各种软件,可能会出错,因为需要各种依赖包
bash-completion 是自动补全的软件,需要重新链接一下才能成效,使用tab键快速补全
关闭SELinux、防火墙(7里面的防火墙用firewall),做快照
[root@Luffy-pizza ~]# systemctl stop firewalld.service [root@Luffy-pizza ~]# systemctl status firewalld.service ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled) Active: inactive (dead) # Active 显示状态 # Loadded 里面的disabled是开机不启动 Docs: man:firewalld(1) Mar 12 03:47:19 Luffy-pizza systemd[1]: Starting firewalld - dynamic firewall daemon... Mar 12 03:47:24 Luffy-pizza systemd[1]: Started firewalld - dynamic firewall daemon. Mar 12 03:47:28 Luffy-pizza firewalld[906]: WARNING: ICMP type 'beyond-scope' is not sup...6. Mar 12 03:47:28 Luffy-pizza firewalld[906]: WARNING: beyond-scope: INVALID_ICMPTYPE: No ...e. Mar 12 03:47:28 Luffy-pizza firewalld[906]: WARNING: ICMP type 'failed-policy' is not su...6. Mar 12 03:47:28 Luffy-pizza firewalld[906]: WARNING: failed-policy: INVALID_ICMPTYPE: No...e. Mar 12 03:47:28 Luffy-pizza firewalld[906]: WARNING: ICMP type 'reject-route' is not sup...6. Mar 12 03:47:28 Luffy-pizza firewalld[906]: WARNING: reject-route: INVALID_ICMPTYPE: No ...e. Mar 12 05:14:18 Luffy-pizza systemd[1]: Stopping firewalld - dynamic firewall daemon... Mar 12 05:14:25 Luffy-pizza systemd[1]: Stopped firewalld - dynamic firewall daemon. Hint: Some lines were ellipsized, use -l to show in full.
systemctl disable firewalld.service 表示防火墙不要开机自启动
记得做快照
CentOS7主推使用ip、ss命令
CentOS6 ifconfig route -n /etc/sysconfig/network 修改主机名 setup (尽量不要用) netstat -lntup 或者 ss -lntup 看打开了哪些端口 关闭防火墙 /etc/init.d/iptables stop /etc/init.d/iptables status chkconfig iptables off 查看系统版本 cat /etc/redhat-release CentOS7 【CentOS7主推使用ip、ss命令】 ip a 查看 网卡配置 同ifconfig ip address ip address show eth0 ip a s eth0 ip route ip r /etc/hostname 修改主机名 hostnamectl set-hostname oldboy 临时加永久 nmtui:替代setup命令 ss -lntup 看打开了哪些端口 ss -ant 看服务器连接状态 关闭防火墙 systemctl stop firewalld.service systemctl disable firewalld.service systemctl status firewalld.service 查看系统版本 cat /etc/os-release
[root@Luffy-pizza ~]# ss -lntup 看打开了哪些端口 Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port tcp LISTEN 0 128 *:22 *:* users:(("sshd",pid=1308,fd=3)) tcp LISTEN 0 100 127.0.0.1:25 *:* users:(("master",pid=1473,fd=13)) tcp LISTEN 0 128 :::22 :::* users:(("sshd",pid=1308,fd=4)) tcp LISTEN 0 100 ::1:25 :::* users:(("master",pid=1473,fd=14)) [root@Luffy-pizza ~]# ss -ant 看服务器连接状态 State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 *:22 *:* LISTEN 0 100 127.0.0.1:25 *:* ESTAB 0 52 10.0.0.201:22 10.0.0.253:63802 ESTAB 0 0 10.0.0.201:22 10.0.0.253:63567 LISTEN 0 128 :::22 :::* LISTEN 0 100 ::1:25 :::*
一些文件
[root@Luffy-pizza ~]# uname Linux [root@Luffy-pizza ~]# uname -a Linux Luffy-pizza 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
自启动文件
需要给/etc/rc.local 添加自启动权限
[root@Luffy-pizza ~]# ll /etc/rc.d/rc.local -rw-r--r--. 1 root root 473 Aug 5 2017 /etc/rc.d/rc.local [root@Luffy-pizza ~]# chmod +x /etc/rc.d/rc.local
运行级别的叫法不同了,为了兼容,保留了两个
[root@Luffy-pizza ~]# cat /etc/inittab # inittab is no longer used when using systemd. # # ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM. # # Ctrl-Alt-Delete is handled by /usr/lib/systemd/system/ctrl-alt-del.target
其他运行级别在上面文件中 # systemd uses 'targets' instead of runlevels. By default, there are two main targets: # 两个 # multi-user.target: analogous to runlevel 3 多用户运行级别 # graphical.target: analogous to runlevel 5 # # To view current default target, run: # systemctl get-default 查看当前运行级别 # # To set a default target, run: # systemctl set-default TARGET.target 设置
使用tab键看了一下,有这么多、
[root@Luffy-pizza ~]# systemctl set-default basic.target local-fs-pre.target runlevel2.target bluetooth.target local-fs.target runlevel3.target cryptsetup-pre.target machines.target runlevel4.target cryptsetup.target multi-user.target runlevel5.target ctrl-alt-del.target network-online.target runlevel6.target default.target network-pre.target shutdown.target emergency.target network.target sigpwr.target final.target nss-lookup.target sleep.target getty.target nss-user-lookup.target slices.target graphical.target paths.target smartcard.target halt.target poweroff.target sockets.target hibernate.target printer.target sound.target hybrid-sleep.target reboot.target suspend.target initrd-fs.target remote-fs-pre.target swap.target initrd-root-fs.target remote-fs.target sysinit.target initrd-switch-root.target rescue.target system-update.target initrd.target rpcbind.target timers.target iprutils.target runlevel0.target time-sync.target kexec.target runlevel1.target umount.target
服务文件目录不一样了,见上图
7里面用***.service 代替了6里面的脚本文件(比如sshd.service代替了sshd)
使用方法也不一样了,见上图
还可以用is-active询问是否在启动,等等.见上图
[root@Luffy-pizza ~]# systemctl is-active crond.service active
在Centos7中,可以查看启动过程
systemd-analyze time
systemd-analyze blame 显示的详细
systemd-analyze plot > bootime.svg 详细结果导出
其他
01--自动化批量安装 02---NTP 03--PPTP VPN 04--Memcache 05--Zabbix全网监控 06--JAVA Tomcat 07--LVS转发型负载均衡 08--Git版本管理