Linux期末大作业

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

一、实验内容和要求:

看word

二、实验软件环境

        根据自己情况而定

三、步骤和截图

        1.在Linux下,安装git,使用git管理大作业相关的代码、配置文件等,要求有能反映大作业过程的git提交记录。

        首先下载git

        直接 sudo apt-get(或yum) install git 一了百了(如果愿意下载源码自己编译也行,自行搜索)

you@you:~$ git --version
  • 配置用户名和用户邮件(name随意,邮箱要有,什么邮箱也随意)
  • you@you:~$ git config --global user.name "ZZK"
    you@you:~$ git config --global user.email "Youreamil@email.com"
    you@you:~$ git config --list
    user.name=ZZK
    user.email=Youreamil@email.com
    
  • 配置Git的私钥和公钥.密码为空(密钥也可以不为空,为了简单方便,我直接设置成空)
  • linux大作业,linux,运维,服务器
  • 上github打开设置(我是用的github,不一定是github,仓库随意,用的舒服就好)
  • 进入个人设置点击 new ssh key
  • linux大作业,linux,运维,服务器
  • linux上打开id_rsa.pub文件,复制密钥到github上
  • linux大作业,linux,运维,服务器
  • linux大作业,linux,运维,服务器
  • 测试是否连接(如图,已经连接上了)
  • linux大作业,linux,运维,服务器
  • github创建项目,将远程仓库与本地仓库连接起来(把本地已有的同名Git仓库和GitHub上的仓库关联起来)
    • 我们在本地新建了一个名为Linux的文件夹
    • 根据github给出的提示进行操作
    • echo "# Linux" >> README.md
      git init
      git add README.md
      git commit -m "first commit"
      git branch -M main
      git remote add origin https://github.com/Zzkyou/Linux.git
      git push -u origin main
    • 之后只需要将文件复制到Linux文件中执行git add 跟git commit 就可以直接push了
    • linux大作业,linux,运维,服务器
    • linux大作业,linux,运维,服务器

        2.在Linux下,利用 socket 技术编写程序,包含客户端和服务端,实现两者之间的信息传递。 

  •    docker安装,docker安装很简单 ,b站搜索,很多教程。
  •    使用docker启动虚拟机 并配置java环境 
  •    
    you@you:~$ docker run -id --name=C1 -p 5209:5209 centos #端口映射要注意
    
    you@you:~$ docker run -id --name=C2 -p 5210:5209 centos
  •    进入centos镜像中

  •    将java安装文件拷贝到镜像中    

  • you@you:~$ ls javaflie/
    jdk-8u161-linux-x64.tar.gz  SocketService.class
    you@you:~$ docker cp javaflie/jdk-8u161-linux-x64.tar.gz C1:/root
  • [root@9f67c7a141fd /]# ls root
    anaconda-ks.cfg  anaconda-post.log  jdk-8u161-linux-x64.tar.gz  original-ks.cfg
  • 获取C1的ip

  • linux大作业,linux,运维,服务器

  •  编写服务端的代码

    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.io.PrintWriter;
    import java.net.ServerSocket;
    import java.net.Socket;
    
    public class SocketService {    //搭建服务器端
        public static void main(String[] args) throws IOException{
            SocketService socketService = new SocketService();
            //1、a)创建一个服务器端Socket,即SocketService
            socketService.oneServer();
        }
        public  void oneServer(){
            try{
                ServerSocket server=null;
                try{
                    //下面是端口,端口可以和客户端代码里面的端口一样
                    server=new ServerSocket(5209);
                    //b)指定绑定的端口,并监听此端口。
                    System.out.println("Service enable Success");
                    //创建一个ServerSocket在端口5209监听客户请求
                }catch(Exception e) {
                    System.out.println("No Listen:"+e);
                    //出错,打印出错信息
                }
                Socket socket=null;
                try{
                    socket=server.accept();
                    //2、调用accept()方法开始监听,等待客户端的连接
                    //使用accept()阻塞等待客户请求,有客户
                    //请求到来则产生一个Socket对象,并继续执行
                }catch(Exception e) {
                    System.out.println("Error."+e);
                    //出错,打印出错信息
                }
                //3、获取输入流,并读取客户端信息
                String line;
                BufferedReader in=new BufferedReader(new InputStreamReader(socket.getInputStream()));
                //由Socket对象得到输入流,并构造相应的BufferedReader对象
                PrintWriter writer=new PrintWriter(socket.getOutputStream());
                //由Socket对象得到输出流,并构造PrintWriter对象
                BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
                //由系统标准输入设备构造BufferedReader对象
                System.out.println("Client:"+in.readLine());
                //在标准输出上打印从客户端读入的字符串
                line=br.readLine();
                //从标准输入读入一字符串
                //4、获取输出流,响应客户端的请求
                while(!line.equals("end")){
                    //如果该字符串为 "bye",则停止循环
                    writer.println(line);
                    //向客户端输出该字符串
                    writer.flush();
                    //刷新输出流,使Client马上收到该字符串
                    System.out.println("Service:"+line);
                    //在系统标准输出上打印读入的字符串
                    System.out.println("Client:"+in.readLine());
                    //从Client读入一字符串,并打印到标准输出上
                    line=br.readLine();
                    //从系统标准输入读入一字符串
                } //继续循环
    
                //5、关闭资源
                writer.close(); //关闭Socket输出流
                in.close(); //关闭Socket输入流
                socket.close(); //关闭Socket
                server.close(); //关闭ServerSocket
            }catch(Exception e) {//出错,打印出错信息
                System.out.println("Error."+e);
            }
        }
    }
    
  • 编写客户端代码
  • import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.PrintWriter;
    import java.net.InetAddress;
    import java.net.Socket;
    import java.net.URL;
    
    public class SocketClient {
    
        // 搭建客户端
        public static void main(String[] args) throws IOException {
            try {
                // 1、创建客户端Socket,指定服务器地址和端口
    
                //下面是你要传输到另一台电脑的IP地址和端口
                Socket socket = new Socket("172.17.0.2", 5209);
                System.out.println("Client enable Success");
                // 2、获取输出流,向服务器端发送信息
                // 向本机的52000端口发出客户请求
                BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
                // 由系统标准输入设备构造BufferedReader对象
                PrintWriter write = new PrintWriter(socket.getOutputStream());
                // 由Socket对象得到输出流,并构造PrintWriter对象
                //3、获取输入流,并读取服务器端的响应信息
                BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
                // 由Socket对象得到输入流,并构造相应的BufferedReader对象
                String readline;
                readline = br.readLine(); // 从系统标准输入读入一字符串
                while (!readline.equals("end")) {
                    // 若从标准输入读入的字符串为 "end"则停止循环
                    write.println(readline);
                    // 将从系统标准输入读入的字符串输出到Server
                    write.flush();
                    // 刷新输出流,使Server马上收到该字符串
                    System.out.println("Client:" + readline);
                    // 在系统标准输出上打印读入的字符串
                    System.out.println("Service:" + in.readLine());
                    // 从Server读入一字符串,并打印到标准输出上
                    readline = br.readLine(); // 从系统标准输入读入一字符串
                } // 继续循环
                //4、关闭资源
                write.close(); // 关闭Socket输出流
                in.close(); // 关闭Socket输入流
                socket.close(); // 关闭Socket
            } catch (Exception e) {
                System.out.println("can not listen to:" + e);// 出错,打印出错信息
            }
        }
    
    }
    
  • 将代码分别拷贝到镜像中

  • linux大作业,linux,运维,服务器

  • 分别启动java程序

  • linux大作业,linux,运维,服务器

    linux大作业,linux,运维,服务器

  • 启动成功,测试是否能通信 

  • linux大作业,linux,运维,服务器

    linux大作业,linux,运维,服务器

     通信成功

 2.Hugo

        hugo下载上官网下载deb文件

        sudo dpkg -i hugo*.deb #安装hugo

        在你想要创建站点的文件夹(我是在用户名下面的hugo文件夹下)创建一个站点(如my-website)

        mkdir themes# themes用来管理主题

        hugo new site my-website #创建站点 

        进入站点可以看到用于构建Hugo站点的目录结构和主配置文件:

        archetypes/   config.toml    content/    data/    layouts/    public/    static/ 

         ln -s ../themes .  #建立符号链接用于管理主题

        cd ~/hugo/my-website git init # 让站点可以使用git 

        拉取主题,拉取你喜欢的主题

        git submodule add "主题的html" themes/"主题名的文件" #如下

        linux大作业,linux,运维,服务器         打开confit.toml文件,将主题加入,还有将baseURL修改为自己linux机的ip(这里我主题使用了另外一个,与上图示例不同,但无影响,只要themes文件中存在该主题就行)

        linux大作业,linux,运维,服务器

        为网站创建新页面 

      # 在 my-website目录下

        hugo new about.md

        创建第一篇文章 

        hugo new post/My-First-Post.md 

        这时候你就可以在md文件中写你的内容了

