Linux基础知识一
- 一、什么是Linux?
- 二、linux产生背景
- 三、Linux的优点
- 四、Linux系统架构
- 五、 虚拟机软件
- 六、文件系统和目录结构
- 七、终端和常见命令
- 1、终端
- 2、常见命令
- 2.1.帮助手册查看
- 2.2磁盘管理
- 3.文件管理
- 3.1 touch:创建文件或者修改文件时间标记
- 3.2 file: 查看文件类型(根据内容决定)
- 3.3 mkdir: 创建文件夹
- 3.4 cp: 复制文件和目录
- 3.5 mv: 移动文件和目录
- 3.6 rm: 删除文件或者目录
- 3.7 rmdir: 删除空目录
- 3.8 cat: 打印输出文件
- 3.9 tac: 倒序输出
- 3.10 head: 查看开头若干行(默认10行) -n number:指定查看行数
- 3.11 tail: 查看末尾若干行(默认10行) -n number:指定查看行数
- 3.12 more: 翻屏显示
- 3.13 less: 翻屏显示
- 3.14 echo: 输出指定字符串或者变量
- 3.15 ln:创建链接
- 3.16 别名
- 4.vi编辑器
- 5.网络管理
- 八、网络操作
- 九、系统启动级别
一、什么是Linux?
- 开源免费的类unix操作系统,主要应用于服务器端;
- 支持多用户,多任务,多线程,多cpu;
- linux兼容unix常用的工具,应用程序和网络协议。
二、linux产生背景
1973年,unix产生(闭源,收费)
1983年, 理查德.斯托曼发起自由软件运动(GNU计划:完全自由操作系统GNU)
GPL:GNU通用公共许可证,可以自由"使用,复制,修改,发布"
1990年,整个GNU计划中已经产生很多自由软件,GCC(编译器),bash(命令行界面)等
1991年10月5日,Linux(内核)在GPL许可证下正式发布,
linux内核:linus, http://www.kernel.org tux(燕尾服)
1992年,linux内核和GUN软件正式结合,形成了GUN/Linux操作系统,简称linux操作系统
三、Linux的优点
- 分时的多用户,多任务操作系统
- 多数网络协议,方便远程管理
- 强大的内存管理和文件管理
- 稳定性和安全性
- 拥有丰富开源免费软件(服务器端)
- 多种发行版
四、Linux系统架构
内核: 软件和硬件交互平台。主要提供系统服务,内存,io管理,进程管理等
shell层: “壳”,一个程序(接口,界面),借助于shell层实现对内核调用
命令行shell: linux: bash shell,sh shell windows:cmd
图形shell: linux: gnome / kde
发行版: 内核 + 外围基础软件(商业公司,社区)
五、 虚拟机软件
利用虚拟化技术模拟出完整的计算机系统的一套软件。
vmware stationwork / vitualbox
六、文件系统和目录结构
1、文件系统
确定数据存储和管理的组织结构。
windows: ntfs
linux: centos6 ext4 / centos7 xfs
2、目录结构
目录树: 目录 + 普通文件
linux操作系统没有文件扩展名称,添加后缀只是用于方便管理
2、1常见目录
七、终端和常见命令
1、终端
【root@hadoop01 Desktop】#
[当前用户@主机名称 当前位置] #: 代表管理员 $:普通用户
2、常见命令
命令格式:
命令 [选项] [参数]
选项:
短格式: -简写 ls -a
长格式: --全拼 ls --all
组合: ls -a -l ==> ls -al
2.1.帮助手册查看
man ls
退出: q
2.2磁盘管理
2.2.1 cd: 实现目录切换
基本格式: cd 目录(绝对路径/相对路径)
cd dir:切换到当前目录下子目录中
cd ..:切换到上级目录
cd ../..:上两级
cd ~/cd:返回到当前用户家目录
cd -:返回到上次的目录
2.2.2 pwd: 打印当前所在目录
2.2.3 ls:展示目录内容(文件,目录)
ls [选项] [目录]:展示指定目录内容
ls: 展示当前目录内容
-l:查看文件详细情况(文件类型) 别名: ll
-a:展示所有文件(包含隐藏文件)
-A:展示所有文件(.和..不展示)
-h:友好易读方式展示,必须和-l一起使用 ll -h
-R:递归展示所有文件
2.2.4 du:查看文件或者目录磁盘占用
du 文件
-a:展示子文件大小
2.2.5 df:查看磁盘占用情况
3.文件管理
3.1 touch:创建文件或者修改文件时间标记
3.2 file: 查看文件类型(根据内容决定)
3.3 mkdir: 创建文件夹
-p: 级联创建
3.4 cp: 复制文件和目录
cp 源文件 目标文件
-i: 覆盖时提示
-f: 强制覆盖
-r: 递归复制
3.5 mv: 移动文件和目录
mv 源文件 目标文件
-i: 覆盖时提示
-f: 强制覆盖
-r: 递归复制
-u: 目标文件不存在,源文件比目标文件新才移动
3.6 rm: 删除文件或者目录
-i:删除时提示
-f:强制删除
-r:递归删除整个目录树
-rf: 递归强制删除
3.7 rmdir: 删除空目录
-p: 级联删除
3.8 cat: 打印输出文件
-n:编号
3.9 tac: 倒序输出
3.10 head: 查看开头若干行(默认10行) -n number:指定查看行数
3.11 tail: 查看末尾若干行(默认10行) -n number:指定查看行数
-f:显示最新追加内容
3.12 more: 翻屏显示
3.13 less: 翻屏显示
3.14 echo: 输出指定字符串或者变量
-e: 识别字符串中的特殊符号 \n \t
-n: 不换行输出
echo ${PATH}:输出变量
>:重定向符号
>:覆盖
>>:追加 (标准输出)
<<:标准输入
3.15 ln:创建链接
ln 文件 链接文件
硬链接:
软连接: -s 更加类似于windows中快捷方式
3.16 别名
alias: 查看别名
alias la='ll -a':设置别名
unalias la:取消别名
|:管道符,表示把前面命令内容的输出当做后面命令的输入
4.vi编辑器
文本编辑器,类unix操作系统自带文本编辑器。vim增强版本(不一定自带)。
4.1 如何使用vi编辑器
vi 文件
4.2 vi编辑器三种模式
命令模式:
插入模式:
底行模式: w:保存 q:退出 !:强制退出
4.3 命令模式下
4.3.1 光标命令
1.逐字符移动: ↑↓←→ / hjkl
2.逐个单词移动:
w(W):单词首字母向后移动(忽略符号)
b(B):单词首字母向前移动(忽略符号)
e(E)
3.逐句移动: () (句子标识.)
4.逐段移动: {}
5.G: 文档末尾 gg:文档开始
6.0:代表行首 $:代表行尾
4.3.2 操作命令
1.a:光标后一位插入 A:行尾插入
2.i:光标前一位插入 I:行首插入
3.o: 光标下一行 O:光标所在行
4.dd:删除
5.yy:复制
6.p:粘贴
7.u:撤销
4.4 底行模式
4.4.1 查找和替换
:set nu:设置行号
:set nonu:取消
:number:跳转到指定行
:/key :查找指定内容(n:向后移动 N:向前移动)
替换格式:
:开始行,结束行 s/旧字符串/新字符串/g
5.网络管理
5.1 网络管理命令
ifconfig: 操作网络接口(centos6 , centos7: ip addr)
ifconfig: 查看正在活动的网络接口信息(ip地址,mac地址,子网掩码...)
-a:查看所有的,包含停用的
ifconfig 网络接口名称 up/down:启动/禁用网络接口
ping: 查看网络连通状态
host: 通过域名查找ip
netstat: 查看进程端口占用情况
netstat -nltp: 不显示别名/正在监听/tcp协议/显示程序信息
八、网络操作
1.宿主机和虚拟机之间通讯三种模式
桥接模式:
桥接模式就是将主机网卡与虚拟机虚拟的网卡利用虚拟网桥进行通信.
NAT模式:
1.虚拟交换机和虚拟网卡(vmnet8)连接实现虚拟机连接宿主机;
2.虚拟交换机和物理网卡利用NAT设备连接实现Internet访问。
仅主机模式
网络接口信息:
vim /etc/sysconfig/network-scripts/ifcfg-eth0
2 主机名称
hostname: 查看主机名称
hostname 主机名称: 修改主机名(临时)
vim /etc/sysconfig/network(重启)
3 主机映射(主机名称和ip之间的映射)
linux: /etc/hosts
windows: C:\Windows\System32\drivers\etc\hosts
4 服务管理
service 服务名称(进程名称) start/stop/restart/status
service --status-all:查看所有服务状态
5 防火墙(iptables)
控制网络"出入"行为。
1.防火墙基本操作(开启,关闭)
service iptables start/stop
chkconfig iptables on/off(开机自启,开机关闭)
2.开放端口,关闭端口
#删除规则
iptables -D INPUT -p tcp --dport 22 -j DROP
3. 加入一条INPUT规则开放80端口
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
九、系统启动级别
1.查看:
runlevel
2.修改系统启动级别: root(拥有root权限)
vim /etc/inittab
0:关机
1:单用户
2:多用户无网络
3:全功能多用户(命令行)
4:未使用
5:带有图形界面模式
6:重启