【前端必备】linux知识整理

本文详细介绍了Linux操作系统的基础知识,包括远程登录、文件系统、用户权限管理、Vim编辑器的使用,以及软件安装过程。此外,还深入讲解了Docker的安装、镜像、容器和仓库的概念,展示了Docker工作流在开发和部署中的应用。内容涵盖了从基础操作到高级技巧,适合Linux初学者和Docker使用者参考。
摘要由CSDN通过智能技术生成

目录

1.远程登录,远程文件传输

2.文件系统

3.用户、权限

4.Vim

5.软件安装

6.进程监控、端口号查询、磁盘查询...

7. docker

8. docker工作流


       Windows    pc操作系统    使用便捷

       Linux       命令行         图像化界面(ubuntu desktop),用于服务器

               稳定,不需要关机

               内核非常小----安装在板子上(嵌入式开发)

               源码是开源

1.远程登录,远程文件传输

          >   windows/macos  (客户机)

          $   linux(服务器-普通用户)

          #   linux(服务器-超级管理员)

远程登录:

          第一种:  > ssh  root@101.132.152.17

             使用root账号,登录ip为101.132.152.17的主机

               通常情况下,我们不直接使用root进行登录  

          第二种:  使用xshell

# exit  退出

远程文件传输:

         第一种:   > scp  ./app.zip  8. docker工作流:/var/www/html

                   将当前目录下的app.zip上传到ip为101.132.152.17 /var/www/html(这里要使用root账号登录,因为使用普通用户账号,只能将文件传输到home中)

          第二种:使用filezilla

2.文件系统(路径、文件、目录)

           /     根目录(操作系统的根)

           ~     家目录(相对目录)

           .      当前目录

           ..      上一级目录

        $ pwd   打印当前目录  

        $ ls     列出当前目录下的子目录或文件  ls -r 级联列出

        $ more   打开文件预览  回车:换行,空格:换页,q:退出  $ more /etc/group

        $ tail     查看文件后几行  $ tail -10 /etc/group

        $ man    手册  $ man groupadd  

# reboot 重启

        $ history 查看历史命令  !命令编号   表示是执行命令编号的命令

                              !!  表示执行上一条命令

     


  

3.用户、权限

        Sudoer   可以执行超级权限的用户(管理员)

        普通用户只能在自己的home目录下创建文件、删除文件、修改文件

         /root    超级管理员的家目录

         /home/charles  charles用户(普通用户)的家目录

        /etc        配置文件目录

             group    组信息

             password  账号信息

             shadow   账号敏感信息(普通账号无法查看)

       用户组  

# groupadd 组的名称    创建一个组

       用户

# adduser 用户名称 --gid 1019  添加用户到一个组(组id为1019)中,如果没有指定组,则会创建一个和用户名同名的组

①创建用户

②将用户添加到指定组中

③创建一个家目录

④将家目录下的默认文件拷贝到该用户的家目录中

# userdel -r 用户名称  彻底删除用户

# id [用户名] 查看账号信息

# usermod --gid=1009 larry 修改账号信息

$ chomd g+w hello.js 为同组人添加编写的权限

$ su -账号切换到指定用户,没有指定用户时,默认切换到超级管理员

# vi /etc/sudoers

$ sudo more /etc/shadow

$ cd    切换到指定目录下,若没有指定目录,则回到目前用户的家目录下

$ mkdir a   新建一个目录(文件夹)

$ rmkdir a  删除目录(空的)

$ touch f   新建一个文件(f不存在)或修改文件最近访问时间(f存在)

$ rm a 删除文件(删除文件或目录)加入-r  表示级联删除  

     (删库跑路  sudo rm -r /)

$ date > a  将date函数的输出重定向到a文件中,a如果不存在则创建。会覆盖

$ date >>a 将date函数的输出重定向到a文件中,a如果不存在则创建。不会覆盖

$ cp a b 如果a是文件,b不存在或者b也是一个文件:将a的内容复制到b中

 如果a是文件,b是目录:将a拷贝到b中

 如果a是目录,必须使用-r,表示级联操作

$mv a b 如果a是文件或目录,b不存在,则表示重命名

如果a是文件,b是目录,则表示把a移动到b中

       权限:

          普通用户拥有自己家目录下的所有权限

           -rw-r--r-- 1 vicky webui 44 Aug 24 07:36 hello.js

          第一个字母:文件类型

                     -    文件

                     d   目录

          第2~4个字母:拥有者u权限

          第5~7个字母:同组人g权限

          第8~10个字母:其他人o权限

            r可读(4)、w可写(2)、x可执行(1)

            -不可读/不可写/不可执行

4.Vim

①vim编辑器(命令行、插入模式、底行模式)

         命令行模式: 打开vim编辑器,默认打开的模式

                  x:删除一个字符

                  u:回退

                  cc:替换当前行:删除当前行,进入插入模式

                   r:替换一个字符

                  cw:替换一个单词

                   bb:删除当前行

                   y:复制当前行

                   p:粘贴

         插入模式(编辑模式):i(插入)、 o(在下一行插入)、 a(在行首追加)

                        I(从行首插入)O(在上一行插入)、a(在行尾追加)

         底行模式:保存(:w),另存为(:w 文件名),退出(:q),保存退出(:wq),强制退出(:q!)搜索(/words  回车表查询,高亮显示  n/N查询下一个),替换(:1,2),分屏,快速移动(:n 光标进入n行,  :$进入最后一行)

