综合练习:

1.准备2台centos7系统的服务器,远程互相免密登录,以下所有题目过程中开启防火墙

2.给1号机和2号机使用光盘搭建本地yum源(永久生效)

3.给服务器1添加2块硬盘,1块1GB,1块2GB,使用这2块硬盘创建vg,包含pe100mb/块

4.使用上题vg创建2个1.2GB的lv,以xfs格式分别挂载到1号机/目录下的lvm1 lvm2上(永久生效)

5.将lvm2以nfs共享给2号机,挂载到2号机 /nfs 上(永久生效)

6.设置定时任务,每5分钟将/目录下所有文件名称写入到以"日期时间"命名的文件(时间精确到分钟),并保存到/lvm1中

7.在2号记上以/nfs为目录搭建ftp,用户名是 userftp2 密码 123 的非交互用户(1号机可以使用该用户登录)


配置新机过程:

1、检查环境(防火墙)

(1)    内核(selinux)防火墙:

[root@renyz08 ~]# getenforce

Disabled        #已关闭

[root@renyz08 ~]# vim /etc/sysconfig/selinux

SELINUX=disabled   #若没有关闭,修改该内容,重启(reboot)生效

(2)    网络(firewalld)防火墙:

[root@renyz08 ~]# systemctl status firewalld             #已开启

若没有开启,执行以下操作

[root@renyz08 ~]# systemctl start firewalld

[root@renyz08 ~]# systemctl enable firewalld

2、配置网卡

(1)修改配置文件

