大数据一期

Linux

  • 操作系统是什么  

  是现代计算机系统中最基本和最重要的系统软件

 是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩展

  • 操作系统

主要作用是管理好硬件设备,并为用户和应用程序提供一个简单的接口,以便于使用。

Linux 的由来

  • 为解决连接主机的终端数量不够用的问题,而诞生的Uinux操作系统,随之诞生的友B语言,C语言
  • 后来因为UNIX源代码私有化,教授为了学生操作系统运作细节,而诞生UNIX兼容的造作系统MINIX
  • 林纳斯为了访问大学主机上的新闻组和邮件,为了方便读写和下载文件,自行编写磁盘驱动程序和文件系统
  • 林纳斯以GNU的bash当作开发环境,gcc当作编译工具,编写了Linux内核,后经全世界网友的帮助,最终能够兼容多种硬件

Linux的内核版和发行版

内核版:

     内核是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序,他提供了一个在裸设备应用程序间的抽象层

稳定版:

   特点具有工业级轻度,可以广泛应用和部署

内核源码网址:http://www.kernel.org

发行版:

    包括桌面环境,办公套件,媒体播放器,数据库等应用软件

常见的发行版本:

    Ubuntu、Redhat、Fedora、openSUSE、Linux Mint、Debian、Manjaro、Mageia、CentOS、Arch

Linux和Windows的对比

费用:

    Windows收费而且 很贵,Linux免费或少许费用

软件与支持:

    大部分为收费软件,由微软官方提供支持和服务;LInux开源自由软件,用户可以修改,定制和在发布,部分软件质量和体验欠缺,由全球所有的Linux开发者和自由软件社区提供,设徐提供支持

安全性:

   Windows经常进行安全性系统更新,LInux相对Windows平台更加安全

使用习惯:

   Windows上手容易,入门简单

   Linux开源,可定制性很强

 

应用场景: 

    桌面操作主要使用Windows

    Linux支持百度。谷歌,淘宝等应用软件和服务,还有一切和可视化网页,是后台形成成千上万的Linux服务器主机。世界上大部分软件和服务都臀型Linux上的

Linux的文件和目录结构

/bin: 存放最经常使用的命令

/sbin: 存放的是系统管理员使用的系统管理程序

/home: 存放普通用户的主目录

/root: 是系统管理员的主目录

/lib: 系统开机所需要的动态来你接共享库

/etc: 所有系统管理员所需要的偶尔u之文件和子目录

/usr: 存放用户很多应用程序和文件,类似于Windows下的Program files目录

/boot: 存放的是启动Linux时时使用的一下核心文件:连接文件以及镜像文件

/proc: 虚拟目录,系统内存的映射,可获取系统信息

/srv: 存放一些服务启动后需要提取的数据

/sys: Linux2.6内核新出现的一个文件系统sysfs

/tmp: 存储一下临时文件

/dev: 以文件形式存储所有硬件

/media: 挂载例如U盘,光驱等设备到该目录下

/mnt: 临时挂载别的文件系统

/opt: 额外安装软件所摆放的目录

/var: 存放经常修改的目录,包括日志文件

/selinux: 控制程序只访问特定文件

 

/lost+found: 一般情况下时空的,系统非法关机后,这里就存放了一下文件

VIM编辑器(三种模式)

一般模式

yy:复制光标所在行

 

 

y数字y:从光标所在行开始复制几行

dd:删除光标所在行

d数字d:从光标所在行开始删除几行

x(小写): 删除一个字母,相当与del。向后删

X(大写): 删除一个字母,相当于Backspace,向前删

yw:复制一个词

dw: 删除一个词 

shift+^: 移动到行头

shift+$: 移动到行尾

G: 移动到页尾

数字+G(先输数字,在按大G):移动到指定行(数字输入的是几行移动到第几行)

编辑模式

i(小写):当前光标前

a(小写): 当前光标后

o(小写):当前光标行的下一行

I(大写):光标所在行最前

 

A(大写):光标所在行最后

O(大写):当前光标行的上一行

 

退出编辑模式的话 按一下键盘的左上角的第一个 (Esc)

指令模式

:w:保存

:q: 退出

:!:强制执行

/要查找的词:n查找下一个,N往上查找

?要查找的词:n查找上一个,N往下找

:set su :显示行号

:set nosu:关闭行号

ZZ(shift+zz):没有修改文件直接退出,如果修改了文件保存后退出

网络配置

  • 查看网络IP和网关
  1. 查看虚拟网络编辑器,看图

 

        2.修改ip地址

 

       3.查看网关

 

       4.查看windows环境的中VMnet8网络配置,

 

 

 

 

 

 

 

 

 

 

 

 配置网络ip地址

  • 查看ip

语法:ifconfig

如果配置完成之后想要检查的话,输入命令 ;ping www.caidu.com

 

  • 修改ip

