1.常见命令
-
cat: 查看并打印内容到标准输出设备
cat 文件: 查看整个文件的内容(文件过大超过缓冲区,不会完整展示) -n:展示行号
-
tac: 倒序打印
tac 文件
-
head: 展示开头若干行(10)
head 文件 -n num:指定显示的行数
-
tail: 展示结尾的若干行(10)
tail 文件 -n num:指定显示的行数 -f: 始终查看最新内容
-
more: 翻页显示
-
less: 翻页显示(space enter b G gg)
-
echo: 输出字符串或者变量
echo 字符串 echo $变量名 (${变量名}) -e: 处理字符串中的特殊符号 \n \t \a echo -e "aa\nbb" -n: 输出之后不换行 >: 重定向符号(覆盖) >>:追加 echo aa >> a.txt
-
ln: 创建链接文件
ln -s 源文件 链接文件
-
alias: 别名
alias:查看别名 alias la='ll -a':起别名 unalias la:撤销别名
-
whereis: 查看命令所在的位置
-
set:查看变量
-
put:上传文件
-
get:下载 wget:下载
-
ctrl+c:终止进程
-
|: 管道符
2. vi编辑器
类unix系统内置的文本编辑器
vim是vi的增强版本。
2.1 基本操作
vi 文件
2.2 vi编辑器的三种模式
一般模式(命令模式): 都是命令
插入模式(编辑模式): 添加/修改内容
底行模式(底行命令模式): 命令都是在最后一行
1.直接通过vi/vim打开文件,默认进入命令模式;
2.命令模式下输入a/i/o等,切换到编辑模式;
3.如果保存退出,切换到底行模式下;
4.编辑模式下键入esc切换到命令模式;
5.命令模式输入:切换到底行模式;
6.底行模式下,w保存,q退出,!强制
2.3 命令模式下场景命令
-
光标命令
字符移动: 上下左右键 hjkl 单词移动: w(W): 单词首字母向后移动(忽略标点) b(B): 单词首字母向前移动(忽略标点) e(E): 单词尾字母向后移动(忽略标点) 整句: ( ) 换行并且.代表一句 整段: { } 标识空行 移动开始和结尾: G gg 在行中移动: 0整行开始 $整行结束
-
基本操作
a(A): 光标后一位插入内容(光标所在行的行尾) i(I): 光标前一位插入内容(光标所在行的行首) o(O): 光标下一行插入(光标所在行插入) dd: 删除(3dd 删除三行) yy: 复制 p: 粘贴 u: 撤销
2.4 底行模式下常见命令
-
搜索和替换
:set nu: 显示行号 :set nonu: 不显示行号 :num 跳转到指定行 :/单词: 寻找单词 (n:向后寻找 N:向前寻找) :noh:取消高亮显示 :开始行,结束行 s/旧字符串/新字符串/g :1 s/aa/bb 替换第一行中第一个aa :1 s/aa/bb/g 替换第一行所有的aa :1,5 s/aa/bb/g :. s/aa/bb/g :.,.+2 s/aa/bb/g :% s/aa/bb/g
3.网络管理
3.1 网络接口管理
ifconfig: 查看网络接口信息 (mac,ip,广播,子网掩码)
ifconfig eth0 up/down: 开启/关闭
3.2 网络通讯模式
1.设置NAT模式,并且设置子网为192.168.2.0
网关地址: 192.168.2.2
2.设置当前的linux的ip地址为192.168.2.101,同时设置为静态ip
-
图形界面:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fgKkczmB-1596342880456)(img\静态ip配置.png)]
重启网络服务 service network restart
-
命令行设置:
配置eth0网卡: vim /etc/sysconfig/network-scripts/ifcfg-eth0
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WD0hESnt-1596342880461)(img\ip配置.png)]
3.3 宿主机和虚拟机的通讯模式
-
桥接模式
宿主机的物理网卡和虚拟交换机之间通过虚拟网桥建立连接。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fLL9Rhvi-1596342880464)(img\桥接模式.png)]
-
NAT模式
虚拟网卡(vmnet8)和虚拟交换机(vmnet8)之间建立连接;
虚拟交换机(vmnet8)和物理网卡通过NAT设备建立连接。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cnU1JCfR-1596342880468)(img\NAT模式.png)]
-
仅主机模式
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HsW6AzAw-1596342880472)(img\仅主机模式.png)]
3.4 网络管理的命令
ping: 测试网络的连通状态
host: 通过域名查看ip
netstat: 查看程序端口的占用
-nltp: 查看正在监听的tcp协议的程序
3.5 配置
-
主机名称和修改
hostname: 查看主机名称 hostname 名称: 修改主机名称 (临时) vim /etc/sysconfig/network: 永久修改主机名称(重启系统)
-
主机映射: 主机名称和ip地址之间的映射
linux: vim /etc/hosts windows: C:\Windows\System32\drivers\etc\hosts
-
防火墙(iptables)
控制网络访问
如何查看防火墙状态/开启/关闭
service iptables status/start/stop/restart
开放指定的端口:
iptables -I INPUT -p TCP --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j DROP(谨慎)
开机自启状态:
chkconfig --list :查看所有的服务的开机状态
chkconfig --list iptables: 查看指定服务的开机状态
设置开机自启或关闭:
chkconfig iptables on/off
```
4.系统启动级别和CRT
系统启动级别:
runlevel: 查看系统启动级别
vim /etc/inittab: 系统启动级别配置文件
0:关机
1:单用户
2:多用户无网络
3:全功能多用户
4:未使用
5:图形界面
6:重启
远程终端工具:
secureCRT / xshell / putty
5.用户和组
5.1 用户和组的概念
用户是权限的集合;
用户组是权限容器
5.2 分类
-
用户
管理员用户: root , uid --> 0
系统用户: 保证整个系统正常运行,没有密码, uid --> 1-499
普通用户: 权限受限 uid:500-60000
-
用户组
系统组: 存放系统用户
私有组: 只有一个用户(同名)
普通用户组: 存放普通用户(存放多个普通用户)
5.3 查看用户和组
-
查看用户
cat /etc/passwd (cat /etc/shadow:密码文件) hadoop: 用户名 x: 密码占位符 500: uid 500: 组id hadoop: 备注信息 /home/hadoop: 家目录路径 /bin/bash: shell类型
-
查看组
cat /etc/group (cat /etc/gshadow) root: 组名 x: 组的密码 0: 组id 组的成员
5.4 操作用户和组
-
用户操作
添加用户: useradd spark 修改用户: usermod usermod -c "hello" spark:修改备注 usermod -G hadoop spark: 修改组 删除用户: userdel spark 修改密码:passwd spark
-
组操作
添加组: groupadd spark
修改组: groupmod -n storm spark
删除组: groupdel storm
添加或移除用户:
gpasswd -a/-d hadoop storm
```
5.5 配置sudoer权限
root用户:
vim /etc/sudoers
root ALL=(ALL) ALL
hadoop ALL=(ALL) ALL
sudo useradd aa
删除用户: userdel spark
修改密码:passwd spark
* 组操作
```shell
添加组: groupadd spark
修改组: groupmod -n storm spark
删除组: groupdel storm
添加或移除用户:
gpasswd -a/-d hadoop storm
```
#### 5.5 配置sudoer权限
```shell
root用户:
vim /etc/sudoers
root ALL=(ALL) ALL
hadoop ALL=(ALL) ALL
sudo useradd aa