yum install -y wget,net-tools
要最小化安装可以下载这个镜像
CentOS 7 x86_64 最小化安装镜像(2009版)Linux操作系统 - CSDN文库
https://wenku.csdn.net/doc/5hjyz6yh64
安装好虚拟机后
进入终端
ip addr 看输出信息 找到类似名字那一块,看看有没有 inet 后面跟着IP 地址
没有输入
vi /etc/sysconfig/network-scripts/ifcfg-ens33,
按键盘上的 i 键进入编辑模式,
把 ONBOOT=no 改成 ONBOOT=yes,按 Esc 键,输入 :wq 回车保存。然后输入
systemctl restart network 重启网络
通过 moba 连接 ,ssh检查网络
ping -c 4 www.baidu.com
配置 yum 源
备份旧的源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
下载阿里云的源 (卡住报错,多试试)
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
清理并生成新缓存
yum clean all
yum makecache
Cannot resolve host & Timeout 是网络“抖动”
可以输入 yum repolist 确认一下
看看能不能列出正常仓库信息 base,extras,updates 等后面跟着软件包数量,说明源配置完全成功|
安装所需软件
yum install -y wget net-tools vim
安装会出现一大堆 Downloading... Installing... 最后出现 Complete 成功
可以输入ifconfig 测试一下,能输入网络信息,说明 net-tools 安装成功,并且有了vim 编辑器
设置同步时间
使用timedatectlstatus 查看系统时间,时区,硬件状态
查看所有可用时区(很多图片截取部分)
timedatectl list-timezones
把时区设置成上海,再输入timedatectl 命令查看数据对照当前数据查看是否同步
其中
RTC in local TZ:no (RTC 是硬件时间)
如果后面重启时间可能变回了(UTC时间)
要让硬件时钟和本地数据保持一致
timedatectl set-local-rtc 1 --adjust-system-clock
执行完再输入 timedatectl 看一下,RTC in local TZ 变成 yes 就彻底稳了
为了防止一行时间跑偏,我们需要把手动同步列为开机自启
# 1. 安装 chrony(如果已经装了会提示已安装)
yum install -y chrony
# 2. 设置开机自启并立即启动
systemctl enable --now chronyd
# 3. 配置阿里云时间源
vi /etc/chrony.conf
进入
把光标移动到第 4、5、6 行(就是有 server 0.centos.pool.ntp.org iburst 的那三行)。
在这三行的最前面,各加一个英文井号 #
添加
server ntp.aliyun.com iburst
保存退出
重启服务并验证
# 1. 重启 chrony 服务,让刚才修改的配置生效
systemctl restart chronyd
# 2. 查看同步状态
chronyc sources -v
^+ ntp8.flashdance.cx:^+ 表示这个服务器是一个“备用”的时间源,可以作为参考,但它不是当前正在用的。
^* 203.107.6.88:这个就是阿里云的时间服务器! 前面的 ^* 符号是关键!* 号代表“当前正在同步的源”。
210 Number of sources = 2:说明系统找到了两个时间源。
^? 或者 ^x:如果你看到服务器前面是 ? 或者 x,那说明同步失败了(网络不通或服务器没响应),但你现在看到的是 ^* 和 ^+,这非常好。
回到你的虚拟机可能发现时间已经完全同步好,
👏完美
接下来
安装java环境
命令:yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel
验证:java -version 看到1.8.0 即可
JAVA_HOME 环境变量不急,后面统一配置
关闭防火墙和SELinux
为什么:HADOOP 集群内部通信需要开发大量端口(8020,9000等)
防火墙开展,节点间会互相连不上。测试环境一律关闭
命令:
# 1. 禁止防火墙开机自启
systemctl disable firewalld
# 2. 查看防火墙当前状态(应该显示 inactive (dead) 就是彻底关了)
systemctl status firewalld
disable 成功删除了开机自启的软链接
status 显示 Active:inactive(dead),并且后面卸载disabled 这代表防火墙已经彻底死透了,而且一行重启也不会自己醒过来
关闭 SELinux()安全子系统
vi /etc/selinux/config
按i 进入编辑模式 ,找到 SELINUX = enforcing 改成
SELINUX=disabled
这个改动需要重启系统生效,等下关机拍快照,所以现在不要重启
静态IP配置
现在的网路还是“自动获取(DHCP)”,如果你克隆出3台,进行搭建,它们的网络就会乱套(IP冲突或者网课名字改变)
你需要给这台机器固定一个IP(静态IP)根据自己虚拟机的网关j
可以确保你的虚拟机每次开机IP 地址都不变,这样你的主机,其他设备的连接就不会断掉
先在终端输入
vi /etc/sysconfig/network-scripts/ifcfg-ens33
按 i 编辑,修改/添加一下几行其余保持原样:
BOOTPROTO=static
IPADDR=192.168.213.100
NETMASK=255.255.255.0
GATEWAY=192.168.213.2
DNS1=114.114.114.114
保存退出后重启网络
systemctl restart network
这时候你如果使用外部工具mobaxterm,Xshell等,(这里以moba为例)
出现连接断开现象
1回到电脑的VMware 虚拟机确认IP
ip addr /ifconfig
如果你看到ens33 下面的地址变成了 192.168.213.1,说明成功
2 回到moba 软件界面
点击顶部菜单栏的 Seesions 或者直接看左侧的会话列表 Seesions 找到你刚才端口的那个连接
右键 该会话,选择 Edit session(编辑会话)
把里面的 Remote host 里的 IP 地址,改成你刚刚配置的静态 IP:10.15.7.100。
点击 OK 保存,然后双击该会话重新连接。输入密码进入
测试用下能不能正常上网
ping -c 3 www.baidu.com
现在它的左侧 User sessions 可能还叫10.15.7.117,你可以
右键点击左侧刚才连接成功的这个会话,
选择 Rename seesion
给它改个名字叫cenmaster 或者 My Linux
以后电脑里的机器多了,便于你认出哪台
我们还可以安装一些工具
yum install -y unzip zip tar lrzsz net-tools wget curl vim bash-completion
部分 | 含义 |
yum | CentOS 的软件包管理工具,类似手机应用商店 |
install | 安装软件 |
-y | 自动回答 yes,不用你手动确认 |
后面一串名字 | 要安装的具体工具包 |
包名 | 主要作用 |
unzip | 解压 .zip 压缩包 |
zip | 把文件打包压缩成 .zip |
tar | 处理 .tar、.tar.gz、.tgz 等压缩包 |
lrzsz | 提供 rz / sz,方便在终端里上传、下载文件 |
net-tools | 提供 ifconfig、netstat、route 等网络命令 |
wget | 从网络下载文件 |
curl | 发送网络请求,测试接口、下载文件都很常用 |
vim | 文本编辑器,用来改配置文件、写脚本 |
bash-completion | 增强 Tab 自动补全,比如命令、参数、文件名补全 |
Complete! 完成
怎么查看我安装的软件是否成功
1:看版本信息 --version
大多数软件都可以通过加 --version 或 -v 参数来打印自己的版本号,只要打印出来了,就说明装好了
wget --version |head -1
cur1 -- version | head -1
2:which 命令
which 会去系统的“工具盒”(环境变量PATH )里面找这个命令,找到了就显示它的绝对路径,找不到就提示 no .. in
which zip
which tar
which unzip
yum list installed lrzsz
更改主机名(部分方法)
先查看当前用户名
whoami (最直白,直接告诉你当前用户名,比如输出 root)
id (更详细,输出 uid=0(root) gid=0(root) ...,不仅能看名字,还能看权限 ID)
1 使用 hostnamectl 命令
临时
hostname 新主机名
永久
hostnamectl set-hostname 新主机名
2 修改配置文件
vim /etc/hostname
将文件内容更改为新的主机名
保存并关闭文件后,重启系统已使更改生效
reboot
现在需要创建一个普通用户,
因为以上我们的操作一直是root用户
影响 | 说明 | 现在学习阶段 |
误操作风险高 | root 下 rm、dd、chmod 等命令几乎不会被拦截 | 虚拟机里影响不大,但练习时要更小心 |
安全风险高 | 如果 root 密码泄露,攻击者直接拿到最高权限 | 本地学习问题不大;公网服务器必须改 |
权限边界混乱 | 所有操作都在 root 下,以后分不清哪些该谁做 | 以后做项目、部署服务时建议改 |
审计困难 | 多人共用 root,很难追溯谁改了什么 | 个人练习影响不大 |
初始化阶段用 root 没问题,后面要养成“普通用户+sudo”