在终端输入;vim /etc/sysconfig/network-scripts/ifcfg-eth0

按照下图的修改 没有的需咬按照上面的添加

 

 修改完成后保存退出

  语法;:冒号(;)wq

退出之后输入指令  service network restart 执行  ,

要是失败 重启虚拟机

  重启指令:reboot

显示和设置系统主机名称

  1. 语法 ;     hostname  (功能描述:查看当前服务器的主机名称)
  2. 修改主机名称:修改linux主机的映射文件 (host文件)进入Linux系统查看本机的主机名。同过hostname命令查看。如果我们感觉此主机名不合适,我们可以进行修改。通过编辑;/etc/sysconfig/network 文件修改    文件内容看下👇图

                                         

 

                    注意:主机名不要有“-‘下划线

打开此文件之后,可以看到主机名。修改此机名为我们想要修改的主机名

修改:hadoop100

修改后,保存退出,重启

  1. 配置主机和IP的映射光绪,打开/etc/hosts
  2.   语法;vim /etc/hosts
  3. 添加以下内容    之后还会创建四五个虚拟机按照同样的方法把ip地址和名称添加进去

  

192.168.1.100 hadoop100

添加完之后 重启设备,再查看主机名,已经修改成功了

关闭防火墙

         1.基本语法

service  服务名 start    (功能描述:开启服务)

service  服务名  stop      (功能描述:关闭服务)

service  服务名  restart   (功能描述:重新重启服务)

service  服务名  staus     (功能描述:查看服务状态)

关机重启命令

1. 基本语法

1sync   (功能描述:将数据由内存同步到硬盘中)

