Ansible 实训:题目详解与操作指南

需积分: 6 0 下载量 48 浏览量 更新于2024-08-07 1 收藏 21KB DOCX 举报
"15周 Ansible 应用实训—训练题.docx" Ansible 是一个自动化工具,主要用于系统管理和配置,以及应用部署。它通过SSH连接远程主机,无需在目标机器上安装任何代理,简化了自动化任务的实施。 1. 丢失root口令的解决方法通常包括启动到救援模式或单用户模式,然后重置root密码。具体步骤包括重启系统,选择引导选项进入救援模式,接着挂载根文件系统,使能网络,然后用`passwd`命令更改root密码。 2. 创建用户并设置权限,可以使用`adduser`或`useradd`命令创建用户,使用`chmod`和`chown`命令调整目录权限。例如,创建`/project_a`和`/project_b`,可以设置`750`权限,使David和Peter对`/project_a`有完全访问权,Jack和Mike对`/project_b`有完全访问权。 3. 对于增加硬盘和分区,首先需要识别新硬盘,如`sda`,然后使用`fdisk /dev/sda`进行分区。创建分区后,使用`mkfs`命令格式化,如`mkfs.ext4 /dev/sda1`等。对于Swap分区,使用`mkswap /dev/sda3`,最后使用`mount`挂载文件系统。 4. 配置服务器访问权限,可以通过`usermod`和`chown`命令创建用户和组,使用`chmod`设置权限。例如,创建`/home/caiwu`,将其设为`caiwu`组,`chmod 755 /home/caiwu`,再将用户添加到相应组,如`usermod -a -G caiwu caiwu01`,并调整`/home/caiwu`的权限以允许特定用户写入。 5. Linux系统的目录与文件结构遵循FHS(Filesystem Hierarchy Standard),例如,`/bin`存放基本命令,`/etc`存储配置文件,`/usr`包含应用程序,`/var`保存运行时变化的数据。 6. 绝对路径从根目录开始,如`/home/user`, 而相对路径不以`/`开头,如`../documents`,它相对于当前工作目录。 7. 在命令行中,`.`代表当前目录,`..`表示上级目录,`~`表示用户的家目录。 8. Linux文件系统中主要的文件类型包括普通文件、目录、链接文件、设备文件、套接字和管道。 9. 在命令中,使用`rwx`字符表示不同权限,如`rwxr-xr--`分别代表所有者、同组用户和其他用户的读写执行权限。 10. 使用`u`(用户)、`g`(组)、`o`(其他)和`a`(全部)来表示不同用户,如`chmod u+x file`表示给文件所有者增加执行权限。 11. 查看磁盘空间使用`df -h`,显示已用空间和剩余空间。 12. Ansible模块是Ansible中执行特定任务的代码单元,如`copy`、`file`和`command`。 13. Ansible的playbook是YAML格式的文件,用于定义自动化任务的序列和策略。 14. Ansible通过playbook执行配置管理,它按照playbook中的指令在远程主机上执行任务,实现批量自动化。 15. Ansible的常用模块包括:`copy`(复制文件),`file`(管理文件属性),`yum`(包管理),`service`(服务管理),`user`(用户和组管理),`template`(渲染模板文件)。 16. Ansible工作原理是通过SSH连接目标主机,使用playbook定义的任务集,执行模块并返回结果。 17. 示例:使用`copy`模块,配置如下: ```yaml - name: Copy file to /home/jack copy: src: /opt/aa.txt dest: /home/jack/ ``` 18. 示例:使用`file`模块设置权限: ```yaml - name: Set permissions on /home/jack/aa.txt file: path: /home/jack/aa.txt owner: jack group: jack mode: '0777' ``` 19. 示例:使用`cron`模块定义任务: ```yaml - name: Schedule a weekly task cron: name: "Weekly backup" minute: 30 hour: 14 day_of_week: fri job: "backup_script.sh" ``` 以上就是Ansible应用实训中的部分内容,涉及Linux系统管理、权限控制、磁盘管理、Ansible基础知识及其模块和playbook的使用。