Linux期末综合训练(软件开发方向)

这篇具有很好参考价值的文章主要介绍了Linux期末综合训练(软件开发方向)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Linux操作系统

1. 命令设计

1.1 管理员常用操作

(1)以“2023/12/17 23:59:59”的格式显示当前系统时间。

date +"%Y/%m/%d %H:%M:%S"

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(2)查看当前登录在系统中所有用户的信息。

who

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(3)查看Linux系统的发行版本信息。

cat /etc/*-release

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(4)查看Linux系统中当前有哪些shell?

cat /etc/shells

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(5)在Linux系统中安装cshell。

yum install csh

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(6)查看当前Linux系统中创建的用户列表。

cat /etc/passwd

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(7)创建一个新用户(用户名自拟,此处以user01为例),设置其shell为csh,创建其家目录/home/user01。

  • 创建家目录/home/ypy
useradd -m -d /home/ypy -s /bin/csh ypy

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(8)通过命令,修改user01用户的shell为bash。

chsh -s /bin/bash ypy

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(9)给用户user01设置密码。

passwd ypy

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(10)查看/etc/passwd文件的最后一行,查看新建用户的记录信息。

tail -n 1 /etc/passwd

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(11)切换user01用户登录系统,看能否登录成功。

su – ypy

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(12)修改用户user01的用户id为2000。

su – ypy

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(13)将user01用户加入sudo附加组。

centOS 中是加入到wheel中

usermod -aG wheel ypy

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(14)删除用户user01及其家目录。

userdel -r ypy

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(15)查看当前Linux系统网口的ip地址配置。

ifconfig

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(16)查看Linux系统默认网关信息。

ip route show

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(17)测试下Linux主机与网关通信是否正常。

  • 查找默认网关地址

    ip route show default
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 测试通信

    ping -c 4 192.168.37.2
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(18)实时动态的监测系统CPU、内存等资源使用情况。

top

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(19)以友好的方式重启下Linux操作系统。

reboot

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

1.2 普通用户常用操作

(1)切换到一个普通用户下,查看当前登录用户的信息。

whoami
w

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(2)显示当前工作目录的完整路径。

pwd

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(3)在用户主目录下面,建立空文件file1、file2、file3、file4、建立目录 dir1、dir2。

cd ~
touch file1 file2 file3 file4
mkdir dir1 dir2

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(4)建立目录dir3 ,设置其权限为442。

mkdir dir3
chmod 442 dir3	

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(5)建立dir1文件夹的链接,链接符合名自定义。

ln -s dir1 ypy

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(6)统计下主目录下所有文件的数量。

ls -l | grep "^-" | wc -l

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(7)在file1文件中写入自己的“专业,班级,姓名,学号”信息。

vim file1

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(8)将file1文件内容重定向到file2文件中。

cat file1 > file2

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(9)把file3文件复制到dir1目录下。

cp file3 dir1/

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(10)用tar命令打包+压缩 dir1目录,备份名称自定。

tar -czvf backup_name.tar.gz dir1

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(11)把file4文件移动到dir2目录下。

mv file4 dir2/

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(12)更改dir2目录和目录下所有文件的权限为拥有者者具有全权,同组人具有读和写的权限,其他人只有执行的权限。

chmod -R 761 dir2

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(13)删除dir1目录。

rm -rf dir1

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(14)查找根目录下所有以“.conf”为后缀的文件。

sudo find / -type f -name "*.conf"

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(15)使用正则表达式,查找test.txt文件中所有的QQ邮箱地址。

  • 创建test.txt文件

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 正则表达式

    grep -oP '[1-9][0-9]{4,}@qq\.com' test.txt
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

(16)查看用户执行命令的历史记录。

history

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

2. 综合应用

2.1 挂载分区

在这里的所有操作,建议拍摄快照,如果出现问题,直接回到快照前

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  1. 在自己的操作环境上新增一个800M的磁盘,基于新增的磁盘划分一个256M的分区,将分区制作成能自动挂载的、可用的文件系统(挂载点/share)。给出操作步骤和相关截图(包括磁盘查看,挂载查看等操作)。
  • 新增800m磁盘

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 查看磁盘

    lsblk
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 创建新分区

    fdisk /dev/sbd
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 查看分区

    fdisk -l /dev/sdb
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 格式化新分区

    mkfs.ext4 /dev/sdb1
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 创建挂载点

    mkdir /share
    
  • 挂载新分区

    mkdir /share
    mount /dev/sdb1 /share
    df -h
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 设置自动挂载

    nano /etc/fstab
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

    ctrl+0 ctrl+x保存退出

  • 查看挂载结果

    mount -a
    df -h
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

2.2 jdk安装

  1. 从Oracle官网下载一个Linux版本的JDK安装包(选择自己开发环境对应的版本),并部署到Linux环境上,给出安装步骤以及测试结果。
  • 查询安装jdk版本

    yum -y list java*
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 安装jdk

    yum install -y java-1.8.0-openjdk.x86_64
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 查询是否安装成功

    java -version
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

2.3 mysql安装

  1. 从MySQL(或者Oracle等)数据库官网下载一个Linux版本的数据库安装包(选择自己开发环境对应的版本),并部署到Linux环境上,给出安装步骤以及测试结果。
  • 下载mysql

    https://downloads.mysql.com/archives/community/

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 移动文件到虚拟机root用户下,并解压

    tar -xvf mysql-8.1.0-1.el7.x86_64.rpm-bundle.tar
    
    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql
  • 检查mariadb,如果存在卸载掉

    rpm -qa|grep mariadb
    rpm -e --nodeps mariadb-libs
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 安装依赖

    rpm -ivh mysql-community-common-8.1.0-1.el7.x86_64.rpm
    rpm -ivh mysql-community-client-plugins-8.1.0-1.el7.x86_64.rpm
    rpm -ivh mysql-community-libs-8.1.0-1.el7.x86_64.rpm
    rpm -ivh mysql-community-client-8.1.0-1.el7.x86_64.rpm
    rpm -ivh mysql-community-icu-data-files-8.1.0-1.el7.x86_64.rpm
    rpm -ivh mysql-community-server-8.1.0-1.el7.x86_64.rpm
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 初始化并设置权限

    mysqld --initialize --console
    chown -R mysql:mysql /var/lib/mysql/
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 启动mysql和开机自启

    systemctl start mysqld
    systemctl enable mysqld
    
  • 查看临时密码并修改为123456

    cat /var/log/mysqld.log|grep localhost
    mysql -uroot -p
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 测试

    show databases;
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

2.4 tomcat部署

  1. 从apache官网下载一个Linux版本的tomcat部署包(选择自己开发软件对应的版本),并部署到Linux环境上,并能够正常运行,给出部署步骤以及测试结果。
  • 下载压缩包并上传到linux上

    https://tomcat.apache.org/download-90.cgi

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 解压

    tar -zxvf apache-tomcat-9.0.84.tar.gz
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 启动

    ./startup.sh		#启动
    ./shutdown.sh	#停止  
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

2.5 上线项目

  1. 将自己编写的web程序部署到tomcat中,并能够正常访问,给出操作步骤以及测试结果。
  • idea中打包项目(先清除再打包)

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

如果打包遇到错误,severlet不存在之类的,需要添加依赖

pom.xml

      <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>4.0.1</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>javax.servlet.jsp</groupId>
        <artifactId>javax.servlet.jsp-api</artifactId>
        <version>2.3.1</version>
        <scope>provided</scope>
      </dependency>
  • 打包出来的war包,复制到linux的tomcat中的webapps目录下面

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 进入bin目录,启动tomcat

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

    访问地址:http://localhost:8080/MyJavaWeb/

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

3. 程序设计

​ 请设计一个shell脚本,周期性采集Linux系统CPU、内存、磁盘开销的百分比,以及tomcat进程CPU和内存的开销情况。要求采集周期为1分钟。给出采集的shell脚本、周期性任务配置信息和采集的结果。

  • 创建shell脚本

    vim script.sh
    
    #!/bin/bash
    
    # 获取当前时间
    timestamp=$(date +"%Y-%m-%d %T")
    
    # 获取系统CPU使用率(取前5个核心的平均值)
    cpu_usage=$(top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | awk '{print 100 - $1}' | awk '{sum+=$1} END {print sum/5}')
    
    # 获取系统内存使用率
    mem_usage=$(free | awk 'NR==2{printf "%.2f\n", $3*100/$2}')
    
    # 获取磁盘使用率
    disk_usage=$(df -h | awk '$NF=="/"{printf "%s\n", $5}')
    
    # 获取tomcat进程的PID
    tomcat_pid=$(pgrep -f "catalina")
    
    # 获取tomcat进程CPU使用率
    tomcat_cpu_usage=$(top -p $tomcat_pid -bn1 | grep $tomcat_pid | awk '{print $9}')
    
    # 获取tomcat进程内存使用率
    tomcat_mem_usage=$(top -p $tomcat_pid -bn1 | grep $tomcat_pid | awk '{print $10}')
    
    # 输出采集结果
    echo "时间: $timestamp"
    echo "系统CPU使用率: $cpu_usage%"
    echo "系统内存使用率: $mem_usage%"
    echo "磁盘使用率: $disk_usage"
    echo "Tomcat进程CPU使用率: $tomcat_cpu_usage%"
    echo "Tomcat进程内存使用率: $tomcat_mem_usage%"
    echo "--------------------------------------------------"
    
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 添加权限

    chmod +x monitor.sh
    
  • 配置任务调度

    crontab -e
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

  • 查看日志

    cat log.txt~
    

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql

    Linux期末综合训练(软件开发方向),linux,学习,运维,tomcat,mysql文章来源地址https://www.toymoban.com/news/detail-763655.html

到了这里,关于Linux期末综合训练(软件开发方向)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 生成式AI在软件开发中的革新:自动化、效率、理解、创新与安全的综合考察

    本论文研究生成式AI在软件开发中的多个方面的影响,重点关注自动化和效率、理解和解决问题、创新和创造力、写作和沟通,以及安全和隐私。通过深入分析这些方面,我们可以更好地理解生成式AI对开发流程和工具的重塑。 人工智能(AI)在软件开发领域发挥着越来越重要

    2024年01月18日
    浏览(59)
  • Linux开发-Ubuntu软件源工具

    开发验证环境: 操作系统:ubuntu 20.04 软件源:http://archive.ubuntu.com/ubuntu 系统工具 开发工具 编译工具链 man文档 Python编程 python工具包 文档工具 开发工具 多媒体应用

    2024年02月07日
    浏览(48)
  • 【linux】SourceForge 开源软件开发平台和仓库

    在linux上面安装服务和工具。我们经常会下载安装包。今天推荐一个网站。 SourceForge 开源软件开发平台和仓库 ​ 全球最大开源软件开发平台和仓库 SourceForge.net,又称SF.net,是开源软件开发者进行开发管理的集中式场所。 SourceForge.net由VA Software提供主机,并运行SourceForge软件

    2024年02月08日
    浏览(47)
  • 【Linux环境基础开发工具】软件包管理器-yum

    今天我打算介绍如何在Linux环境下载软件, Linux作为一个操作系统,就像windows一样,当然是存在软件的。 目录 写在前面 怎么在Linux环境安装软件 源代码安装 rpm安装包安装 yum安装 如何理解Linux的生态 如何使用yum安装软件 如何更换yum源 总结: 写在最后: 一般来说,Linux下有

    2024年02月08日
    浏览(63)
  • Linux为何是软件开发专业人员的心头爱-Robotics Ubuntu

    Linux与Windows都是十分常见的电脑操作系统,相信你对它们二者都有所了解!在你的使用过程中,是否有什么事让你觉得在Linux上顺理成章,换到Windows上就令你费解?亦或者关于这二者你有任何想要分享的,都可以在这里留下你的看法~ 你可以从以下几个方面进行创作(仅供参

    2024年02月15日
    浏览(41)
  • lv3 嵌入式开发-2 linux软件包管理

    目录 1 软件包管理 1.1流行的软件包管理机制 1.2软件包的类型 1.3软件包的命名 2 在线软件包管理 2.1APT工作原理 2.2更新软件源 2.3APT相关命令 3 离线软件包管理 Debian Linux首先提出“软件包”的管理机制---Deb软件包           将应用程序的二进制文件、配置文件、man/info帮助页面

    2024年02月09日
    浏览(65)
  • 【Linux】软件包管理器yum与环境开发工具vim

    【Linux】基础常见指令:http://t.csdn.cn/hwLPb 【Linux】基本权限:http://t.csdn.cn/faFZg 目录 前言 一、软件包管理器yum 1.什么是软件包?  2. yum的使用 (1)包文件查询 (2)安装        (3)卸载 二、Linux开发工具vim ​编辑 1. vim的基本概念  2.vim的基本操作 (1)进入vim (2)[正常

    2024年02月11日
    浏览(53)
  • 加速开发RISC-V开源软件,Linux基金会启动RISE项目

    使用RISC-V架构为移动、消费电子、数据中心和汽车等领域提供商用软件。 Linux软件基金会在官博宣布了RISC-V软件生态系统 RISE,该项目由Linux Foundation Europe托管,并支持RISC-V International的全球开放标准活动和成就。 官网:https://riseproject.dev/ RISE项目专注于商业软件的准备工作,

    2024年02月08日
    浏览(61)
  • 1802_在Linux系统上开发ARM单机片机嵌入式软件

             全部学习汇总: GreyZhang/little_bits_of_linux: My notes on the trip of learning linux. (github.com) 1. 在Linux上也有嵌入式的开发环境,或许还有很多。不过,我现在接触到的大部分还是Windows居多。这一份文件介绍的是一个mbed platform这样一个开源的ARM嵌入式开发环境。可以支持C以

    2024年02月07日
    浏览(52)
  • RK3588平台开发系列讲解(USB篇)Linux Android USB软件架构

    平台 内核版本 安卓版本 RK3588 Linux 5.10 Android 12

    2024年02月09日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包