2halt (功能描述:关闭系统,等同于shutdown -h now poweroff

3reboot (功能描述:就是重启,等同于 shutdown -r now

4shutdown [选项] 时间

Linux常用基本命令

man [命令或配置文件] (功能描述:获得帮助信息)

 

 

 help[选项】【参数】    (功能描述:获得she内置命令的帮助信息)ll

常用快捷键

  1. ctrl+c   停止进程
  2. ctrl+l    清屏
  3. reset    彻底清屏
  4. ctrl+q   退出
  5. 善用Tab    全命令,防止敲错
  6. 上下键   查找执行过的命令
  7. ctrl+alt   linux和windows之间切换

文件目录类

  1. pwd   (功能描述:显示用户当前的绝对路径)
  2. ls       (用来显示目录列表的)
  • ls  -a   (显示包含隐藏文件)
  • ls  -A   (显示出隐藏文件"."和"."以外的所有文件列表
  • ls  -l -长数据串列出,包含文件的属性与权限等等数据;(常用)
  • ls  -C                  多列显示输出结果,默认
  • ls  -R                  递归显示目录下的所有文件列表和子目录列表

cd 切换目录

cd 绝对路径/相对路径  切换路径

cd ~或者cd    切换到根目录

cd -   切换到上一次所在的目录

cd .. 返回当前目录的上一级目录

cd -P 跳转到实际物理路径,而非快捷方式路径

mkdir:创建一个新的目录

mkdir -p 创建多级目录

rmdir:删除一个空的目录

touch:创建空文件

cp source dest:复制source文件/目录—到—>dest目录

cp -r 目录  递归复制整个文件夹及其子文件

rm 移除文件或目录

rm -r 递归删除目录中所有内容

rm -f 强制执行删除操作

rm -v 显示指令的详细执行过程

mv 移动文件与目录或重命名

mv oldName newName 重命名

mv source dest 移动source 文件—到—>dest目录

cat 查看文件内容

cat -n 显示所有行的行号,包括空行

more 文件内容分屏查看器

space 向下翻一页 

enter 向下翻一行

q 退出more

Ctrl + F 向下滚动一屏

Ctrl + B 返回上一屏

= 输出当前行的行号

:f 输出文件名和当前行的行号

less 分屏显示文件内容

space 向下翻一页

pageDown:向下翻动一页

pageUp:向上翻动一页

/字串:向下查找:n向下查找,N向上查找

?字串:向上查找:n向上查找,N向下查找

q:退出less

echo 输出内容到控制台

echo -e 支持反斜线控制的字符转换

\n 换行符

\t 制表符

head 显示文件头部内容

head 文件 查看文件头10行内容

head -n 5 文件 查看文件头5行内容

tail 输出文件尾部内容

tail 文件 查看文件后10行内容

tail -n 5 文件 查看文件后5行内容

tail -f 文件 实时追踪该文件的所有更新

> 和 >>

ll > 文件 列表内容写入文件中(覆盖)

ll >> 文件 列表内容追加到文件末尾

cat 文件1 > 文件2 将文件1的内容覆盖到文件2

echo "内容" >> 文件

ln 软链接

ln -s 源文件目录  软链接名:为指定文件创建一个软链接

rm -rf 软链接名:删除指定软链接

history 查看已经执行过历史命令

时间日期类:

date 显示当前时间

date +%Y 显示当前年份

date +%m 显示当前月份

date +%d 显示当前是哪一天

date "+%%Y-%m-%d %H:%M:%S" 显示年月日时分秒

date -d '1 days ago'   显示前一天时间

date -d '-1 days ago'  显示明天时间

date -s "yyyy-MM-dd hh:mm:ss" 设置系统当前时间

cal 查看日历

cal + 年份 查看指定年份的日历

cd 切换目录

cd 绝对路径/相对路径  切换路径

cd ~或者cd    切换到根目录

cd -   切换到上一次所在的目录

cd .. 返回当前目录的上一级目录

cd -P 跳转到实际物理路径,而非快捷方式路径

mkdir:创建一个新的目录

mkdir -p 创建多级目录

rmdir:删除一个空的目录

touch:创建空文件

cp source dest:复制source文件/目录—到—>dest目录

cp -r 目录  递归复制整个文件夹及其子文件

rm 移除文件或目录

rm -r 递归删除目录中所有内容

rm -f 强制执行删除操作

rm -v 显示指令的详细执行过程

mv 移动文件与目录或重命名

mv oldName newName 重命名

mv source dest 移动source 文件—到—>dest目录

cat 查看文件内容

cat -n 显示所有行的行号,包括空行

more 文件内容分屏查看器

space 向下翻一页 

enter 向下翻一行

q 退出more

Ctrl + F 向下滚动一屏

Ctrl + B 返回上一屏

= 输出当前行的行号

:f 输出文件名和当前行的行号

less 分屏显示文件内容

space 向下翻一页

pageDown:向下翻动一页

pageUp:向上翻动一页

/字串:向下查找:n向下查找,N向上查找

?字串:向上查找:n向上查找,N向下查找

q:退出less

echo 输出内容到控制台

echo -e 支持反斜线控制的字符转换

\n 换行符

\t 制表符

head 显示文件头部内容

head 文件 查看文件头10行内容

head -n 5 文件 查看文件头5行内容

tail 输出文件尾部内容

tail 文件 查看文件后10行内容

tail -n 5 文件 查看文件后5行内容

tail -f 文件 实时追踪该文件的所有更新

> 和 >>

ll > 文件 列表内容写入文件中(覆盖)

ll >> 文件 列表内容追加到文件末尾

cat 文件1 > 文件2 将文件1的内容覆盖到文件2

echo "内容" >> 文件

ln 软链接

ln -s 源文件目录  软链接名:为指定文件创建一个软链接

rm -rf 软链接名:删除指定软链接

history 查看已经执行过历史命令

时间日期类:

date 显示当前时间

date +%Y 显示当前年份

date +%m 显示当前月份

date +%d 显示当前是哪一天

date "+%%Y-%m-%d %H:%M:%S" 显示年月日时分秒

date -d '1 days ago'   显示前一天时间

date -d '-1 days ago'  显示明天时间

date -s "yyyy-MM-dd hh:mm:ss" 设置系统当前时间

cal 查看日历

cal + 年份 查看指定年份的日历

 

useradd 添加新用户

useradd 用户名 添加新用户

useradd -g 组名 用户名:添加新用户到某个组

passwd 设置用户密码

passwd 用户名 为指定用户设置密码

id 查看用户是否存在

id 用户名 查看指定用户是否存在

cat /etc/passwd 查看创建了哪些用户

su 切换用户

su 只能获得用户执行权限,不能获得环境变量

su - 用户名 :切换到用户并获得改用户的环境变量及执行权限

userdel 删除用户

userdel 用户名:删除用户但保存用户主目录

userdel -r 用户名 删除用户和用户主目录

who 查看登录用户信息

whoami 显示当前用户名

who am i 显示登录用户及登录时间等信息

sudo 设置普通用户具有root权限

修改配置文件

vim /etc/sudoers

添加配置

用户名        ALL=(ALL)           NOPASSWD:ALL

usermod 修改用户

usermod -g 组名 用户名 :修改指定用户的所属组

groupadd +组名:新增组

groupdel  +组名:删除组

groupmod -n 新组名 旧组名 :修改指定组的组名

cat /etc/group 查看创建了哪些组

chmod [身份]+[权限] 文件

chmod u/g/o+r/w/x 文件  为用户/所属组/其他用户添加可读可写可执行的权限

chmod +x 文件:为所有用户添加可执行的权限

chmod 777 文件:为所有用户添加可读可写可执行的权限

chmod -R 777 文件 为目录下所有文件的所有者、所属组、其他用户具有可读可写可执行的权限

chown 改变所有者

chown 用户 文件:修改指定文件的所有者

chown -R  用户名:组名 文件 递归修改文件的所有者和所属组

chgrp 改变所属组

chgrp 组名 文件:修改指定文件的所属组

find 查找文件或者目录

find 范围 -name:按照指定的文件名进行查找

find 范围 -user:按照指定文件所有者查找

find 范围 -size:按照指定的文件大小查找

find 范围 -size +2048 查找大于2048字节的文件

find 范围 -size -2048 查找小于2048字节的文件

grep 过滤查找及"|"管道符

ls | grep -n 文件:查找某文件再目录列表的第几行

which 命令:查找命令在哪个目录下

gzip 文件 压缩文件,文件后缀为.gz 

不能压缩目录,不保留源文件

gunzip 文件.gz    解压缩文件

不保留源文件

zip -r 递归压缩目录 

可以压缩目录,保留源文件

unzip 文件.zip 解压缩文件到当前目录

unzip 文件.zip -d 目录  解压缩文件到指定的目录 

保留源文件

tar -zcvf 压缩包名称 文件1 文件2:将文件1、文件2压缩到指定名称的压缩包中

-z 打包同时压缩

-c 产生.tar 打包文件

-v 显示详细信息

-f 指定压缩后的文件名

tar -zxvf 文件.tar.gz:解压到当前目录

-z 打包同时压缩【控制是否保存源文件】

-x 解包.tar文件

-v 显示详细信息

-f 指定压缩后的文件名

tar -zxvf 文件.tar.gz -C 目录:解压文件到指定目录

-z 打包同时压缩【控制是否保存源文件】

-x 解包.tar文件

-v 显示详细信息

-f 指定压缩后的文件名

df 查看磁盘空间使用情况

df -h 带计量单位

du 查看指定目录的磁盘占用情况

du -h /目录:查看指定目录的磁盘占用情况,默认为当前目录

-s 指定目录占用大小汇总

-h 带计量单位

-a 含文件

--max-depth = 1 子目录深度

-c 列出明细的同时,增加汇总值

mount/umount  挂载/卸载

mount [-t vfstype] [-o options] device dir 挂载设备

umount 设备文件名或者挂载点 卸载设备

-t vfstype:光盘或者光盘镜像:iso9660

                   DOS fat16 文件系统:vfat

                   Windows 9x fat32 文件系统:ntfs

                   Mount Windows 文件网络共享:smbfs

                   UNIX(LINUX) 文件网络共享:nfs

-o options:loop 把文件当成硬盘分区挂接上系统

                   ro 采用只读方式挂接设备

                   rw 采用读写方式挂接设备

                   iocharset:指定访问文件系统所用字符集

device:要挂接(mount)的设备

dir:设备在系统上的挂载点

ps 查看当前系统进程状态

ps aux | grep xxx 查看系统中所有进程

ps -ef | grep xxx 可以查看子父进程之间的关系

-a 选择所有进程

-u 显示所有用户的所有进程

-x 显示没有终端的进程

kill 终止进程

kill -9 进程号:通过进程号杀死进程

killall 进程名称:通过进程名称杀死进程,

pstree 查看进程树

-p  显示进程的PID

-u 显示进程的所属用户

top 查看系统健康状态

top -d 指令top命令每隔几秒更新,默认3秒

top -i:使top不显示任何闲置或者僵死进程

P:以CPU使用率排序,默认

M:以内存的使用率排序

N:以PID排序

q:退出top

netstat 显示网络统计信息和端口占用情况

netstat -anp | grep 进程号:查看该进程网络信息

netstat -nlp | grep  端口号:查看网络端口号占用情况

-n:拒绝显示别名,能显示数字的全部转换成数字

-l:仅列出有在listen的服务状态

-p:表示显示哪个进程在调用

crond 系统定时任务

service crond restart:重启crond服务

crontab 定时任务设置

crontab -e 编辑crontab定时任务

crontab -l 查询crontab 任务

crontab -r 删除当前用户所有的crontab任务

rpm -qa:查询所安装的所有rpm软件包

rpm -qa | grep 软件包:查询指定软件包的安装情况

rpm -e 软件包:卸载指定软件包

rpm -e --nodeps:不检查依赖卸载软件,依赖此软件包的软件将可能不能正常工作

rpm -ivh 软件包全名

-i  install 安装

-v verbose 显示详细信息

-h hash 进度条

--nodeps 不检测依赖进度

yum -y [参数] 对所有提问都回答yes

install:安装rpm软件包

update:更新rpm软件包

check-update:检查是否有可用的更新rpm软件包

remove:删除指定的rpm软件包

list:显示软件包信息

clean:清理yum过期的缓存

deplist:显示yum软件包的所有依赖关系   

posted @ 2020-08-09 20:46  十二僧  阅读(114)  评论(0)    收藏  举报