[root@renyz08 ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33

BOOTPROTO=static

NAME=ens33

DEVICE=ens33

ONBOOT=yes

IPADDR=192.168.11.3

NETMASK=255.255.255.0

GATEWAY=192.168.11.2

DNS1=8.8.8.8

DNS2=114.114.114.114

(2)查看ip信息

[root@renyz08 ~]# ip a

(3)    重启网卡

[root@renyz08 ~]# systemctl restart network

一、远程免密登录

1、生成密钥(1号机)

[root@renyz08 ~]# ssh-keygen -t rsa   #直接回车即可

Generating public/private rsa key pair.

Enter file in which to save the key (/root/.ssh/id_rsa):

Created directory '/root/.ssh'.

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /root/.ssh/id_rsa.

Your public key has been saved in /root/.ssh/id_rsa.pub.

The key fingerprint is:

SHA256:hBTW1CUcK6xcVRaKMJS+ketv+WgigZj8dwi+dvyU0bM root@renyz08

2、修改配置文件(1号机)

[root@renyz08 ~]# vim /etc/ssh/sshd_config

PasswordAuthentication no           #取消密码登录

3、挂锁(修改公钥文件名和配置文件中的一致)(1号机)

[root@renyz08 ~]# cd .ssh

[root@renyz08 .ssh]# ls

id_rsa  id_rsa.pub

[root@renyz08 .ssh]# cp id_rsa.pub authorized_keys

4、下载密钥(登录使用,非常重要)(1号机)

[root@renyz08 .ssh]# sz id_rsa

5、重启服务,免密登陆

[root@renyz08 ~]# systemctl restart sshd

6、复制公钥密钥至2号机

[root@renyz08 ~]# scp -r .ssh 192.168.11.4:/root/

7、远程连接2号机,修改配置文件(取消密码登录)

[root@renyz08 ~]# ssh 192.168.11.4

Last login: Sat Jul 27 09:06:51 2019 from 192.168.11.1

[root@renyz09 ~]# ls -a

.   anaconda-ks.cfg  .bash_logout   .bashrc  .ssh     .viminfo

..  .bash_history    .bash_profile  .cshrc   .tcshrc

[root@renyz09 .ssh]# ls

authorized_keys  id_rsa  id_rsa.pub  known_hosts

[root@renyz09 .ssh]# vim /etc/ssh/sshd_config

PasswordAuthentication no

8、重启服务,免密登录

[root@renyz09 .ssh]# systemctl restart sshd

9、修改主机名

[root@ren3 ~]# echo "ren3" > /etc/hostname     #修改主机名

[root@renyz08 ~]# vim /etc/hosts         #远程连接时使用

192.168.11.3    ren3

192.168.11.4    ren4

二、搭建本地yum

1、挂载光盘

mkdir /local_dvd

mount /dev/cdrom /local_dvd/

2、删除初始源

rm -rf /etc/yum.repos.d/*

3、创建本地源

touch /etc/yum,repos.d/local.repo

vim /etc/yum.repos.d/local.repo

[local]

name=local

baseurl=file:///local_dvd

enabled=1

gpgcheck=0

yum clean all             #清楚缓存

yum makecache         #创建缓存

4、开机自动挂载

echo "/dev/sr0 /local_dvd iso9660 defaults        0 0" >> /etc/fstab

三、动态添加2块硬盘

1、在虚拟机上添加两块硬盘

2、动态添加硬盘

[root@ren3 scsi_host]# fdisk -l            #查看磁盘信息

[root@ren3 ~]# cd /sys/class/scsi_host/

[root@ren3 scsi_host]# ls  #查看主机文件

host0  host1  host2

[root@ren3 scsi_host]# echo "- - -" > host0/scan   #重新扫描磁盘信息

[root@ren3 scsi_host]# echo "- - -" > host1/scan

[root@ren3 scsi_host]# echo "- - -" > host2/scan

[root@ren3 scsi_host]# fdisk -l  #再次查看磁盘信息

四、制作lvm逻辑卷

[root@ren3 ~]# pvcreate /dev/sd{b,c}1      #创建物理卷

Physical volume "/dev/sdb1" successfully created.

Physical volume "/dev/sdc1" successfully created.

[root@ren3 ~]# vgcreate vg_ren -s 100M /dev/sd{b,c}1 #创建卷组,-s指定PE大小

Volume group "vg_ren" successfully created

[root@ren3 ~]# lvcreate -L 1.2G -n lv_ren1 vg_ren        #创建逻辑卷1

Rounding up size to full physical extent <1.27 GiB

Logical volume "lv_ren1" created.

[root@ren3 ~]# lvcreate -L 1.2G -n lv_ren2 vg_ren        #创建逻辑卷2

Rounding up size to full physical extent <1.27 GiB

Logical volume "lv_ren2" created.

[root@ren3 ~]# lvdisplay  #查看逻辑卷信息

[root@ren3 ~]# mkdir /lvm1 /lvm2      #创建挂载点

[root@ren3 ~]# mkfs.xfs /dev/vg_ren/lv_ren1   #格式化逻辑卷1

[root@ren3 ~]# mkfs.xfs /dev/vg_ren/lv_ren2   #格式化逻辑卷2

[root@ren3 ~]# mount /dev/vg_ren/lv_ren1 /lvm1   #挂载逻辑卷1

[root@ren3 ~]# mount /dev/vg_ren/lv_ren2 /lvm2   #挂载逻辑卷2

[root@ren3 ~]# mount     #查看挂载信息

[root@ren3 ~]# vim /etc/fstab               #添加自动挂载

/dev/mapper/vg_ren-lv_ren1  /lvm1  xfs defaults        0 0

/dev/mapper/vg_ren-lv_ren2  /lvm2  xfs defaults        0 0

五、搭建nfs

[root@ren3 ~]# yum -y install nfs-*     #下载nfs

[root@ren3 ~]# systemctl status rpcbind     #查看rpcbind状态

[root@ren3 ~]# systemctl restart rpcbind    #开启rpcbind

[root@ren3 ~]# systemctl enable rpcbind   #开机自启rpcbind

[root@ren3 ~]# vim /etc/exports    #配置nfs配置文件

/lvm2   192.168.11.4/32(rw)

[root@ren3 ~]# systemctl restart nfs    #重启nfs

[root@ren3 ~]# systemctl enable nfs  #开机自启

[root@ren3 ~]# firewall-cmd --add-service=nfs               #开启nfs防火墙

success

[root@ren3 ~]# firewall-cmd --add-service=nfs –permanent         #永久开启

success

[root@ren4 ~]# yum -y install nfs-*     #2号机下载nfs

[root@ren4 ~]# systemctl restart nfs

[root@ren4 ~]# systemctl enable nfs

[root@ren4 ~]# systemctl restart rpcbind

[root@ren4 ~]# systemctl enable rpcbind

[root@ren4 ~]# mkdir /nfs      #创建挂载点

[root@ren4 ~]# mount -t nfs ren3:/lvm2 /nfs     #挂载

[root@ren4 ~]# mount     #查看挂载信息

[root@ren4 ~]# vim /etc/fstab      #开机自动挂载

ren3:/lvm2  /nfs  nfs4 defaults        0 0

六、设置定时任务

[root@ren3 ~]# ls / > `date "+%m-%d_%H-%M"`   #测试命令正确性

[root@ren3 ~]# ls

07-27_12-31  anaconda-ks.cfg  test

[root@ren3 ~]# crontab -e      #设置定时任务

*/5 * * * * ls / > /lvm1/`date "+\%m-\%d_\%H-\%M"`

七、搭建ftp

[root@ren4 ~]# yum -y install vsftpd   #2号机下载vsftpd服务

[root@ren4 ~]# vim /etc/vsftpd/vsftpd.conf        #配置文件

anonymous_enable=NO

[root@ren4 ~]# systemctl restart vsftpd      #重启服务

[root@ren4 ~]# useradd -d /nfs -s /sbin/nologin userftp2       #创建用户

useradd:警告:此主目录已经存在。

不从 skel 目录里向其中复制任何文件。

[root@ren4 ~]# passwd userftp2    #给用户增加密码

[root@ren4 ~]# firewall-cmd --add-service=ftp        #开启ftp防火墙

success

[root@ren4 ~]# firewall-cmd --add-service=ftp –permanent  #永久开启防火墙

Success

[root@ren4 ~]# systemctl enable vsftpd             #开机自启服务

[root@ren3 ~]# yum -y install ftp #1号机下载ftp

[root@ren3 ~]# ftp ren4 #连接2号机

Connected to ren4 (192.168.11.4).

220 (vsFTPd 3.0.2)

Name (ren4:root): userftp2

331 Please specify the password.

Password:

530 Login incorrect.

Login failed.       #登录失败

[root@ren4 ~]# vim /etc/pam.d/vsftpd         #更改配置文件

# auth       required   pam_shells.so           #注释该行

Name (ren4:root): userftp2

331 Please specify the password.

Password:

230 Login successful.              #登录成功

Linux进阶之综合练习的更多相关文章

  1. 大数据学习之Linux进阶02

    大数据学习之Linux进阶 1-> 配置IP 1)修改配置文件 vi /sysconfig/network-scripts/ifcfg-eno16777736 2)注释掉dhcp #BOOTPR ...

  2. Linux进阶指令(重点)

    三.Linux进阶指令(重点) 1.df指令    作用:查看磁盘的空间 #df -h 选项:-h    表示以可读性较高的形式展示大小 2.free指令     作用:查看内存使用情况 #free ...

  3. linux内核分析综合总结

    linux内核分析综合总结 zl + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 Linux内核分析 ...

  4. linux进阶与hadoop

    Linux进阶命令: find .  | ls --help | more  grep ll | grep 1.txt   grep -ri  BASH 1.txt   grep -ri BASH   ...

  5. 【Linux进阶】使用grep、find、sed以及awk进行文本操作

    目录 一.元字符 二.grep命令 1. 过滤出包含某字符串的行 2. 过滤出以某字符串开头(结尾)的行 3. 过滤出包含某字符串及其相邻的行 4. 过滤出不包含某关键字的行 5. 过滤出包含多个字符 ...

  6. linux 进阶命令

    进阶命令 1    df指令   查看磁盘的空间 # df -h    -h表示可读性更高,方便读取 执行指令后(Filesystem:磁盘名称  size:磁盘总大小  Used: 被使用的大小  ...

  7. Linux基础(05)、Linux进阶命令

    目录 一.进阶命令 二.系统命令 三.压缩和归档 3.1.归档 3.2.压缩 3.3.归档并压缩 归档.接档:tar -cf.tar -tvf 压缩.解压:gzip.gunzip 归档并压缩:tar ...

  8. Linux进阶文档丨阿里架构师十年Linux心得,全在这份文档里面

    Linux是什么 Linux就是个操作系统: 它和Windows XP.Windows 7.Windows 10什么的一样就是一个操作系统而已! Linux能干什么: 它能当服务器,服务器上安装者各种 ...

  9. Linux网络编程综合运用之MiniFtp实现(一)

    春节过后,万物复苏,在这元宵佳节的前一天,决定继续开启新年的学习计划,生命在于运动,提高源于学习,在经过漫长的Linux网络编程学习后,接下来会以一个综合的小项目来将所学的知识点综合运用,首先是对项目 ...

