源码包的安装和SSH的免密登录

一、源码包安装
提供的源代码,需要我们自己编译。
优点:比较灵活,自己定义安装目录,自定义安装模块
缺点:安装麻烦,一旦出错,错误较难解决
一)编译
1.解压安装包到/usr/local目录下 tar -zxvf /redis-2.6.16.tar.gz -C /usr/local
2.进入到redis的目录中 cd /usr/local/redis-2.6.16
3.在这路径下(/usr/local/redis-2.6.16)make(编译)
4.报错:缺少gcc
5.安装gcc yum -y install gcc
6.make 还是报错
7.: error: jemalloc/jemalloc.h: No such file or directory
error: #error “Newer version of jemalloc required”
8.make MALLOC=libc (等号前后不能有空格)
二)安装
9.按装redis,指定安装目录 /usr/local/redis
10.make PREFIX=/usr/local/redis install
11.拷贝 配置文件到安装目录 cp /usr/local/redis-2.6.16/redis.conf /usr/local/redis
12.启动redis
cd /usr/local/redis(进入该目录)
bin/redis-server redis.conf

二、二进制软件包的安装
1.以 tar.gz tar.bz2 等结尾的安装包
2.安装比较简单直接解压即可 tar -zxvf 软件包 -C 安装目录
3.有的二进制软件包需要执行安装文件
优点:安装简单
缺点:软件需要跟平台匹配

数据处理,是大数据分析的一块内容,数据量小
高级文本处理命令
cut: 一个选取命令,将一段数据经过分析,取出我们想要的数据。一般来说,选取的信息通尝试针对分析进行的
并不是取整篇数据进行分析
cut的语法格式
cut [-nb] [file]
cut [-c] [file]
cut [-df] [file]
使用说明:
cut命令从文件中每一行剪切字节,字符,字段并将字节、字符和字段输出到标准输出
如果不指定file,cut命令读取标准输入
必须指定 -b -c 或者 -f 标志之一

选项的意义:
-d :自定义分割符,默认是制表符。与-f 一起使用
-f :依据-d分割字段将一段信息分割成多个字段,-f表示取出第几个字段的意思
-c :以字符为单位取出固定的字符区间
-b :以字节为单位取出固定的字节取件,这些字节位置将忽略多字节边界。除非与-n标准一起使用
-n:表示取消分割多字节字符。只与-b一起使用。如果字符的最后一个字节落在-b标志的参数范围内,那就会取出
否则,将抛弃该字节字符
cut使用接收三种方式
cut -b 字节
cut -c 字符
cut -f 字段(fileds)

练习:
-b
取出每行的第3个字节
who | cut -b 3
取出每行的第3-5,8个字节
who | cut -b 3-5,8

who | cut -b 8,3-5
注意:cut命令如果使用-b选项,执行命令时,会先把-b 后面的参数进行排序,然后取出数据,顺序不会颠倒

who | cut -b 3-

who | cut -b -3

who | cut -b -3,3-

1.txt的数据

星期一
星期二
星期三
星期四
星期五

星期六

cut -b 3-5 1.txt ##乱码
cut -nb 3-5 1.txt ##取出“星” 3是星的最后一个字节位置,落在了参数范围内,所以将星取出

cut -c 1-3 1.txt ##取出星期一

cut -d ‘:’ -f 1

cat /etc/passwd | cut -d ‘:’ -f 1,7

cat /etc/passwd | cut -d ‘:’ -f 1-3

取出所有用户及用户的id
cat /etc/passwd | cut -d ‘:’ -f 1,3

注意:分割符只能是一个字符,或者空格,如果分割符是多个字符或者字节,cut无效
如:a::b::c::d

cut的缺陷和不足
处理多分割符的数据时,cut不支持。只支持单字符的分割。

取出/etc/passwd 下的第3个,5个,7个字段
取出/etc/passwd 下的第2个到最后一个字节
取出/etc/passwd 下的开始到第12个字符

编辑一个中文文件

1.txt的数据

星期一
星期二
星期三
星期四
星期五

星期六

用cut -b 取出第三个字节
用cut -nb 取出第三个字节到第个字节
用cut -c 取出第三个字符

下午
软件包
局域网yum源是可用的

二进制的软件安装
优点:安装简单,只要解压即可(有一些需要执行可执行文件)
缺点:软件需要跟平台匹配
两种类型:
第一种:解压直接可用使用
第二种:解压后需要执行可执行文件

在虚拟机根目录下创建bigdata #mkdir /bigdata /app
上传jdk到虚拟机/bigdata
tar -zxvf /bigdata/jdk-8u60-linux-x64.gz -C /app (解压文件并重定向到/app.这个过程就相当于安装)
配置环境变量
vi /etc/profile
定位到文件末尾
加入

export JAVA_HOME=/app/jdk1.8.0_60/ ##相当于windows下配置JDK声明java_home
export PATH= PATH: P A T H : JAVA_HOME/bin ##将java_home 加入环境变量中 PATH: P A T H : 获 取 原 来 的 环 境 变 量 相当于动态获取

rpm的安装
优点:安装简单,在安装的时候rpm会记录软件包的安装位置,方便卸载。整个安装过程知识验证环境和解压的过程
缺点:对操作系统依赖性大,软件包的相互依赖

