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

Linux 学习笔记2

Linux 学习笔记2

    • 一、定时任务调度
      • 操作流程
      • 注意事项
    • 二、磁盘分区与管理
      • 添加新硬盘流程
      • 磁盘管理命令
    • 三、进程管理
      • 进程操作命令
      • 服务管理(Ubuntu)
    • 四、注意事项


一、定时任务调度

操作流程

  1. 创建脚本

    vim /path/to/script.sh  # 编写脚本内容
    
  2. 设置可执行权限

    chmod 744 /path/to/script.sh
    
  3. 编辑定时任务

    crontab -e  # 添加任务条目
    
  4. 任务格式

    * * * * * /绝对路径/script.sh
    
    字段含义取值范围
    第1位分钟0-59
    第2位小时0-23
    第3位1-31
    第4位1-12
    第5位周几0-7(0和7均为周日)
  5. 管理任务

    crontab -l    # 查看所有任务
    crontab -r    # 删除所有任务(慎用!)
    
  6. 重启服务

    service cron restart   # Ubuntu/Debian
    systemctl restart crond # CentOS/RHEL
    

注意事项

  • 临时禁用任务:在 crontab -e 中用 # 注释任务行
  • 日志查看:tail -f /var/log/cron(CentOS)或 /var/log/syslog(Ubuntu)

二、磁盘分区与管理

添加新硬盘流程

  1. 虚拟机添加硬盘

    • VMware设置中新增硬盘 → 重启生效
  2. 查看硬盘信息

    lsblk -f  # 显示分区及文件系统
    
  3. 分区操作

    sudo fdisk /dev/sdb  # 假设新硬盘为sdb
    
    • 操作步骤:
      • n 新建分区
      • p 主分区
      • 设置分区大小(默认全盘)
      • w 保存并退出
  4. 格式化分区

    sudo mkfs -t ext4 /dev/sdb1  # 格式化为ext4
    
  5. 挂载分区

    sudo mkdir /mnt/newdisk      # 创建挂载点
    sudo mount /dev/sdb1 /mnt/newdisk  # 临时挂载
    
  6. 永久挂载
    编辑 /etc/fstab

    /dev/sdb1  /mnt/newdisk  ext4  defaults  0  0
    
    sudo mount -a  # 测试配置是否正确
    

磁盘管理命令

命令功能常用选项
df -h查看磁盘空间-h(人类可读格式)
du -sh /目录统计目录大小-s(汇总)、-h(可读格式)
tree -L 2 /目录树状显示目录结构-L n(限制层级)

三、进程管理

进程操作命令

命令功能示例
ps aux查看所有进程ps aux | grep nginx
kill PID终止进程kill 1234
killall 进程名终止同名所有进程killall httpd
pstree -p树状显示进程pstree -p | less

服务管理(Ubuntu)

systemctl list-unit-files  # 查看所有服务
systemctl enable nginx     # 设置开机自启(替代chkconfig)

四、注意事项

  1. 定时任务

    • 脚本中建议使用绝对路径
    • 复杂任务建议写入日志:* * * * * /script.sh >> /var/log/script.log 2>&1
  2. 磁盘分区

    • 生产环境操作前务必备份数据
    • fdisk 误操作可能导致数据丢失
  3. 进程管理

    • kill -9 是强制终止信号,可能导致资源未释放
    • 推荐先尝试 kill -15(默认终止信号)

通过这份补充整理,可系统掌握Linux定时任务、磁盘管理及进程控制的核心操作,建议结合虚拟机实操练习以加深理解。

http://www.xdnf.cn/news/359947.html

相关文章:

  • LeetCode:101、对称二叉树
  • STM32GPIO输入实战-key按键easy_button库移植
  • flex 还是 inline-flex?实际开发中应该怎么选?
  • 【Python 列表(List)】
  • 传统数据展示 vs 可视化:谁更打动人心?
  • 第十七节:图像梯度与边缘检测-Sobel 算子
  • Python函数:从基础到进阶的完整指南
  • 2006-2023年各省研发投入强度数据/研究与试验发展(RD)经费投入强度数据(无缺失)
  • 【大语言模型ChatGPT4/4o 】“AI大模型+”多技术融合:赋能自然科学暨ChatGPT在地学、GIS、气象、农业、生态与环境领域中的应用
  • Python基础学习-Day20
  • Transformer编码器+SHAP分析,模型可解释创新表达!
  • 星云智控:物联网时代的设备守护者——卓伊凡详解物联网监控革命-优雅草卓伊凡
  • 2021-11-15 C++下一个生日天数
  • 【计算机视觉】OpenCV实战项目: opencv-text-deskew:实时文本图像校正
  • Bitcoin跨链协议Clementine的技术解析:重构DeFi生态的信任边界
  • .Net HttpClient 概述
  • CTF-DAY11
  • ClickHouse多表join的性能优化:原理与源码详解
  • WebSocket:实时通信的新时代
  • List<T>中每次取固定长度的数据
  • 报错 | vitest中,vue中使用jsx语法,报错:ReferenceError: React is not defined
  • 图上思维:基于知识图的大型语言模型的深层可靠推理
  • YOLOv8 优化:基于 Damo-YOLO 与 DyHead 检测头融合的创新研究
  • Android Framework学习四:init进程实现
  • 矩阵分解——Cholesky分解,LU分解,LDLT分解
  • 华为5.7机考第一题充电桩问题Java代码实现
  • Sourcetree安装使用的详细教程
  • 深入解析网络联通性检测:ping 与 tracert 的原理、用法及实战应用
  • 范式之殇-关系代数与参照完整性在 Web 后台的落寞
  • Linux基础篇命令整合表(大全)