大数据学习02之Linux基础配置和操作

接01文件系统

Linux 命令在线查询:https://www.linuxcool.com/

( 补充文件指令:  

         cat :cat:监听输入,结束输入后打印输入内容

                  cat profile.txt:读取文件内容,

                将整个文档加载到内存中,并进行一次性显示

                除非后面使用管道,传递数据

        more   less : 分页查看文档 ,适用内容文档内容太多时

        tail:查看文档末尾数据

                 tail -5 profile.txt 查看 profile文本文件末尾五行内容

        | : 管道符

                tail -5 profile.txt | head -2 查看profile文本文件末尾五行的前两行内容

        head:     从文章开始读取N行e

                         默认如果超过10行读取10行,否则读取现在行数

                        head -5 profile

        find:查找指定文件,find 要查找的范围 -name名字

                find /etc -name profile 查找/etc目录下面名字为profile的文件

        basename:

                剔除目录部分,只显示文件名

                basename /etc/rc.d/rc.loca

        dirname:

                剔除非目录部分,只显示目录名

                dirname /etc/rc.d/rc.local

tail的高级使用:

        -f 监听文件

        > 重定向

        ping jd.com > jd.txt   将ping京东网站返回的信息存到一个文件中去

        tail -f jd.txt    监听jd.txt文件变化

        jd.txt文件被删除后重新输入相同ping指令,无法延续监听

        -F 根据名字监听文件

          tail -F jd.txt 

        jd.txt文件被删除后重新输入相同ping指令,可以延续监听---根据文件名监听

计算机间的数据传输

        Windows-Linux

        lrzsz:  需要手动安装: yum -y install lrzsz

                   rz:将文件从Windows上传到Linux

                   sz:文件:将文件从Linux传输到Windows

                  安装完 lrzsz 插件以后,还支持使用鼠标拖拽文件至 Xshell 的方式来上传文件

                  xftp :较为通用的文件传输方式  

FinalShell

Xshell

Xftp

        Linux-Linux

                scp:  文件复制同步

          @node01 是在hosts文件中配置了IP地址映射

        连接远程主机第一次会遇到

        输入yes后会提示输入远程主机登录密码

        然后登录成功

basenode  登录使用 node01

scp指令实践:

将basenode / 下的testscp.txt 发送给node01

测试不建议发送到 / 根目录里  给空目录/opt 发了记得删除

  

linux scp命令使用详解-优快云博客

        rsync:

Linux系统——rsync命令_linux rsync-优快云博客

        rsync 和 scp 在文件夹均不存在时,执行时间相差不大,但是文件夹存在的情况下差异很大。原因是 scp 是复制:若 目的地文件不存在则新建,若存在则覆盖。而 rsync 是同步,比较两边文件是否相同,相同的话,就什么都不做,若存在 差异就直接更新。   

        起到同步的作用时用 rsync 会快一些,起到复制作用时两者均可(目的地无文件)。视情况来选择 rsync 或 scp,如果 小文件非常多(过万),且只改动了一两个,使用 rsync 就不见得比 scp 快,因为 scp 无脑全部覆盖,rsync 还需要一个个 去比较,比较会浪费大量时间。

tar:文件压缩

        主要针对的文件是 lucky.tar.gz

        解压缩

                 tar -zx(解压)v(过程)f(文件) lucky.tar.gz 压缩 tar -zc(压缩)f(文件)

                 tomcat.tar.gz(压缩后的名字) apache-tomcat-7.0.61(源文件)

                 tar -zxf tomcat.tar.gz -C /opt/

                        -C 指定解压缩的文件目录

zip和unzip

        安装 yum install zip unzip -y

        压缩 zip -r tomcat.zip apache-tomcat-7.0.61

        解压缩 unzip tomcat.zip

Linux的网络信息

1.主机名称

         临时修改

               hostname newname

         长久修改

                vi /etc/hostname

2.DNS解析

        域名解析服务

        可以将域名转换为IP地址

        NNS域名劫持

                Windows -->C:\Windows\System32\drivers\etc\hosts

                123.56.138.186 www.baidu.com

                123.56.138.186 www.taodao.com

        修改主机域名

                vi /etc/hosts

                将来我们需要把所有的虚拟机都配置hosts文件

                 192.168.88.101 node01

                 192.168.88.102 node02

3.网络相关命令(了解)

        ifconfig 查看当前网卡的配置信息

         这个命令属于 net-tools中的一个命令,但是Centos7中minimal版并没有集成这个包 所以7的时候需要自己手动安装

         如果没有ifconfig ,可以使用ip addr 临时代替

        netstat

         查看当前网络的状态信息

         一个机器默认有65536个端口号[0,65535]

         这是一个逻辑的概念,将来我们需要使用程序监听指定的端口,等待别人的访问

         一个端口只能被一个程序所监听, 端口已经被占用

         netstat -anp

         netstat -r 核心路由表 == route

        ping

         查看与目标IP地址是否能够连通

         telnet

         查看与目标IP的指定端口是否能够连通

         yum install telnet -y

         telnet 192.168.31.44 22

         curl

        restful 我们所有的资源在网络上中都有唯一的定位

         那么我们可以通过这个唯一定位标识指定的资源

         http://localhost:8080/lucky/user.action/666

         curl -X GET http://www.baidu.com

4. 主机间的相互免秘钥

        4.1服务器相互免秘钥

                生成公钥

ssh-keygen -t rsa -f ~/.ssh/rsa_id

        两次回车

        将公钥发送给需要免秘的服务器

 

ssh-copy-id -i ~/.ssh/rsa_id.pub root@node01

        验证是否能够免秘登录(第一次登录需要密码)

成功

node01 进行相同操作 生成公钥 并将公钥文件发送给basenode

rsa :非对称加密算法

(grep  与 cat 形式类似的 查询内容的命令

日期与时间

        时间命令

        查看时区:

                ll /etc/localtime

                /ect/locatime-->../usr/share/zoneinfo/America/Los_Angeles

        设置时区:

               ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

        date:

                查看当前系统时间

        cal:查看日历

                cal 2020

        修改时间

                date -s 11.11.11

                date -s 2019-11-11

                date -s '2019-11-11 11:11:11'

        日期自动同步

                首先安装时间同步的服务

                 yum -y install ntp

                 自动同步网络时间中心

                ntpdate cn.ntp.org.cn

        

用户-组-权限

用户

        

        修改用户(组名称和家目录是不会被修改的):

                usermod -l newname oldname

         锁定用户(禁止登录):

                usermod -L zs

        解锁用户:

                usermod -U zs

        删除用户:

                userdel zs (家目录不会被删除) userdel -r zs (家目录会被删除)-r表示递归操作

        添加用户并指定组:

                useradd zs -g java (-g 表示添加组,-G表示添加副组)

        添加用户指定组和附属组:

                useradd zs -g java -G jvm

        切换用户:

                su - zs   (- 表示环境跟着切换,用exit退出,不然用户切换线程一直存在)

        

        创建组:

                groupadd java

        修改组:

                groupmod  -n newgroup oldgroup

                groupmod -n bigdata java

        查看当前用户对应的组:

                groups

        查看其它用户对应的组:

                groups lisi

        修改用户的组:

                -g 修改主组(只能一个):

                usermod zs -g bigdata

                -G 修改附属组(可以多个):

                usermod zs -G java,python

        删除组:

                groupdel python(组内有用户存在则不能直接删除)

权限

        

        r 可读 w 可写 x 可执行

        如图所圈处  第一根 - 表示是普通文件  如果是 l 表示是软连接  如果是 d 表示是目录 如果是

紧随其后 每三个位置 或 ---  代表一个范围权限   左边三个表示当前用户的权限 中间三个 - 表示当前组的权限 ,最后三个-表示当前用户附属组的权限

        如 -rwxrwxrwx  表示 普通文件---用户可读可写可执行  用户组可读可写可执行,附属组可读可写可执行。

        

修改权限

         修改文件所属用户和组信息命令为: chown 用户:组 文件名 。

            UGO模型

            UGO 模型分别表示 User 用户、Group 组用户、Other 其他用户。通过修改 UGO 可以直接确定当前文件在不同模型下 所对应的具体权限。修改命令如下:

        

        777模型

赋予权限

        在某些情况下我们可以赋予普通用户一些超级用户的命令,例如创建用户的命令我们可以交给一个特定的用户去操 作。但是默认情况下是不允许的,因为这个命令属于 sbin 命令即超级用户才可以使用的命令。

        

          怎么解决这个问题呢?可以通过修改 /etc/sudoers 配置文件的方式来赋予普通用户这个权限。注意:修改这个文 件需要使用命令 visudo 打开。添加如下图红色框中内容:

        以上配置支持通配符 * ,如果想赋予更多权限 /sbin/user* 或者 /sbin/* 即可。   然后 zhangsan 用户就可以使用 useradd 来创建用户了,但是需要在命令前添加 sudo ,如下:

管道与重定向

管道

        管道 |  就是将前面命令的结果作为参数传递给后面的命令,例如:

ping 百度 收集一条返回信息  将信息传递给 grep 查询 from ,查询结果 传递给 cut ,-d表示 按什么切割数据 -d ‘ ’ 就是按空格切割数据 -f 4 取切割后的第四条数据 。

重定向

          Linux 中的重定向就是将原本要输出到屏幕中的数据,重新指向某个特定的文件中,或者定向到黑洞(/dev/null)中。

        简单的理解就是:利用重定向操作符重新定义命令涉及的默认的输入和输出设备对象,即利用重定向操作符将命令输 入和输出数据流从默认设备重定向到其他位置。

输出重定向

        重定向符号 >

        可以将最终结果数据重定向输入到一个文本文件之中去,如

        >重定向写入文件是每批次覆盖写入,就是说如果再执行上图指令,那么test.txt中的内容会被新内容给覆盖掉。

        为了不覆盖原文,可以用 >>  ,追加重定向

如上图所示 test.txt 原文是123,执行完重定向操作后 是内容追加。

        > 符号前面默认有个1 , 1>表示只重定向正确操作的内容

如果想要重定向错误信息,则要将1 改为2,但不会重定向正确信息了

如果正确信息和错误信息都想重定向到某个文件中,则要使用 末尾加 2>&1 进行操作。

输入重定向

          输入重定向符号 <

        所以,通常来说可以让输入定向符在前面,输入定向符在后面。

Linux的系统进程

进程信息

        ps -ef 查看进程信息

                UID PID PPID C STIME TTY TIME CMD

                UID 所属用户

                PID 当前进程编号

                PPID 当前进程编号的父进程编号        

        ps -ef | grep redis

        ps -aux

                所有信息

        ps -aux --sort -pcpu

        top

                当前服务器内存使用率

后台进程

        

杀死进程

         kill -9 17599          直接中断停止进程  (杀死进程)

         kiil -15 17599        发送消息告知进程停止

(可以通过 & 将ping 操作放到后台从而让命令行不被占用

   

7032表示平操作的进程ID 

可以通过kill 指令关闭

Linux的软件安装

内容较多,此处指实践一下 jdk的配置

Linux安装软件_linux怎么安装软件包-优快云博客

        首先在/opt目录下创建一个jdk文件夹,并将jdk文件通过rz命令从Windows系统中上传到jdk文件夹中。

        先假装我还没有解压

        如上图所示,通过指令

tar zxvf jdk1.8.0_351 -C /opt/jdk

将jdk文件解压到jdk文件夹中

执行完后输入ls查看

解压成功

环境配置

        方法一:通过修改/etc/profile文件,在最下面添加环境变量,容易把profile文件搞坏,不推荐

        方法二:在/etc/profile.d中新建my_env.sh 文件,添加环境变量配置,重启profile文件完成配置。

注:环境变量配置内容相同  一个是加到profile文件里,一个是加到my_env.sh文件里

vim my_env.sm 进入并编辑添加配置

保存退出,然后输入 source /etc/profile 或 . /etc/profile  然后输入java -version 出现版本信息则配置完成。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值