关键词: linux centos ubuntu redhat 操作系统 2021 持续累积
环境
主机: win7
虚拟机: vmware 12
安装文件: CentOS-7.9-x86_64-DVD-2009.iso
输出路径: W:Virtual MachinesCentOS7
创建普通账户 hadoop
安装过程选择了 带桌面的服务器套件,选了一些软件装上去。
自带: jdk1.8
克隆了若干虚拟机,为后续具体用途使用
功能
安装jdk1.8 20210727
描述
系统安装完成,自带jdk1.8, 但是只有jre。后续操作需要全面的jdk, 需要卸载重装
操作
1. win环境下 从oracle 官网下载 jdk-8u301-linux-x64.tar.gz, 上传到linux 目录中
https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
2. 查看和卸载原来自带不想要的jdk
java -version # 查看java版本 rpm -qa | grep java # 查看安装的java包 rpm -qa | grep jdk sudo rpm -e --nodeps java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64 # 卸载 sudo rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.262.b10-1.el7.x86_64
3. 将下载的 jdk-8u301-linux-x64.tar.gz 解压,并移动到安装目录下, 我这里选定 /opt
tar -zxvf jdk-8u301-linux-x64.tar.gz mv jdk1.8.0_301 /opt
4. 修改环境变量
执行 sudo vi /etc/profile
在文件中添加以下内容:
### 配置jdk export JAVA_HOME=/opt/jdk1.8.0_301 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=./:$JAVA_HOME/jre/lib export PATH=$PATH:$JAVA_HOME/bin
执行 source /etc/profile 生效。
5. 最后验证完毕
参考
ref1 "centos7 安装JDK1.8详细过程"
关闭防火墙 20210725
描述
默认防火墙应该开了,会妨碍一些分布式集群比如hadoop 机器之间的通信。 需要关闭
操作
systemctl status firewalld #查看firewall服务状态 systemctl stop firewalld # 关闭防火墙 systemctl disable firewalld # 禁止开机启动
防火墙开启中
关闭后
为当前用户增加sudo功能和免密码输入 20210725
描述
当前用户为hadoop,是普通用户,有时需要通过sudo执行需要更多权限才能执行的操作。centos默认没有给普通用户sudo功能,需要手动添加
操作
主要参考 ref1 "centos7 ubuntu14 添加sudo 权限"
root账户 修改文件 /etc/sudoers,参考下图
1. 添加黄色背景的信息,其中hadoop是用户名。 这样hadoop有了sudo权限了
2. 用户有sudo权限,但是每次操作需要输入密码,很麻烦。 将红色箭头指示那行前面的注释符号#去掉(本来有的),
添加用户名到wheel用户组:
usermod -G wheel hadoop
:wq! 保存退出 就生效了
设置静态ip和主机名 20210724
描述
当前为动态获取ip,主机名是centos, 依据后面需要固定成指定的名字
操作
1. 先设置静态网络, root账户修改网络文件/etc/sysconfig/network-scripts/ifcfg-eth0 ,改动如下。 改完后,执行命令重启生效 service network restart
2. 修改主机名
参考 ref3 "CentOS7修改主机名的三种方法" , 执行以下操作
a. 执行命令改主机名 hostnamectl set-hostname hc2101, hc2101是新的主机名
b. root下修改hosts文件,添加新主机名字
c. 重启
后记: 只需要添加第3行就可以了
参考
ref1 "centos7设置静态IP地址"
ref2 "如何为CentOS 7配置静态IP地址的两种方法"
英文变中文和中文语言 20210724
描述
系统默认是英文系统, 所有提示都是英文的。
加入中文输入法,可以切换
操作
定位到路径 下 应用程序/系统工具/设置/Region & Language, 对应英文路径也好找
按图中红色标记设置好。 改系统语言,增加中文输入法
定位到路径 下 应用程序/系统工具/设置/设备/Keyboard
修改输入法切换快捷键,根据个人习惯设置就行了
参考
ref1 "Centos7设置中文输入法及解决方法"
ref2 "CentOS 7 无法使用中文输入法"
问题
Shell 命令用不了 20210728
现象:
修改/etc/profile后。 突然出现问题了。
可以开机, 但是无法登陆进去。
可以xshell 连接, 但是无法执行大部分shell命令
其他机器可以ssh 连上,但是无法执行大部分shell命令
如同所示
原因:
本来应该在/etc/profile 中 加入这行
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
但是直接从 博客园复制过来后(博客园美元符号有问题),变成了,美元符号不见了 (问题见 b0111 博客园日常使用遇到的/问题/Q1)
export PATH=PATH:HADOOP_HOME/bin:$HADOOP_HOME/sbin
导致整个shell都用不了
解决:
还是可以使用 echo ,export set 查看环境变量
1、 先在shell 界面执行 重置 PATH的值,其中后面的值, 从相似的其他机器上复制过来的。
echo $PATH # 注意看有没有设置错误,漏掉美元符号
echo $SHELL # 正常是 /bin/bash
export PATH=/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/jdk1.8.0_301/bin:/home/hadoop/.local/bin:/home/hadoop/bin
执行上面完,shell命令就可以正常执行了
2、 修改之前改动的 /etc/profile 文件
把错误的地方,没有美元$符号的加上去
执行 source /etc/profile 生效
调正系统日期 20210723
现象:
日期不对。
解决:
1. 校准时间: date -s "19:07:10 2021-07-23" # 这里的日期要校准的日期
2. 硬件层面同步 clock --systohc
忘记是否要重启
无法连接网络 20210721
现象:
虚拟机NAT网络设置,动态分配IP,其他虚拟机在这种模式下可以用。
本虚拟机刚安装完成, 但是本机无法ping通网络, 用ifconfig ,即没有ip地址,也没有mac地址。
在 /etc/sysconfig/network-scripts/ 下的是 ifcfg-ens33网卡
原因:
具体不详, centos7的网络和centos6有点不一样 。
网上说要把centos7下的 ifcfg-ens33改名为 ifcfg-eth0 (个人安装的ubuntu,centos6.5都不用这样操作 )
解决:
1 . 改网卡信息,先不要重启, 结果以本文图片输出参数为校准目标 参考 ref1 "vmware安装centos7 输入ifconfig出现ens33,没有eth0"
2. 搞定没有ip地址和hwaddr, 参考 ref2 "Centos7克隆虚拟机之后,不显示ip地址......"
确保 ifcfg-eth0文件中 有一行 "HWADDR=.....",没有就添加, 地址在ref2中 图片 生产Mac地址那
备注: 后续验证发现, 没有hwaddr也可以正常获得ip
3. 确保其他参数都和 本文 ifcfg-eth0 参数保持一致, 比如,onboot=yes,
其他参考
ref3 ”centos7中的网卡一致性命名规则、网卡重命名方法“
相关命令:
重建适配器 1.systemctl stop NetworkManager 2.systemctl disable NetworkManage service network restart # 重启网关
正常情况下:
最终可用的网络的配置参数如下
虚拟机设置NAT模式,vmware 自动分配ip
----
----
相关
- 关联代码, disk/202107_linux_centos7.txt
- 博客园 "b0103 vmware workstation 虚拟机 使用和维护”