# 大数据学习笔记第25天 - Linux第1天 #
## 01.Linux介绍以及VMware安装
Linux是什么?
**操作系统**
![](./img/25/13.png)
为什么要用centos:
1. 经济
免费
2. 安全
使用群体为开发人员,查看进程能够轻易分辨
开源,病毒不会轻易运行
3. 省资源
在剩余少量资源的情况下,能够正常运行
软件安装在没有中文和空格的目录下:
- VMware 12
- CentOS-7-x86_64-DVD-1511
## 02.Centos虚拟机安装
安装CentOS7.0基本都是默认下一步:
![](https://box.kancloud.cn/51da4df8b107733a68bfd058ccdab4ba_671x532.png)
![](https://box.kancloud.cn/194124577d54218e1ae385c684ef0432_513x492.png)
![](https://box.kancloud.cn/6c6ebdd125a74661f8099791e77771f5_513x492.png)
![](https://box.kancloud.cn/422435a226c0fc0f82c991a7c6faa187_513x492.png)
![](https://box.kancloud.cn/78f54a40d0c5a5e74abc1e21c4c86b9e_800x600.png)
![](https://box.kancloud.cn/59c942185d71d37abf8c160c6d42f9ef_800x600.png)
![](https://box.kancloud.cn/820b974763cdb9ad70176b432c0bf7d2_800x600.png)
## 03.Linux基本命令
```
[centos@bogon ~]$
centos //用户名
@ //@
bogon //主机名
~ //当前目录
$ //非root用户命令行
# //root用户命令行
ls //列出当前目录下的文件或文件夹
cd //change directory 切换目录
相对路径 //相对于当前目录的路径 cd Desktop
绝对路径 //相对于根目录的完整路径 cd \Users\chang\Desktop
Linux中路径左斜线“/”
Windows中路径右斜线“\”
ls -al //-a 显示全部 //全部指的什么?
//-l 显示详细信息
ll //ls -l
ls --help //查看帮助
su root //switch user 切换用户到root
cat ifcfg-ens33 //查看ifcfg-ens33文件内容
reboot //重启
ip addr //查看本机ip
cd ~ //进入到家目录
//对于centos,家目录是/home/centos
//对于root,家目录/root
pwd //查看当前目录的绝对路径
touch 1.txt //创建1.txt文件
rm 1.txt //删除1.txt
mkdir aaa //创建文件夹
ll aaa //查看文件夹内容
rm -r aaa //递归删除文件夹
echo //回音
> 或 >> //重定向
//> 为覆盖
//>> 为追加
echo helloworld > 1.txt //将helloworld重定向到1.txt
cat 1.txt //查看整个文档
more 1.txt //分页查询
head [-n] 1.txt //默认前十行,输出前n个行
tail [-n] 1.txt //默认后十行,输出前n个行
clear //清屏,快捷键为ctrl+L
whoami //输出当前用户名
sudo //临时使用root权限进行操作
passwd //修改密码,修改当前用户
passwd centos //指定用户名修改密码,只有root可以做
cp 1.txt 11.txt //拷贝文件
mv 1.txt 111.txt //移动文件,可以进行重命名
rename 11.txt 22.txt 11.txt //重命名
echo -n //去除换行符
echo -e //转译,将特殊字符转移
wc 3.txt //统计单词个数,包括行数、单词数、字节数
```
远程登录软件:
* putty
* xsheel
## 04.VI讲解 mtputty安装配置 文件和文件夹的增删改查
**VI编辑器:**
```
vi ifcfg-ens33 //编辑ifcfg-ens33文件内容
按insert或者i //进入到编辑模式
//光标定位修改文件,将最后一行的no改成yes
esc //退出编辑模式
:wq //保存退出
x //非编辑模式下删除单个字符
dd //非编辑模式下删除整行
dG //删除当前行及其后面所有行
:wq //保存退出
:q! //不保存退出
```
**远程登录软件:**
* putty
* secureCRT
* xshell
```
ip addr //查看本机ip
su root //switch user 切换用户到root
cd /etc/sysconfig/network-scripts/ //
```
**putty中的复制粘贴:**
复制:选中即复制
粘贴:复制后鼠标右键粘贴
**MTPuTTY安装配置:**
* 多标签putty,相当于putty的插件
* 安装位置D:\program\MTPuTTY //没空格。没中文
* putty位置D:\program //没空格。没中文
安装完成后的配置
1. putty location //D:\program\putty.exe
2. 工具栏点击server -> add server
```
server name //客户机ip地址
display name //点击自动补全
username //centos
password //123456
//旁边的框框打钩(password in command line)
```
3. 双击新建的server,即进入
## 05.Linux文件查看方式 目录和文件类型
```
- //文件
d //文件夹
l //符号链接
s //套接字文件
b //块设备文件
c //字符设备文件
p //pip
```
ls是Linux的可执行文件
```
which ls
```
ip也是Linux中的文件
```
which ip
```
查看帮助:
```
ls --help
help echo
man echo
info echo
```
**目录结构:**
```
/bin
/sbin
/etc //配置文件目录
/home //普通用户家目录的父目录
/lib //库文件
/proc //进程文件
/usr //用户目录
/root //root用户的家目录
```
## 06.CentOS文件权限验证 sudoer问题解决
职能分类:r(读4)、w(写2)、x(执行1)
范围分类:u(用户) 、g(用户组)、o(其他)
测试Linux权限:只去除一个权限,查看文件或文件夹不能做什么
**文件:**
* 读: cat
* 写: echo >
* 执行:
**文件夹:**
* 读: ls
* 写: 对文件夹数据的增删
* 执行: cd
**权限修改:**
```
chmod u-r 1.txt
chmod u-rwx 1.txt
chmod 664 1.txt
chmod a-x /usr/bin/ls
chown //修改用户和用户组
chown centos:centos root.txt
chgrp //只修改用户组
chgrp centos root.txt
```
**sudo不能使用的情况:**
centos is not in the sudoers file. This incident will be reported.
解决方案:
1. 切换到root
su root
2. 输入命令
visudo
3. 在root ALL=(ALL) ALL下添加以下内容
centos ALL=(ALL) ALL
4. 保存退出
esc
:wq
## 07.文件夹权限 yum使用 nano文本编辑器 ifconfig
```
sudo yum [-y] install nano //安装
sudo yum [-y] remove nano //卸载
sudo yum install --downloadonly --downloaddir=. -y nano //下载
sudo yum [-y] localinstall *.rpm //本地安装
yum search ifconfig //搜索软件包名
sudo yum install -y net-tools //安装网络工具
```
**nano 文本编辑器**
```
nano 1.txt //编辑文件
ctrl + o //保存
ctrl + x //退出
ctrl + k //剪切
ctrl + u //粘贴
ctrl + w //搜索
```
## 08.CentOS主机名和静态ip配置
**如何让虚拟机联网:**
1. 切换到root用户
su root
2. 切换到目录并查看文件
cd /etc/sysconfig/network-scripts/
cat ifcfg-ens33
3. 修改文件内容
vi ifcfg-ens33 //编辑ifcfg-ens33文件内容
4. 重启客户机(centos)
reboot
**静态IP与动态IP的优缺点:**
静态ip
* //优点,方便维护
* //缺点,配置较麻烦
动态ip //dhcp
* //通过交换机(dhcp服务器),通过某一规则进行分配的ip。
* //优点,配置简单
* //缺点,不易维护
### 静态IP配置流程
1、查看宿主机器的IP地址(一定要是192.168.*.*),如果是无线的网络,需要使用路由器联网;
![](https://box.kancloud.cn/b4b8c488ffeef46c35406be25c92067e_669x722.png)
2、设置虚拟机选择VMNet8网卡,设置成和宿主IP一个子网,去掉使用DHCP服务选项
![](https://box.kancloud.cn/c9d9cad2fb63884199af3a3e027e405e_953x648.png)
3、设置宿主VMNet8网卡,IP网段要保持一致,才能保证可以通信
![](https://box.kancloud.cn/0b24b849065dfefceaae5afa0d4e2e62_778x619.png)
4、配置虚拟机网络连接模式,选择NAT模式
![](https://box.kancloud.cn/6d76c1c55b7f45d9a13f9728172e490a_745x676.png)
5、配置网卡
![](https://box.kancloud.cn/2b74232e0aa81db9e13db54223d7b6fc_526x508.png)
*vim /etc/sysconfig/network-scripts/ifcfg-eno16777736*
```
TYPE="Ethernet"
BOOTPROTO="static"
DEFROUTE="yes"
PEERDNS="yes"
PEERROUTES="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_PEERDNS="yes"
IPV6_PEERROUTES="yes"
IPV6_FAILURE_FATAL="no"
NAME="eno16777736"
UUID="791c9cc5-e7d8-4113-863d-6b959a79c08e"
DEVICE="eno16777736"
ONBOOT="yes"
IPADDR=192.168.214.100
PREFIX=24
GATEWAY=192.168.214.2
NETMASK=255.255.255.0
DNS=8.8.8.8
DNS2=114.114.114.114
```
6、重启网卡
`service network restart`
**修改主机名:**
*vim /etc/hostname* 将 localhost.localdomain 修改成 s100
`hostname` 查看主机名