命令行模式----->插入模式:vim 文件名  之后输入以下字符  

i(插入)、 o(在下一行插入)、 a(在行首追加)

                        I(从行首插入)O(在上一行插入)、A(在行尾追加)

插入模式----->命令行模式:Esc键

命令行模式----->底行模式:输入冒号

底行模式----->命令行模式:保存(:w),另存为(:w 文件名),退出(:q),保存退出(:wq),强制退出(:q!)

②vim配置

 用户配置

~/.vimrc

      全局配置

        /etc/vim/vimrc

      ----------------------

      set nu

      set autoindent

      set tabstop=2

      syntax on   

      ----------------------------

      懒人配置

      spf13

      $ curl http://j.mp/spf13-vim3 -L -o - | sh

  

 5.软件安装(mysql、apache2、jdk、nginx...)

       <1>分类:    

  (1)后台相关软件

                   jdk1.8

                   mysql

                   jar

            (2) 前端相关软件

              apache2 (httpd)

              npm run build:prod -> dist -> /var/www/html

              nginx (nuxt.js)

              门户系统 -> vue-admin-template (nuxt.js 适于seo检索)

              node.js

              nodeJS(io模块,网络模块,数据库模块,任务[线程]...)

            (3) 工具类型软件

               gitlab(内存不低于2G);gitee、github(开源)

               svn-server

<2>安装:

        (1)软件安装方式

              ① 命令行安装

               mysql、apache2

               # apt update  (更新源)

              《1》 安装

                # apt install xxx

              《2》 配置

                /etc/xxx

              ② 解压安装

               jdk、nodejs

                《1》 下载 wget ; 本地下载,上传阿里云 (.tar.gz , .tar.xz , ...)

                《2》 解压

                 /opt # tar -xvf xxx.tar.gz

                 xxx 该软件的家目录

                 例:

                 /opt $ sudo tar -xvf node-v14.17.5-linux-x64.tar.xz

                 /opt/node-v14.17.5      nodejs的家目录

                 《3》 环境变量配置

                     Ⅰ 全局

                        /etc/profile

                     Ⅱ本地

                              shell编程

                                 export NODE_HOME=/opt/node-v14.17.5-linux-x64

                                 export PATH=$NODE_HOME/bin:$PATH

                  《4》生效

                    $ source .bashrc

                ③ 编译安装

                nginx、fastdfs

                c开发 -> 编译 -> 运行

                     1) 编译

                     2) 执行

           (2)实例安装nodejs

                   ① 下载压缩包

                     /opt $ sudo wget https://nodejs.org/dist/v14.17.5/node-v14.17.5-linux-x64.tar.xz

                   ② 解压

                   /opt $ sudo tar -xvf node-v14.17.5-linux-x64.tar.xz

                   ③ 环境变量配置

                      用户环境变量配置

                         ~/.bashrc

                         ~/.profile

                      系统环境变量配置

                         /etc/profile

                       export NODE_HOME=/opt/node-v14.17.5-linux-x64

                       export PATH=$NODE_HOME/bin:$PATH

                   ④ 使生效

                       $ source .bashrc

                       $ node --version

    6.进程监控、端口号查询、磁盘查询...

      $ ps -aux | grep java

      $ kill -9 进程编号

      $ service 服务名 status/restart/start/stop

      $ java -jar xxx.jar

      ctrl + z

      将当前正在运行的进程停止下来

      $ bg %1

      将1号任务在后台运行

      $ fg

      $ wget https://nodejs.org/dist/v14.17.5/node-v14.17.5-linux-x64.tar.xz

      $ curl 解析url,将url内容展示到终端中

    -----后台接口------

      Hello.java

      World.java

      ->

      Hello.class

      World.class

      ->

      app.jar(接口服务,一直运行, 按下ctrl+c键后,停止运行)

  7. docker

    101.132.69.89 【csj】

    1) 作用

    2) 安装

      # docker version

      ① 更新源

      # apt update

      ② 安装必备软件

      # apt-get install apt-transport-https ca-certificates curl gnupg lsb-release

      ③ 安装 GPG key

      # curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

      ④ 安装

      # echo \

  "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \

  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

      ⑤ 更新源

      # apt-get update

      # apt-get install docker-ce docker-ce-cli containerd.io

      防火墙开放端口

        tcp/ip  8080


    3) 三要素

      Ⅰ. 镜像(模板 -> 源码)

        # docker images   

        # docker search ubuntu

        # docker search httpd

        # docker pull ubuntu

      Ⅱ. 容器(实例 -> 运行吗)

        容器由镜像创建而来

        以伪终端交互方式创建一个ubuntu容器

        # docker run -it ubuntu

        彻底退出

        # exit

        暂时退出

        # ctrl + p +q

        # docker attach

        查看docker进程

        # docker ps

        退出容器

        # docker kill 616bc49f0fb1

        tomcat 动态服务器(javaweb servlet/jsp 、 ssm)

        # docker run -d tomcat

          http://101.132.69.89:8080

      Ⅲ. 仓库(存储镜像的地方 -> gitee/github)


 8. docker工作流

    开发后端接口(Java)4套 jar

    基础镜像(ubuntu)

      -> 搭建环境(jdK、mysql、apache2、nodejs、tomcat、...)

      -> 部署代码

          jar/war

          数据库

          前端

      -> 提交镜像 ubuntu-briup-webui

    发布镜像(阿里云)

    -------------------

    # docker pull ubuntu-briup-webui

    # docker run ubuntu-briup-webui

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值