Linux_day02
今日课程学习目标
1、掌握Linux用户、权限管理
2、掌握Linux常用系统命令
3、掌握服务器集群环境搭建
4、了解shell编程
今日课程内容大纲
# Linux用户与权限管理
用户、用户组及其管理
文件权限 rwx
su、sudo
# 系统信息
时间、日期
进程
磁盘使用情况、内存使用情况
#linux集群环境搭建 重中之重
集群、分布式---->多台机器
虚拟机克隆
服务器基础环境准备
1、防火墙关闭
2、主机名hostname修改
3、hosts主机名 IP映射
4、ssh免密登录
5、扩展:跳板机、堡垒机
6、集群时间同步
7、scp 跨集群复制文件
#Linux软件安装
rpm包
yum安装软件
#软件安装
JDK
MySQL
# shell编程
shell基本用法
机械硬盘: 550M --- 260M
混合硬盘: 1300M --- 700M
固态硬盘: 3300M --- 2000M
内存: 2666HZ -- CPU 32G 900元 16G 500元
硬盘: 2600M以上的 1T 500-600元 512G 300-400元
注意: 确定自己的电脑支持扩展 了解自己电脑的性能和cpu代数
一、Linux用户与权限
1.1、用户、用户组
用户是linux 操作服务器的最基本单位
用户组,是可以将不同的用户放置在一个用户组中,添加相同权限的集合
1.2、权限
w:写入权限
r:读取权限
x:可执行权限
-:没有权限
权限分为:u:属主权限 g:属组权限 0:其他用户权限
1.3、用户组、用户的管理
- 用户组管理
# 添加用户组
groupadd 用户组名
# 删除用户组
groupdel 用户组名
# 修改文件的属组
chgrp -g 组名 文件名或目录名
- 用户管理
# 添加用户
useradd 用户名称
# 给用户添加密码
passwd 用户名称
# 删除用户
userdel 用户名称
注意:查看用户组信息在 /etc/group
查看用户信息在/etc/passwd
- linux上root用户和非root用户区别
- 家目录位置不同
- 权限不同
1.4、su、sudo
-
su命令:用于用户之间的切换。
su 用户名 # root切换至普通用户,不需要密码 # 普通用户切换至root用户需要密码 # 普通用户间切换也需要密码
-
sudo
使用sudo暂时获得特殊权限,该权限使用时会给超级管理员发邮件 # 配置sudo命令可以使用的权限 visudo 用户名 ALL=(ALL) ALL 谁 在哪 什么命令 # 使用sudo命令需要输入自己的个人密码
1.5、修改文件的权限
- 关键字chmod
- 三种修改方式
- 使用加减符号进行权限修改
- chmod g+w a.txt
- 使用等号进行权限设定
- chmod u=rwx a.txt
- 使用数字进行权限设定
- chmod 640 a.txt
- 使用加减符号进行权限修改
二、Linux系统命令
-
时间、日期
date 查看当前时间日期 date +“日期格式” 输出指定格式的当前时间 date -s “日期” 将系统时间改为某个日期 ==(只有root权限可以修改)==
-
查看磁盘、内存信息
df 磁盘空间查看 free 查看内存空间
-
进程信息
ps -ef 查看全部活跃进程 ps aux 查看全部活跃进程 kill -9 杀死进程
-
linux完整命令参考资料
https://www.runoob.com/linux/linux-command-manual.html
https://man.linuxde.net/
三、大数据集群环境搭建
3.1、分布式、集群概念初识
-
分布式、集群
- 分布式:不同的业务分配到不同的服务器上
- 集群:同样的业务多台服务器同时执行
-
集群架构
-
主从架构
一台主机,多台从机
-
主备架构
一台主机,多台备用
-
3.2、集群环境搭建
3.2.1、虚拟机克隆
- 找到虚拟机,进行完整克隆
- 重新生成Mac地址
- 重新分配内存和核心
- 建议:主机 分配4G + 2个核心(最低配置)
- 从机:2G + 1个核心(最低配置)
3.2.2、修改IP、主机名
- vim /etc/sysconfig/network-scripts/ifcfg-ens33
- 修改IP地址为 192.168.88.161 192.168.88.162 192.168.88.163
- 重启网络服务:systemctl restart/start/stop/diable/enable network.service
- 修改主机名称 vim /etc/hostname
- 重启 reboot
3.2.3、主机名和IP映射配置
-
Vim /etc/hosts 找到主机地址映射文件 hosts
-
插入如下数据:
192.168.88.161 node1.itcast.cn node1 # 将ip地址映射为 主机名和 别名
192.168.88.162 node2.itcast.cn node2
192.168.88.163 node3.itcast.cn node3
-
-
在三台服务器上都进行绑定
3.2.4、防火墙关闭
-
firewalld
- 关闭防火墙:Systemctl stop firewalld.service
- 关闭防火墙开机自起:Systemctl disable firewalld.service
- 查看防火墙状态:Systemctl status firewalld.service
-
selinux
- vim /etc/selinux/config
- 修改selinux = disabled
3.2.5、集群机器间免密登录
- 在每一台服务器上生成公钥和私钥
- ssh-keygen
- 将公钥拷贝到其他服务器上
- ssh-copy-id node1 将当前服务器的公钥拷贝给node1服务器
- 当所有的服务器之间相互信任之后,可以免密登录
3.2.6、跨机器远程copy文件
- 将文件发送给其他服务器:scp 主机文件路径 远程主机ip:远程服务器文件路径
- 将其他服务器文件拷贝到主机 scp 远程主机ip:远程服务器文件路径 主机文件路径
3.2.7、集群的时间同步问题
# 使用外网时间进行校准
ntpdate ntp4.aliyun.com
四、Centos软件安装
4.1、rpm包管理器
rpm redhat软件包管理工具
-
本课程中软件安装目录规范
/export/server #软件安装目录 /export/software #安装包的目录 /export/data #软件运行数据保存的目录 /export/logs #软件运行日志 mkdir -p /export/server mkdir -p /export/software mkdir -p /export/data mkdir -p /export/logs
4.2、实操:基于rpm安装MySQL
- 根据文档进行安装,不要求记忆,安装一次即可
4.3、yum包管理器
- yum install 软件包名 安装软件
- yum remove 软件包名 删除软件
- yum update
4.5、JDK的安装
- 将安装包复制到服务器中(software)
- 将安装包解压到server文件夹中
- 配置环境变量 vim /etc/profile
- 刷新环境变量 source /etc/profile
- 检查是否安装成功: java -version