建立和服务网站

        hugo server --bind=0.0.0.0 --baseUrl=http://your_domain_or_IP/ 

        就可以开启hugo自带的服务器了,端口是1313

        浏览器输入 http://your_domain_or_IP:1313 就可以看见你的网页

        当你更新完代码后,需要输入

          安装nginx,(自行搜索,教程太多了)

        之后再my-website下 执行 hugo 命令,生成public文件,然后将ngnix中html的文件替换为public文件中的内容,刷新浏览器就可以看见自己的博客了。

部分知识选自网络,如有侵权,通知删之文章来源地址https://www.toymoban.com/news/detail-790958.html

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

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

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

相关文章

  • Linux本地部署1Panel服务器运维管理面板并实现公网访问

    1Panel 是一个现代化、开源的 Linux 服务器运维管理面板。高效管理,通过 Web 端轻松管理 Linux 服务器,包括主机监控、文件管理、数据库管理、容器管理等 下面我们介绍在Linux 本地安装1Panel 并结合cpolar 内网穿透工具实现远程访问1Panel 管理界面 执行如下命令一键安装 1Panel: 安

    2024年02月04日
    浏览(98)
  • [1Panel]开源,现代化,新一代的 Linux 服务器运维管理面板

    本期测评试用一下1Panel这款面板。1Panel是国内飞致云旗下开源产品。整个界面简洁清爽,后端使用GO开发,前端使用VUE的Element-Plus作为UI框架,整个面板的管理都是基于docker的,想法很先进。官方还提供了视频的使用教程,本期为大家按照本专栏的基本内容进行多方面的测评。

    2024年02月07日
    浏览(94)
  • Linux服务器常见运维性能测试(3)CPU测试super_pi、sysbench

    最近需要测试一批服务器的相关硬件性能,以及在常规环境下的硬件运行稳定情况,需要持续拷机测试稳定性。所以找了一些测试用例。本次测试包括在服务器的高低温下性能记录及压力测试,高低电压下性能记录及压力测试,常规环境下CPU满载稳定运行的功率记录。 这个系

    2024年02月02日
    浏览(55)
  • 华为云云耀云服务器L实例评测 | Linux系统宝塔运维部署H5游戏

    本章节内容,我们主要介绍华为云耀服务器L实例,从云服务的优势讲起,然后讲解华为云耀服务器L实例资源面板如何操作,如何使用宝塔运维服务,如何使用运维工具可视化安装nginx,最后部署一个自研的H5的小游戏(6岁的小朋友玩的很开心😁)。 前端的同学如果想把自己

    2024年02月07日
    浏览(58)
  • Linux期末大作业

    一、实验内容和要求 : 看word 二、实验软件环境         根据自己情况而定 三、步骤和截图         1.在Linux下,安装git,使用git管理大作业相关的代码、配置文件等,要求有能反映大作业过程的git提交记录。         首先下载git         直接 sudo apt-get(或yum) install g

    2024年02月01日
    浏览(30)
  • 迁移Linux服务器用户数据(将一个服务器的Linux用户数据迁移到另一个Linux服务器用户的流程)

    先来到根目录,再使用tar命令打包数据: tar czvf root.zip.gz ./* 在根目录使用指令: scp 打包好的数据 用户@ip:目的用户下的某个目录 源Linux服务器用户 : 查看压缩包是否到达: 对收到的数据进行解压,使用指令 tar xzvf root.zip.gz 解压到当前目录下。 目的Linux服务器用户 : 看到

    2024年02月08日
    浏览(50)
  • 【Linux学习笔记】Linux服务器:配置与管理samba服务器

    一、【linux学习笔记】红帽Linux 7.8系统在虚拟机上的安装 二、【Linux学习笔记】Linux系统的基本操作  三、【Linux学习笔记】管理Linux操作系统:用户管理  四、【Linux学习笔记】管理Linux操作系统:磁盘管理 五、【Linux学习笔记】管理Linux操作系统:软件安装  六、 【Linux学习

    2024年02月02日
    浏览(49)
  • linux服务器禁止ping命令,linux服务器禁ping如何解除

      我是艾西,在我们搭建网站或做某些程序时,不少人会问禁ping是什么意思,怎么操作的对于业务有哪些好处等,今天艾西一次给你们说清楚。 禁PING的意思是:不允许电脑、设备或服务器使用PING功能。一般情况下电脑、防火墙、服务器都是允许PING功能的,不需要特别设置

    2023年04月20日
    浏览(50)
  • 【Linux】云服务器搭建Linux环境

    目录 🍊一.环境选择🍊 🍎二.购买云服务器🍎 🍏三.使用XShell远程登录云服务器🍏 1.下载XShell 2.进入授权界面,填写姓名和邮件,选择只需Xshell   3.填写信息后,会将下载链接发到邮件,点击链接下载安装即可 4.进入XShell ,使用命令行方式远程登录云服务器          

    2024年02月04日
    浏览(66)
  • Java中将本服务器的文件拷贝到另一个服务器(Linux to Linux)

    在Java中,将文件从一个服务器复制到另一个服务器,你可以使用Secure Copy(SCP)进行操作。Java中的 JSch 库可以进行此操作。 首先,需要添加 JSch 库依赖到你的项目中。如果你使用的是Maven,可以添加以下依赖: 以下是一个使用 JSch 进行SCP操作的示例: 这段代码首先创建了一

    2024年02月13日
    浏览(64)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包