当前位置: 首页 > news >正文

【用户与进程】

文章目录

    • 一、实验目的
    • 二、实验环境
    • 三、实验内容与实现
      • 1. 创建用户登录脚本模板
      • 2. 设置用户默认文件权限
      • 3. 修改用户默认属性
      • 4. 设计用户登录ASCII图案
      • 5. 编写自动下载Shell脚本
    • 四、总结

一、实验目的

学习用户管理和进程管理

二、实验环境

  • 虚拟机软件:VMWare
  • 操作系统:Linux

三、实验内容与实现

1. 创建用户登录脚本模板

首先需要创建一个用户登录脚本模板,命名为/etc/skel-net22,并在其中添加用户须知文件。

# 创建模板目录
mkdir /etc/skel-net22# 创建用户须知文件
echo "欢迎使用系统,请注意遵守网络安全规定。" > /etc/skel-net22/网安22用户须知# 创建用户(以姓名拼音首字母为例,假设用户名为hyy)
useradd -k /etc/skel-net22 hyy# 切换到用户家目录检查文件
su - hyy
ls ~

2. 设置用户默认文件权限

设置用户默认创建文件的权限为610(即-rw–x-----),并验证设置是否生效。

# 编辑用户环境配置文件
echo "umask 067" >> ~/.bashrc# 使配置生效
source ~/.bashrc# 创建测试文件
touch test_file# 检查文件权限
ls -l test_file

3. 修改用户默认属性

修改用户的家目录和默认shell,并验证修改效果。

# 修改用户属性
usermod -d /home/20xxxxx007 -s /bin/csh hyy# 查看用户信息
id hyy# 恢复默认设置
usermod -d /home/hyy -s /bin/bash hyy

4. 设计用户登录ASCII图案

设计一个包含多种颜色和背景的ASCII欢迎图案,增强用户体验。

# 创建登录欢迎文件
nano ~/.bashrc# 添加以下内容(示例图案)
echo -e "\e[1;31;40m  _   _      _            \e[0m"
echo -e "\e[1;32;40m | \ | | ___| |_ __ _  ___ \e[0m"
echo -e "\e[1;33;40m |  \| |/ _ \ __/ _\` |/ _ \e[0m"
echo -e "\e[1;34;40m | |\  |  __/ || (_| |  __/\e[0m"
echo -e "\e[1;35;40m |_| \_|\___|\__\__,_|\___|\e[0m"
echo -e "\e[1;36;40m                               \e[0m"
echo -e "\e[1;37;40m 欢迎,$(whoami)!当前时间:$(date)\e[0m"

5. 编写自动下载Shell脚本

编写一个支持前台和后台下载的脚本,使用-d参数控制下载模式。

#!/bin/bash# 自动下载脚本
USAGE="Usage: $0 [-d] URL"# 检查是否提供URL参数
if [ $# -lt 1 ]; thenecho $USAGEexit 1
fi# 处理选项参数
BACKGROUND=0
while getopts "d" opt; docase $opt ind)BACKGROUND=1;;\?)echo $USAGEexit 1;;esac
done# 获取URL参数
shift $((OPTIND-1))
URL=$1# 下载函数
download_file() {FILENAME=$(basename $URL)echo "开始下载: $URL"wget -c $URL -O $FILENAMEecho "下载完成: $FILENAME"
}# 根据选项决定下载方式
if [ $BACKGROUND -eq 1 ]; thenecho "后台下载已启动,可安全注销。"nohup download_file > download.log 2>&1 &disown
elsedownload_file
fi

四、总结

  • 遇到的问题
    最开始提示用户无法创建,没有权限。通过查询getenforce发现它enforcing。
    在这里插入图片描述
    查阅资料,提示:如果输出是 Enforcing,这可能会影响权限。如果 SELinux 在攻击模式,可以临时将其设为 Permissive 模式以测试是否是 SELinux 导致的问题。在root中输入
    在这里插入图片描述
    经过排查,发现是SELinux的强制模式(Enforcing)阻止了用户创建操作。通过临时禁用SELinux的强制模式,成功解决了权限问题。后续可根据实际需求,通过修改/etc/selinux/config文件永久调整SELinux配置。

通过本次实验,我掌握了Linux系统中用户管理和进程控制的核心技能。
实验中遇到的SELinux权限问题让我深刻认识到Linux系统安全机制的重要性。在实际生产环境中,应谨慎配置SELinux,确保系统安全性的同时不影响正常操作。
此外,通过编写自动下载脚本,我学习了Shell脚本编程的基础知识,包括参数解析、后台进程管理和错误处理等。这些技能对日常系统管理工作非常实用。
总体而言,本次实验不仅加深了我对Linux系统原理的理解,也提升了我的实际操作能力和问题解决能力。

相关文章:

  • 2.安卓逆向2-adb指令
  • mvc-service引入
  • DG-3F三指机械灵巧手,3手指和12关节,单爪即可实现最高效率
  • 九、HQL DQL七大查询子句
  • 机器人弧焊二八混合气体节约
  • 《Java 大视界——Java 大数据在智能电网分布式能源协同调度中的应用与挑战》
  • centos7 基于yolov10的推理程序环境搭建
  • java17
  • 每日一道leetcode(新学数据结构版)
  • 高防服务器流量“清洗”什么意思
  • msf安卓远控木马手动捆绑正常apk
  • 分类预测 | Matlab实现ABC-Transformer人工蜂群算法优化编码器多特征分类预测/故障诊断Matlab实现
  • 【FileZilla】 从事件类型到消息类型的函数形参类型转化
  • 使用Beyond Compare显示有差异点进去又没差异 问题解决
  • 提高成功率!课题中的立项依据深度写作
  • 计算机视觉----基于锚点的车道线检测、从Line-CNN到CLRNet到CLRKDNet 本文所提算法Line-CNN 后续会更新以下全部算法
  • 养生:健康生活的核心策略
  • 蓝桥杯11届国B 约数
  • 道通龙鱼系列-混合翼无人机:垂直起降+长时续航
  • HGDB企业版迁移到HGDB安全版
  • 巴基斯坦与印度停火延长至18日
  • 创同期历史新高!1至4月全国铁路发送旅客14.6亿人次
  • 上海市国防动员办公室副主任吴斌接受审查调查
  • KPL“王朝”诞生背后:AG和联赛一起迈向成熟
  • 巴方:印度上周导弹袭击造成至少40名平民死亡
  • 王毅谈中拉论坛第四届部长级会议重要共识