### Linux 学习笔记知识点梳理
#### 安装 VMware Tools 的步骤
1. **权限切换:** 首先确保用户具有 root 权限。如果当前用户不是 root,可以通过 `su - root` 命令切换到 root 用户。
2. **安装前准备:** 在 `/tmp` 目录下解压 vmware-tools 包。通常情况下,可以在 `/tmp` 文件夹中找到由 VMware 虚拟机自动生成的 `vmware-tools-distrib` 文件夹。
3. **执行安装脚本:** 进入 `vmware-tools-distrib` 目录并运行安装脚本。具体命令为:
```bash
cd /tmp/vmware-tools-distrib
./vmware-install.pl
```
4. **确认安装过程:** 在安装过程中按回车键确认各个选项,直到提示重启。
5. **系统重启:** 完成安装后,通过 `reboot` 命令重启虚拟机。
#### Samba 服务配置与使用
1. **配置文件修改:**
- 使用文本编辑器打开 `/etc/samba/smb.conf` 文件进行必要的配置修改。
2. **添加用户:**
- 使用 `smbpasswd -a zhouwei` 命令添加一个名为 zhouwei 的 Samba 用户。
3. **启动或重启服务:**
- 执行 `service smb restart` 或者 `/etc/init.d/smb restart` 来启动或重启 Samba 服务。
4. **验证服务:**
- 通过查看服务状态来确认 Samba 服务是否正常运行。
5. **网络配置:**
- 通过 `ifconfig eth0` 查看网络接口 eth0 的 IP 地址,确保网络配置正确。
#### GCC 编译器的使用
1. **GCC 版本检查:**
- 使用 `gcc -v` 命令可以显示当前系统的 GCC 版本信息。
2. **编译单个文件:**
- 在命令行中使用 `gcc -c <源文件名>.c -o <目标文件名>.o` 可以将 C 源文件编译为对应的 `.o` 目标文件。
3. **链接多个文件:**
- 将多个 `.o` 文件链接生成可执行文件,使用 `gcc <目标文件1>.o <目标文件2>.o -o <输出文件名>` 命令。
4. **编译并链接:**
- 如果希望一次完成编译和链接的过程,可以使用 `gcc <源文件1>.c <源文件2>.c -o <输出文件名>`。
5. **Makefile 的编写:**
- 创建一个简单的 Makefile 文件来自动化编译和链接过程,例如:
```makefile
LIBS = -lm
OBJS = hello.o star.o
myprog: $(OBJS)
gcc -o myprog $(OBJS) $(LIBS)
clean:
rm -f myprog $(OBJS)
```
#### GDB 调试器的使用
1. **GDB 介绍:**
- GDB (GNU Debugger) 是一款强大的调试工具,用于调试使用 C、C++ 和其他语言编写的程序。
2. **编译带调试信息的程序:**
- 使用 `-g` 选项编译程序,以便 GDB 能够获取到调试信息。例如:`gcc -g tst.c -o tst`。
3. **启动 GDB:**
- 使用 `gdb <程序名>` 启动 GDB 并加载指定程序。
4. **查看源代码:**
- 使用 `list` 命令查看程序的源代码。
5. **设置断点:**
- 使用 `break <行号>` 或 `break 函数名` 设置断点。
6. **运行程序:**
- 使用 `run` 命令运行程序。
7. **单步执行:**
- 使用 `step` 或 `next` 命令逐行执行程序,其中 `step` 会进入函数调用,而 `next` 不会。
8. **变量观察:**
- 使用 `print` 命令查看变量值。
9. **条件断点:**
- 设置带有条件的断点,例如 `break 16 if i == 10`。
以上是根据提供的 Linux 学习笔记中的内容所总结的关键知识点。这些知识点涵盖了从基础的命令行操作到较为高级的调试技术,对于初学者来说非常实用。通过实践这些技能,可以更深入地理解 Linux 系统的工作原理,并提高解决实际问题的能力。