安装示例:
1.上传mysql软件包 /bigdata
2.解压软件包
tar -xvf /bigdata/MySQL-5.6.26-1.linux_glibc2.5.x86_64.rpm-bundle.tar -C /bigdata
3、安装
先安装sever版
rpm -ivh MySQL-server-5.6.26-1.linux_glibc2.5.x86_64.rpm
错误:
error: Failed dependencies:
/usr/bin/perl is needed by MySQL-server-5.6.26-1.linux_glibc2.5.x86_64
libaio.so.1()(64bit) is needed by MySQL-server-5.6.26-1.linux_glibc2.5.x86_64
缺少依赖:
yum list | grep libaio
yum -y install libaio.x86_64

error: Failed dependencies:
/usr/bin/perl is needed by MySQL-server-5.6.26-1.linux_glibc2.5.x86_64

yum list | grep perl
yum -y install perl.x86_64

包冲突:需要卸载以下包:
mysql-libs-5.1.73-5.el6_6.x86_64

rpm -e mysql-libs-5.1.73-5.el6_6.x86_64 –nodeps

继续安装server端
rpm -ivh MySQL-server-5.6.26-1.linux_glibc2.5.x86_64.rpm
再安装客户端
rpm -ivh MySQL-client-5.6.26-1.linux_glibc2.5.x86_64.rpm

rpm 的使用
安装
rpm -ivh +全包名
i 安装
v 显示详细信息
h 显示进度

rpm -qa 查询所有rpm的安装包

rpm -e 卸载软件包
如果报依赖错误

rpm -e –nodeps +软件包

rpm软件包名字分为5部分
软件名字 发行版本 发行次数 对应平台 .rpm标识
nc- 1.84- 22. el6.x86_64 .rpm

noarch:代表适应所有硬件平台
nginx-release-centos-6-0.el6.ngx.noarch.rpm

依赖关系:安装顺序和 卸载顺序正好相反
D –>C—>B—>E

SSH免密码登录
SSH:一种通讯协议,一种安全的通讯协议
openssh:ssh的远程安全登录的开源实现

首先安装ssh客户端
yum list | grep ssh
yum -y install openssh-clients.x86_64

ssh hdp01 #想通过ssh登录到hdp01

指纹的验证

The authenticity of host ‘hdp01 (192.168.137.3)’ can’t be established.
RSA key fingerprint is fa:96:91:5d:45:0c:e5:f3:eb:15:e6:94:9f:89:4a:bd.

Are you sure you want to continue connecting (yes/no)?

免密码登录的严格的对应关系:user12@hdp01 ====>user0@hdp02
基于秘钥的免密码登录
1.在hdp02上生成一对秘钥对(公钥和私钥)
ssh-keygen -t rsa -P ” -f ~/.ssh/id_rsa
-t 表示使用哪儿种加密方式,-P(大写)
2.将公钥拷贝hdp01的家目录下的.ssh文件下(一个命令就解决了)
ssh-copy-id root@hdp01

1.crontab配置
通过crontab命令,我们可以在固定时间间隔执行指定的系统命令或shell script脚本
时间间隔以分钟,小时,日,月,周以上的任意组合。这个命令非常适合周期性的日志分析或
数据备份工作
2.安装crontab
yum install crontabs

操作说明:
service crond start
service crond stop
service crond status
service crond reload
service crond restart

3.命令格式
crontab [-u user] file
crontab [-u user] [-e -l -r -i]

-u user:用来设定某个用户的crontab服务,此参数一般由root用户来运行

file:file是命令文件的名字,表示将file作为crontab的任务列表文件载入crontab

-e :编辑某个用户的crontab文件,如果不指定,表示编辑当前用户
-l : 显示某个用户的crontab文件内容,如果不指定,表示显示的是当前用户的
-r : 删除定时任务配置,如果不指定用户,表示删除当前用户的
-i : 在删除用户crontab文件时给确认提示

crontab -u user0 1.txt

vi 1.txt

/1 * * * date >> data.txt

        • *
          分 时 日 月 周 command

第一列表示分钟1~59 每分钟用*/1表示
第二列表示小时0~23(0表示0点)7-9 表示7点到9点直接
第三列表示日期1~31
第四列表示月份1~12
第五列表示星期0~6(0表示星期天)
第六列表示要运行的命令

每天21:30启动httpd服务
30 21 * * * /usr/sbin/httpd start

每个月的1、10、22日的4:45分启动httpd服务
45 4 1,10,22 * * /usr/sbin/httpd start

每周六周日的1:10开启服务
10 1 * * 6,0 /usr/sbin/httpd start

10-20之间每隔30分钟启动一次服务
0,30 10—20 * * * /usr/sbin/httpd start

周五23:00启动服务
0 23 * * 5 /usr/sbin/httpd start

23:00-5:00每隔一小时启动服务
* 23-5/1 * * * /usr/sbin/httpd start

每月的4号与每周一到周三的11:00启动服务
0 11 4 * mon-wed /usr/sbin/httpd start

1月1号4:00启动
0 4 1 jan * /usr/sbin/httpd start

远程拷贝命令
1.远程拷贝文件
scp /etc/passwd root@hdp01:/passwd.bak #当前用户以root的身份登录到hdp01
将hdp02的/etc/passwd 拷贝到hdp01的根目录下并改名为passwd.bak
2.远程拷贝目录
scp -r /bin root@hdp01:/home/bin.bak
将本机的文件/bin 拷贝给hdp01.拷贝到/home并改了个名字 bin.bak

3.下载文件到本地
scp root@hdp01:/etc/profile ./profile.bak.bak
4.下载目录到本地
scp -r root@hdp01:/home ./home.bak

将局域网yum源分发给另外两台机器(另外两台机器已经安装openssh客户端)
保存在另外机器的/etc/yum.repos.d/

配置三台机器可以相互免密码登录,并且每台机器可以免密码登录到自身

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值