随机推荐

  1. BUAA_OO_2020_第三单元总结

    BUAA_OO_2020_第三单元总结 JML理论基础 简介 JML(Java Modeling Language)是一种用于对JAVA程序进行规格化设计的语言,其通过定义接口所包含方法的行为,来约束 ...

  2. Go+gRPC-Gateway(V2) 微服务实战,小程序登录鉴权服务(四):客户端强类型约束,自动生成 API TS 类型定义

    系列 云原生 API 网关,gRPC-Gateway V2 初探 Go + gRPC-Gateway(V2) 构建微服务实战系列,小程序登录鉴权服务:第一篇 Go + gRPC-Gateway(V2) ...

  3. Vulkan移植GpuImage(三)从A到C的滤镜

    前面移植了几个比较复杂的效果后,算是确认了复杂滤镜不会对框架造成比较大的改动,开始从头移植,现已把A到C的所有滤镜用vulkan的ComputeShader实现了,讲一些其中实现的过程. Averag ...

  4. ForkJoinPool的工作原理和使用

    场景:当任务很多,成千上万个,或者单个任务很大,执行起来很耗时间,这时,就可以把任务进行拆分,拆分成多个小任务去执行,然后小任务执行完毕后再把每个小任务执行的结果合并起来,这样就可以节省时间. For ...

  5. nodejs安装cnpm、nrm、webpack

    nodejs更换npm默认安装路径 查看包路径 npm config ls NPM默认的管理包路径在C:/用户/[用户名]/AppData/Roming/npm/node_modules,为了方便对依 ...

  6. Python基础之容易忘记的地方

    (1)编译型与解释型语言区别: 编译型:一次性,把所有代码编译成机器能识别的二进制码,再运行 代表语言:c,c++ 优点: 执行速度块 缺点: 开发速度慢,调试周期长 解释型:代码从上到下一行一行解释 ...

  7. 多指灵巧手MoveIt!与Gazebo联合仿真框架搭建

    至于为什么叫框架,一是因为灵巧手的3维模型没有按照基本的设计要求画,正常来说,设计机器人机构之前应该设计好机构需要多少个自由度/DOF,每个自由度是旋转/revolute类型还是滑移/prismati ...

  8. 转载:Windows使用tail -f 监控文件

    https://www.cnblogs.com/my-bambi/p/11793770.html

  9. 动态地绑定到它的 is 特性,可以实现动态组件

    前面的话 让多个组件使用同一个挂载点,并动态切换,这就是动态组件.本文将详细介绍Vue动态组件 概述 通过使用保留的 <component> 元素,动态地绑定到它的 is 特性,可以实现动 ...

  10. nginx添加module之threads

    一.安装nginx yum安装nginx 折叠源码 1 2 3 4 5 6 7 8 9 10 11 12 # 添加nginx源 rpm -ivh http://nginx.org/packages/c ...