本资料汇集了在Linux虚拟机中使用Shell所需掌握的各种常见命令,适合初学者快速入门和提高效率。
### Linux虚拟机及Shell常用命令知识点总结
#### 一、Linux简介与特点
- **操作系统定义**:Linux是一款开源的操作系统,具有免费、开源、安全、高效且稳定的特点。
- **并发处理能力**:在高并发场景中表现出色,因此广泛应用于企业级项目部署。
- **主流发行版**:
- CentOS:适用于企业应用开发。
- Ubuntu:适合个人学习使用,界面较为美观。
#### 二、环境配置与虚拟机安装
- **虚拟机选择**:推荐使用VMware或VirtualBox等软件。
- **创建虚拟机**:
- **内存需求**:确保有足够的内存空间用于安装。
- **CPU配置**:参考物理机的资源进行适当设置,以满足虚拟机的需求。
- **内核与逻辑处理器**:每颗CPU内核可以利用超线程技术扩展为两个逻辑核心。
- **网络类型**:
- **桥接模式**:使虚拟机和物理机能平等访问外网。
- **NAT模式**:通过物理机作为网关连接外网,两者共享同一IP地址。
#### 三、Linux安装步骤
1. **准备ISO映像文件**:使用虚拟机设置功能选择已下载的CentOS镜像文件。
2. **选择桌面环境**:建议初学者选用Gnome界面。
3. **磁盘配置**:
- **根分区**:整个系统的主目录。
- **引导分区(Boot)**:用于存放启动Linux所需的文件,通常位于`boot`目录下。
- **文件系统类型**:可选为`ext4`或`xfs`。CentOS 7及以上版本推荐使用支持更大容量和更高性能的`xfs`作为默认格式。
- **交换分区(Swap)**:用于扩展内存空间,提高系统效率。
4. **网络配置**:修改主机名以便于访问。
5. **其他设置**:禁用Kdump以节省资源。
#### 四、基本命令与操作
- **终端使用**
- Linux的核心层为内核,而命令解释器则负责连接外部应用程序和内核。
- 常用的Shell命令:
- `ls`:列出当前目录下的所有文件和子目录。
- `cd`:切换工作目录。
- `pwd`:显示当前所在的工作路径。
- `cat`:查看或创建文本段落件内容。
- `touch`:新建空白文本段落档。
- `rm`:删除指定的文件或者整个目录(需要使用相应的选项)。
- `cp`:复制文件或目录到新的位置。
- `mv`:移动或重命名已存在的文件和目录。
- `chmod`:修改用户权限设置,以控制对文件及目录的操作访问权。
- `chown`:更改指定对象的所有者及其所属组。
- `grep`:搜索文本中符合特定模式的行并显示出来。
- `find`:在文件系统中的某个位置查找符合条件的文件或目录。
- `man`:查看命令的手册页,以获取详细信息和示例。
- **Tab键补全**:自动完成未输入完毕的部分路径名或命令名称。
- **路径表示法**:使用正斜杠“/”来分隔Linux中的不同层级的目录结构(如Windows中使用的反斜杠“\”)。
#### 五、Linux目录结构
- 根目录:“/”,所有其他文件和子目录均由此开始。
- 关键性重要路径:
- `bin`:存放常用的命令行工具程序。
- `sbin`:系统管理所需的二进制文件存放位置。
- `lib`, `lib64`:包含各种共享库,供应用程序链接使用。
- `usr`:用户应用软件及其所需资源的存储目录。
- `boot`:放置启动Linux时所必需的数据和程序文件。
- `dev`:设备节点所在的路径(如硬盘、光驱等)。
- `etc`:系统配置参数集中存放的位置,包括网络设置及服务配置信息。
- `home`:用户个人主目录的根位置。
#### 六、进阶知识点
- **用户与权限管理**
- 用户账户操作命令:“adduser”,“deluser”,和“usermod”。
- 文件或文件夹访问控制相关指令,例如使用`chmod`, `chown`来设置所有权及读写执行等权限。
- **进程监控**:
- 使用如ps, top这样的工具可以查看系统中正在运行的程序状态;
- 结束不需要的任务:通过kill命令或者pkill实现对特定PID或名称匹配的所有相关进程终止操作。
- **服务管理**
- 启动和停止服务使用systemctl