linux

符号:

  >   windows/macos   (客户机)  $   linux (服务器-普通用户)  #   linux(服务器-超级管理员)

1) 近程登录、近程文件传输

1. 图形化界面形式(简略直观、装置图像化界面软件、配置)

xshell filezilla

2. 命令行模式

    > ssh root@121.199.29.84

应用root账号,登录ip为121.199.29.84的主机
通常状况下,咱们不间接应用root进行登录,务必将root的明码设置的较为简单(然而不要遗记)

    # exit

退出登录

    > scp ./app.zip root@121.199.29.84:/var/www/html

将当前目录下的app.zip上传到ip为121.199.29.84 /var/www/html(应用root账号登录,如果应用一般账号登录,只能将文件传输到家目录中)

    > scp ./app.zip charles@121.199.29.84:/var/www/html

报错!没有权限!

    > scp ./app.zip charles@121.199.29.84:~

window(DOS命令)

      c:/users/王五              桌面              下载              影音              珍藏

win下进入命令行

      win+R   

关上了dos, dos默认所在目录为 c:/users/王五

      > dir   

相似于linux中的ls, 打印出当前目录下的文件及子目录

      > cd 

桌面

2) 文件系统(门路、文件、目录)

  /    /root           超级管理员的家目录    /home/charles   charles用户的家目录    /home/jacky     jacky用户的家目录    /etc            配置文件目录      group         组信息      passwd        账号信息      shadow        账号敏感信息(一般账号无奈查看)    /var            可变目录    /opt            第三方软件装置目录 jdk,nodejs    /usr/local      默认软件装置目录 apt install    ...

命令模板
命令 [options] [arguments]
options
-la

$ pwd

打印以后所在目录

$ ls

列出当前目录下的子目录或文件

$ ls -a$ ls -l$ ls -R$ more$ more /etc/group

预览/etc/group这个文件
回车:换行
空格:换页

q: 退出$ tail -10 /etc/group

查看/etc/group这个文件的后10行

$ man groupadd

manual 手册,查看groupadd这个命令的使用手册

# reboot

重启,当批改了/etc/hostname的时候,须要重新启动电脑能力失效

# vi /etc/hostname

批改@前面的名字

$ history

查看历史命令
!命令序号
执行命令序号对应的命令
!!
执行上一条命令

目录相干
一般账号默认只能对本人家目录进行目录操作

$ cd [目录]

切换目录, 如果没有指定目录,默认进入本人家目录下
目录:
/ 根目录(操作系统的根)
~ 家目录(绝对目录)
. 当前目录
.. 上一级目录

$ mkdir a

创立目录

$ rmdir a

删除空目录

$ touch f

新建文件(f不存在的时候)或者批改文件最近拜访工夫(f存在的时候)

$ rm f

删除文件(因为目录也是文件,所以rm也能够删除目录)

rm -r a

删除a及a目录下的所有子目录及文件
(删库跑了 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中

$ cp -r a b

如果a为目录,必须应用-r,示意级联操作

$ mv $ mv a b  

如果a是文件/目录,b不存在,示意重命名
如果a是文件,b是目录,示意将a挪动到b中

3) 用户、权限

普通用户只能在本人的家目录中创立文件、删除文件、批改文件

用户组

  # groupadd web-ui  # more /etc/group    ...    webui:x:1019:

用户

  # adduser vicky

创立用户 vicky
创立组 vicky
将vicky增加到 vicky组中
创立一个加目录 /home/vicky
将家目录的默认文件/etc/skel进行拷贝->/home/vicky

  # adduser --gid 1019 vicky

创立用户 vicky
将vicky增加到 1019组中
创立一个加目录 /home/vicky
将家目录的默认文件/etc/skel进行拷贝->/home/vicky

  # userdel -r zhangnn

将zhangnn彻底删除

  # id [用户名]

查看账号信息

  # usermod --gid=1009 larry  $ su - 账号

切换到指定账号下,账号如果缺省,示意切换到超级管理员下

  root    超级管理员  sudoer  能够执行超级权限的用户(管理员)  # vi /etc/sudoers  $ sudo more /etc/shadow

4) 文件权限

普通用户领有本人家目录中所有的权限。
$ ls -l

  -rw-r--r-- 1 vicky webui 44 Aug 24 07:36 hello.js  drwxr-xr-x 2 root  root  4096 Aug 24 09:29 bin  -rwxr-xr-x 1 root  root  8600 Aug 24 09:34 hello.o

- 文件
d 目录
rw-r--r--

角色:
拥有者u、同组人g、其他人o

权限
读r、写w、执行x

批改权限
一个文件的权限拥有者能够批改、超级管理员、一般管理员也能够批改

    chmod    $ chomd g+w hello.js 

为hello.js增加同组人编写的权限

    rw-rw-r--    110 110 100    6 6 4    $ chmod 664 world.js

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

vi 、vim(linux)、sublime 、vscode(轻量级的编辑器)、webstom(集成开发工具)

三种模式:命令行模式、插入模式、底行模式

  1. 命令行模式
    关上vim编辑器,默认进入的模式,字符示意非凡的命令

      x   删除一个字符 u   回退 cc  替换以后行:删除以后行;进入到插入模式 cw  替换单词 r   替换一个单词 ...
  2. 插入模式

     命令行模式 -> 插入模式   i   insert 插入   o   other  在下一行插入   a   append 追加   I   从行首插入   O   在上一行插入   A   在行尾追加
  3. 底行模式

     命令行-> 底行模式 保留    :w 另存为  :w 文件名 退出    :q 保留退出 :wq 强制退出 :q! 搜寻    /words  回车示意查问(高亮)n/N查问下一个 替换    :1,$s/旧串/新串/g  ...

6) vim配置

用户配置

    ~/.vimrc

全局配置

    /etc/vim/vimrc  ----------------------  set nu  set autoindent  set tabstop=2  syntax on     ----------------------------

懒人配置

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

7) 软件装置(mysql、apache2、jdk、nginx...)

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

8) 软件装置形式

1. 命令行装置

mysql、apache2

    # apt update  (更新源)

1) 装置

    # apt install xxx

2) 配置

    /etc/xxx

2. 解压装置

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) 环境变量配置

      1. 全局        /etc/profile      2. 本地        ~/.bashrc      shell编程        export NODE_HOME=/opt/node-v14.17.5        export PATH=$NODE_HOME/bin:$PATH

4) 失效

      $ source .bashrc

3. 编译装置

nginx、fastdfs

    c开发 -> 编译 -> 运行    1) 编译    2) 执行

4. 实例装置nodejs

1) 下载压缩包

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

2) 解压

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

3) 环境变量配置

      用户环境变量配置        ~/.bashrc        ~/.profile      零碎环境变量配置        /etc/profile      export NODE_HOME=/opt/node-v14.17.5-linux-x64      export PATH=$NODE_HOME/bin:$PATH

4) 使失效

      $ source .bashrc      $ node --version

9) 过程监控、端口号查问、磁盘查问...

  $ 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内容展现到终端中