概述
- 狭义的和广义的Linux:
- Linux和Windows的区别:
文件系统
-
Linux系统中一切皆文件
-
目录结构:
-
/bin:Binary的缩写,里面是直接可以执行的常用命令
-
/lib:Library的缩写,库目录,放系统和应用程序的库文件
-
/dev:device的缩写,设备管理文件
-
/etc:系统管理所需要的配置文件
-
/temp:临时目录
VIM编辑器
- 三种模式以及切换:
-
一般模式:
- yy:复制光标当前一行
- y+数字+y:复制一段,从光标当前行到后n行
- p:箭头移动到目的行粘贴
- u:撤销上一步
- dd:删除光标当前行
- d+数字+d:删除光标后多少行
- yw:复制一个词
- dw:删除一个词
- shift+6:移动到行头
- shift+4:移动到行尾
- w:移动到下一个词
- e:移动到当前词尾
- 1+G:移动到页头,数字
- G:移动到页尾
- 数字 N+G:移动到目标行
-
编辑模式:
- i:当前光标前
- a:当前光标后
- o:当前光标行的下一行
- I:光标所在行最前
- A:光标所在行最后
- O:当前光标行的上一行
-
命令模式:
- :w 保存
- :q 退出
- :wq 保存并推退出
- :q! 不保存强制退出
- /要查找的词 n查找下一个,N往上查找
- :set nu 显示行号
- :set nonu 关闭行号
-
vim键盘图:
网络配置
-
三种网络连接模式:
- 桥接模式
- 虚拟机直接连接外部物理网络的模式,主机起到了网桥的作用。这种模式下,虚拟机可以直接访问外部网络,并且对外部网络是可见的。
- NAT模式
- 虚拟机和主机构建一个专用网络,并通过虚拟网络地址转换设备对IP进行转换。虚拟机通过共享主机IP可以访问外部网络,但外部网络无法访问虚拟机。
- 仅主机模式
- 虚拟机只与主机共享一个专用网络,与外部网络无法通信。
- 桥接模式
-
问题及解决:
- 物理机能ping通虚拟机,但是虚拟机ping不通物理机
- 因为物理机的防火墙,将其关闭即可
- 虚拟机能ping通物理机,但是ping不通外网
- DNS的设置问题
- 关闭NetworkManager服务
- systemctl stop NetworkManager 关闭
- systemctl disable NetworkManager 禁用
- 物理机能ping通虚拟机,但是虚拟机ping不通物理机
-
配置主机名:
- hostname:查看当前服务器的主机名称
- [root@XXX 桌面]# hostname:查看当前服务器主机名称
- [root@XXX 桌面]# yi /etc/hostname:修改完成后重启生效
系统管理
-
进程和服务
- 进程:计算机中,一个正在执行的程序或命令 process
- 服务:启动之后一直存在、常驻内存的进程,一般被称作服务 service
-
服务管理
- service 服务名 start|stop|restart|status
- 查看服务:/etc/init.d/服务名
-
Linux进程运行级别
- 运行级别
- 开机
- BIOS
- /boot
- init进程
- 运行级别
- 运行级对应的服务
- 运行级别
- 关机重启命令:
- sync:将数据由内存同步到硬盘中
- halt:停机,关闭系统,但不断电
- poweroff:关机,断电
- reboot:重启
- shutdown:
- -H相当于–halt,关机
- -r相当于reboot重启
- now:立刻关机
- 时间:等待多久后关机(单位:分钟)
操作命令
帮助命令
- man[命令或配置文件]
- NAME:命令的名称和单行描述
- SYNOPSIS:怎样使用命令
- DESCRIPTION:命令功能的深入讨论
- EXAMPLES:怎样使用命令的例子
- SEE ALSO:相关主题
- help 命令:获得shell内置命令的帮助信息
- 快捷键:
- ctrl+c:停止进程
- ctrl+l:清屏
- tab:提示
- 上下键:查找执行过的命令
文件目录类
- pwd:显示当前工作目录的绝对路径
- ls 选项 目录或者是文件:
- -a:全部的文件,连同隐藏档
- -l:长数据串列出,包含文件的属性与权限等
- mkdir 选项 要创建的目录
- -p:创建多层目录
- rmdir 要删除的空目录
- touch 文件名称:创建空文件
- cp 选项 source(源文件) dest(目标文件):复制source到dest
- -r递归复制整个文件夹
- rm 选项 deleteFile:递归删除目录中的所有内容
- -r:删除所有
- -f:强制删除
- -v:显示指令的详细执行过程
- cat 选项 要查看的文件:查看文件内容,从第一行开始显示
- -n:显示所有行的行号,包括空行
- echo 选项 输出内容:echo输出内容到控制台
- -e:支持反斜线控制的字符转换
- .>输出定向和>>追加
- ls-l >文件:列表的内容写入文件种
- ls-al >> 文件:列表的内容追加到文件的末尾
- cat 文件1 >文件2:将文件1的内容覆盖到文件2
- ln -s 原文件或目录 软链接:给源文件创建一个软连接
- history 查看已经执行过的历史命令
时间日期类
- date option … format
- -d 时间字符串:显式指定的时间字符串表示的时间,而非当前时间
- -s 日期时间:设置系统日期时间
- date -d ‘1 days ago’:显示前一天时间
- date -d ‘-1 days ago’:显示明天时间
- date -s 字符串时间:设置系统时间
- cal 选项
- 具体某一年:显示这一年的日历
用户权限类
- useradd 用户名:添加新用户
- useradd -g 组名 用户名:添加新用户到某个组
- passwd 用户名:设置用户密码
- groupadd 组名:新增组
- groupdel 组名:删除组
搜索查找类
- find 搜索范围 选项
- -name 查询方式 按照指定的文件名查找模式查找文件
- -user 用户名 查找属于指定用户名所有文件
- -size 文件大小
- b:块 512字节
- c:字节
- w:字 2字节
- k:千字节
- M:兆字节
- G:吉字节
- locate 搜索文件
- locate指令基于数据库进行查询,第一次运行前,必须使用updatedb指令创建数据库
压缩解压类
- gzip 文件:压缩文件,只能将文件压缩为*.gz文件
- gunzip 文件.gz:解压缩文件命令
- 提示:
- 只能压缩文件不能压缩目录
- 不保留原来文件
- 同时多个文件会产生多个压缩包
磁盘管理类
- du 目录/文件:显示目录下每个子目录的磁盘使用情况
- -h:以人们较易阅读的GBytes等格式自行显示
- -a:不仅查看子目录大小 ,还要包括文件
- -c:显示所有的文件和子目录大小后,显示总和
- -s:只显示总和
- –max-depth=n:指定统计子目录深度为第n层
- df 选项:列出文件系统的整体磁盘使用量,检查文件系统的磁盘空间占用情况
- -h:以人们较易阅读的GBytes等格式自行显示
- lsblk:查看设备挂载情况
- -f:查看详细的设备挂载情况,显示文件系统信息
- fdisk -l:查看磁盘分区详情
- fdisk 磁盘设备名:对新增硬盘进行分区
进程管理类
-
ps aux|grep xxx:查看系统中所有进程
-
ps -ef|grep xxx:可以查看子父进程之间的关系
- a:列出带有终端的所有用户的进程
- x:列出当前用户的所有进程
- u:面向用户友好的显示风格
- -e:列出所有进程
- -u:列出某个用户关联的所有进程
- -f:显示完整格式的进程列表
-
kill 选项 进程号:通过进程号杀死进程
-
killall 进程名称:通过进程名称杀死进程,也支持通配符
- -9:表示强迫进程立即停止
-
pstree 选项
- -p:显示进程的PID
- -u:显示进程的所属用户
-
top 选项
- netstat -anp|grep 进程号:查看该进程网络信息
- netstat -nlp|grep 端口号:查看网络端口号占用情况
- crontab 选项
- -e:编辑crontab定时任务
- -l:查询crontab任务
- -r:删除当前用户所有的crontab任务