linux应用程序开发,读书笔记
### Linux应用程序开发基础知识点 #### 一、Linux操作系统概述 **Linux** 是一款免费且开源的类Unix操作系统,因其稳定性高、安全性好等特点,在服务器领域得到了广泛应用。在Linux环境中进行应用程序开发,开发者需要掌握一系列核心概念和技术。 #### 二、SWAP交换分区 **SWAP交换分区** 类似于Windows系统中的虚拟内存区域。当物理内存不足时,系统会将一部分不活跃的数据移动到SWAP分区中,从而释放物理内存供其他程序使用。这一机制有助于提升系统的整体性能和响应速度。 #### 三、GRUB引导装入器 **GRUB** (Grand Unified Bootloader) 是一种常见的Linux引导装载程序,用于加载操作系统内核。它通常位于硬盘的主引导记录(MBR)处。如果在Windows系统下删除了包含Linux分区的硬盘,可能会导致GRUB丢失,进而影响Windows系统的启动。为了避免这种情况,可以通过备份GRUB配置文件等方式进行预防。 #### 四、挂载与挂载点 - **挂载** 是指将一个文件系统(通常是硬盘分区或外部存储设备)连接到文件系统层次结构中的某个目录。例如,命令 `mount /dev/sda1 /mnt/u` 表示将 `/dev/sda1` 分区挂载到 `/mnt/u` 目录下。 - **挂载点** 指的是文件系统层次结构中用于挂载文件系统的具体目录位置。 #### 五、Linux文件类型与属性 - **文件类型** 包括普通文件、目录文件、链接文件和设备文件等。 - **普通文件** 存储数据。 - **目录文件** 包含文件名和子目录名以及指向那些文件和子目录的指针。 - **链接文件** 类似于“快捷方式”,可以实现对不同目录、文件系统甚至不同机器上文件的快捷访问。 - **设备文件** 位于 `/dev` 目录下,分为块设备文件和字符设备文件。 - **文件属性** 以 `-rwxrwxrwx` 的形式表示,其中: - 第一个字符表示文件类型:`-` 表示普通文件,`d` 表示目录文件,`l` 表示链接文件,`c` 表示字符设备文件,`b` 表示块设备文件。 - 接下来的三组三个字符分别表示文件所有者、所属用户组和其他用户的权限。 #### 六、Shell命令解释程序 - **Shell** 是用户与操作系统之间的交互界面。当用户在命令行下工作时,实际上是在与Shell进行交互,而不是直接与操作系统内核交流。 - Shell提供了丰富的命令和脚本编写功能,如条件判断、循环控制等,是进行系统管理和脚本编程的基础工具。 #### 七、常用命令详解 1. **用户切换** (`su`):用于切换用户身份。例如,从普通用户切换到管理员(root)账户时,建议使用 `-` 选项,以便继承root的环境变量。 2. **用户管理** (`useradd`, `passwd`): - `useradd` 用于创建新用户。 - `passwd` 用于更改用户密码。 3. **系统管理** (`ps`, `kill`): - `ps` 用于显示当前系统中运行的进程信息。 - `kill` 用于向特定进程发送信号,例如终止进程。 4. **磁盘管理** (`fdisk`, `free`, `df`, `du`, `mount`): - `fdisk` 用于查看硬盘分区情况及对硬盘进行分区管理。 - `free` 显示当前系统内存使用情况。 - `df` 显示文件系统磁盘占用情况。 - `du` 显示目录占用磁盘情况。 - `mount` 用于挂载文件系统。 5. **文件目录操作** (`cd`, `cp`, `ls`, `pwd`): - `cd` 用于改变当前工作目录。 - `cp` 用于复制文件。 - `ls` 用于列出目录内容。 - `pwd` 用于显示当前工作目录的完整路径。 通过上述知识点的学习,开发者能够更好地理解和使用Linux系统,为后续的应用程序开发打下坚实的基础。
剩余30页未读,继续阅读
- 粉丝: 0
- 资源: 7
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于ESP32和AWS IoT Core的室内温湿度监测系统.zip
- (源码)基于Arduino的I2C协议交通灯模拟系统.zip
- coco.names 文件
- (源码)基于Spring Boot和Vue的房屋租赁管理系统.zip
- (源码)基于Android的饭店点菜系统.zip
- (源码)基于Android平台的权限管理系统.zip
- (源码)基于CC++和wxWidgets框架的LEGO模型火车控制系统.zip
- (源码)基于C语言的操作系统实验项目.zip
- (源码)基于C++的分布式设备配置文件管理系统.zip
- (源码)基于ESP8266和Arduino的HomeMatic水表读数系统.zip