在学习搭建hadoop集群的过程中,我发现在Linux方面还有许多命令我并没有掌握,特此补充相关的知识点以及CentOS7的新特性。

主机名

  1. 查看当前主机名
    hostname
  2. 修改主机名(重启后失效)
    hostname XXX
  3. 修改主机名(永久修改)
    vi /etc/sysconfig/network
    添加:
    NETWORKING=yes
    HOSTNAME=XXX

IP地址

  1. 查看当前IP地址
    ifconfig
  2. 修改IP地址(重启后失效)
    ifconfig ens33 192.168.113.150
  3. 修改IP地址(永久修改)
    vi /etc/sysconfig/network-scripts/ifcfg-ens33
    添加或修改:
    DEVICE=eth0
    TYPE=Ethernet
    ONBOOT=yes #是否开机启用
    BOOTPROTO=static #ip地址设置为静态
    IPADDR=192.168.113.150
    GATEWAY=192.168.113.2
    NETMASK=255.255.255.0
    可删除UUID=”01d193e8-cac6-4656-8e7e-ac176b9d7c3d”
    重启服务
    service network restart
  4. 修改IP地址和主机名的映射关系
    vi /etc/hosts
    添加:
    192.168.113.150 hadoop1

yum

YUM(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

  1. 常用指令
    • 安装xxx软件:yum install -y xxx
    • 列出所有可用的package和package组:yum list
    • 列出一个包所有依赖的包:yum deplist xxx
    • 删除xxx软件:yum remove xxx
    • 显示所有仓库:yum repolist all
    • 显示可用仓库:yum repolist enabled
    • 按关键字查找包:yum list | grep xxx
    • 清楚本地缓存:yum clean all
  2. 配置网络版yum仓库
    • 在主机上配置自动挂载
      • 创建挂载目录:mkdir /mnt/cdrom
      • vi /etc/fstab
      • 添加:/dev/cdrom /mnt/cdrom iso9660 defaults 0 0
    • 启动httpd服务:systemctl start httpd.service
    • 进入http服务器:cd /var/www/html
    • 创建一个链接:ln -s /mnt/cdrom ./centos7
    • 进入yum仓库:cd /etc/yum.repos.d
    • 随便复制一份文件:cp CentOS-Media.repo CentOS-hadoop1.repo
    • 重命名备份其他文件:rename .repo .repo.bak *
    • 修改该配置文件:vi CentOS-hadoop1.repo
    • 查看是否生效:yum repolist
    • 最后去各个客户端配置这个http地址到CentOS-Media.repo配置文件中
    • 重命名备份其他仓库
  3. 注意事项
    使用前必须要启动httpd服务!!!!!!!!

挂载

挂载外部存储设备到文件系统中

mount

  1. 创建一个目录用来挂载
    mkdir /mnt/cdrom
  2. 将设备/dev/cdrom挂载到挂载点/mnt/cdrom中
    mount -t iso9660 -o ro /dev/cdrom /mnt/cdrom/

umount

  1. 移除挂载
    umount /mnt/cdrom

统计文件或文件夹大小

  1. 统计文件大小
    du -sh /mnt/cdrom/Packages
  2. 查看磁盘的空间
    df -h

ssh和scp

ssh

  1. 用户名密码登录
    ssh root@192.168.113.151
    输入密码
  2. 免密登录
    ssh root@192.168.113.151
  3. 配置免密登录(A登录B)
    • 在A上生成密钥对:ssh-keygen
    • 回车确认
    • 将A自己的公钥拷贝并追加到B的授权列表文件authorized_keys中:ssh-copy-id B

scp

  1. 从本机发送文件到指定主机
    scp xxx root@192.168.113.151:/XXX

后台服务

后台服务管理

  1. 查看指定服务状态
    service network status
  2. 停止指定服务
    service network stop
  3. 启动指定服务
    service network start
  4. 重启指定服务
    service network restart
  5. 查看系统中所有的后台服务
    service –status-all

防火墙

  1. 关闭防火墙
    systemctl stop firewalld.service
  2. 禁止开机启动防火墙
    systemctl disable firewalld.service
  3. 开启/重启防火墙
    systemctl start firewalld.service
    firewall-cmd –reload
  4. 开放指定端口
    firewall-cmd –zone=public –add-port=80/tcp –permanent
  5. 查看防火墙状态
    firewall-cmd –state
  6. 其他常用操作
    firewall-cmd –get-zones 列出支持的zone
    firewall-cmd –get-services 列出支持的服务,在列表中的服务是放行的
    firewall-cmd –query-service ftp 查看ftp服务是否支持,返回yes或者no
    firewall-cmd –add-service=ftp 临时开放ftp服务
    firewall-cmd –add-service=ftp –permanent 永久开放ftp服务
    firewall-cmd –remove-service=ftp –permanent 永久移除ftp服务

后台服务的自启配置

  1. 查看所有服务自启配置
    chkconfig
  2. 关掉指定服务的自启动
    chkconfig iptables off
  3. 开启指定服务的自动启动
    chkconfig iptables on

常用命令

  1. 执行Shell脚本
    • 在当前bash:. ./xxx.sh
    • sh xxx.sh

常见问题

  1. 修改静态地址后发现无法ping外网
    需要设置网关
    vi /etc/sysconfig/network-scripts/ifcfg-ens33
    添加网关
    GATEWAY=192.168.113.2
    设置为默认网关
    route add default gw 192.168.113.2
    添加到配置文件
    vi /etc/resolv.conf
    添加
    nameserver 192.168.113.2

最后更新: 2020年07月27日 03:43

原始链接: https://www.lousenjay.top/2018/08/08/Linux学习笔记(CentOS7)/