大数据一期
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和网关
- 查看虚拟网络编辑器,看图

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

注意:主机名不要有“-‘下划线
打开此文件之后,可以看到主机名。修改此机名为我们想要修改的主机名
修改:hadoop100
修改后,保存退出,重启
- 配置主机和IP的映射光绪,打开/etc/hosts
- 语法;vim /etc/hosts
- 添加以下内容 之后还会创建四五个虚拟机按照同样的方法把ip地址和名称添加进去
192.168.1.100 hadoop100
添加完之后 重启设备,再查看主机名,已经修改成功了
关闭防火墙
1.基本语法
service 服务名 start (功能描述:开启服务)
service 服务名 stop (功能描述:关闭服务)
service 服务名 restart (功能描述:重新重启服务)
service 服务名 staus (功能描述:查看服务状态)
关机重启命令
1. 基本语法
(1)sync (功能描述:将数据由内存同步到硬盘中)
(2)halt (功能描述:关闭系统,等同于shutdown -h now 和 poweroff)
(3)reboot (功能描述:就是重启,等同于 shutdown -r now)
(4)shutdown [选项] 时间
Linux常用基本命令
man [命令或配置文件] (功能描述:获得帮助信息)
help[选项】【参数】 (功能描述:获得she内置命令的帮助信息)ll
常用快捷键
- ctrl+c 停止进程
- ctrl+l 清屏
- reset 彻底清屏
- ctrl+q 退出
- 善用Tab 全命令,防止敲错
- 上下键 查找执行过的命令
- ctrl+alt linux和windows之间切换
文件目录类
- pwd (功能描述:显示用户当前的绝对路径)
- 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软件包的所有依赖关系
浙公网安备 33010602011771号