前言

我们,迎着黑暗前进,背后是点亮的光明。

本系列项目为配合启点科研的Linux/Unix基本训练。

FromZero Training Project 103 Linux


Introduction00:server

  1. 云服务器(远端 remote):

    1. IP地址: 111.67.194.244

    2. Web域名:fzero.hnhut.cn

    3. 操作系统:ubuntu 20.o4

    4. 系统邮箱:fromzerox@126.com

  2. windows终端工具(本地 local):

    1. ssh term: finalshell , xshell

    2. ssh ftp: winscp, xftp

    3. ssh 编辑器: editplus, VScode

  3. 申请账号和初始密码

    1. 基于申请人姓名的账号名

    2. 发信给团队邮箱申请

2025/08/06


Training01: login

  1. ssh终端软件 (finalshell)

    1. 在windows下载安装 终端软件 如 finalshell

    2. 根据软件说明设置云服务器的登录信息

      1. 主机地址: 如 111.67.194.244

      2. 端口号: 22

      3. 用户名:个人账号 如 student (联系系统管理员)

      4. 密码:个人账号密码 如 assistant

    3. 远程登录

      1. 如果需要,可改变自己账号的密码

      2. 登录后可以看到远程系统的介绍文字

      3. 和提示符,如tutor@ceshi20:$

      4. 在提示符后练习输入一下

  2. 在终端下练习基本指令

    1. 列目录内容 : ls

    2. 当前路径:pwd

    3. 建立新目录:mkdir

    4. 改变当前目录: cd

    5. 拷贝文件: cp

    6. 迁移文件:mv

    7. 创建文件:touch

    8. 删除文件:rm

  3. 参考图片

    1. final shell 配置

2025/08/06


Training02: up and down load

  1. ssh ftp 软件: (Winscp)

    1. 在windows下载安装 ssh ftp 软件 如 winscp

    2. 配置登录信息

      1. 主机地址: 如 111.67.194.244

      2. 端口号: 22

      3. 用户名:如 student

      4. 密码:如 assistant

    3. 登录

    4. 远端和本地之间上传下载文件 winscpjpg

  2. 编辑软件 远程设置 (Editplus)

    1. 在windows下载安装editplus

    2. 在File-》Ftp->Ftp Setting配置远端参数

      1. 协议:sftp

      2. 端口:22

      3. 目录:设置为需要上传文件的目录

    3. 本地编辑文件并上传 editplus

2025/08/06


Training03: files

  1. Linux的文件系统:

    1. 输入 ls -al

      1. 类型:目录、文本文件、可执行文件,脚本文件、链接等 (注:和windows的文件系统的区别)

      2. 权限:Linux的每个文件,对于不同登录账号有三级(所属者,所属组,其他者)和三类使用权限(可读r,可写w,可执行x)

    2. 目录:

      1. 看当前目录位置 pwd

      2. 在当前目录建立新的目录 mkdir study

      3. 进入目录 cd study

      4. 列目录 pwd

      5. 回到此账号初始目录 cd

      6. 进入上一级目录 cd..

      7. 进入系统根目录 cd/

      8. 列目录 ls -al

    3. 创建个文件

      1. 进入刚建立的 study 目录:cd ~/study

      2. 创建文本文件

        1. 通过touch 建立空文件: touch first.txt (注:linux 没有扩展名的绝对需要,用于类型识别)

        2. 在windows上建立文本文件second.txt,通过sftp软件上传到,账号的study目录

        3. 通过重定向建立文件(将终端的输出内容,重定向输出到文件): ls -al > third.txt

      3. 列目录: ls -al

      4. 看文件内的内 : cat

      5. 删除文件 rm first.txt

      6. 移动文件 mv second.txt ../

      7. 改文件名 rename third.txt first.txt

      8. 拷贝文件 cp first.txt forth.txt

    4. 文件编码

      1. 是一个编辑的文本,保持成文件时有特点的编码方式,(和计算机发展历史和操作系统有关)

      2. 在windows下编写的文本文件,上传到linux中,有可能出现乱码,可能是文件编码方式不兼容。

      3. 在editplus中,可以改变保存文件的编码。

        1. 创建一个文件,输入一些文字。

        2. save as 时候,可以选择encoding。可以尝试改变编码。(纯英文编码ANSI,纯中文Unicode, 混合 UTF-8等)

        3. 有些有windows中的文件格式和特殊编码(如 word 编码 .docx), 如果要在linux读写,需要下载特殊的编码器和图形软件。

2025/08/08


Training04: bash and script

  1. 说明

    1. linux 有多种 shell 可称为 命令行解释器,解释输入命令以操控linux系统和计算机硬件

    2. bash 是最广泛和多少linux系统默认的 shell, 也是对应一种脚本script语言

    3. script 可以理解为 windows .bat 用于操控Linux连续执行多行命令。

  2. 通配符

    1. 列出当中账户目录下的全部以.txt为扩展名的文件: find ~/ -name "*.txt"

    2. 列出当前所以账号目录下的全部.txt为扩展名的文件: find /home -name ".txt"

    3. 发现有些 Permission denied 的目录 说明 此账号 没有权限 浏览其他账号的 目录内容

  3. 写脚本

    1. 可以在windows下编辑一个脚本以.sh为扩展名, 如 study.sh

  4. 参考资料

    1. www.csdn.net 中查找:"Linux脚本:Bash脚本看这一篇就够了''

    2. Shell 教程 | 菜鸟教程

    3. Bash 脚本教程 - 网道

2025/08/09


Training05: python3

  1. 说明

    1. 不同于windows,在服务器中运行python, 所用账号如不特别操作,使用共用的 python

    2. 为了区分python2 和 python, 在linux 输入 python3 开启 命令符解释方式

    3. 输入 >>> print('Hello World!')

    4. 推出 >>> exit()

    5. 注意:中英文切换,全角半角区别

  2. 程序

    1. 注:在linux下是不能像在windows下直接输出图像图形的。(可以通过web方式,见下)

    2. python程序,可以理解为一种脚本,并被python解析执行

    3. windows中编写写个短程序,文本文件,上传linux。如: mypython.py

    4. 执行 python3 mypython.py

  3. 虚拟环境

    1. python 使用 库/包 , 但是每个账号或每个项目会使用不同的包或者不同版本的包

    2. 可以建立个人的虚拟环境,安装只属于此虚拟环境的包和库,并执行.py 脚本

    3. 常用的虚拟环境是 venv

      1. 创建并进入 项目目录

        1. mkdir firstpython

        2. cd firstpython

      2. 创建一个虚拟环境 python3 -m .venv (注:可以用其他环境 名称)

      3. 列目录 ls -al

      4. 激活虚拟环境 source ./bin/.venv

      5. 查看提示符的改变

      6. 在此虚拟环境下 安装的包/库 只在此虚拟环境下 可用

      7. 对于一个成熟的python 软件, 会搭配 requirements.txt, 说明此python程序依赖的包/库和版本

      8. 用 pip3 操作所需要的库/包

        1. 安装 pip3 install 包名字==版本号

        2. 查看 pip3 list

        3. 导出依赖 pip freeze > requirements.txt

        4. 从包依赖文件 pip install -r requirements.txt

      9. 退出此虚拟环境 deactivate

      10. 删除此虚拟环境 rm -rf .venv (即删除 .venv 目录)

    4. Linux中 每个python项目都需要 在虚拟环境下 安装依赖 才能执行

  4. 参考资料

    1. Python 虚拟环境创建(venv) | 菜鸟教程

2025/08/09


Training06: editor

  1. 说明:

    1. linux 有自己的基于 终端的 编辑器

    2. 目前推荐 先在windows 下 用编辑器 进行撰写和编辑

    3. 保存成合适的编码

    4. 然后通过sftp 上传到linux所需目录

    5. 更改合适的权限

    6. 用linux的编辑器查看或做少量修改

    7. 对于短脚本和代码可以直接用linux提供的编辑器,(注 全部用键盘操作,无鼠标功能)

  2. VIM

    1. VI 和其 后续版本 如 vim 是非常非常著名且历史悠久的 linux 编辑器

    2. Linux 程序员和管理员 第一首选

    3. 需要学习操控指令, ESC键 用于切换 控制模式和编辑模式

    4. 参考:

      1. https://www.runoob.com/linux/linux-vim.html

      2. https://blog.csdn.net/qq_40650558/article/details/104565133

  3. NANO

    1. nano 是linux 下 易于操作的 编辑器 (不用鼠标)

    2. nano 文件名

    3. ^ 为 ctrl 键

    4. 参考:

      1. Nano 编辑器高效使用指南:从入门到精通-CSDN博客

  4. Emacs

    1. 不但是个文本编辑器

    2. 也是个可扩展的程序开发环境

    3. 目前咱还是有时间学着玩吧

    4. WIndows下的开发环境更熟

2025/08/09


Training07: web

  1. 说明

    1. Web 是建立在网络(network) 基础上的,实现服务器(server) 和客户端(client), 远端和本地,甚至一个computer 内部的多程序 之间 的 文件传输,数据通信,和其他功能

    2. Web 服务器软件, 如 nginx, apache 等,是一个软件,用于路由文件并为本地的浏览器引导 web主页文件。

    3. 网络是一个复杂的结构,我们目前知道最上层的,基本知识

      1. IP 地址 address: 可理解为 在网络上 通信端 的 家庭地址 如 111.67. 194.244

      2. 域名:是英文或中文名 用于指代 IP地址 为了好记

      3. 端口 port:这个通信数据进出家庭的 门口号码 80端口

      4. URL:URL(Uniform Resource Locator)是指网络上统一资源定位符

      5. 查看本机tcp协议的通信端口使用情况:

        1. netstat -altp

      6. 查看网络上一个地址和端口是否可用

        1. ping fzero.sinogourd.com

        2. 退出 ctrl+c

  2. 个人主页

    1. 可以用Edge、chrome, Firefox等浏览器 打开浏览显示的文件,很多用处 。。。

    2. 已经在linux器下安装 nginx, Web服务器软件, 域名是 fzero.hnhut.cn 端口号 80

    3. 在windows浏览器 http://fzero.hnhut.cn/ 可以打开远端web服务器的根主页

    4. 我在每个账号下已经建立了一个 html 目录和一个起始索引index.html文件,用于放置 个人主页

    5. 在浏览器 输入 http://fzero.hnhut.cn/你的账号 如:http://fzero.hnhut.cn/student

    6. 你可以修改个人账号下html目录下的,index.html 文件内容

    7. 如果想建立更加复杂静态网页,需要学习 html 脚本语言 和 css 脚本结构

    8. 当然可以用 typora, word, Dreamweaver 等软件编辑网页文件, 导出,转换或保存成 html文件

    9. 2025/08/09

 

  1. Typora

    1. 我们可以在Typora中用Markdown脚本语言编辑一个文本文件

    2. 设置导出方式,文件->导出->导出设置->html 见下图

    3. 然后,文件->导出->html 保存或重写命名成 index.html

    4. 上传 Linux /home/个人账号目录/html/ typorahtml

Training08: python api


Training09: cuda/GPU


Training010: deeplearning


The END.

启点科研 fzero.sinogourd.com