LinuxCore

杰普实训

Linux

SSH

SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞

整个过程是这样的:(1)远程主机收到用户的登录请求,把自己的公钥发给用户。(2)用户使用这个公钥,将登录密码加密后,发送回来。(3)远程主机用自己的私钥,解密登录密码,如果密码正确,就同意用户登录。

Linux历史----- Linux is not Unix

Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统

系统

  • 内核:也称为“操作系统”:管理硬件设备,内存,进程等等...

  • Linux内核的任务

    • 从技术层面讲,内核是硬件与软件之间的一个中间层。作用是将应用程序的请求传递给硬件,并充当底层驱动程序,对系统中的各种设备和组件进行寻址

    • 从应用程序的层面讲,应用程序与硬件没有联系,只与内核有联系,内核是应用程序知道的层次中的最底层。在实际工作中内核抽象了相关细节

    • 内核是一个资源管理程序。负责将可用的共享资源(CPU时间、磁盘空间、网络连接等)分配得到各个系统进程

    • 内核就像一个库,提供了一组面向系统的命令。系统调用对于应用程序来说,就像调用普通函数一样

  • shell

    • Shell 是一种应用程序,一种具备特殊功能的程序:它提供了用户与内核进行交互操作的一种接口

    • Shell 就是一种让你可以和Linux 操作系统对话的一种应用程序。在用户登入Linux 系统后,它就会调入系统内存中执行,它可以把用户输入的命令转化为计算机可以理解的机械码给内核执行

    • 默认的shell是/bin/bash,也可以切换其他的shell

    • 普通用户是$,root用户是#

  • 文件系统

    • 根目录/

      • home(~):用户的家目录

      • etc 配置文件

      • bin 二进制命令(普通用户和root用户都可以操作

      • lib 类库

      • usr 共享资源

路径(查找某个文件)

  • 绝对路径:以/开头,以文件/文件夹结尾

  • 相对路径:在当前目录描述其他目录

    • ./当前目录

    • ../上一级目录

密码

  • passwd 给当前用户设置密码

  • sudo passwd root

用户

  • 添加用户:sudo useradd -mk /home/swift -s /bin/bash

    • -m 添加用户时指定创建/home/swift

    • -k /home/swift需要挂载的相关目录

    • -s 将来切换目录时使用的shell

  • 添加组:gpasswd -a vance(组名称) sudo

  • 删除用户:sudo userdel -r -f swift

    • -r 级联删除

    • -f 强制删除

命令

  • clear 清理屏幕

  • 命令+ --help 获取命令语法

  • echo 输出字符串或者字符串变量

  • ps:process status

    • 查看进程

    • ps -ef | grep java

    • ps aux | grep java

  • date 当前日期

  • cal(calendar) 当前日历

  • telnet

    • 远程连接方式

    • telnet ip

  • find 查找文件/文件夹(可配合通配符使用)

    • find -name "*.txt"

权限

  • 对象

    • 自身"u"

    • 同组用户"g"

    • 其他用户"o"

    • 所有(上面三种)"a"

  • 权限

    • r 读 4

    • w 写 2

    • x 执行 1

  • 方式

    • 字符

      • chmod u=rw,g=rw,0=x a.txt

      • chmod u+r,g-x a.txt

      • chmod a=rwx a.txt

    • 数字

      • chmod 777 a.txt

      • chmod 661 a.txt

目录/文件

  • ls:列举当前目录的文件或者文件夹(不是里面的内容)

    • -a 显示隐藏目录

    • -t 按时间更新顺序显示

    • -l 显示文件详情

    • -F 标识可执行文件“*”

    • -al 文件详情+隐藏文件

    • -R 递归输出(占用运行巨大,慎用!)

    • ll

  • cd:切换目录

  • pwd:查看当前所在目录

  • more:查看文件内容 ---只显示部分内容

  • cat:查看文件内容 ---显示全部内容

  • touch:创建单个或者多个文件

    • 在制定目录创建文件 touch /home/briup/a.txt

  • mkdir 创建目录

    • mkdir 目录名1 目录名2 目录名3

    • mkdir ~/目录5 (/home/briup/目录5)

    • mkdir -p /一级目录/二级目录/三级目录

  • cp:复制文件/目录

    • 从A文件复制到B文件

      • B文件不存在则创建

      • B文件存在则覆盖

    • 从A目录到B目录

      • B目录不存在,则创建B目录并复制A目录中的内容到B

      • B目录存在,则复制A目录本身到B

      • 从文件复制到目录下

      • cp t1 t2/temp 从目录到 目录/目录

  • mv:移动文件或者目录

    • 移动A目录到B目录

      • B不存在,将A名字改为B

      • B存在,移动A到B

    • 移动A文件到B文件

      • B不存在,将A文件名字改为B

      • B存在则覆盖内容

  • rm:删除文件/含有文件的目录

    • rm -rf(强制+级联删除) 目录-----慎用!

    • rm -ri

    • rm -i (会询问是否确认删除)

  • rmdir 只能删除空目录

字符

  • * 代表0-多个字符 ls *.txt :代表以.txt结尾的文件夹

  • ? 代表有且仅有1个字符(代表一个占位符) ls a?.txt :代表列举出以a开头,第二位有值,以.txt结尾的文件夹

  • ; 将多行命令拼接 cd test;ls :代表进入test目录并把test目录中的内容展示出来

  • 重定向

    • >覆盖

    • >>追加

    •  #左边是结果 > 需要填充的对象
       cat a.txt > b.txt
       echo "hello world"
       cat /etc/passwd > b.txt
       # 不建议使用
       echo "" > b.txt  #清空了 b.txt
       ​
       # 黑洞文件(系统设置 语义明确)  /dev/null
       cat /dev/null > b.txt
  • | 管道

    • 将左边的结果当作右边的参数

    • cat /etc/passwd | grep "briup"

    •  # ps -ef    查出所有进程
       # grep 筛查/查找
       ps -ef | grep b
       ls *.txt | grep a.txt

vi/vim

  • 命令模式

    • 按住i/a/o 进入编辑模式

      • i 当前字符编辑

      • a 当前字符的后一个字符编辑

      • o 当前字符的下一行编辑

    • 按住shfit+:进入命令行模式

      快捷键 格式 作用
      删除 (数字)x 删除字符
      删除 (数字)dw 删除单词
      删除 (数字)dd 删除行
      删除 CW 删除单词然后进入编辑模式
      删除 CC 删除行然后进入编辑模式
      删除 C 删除当前光标到行尾
      替换 r 替换字符
      复制 (数字)yy 复制行
      复制 (数字)yw 复制单词
      粘贴 P /
      撤销 U /
      定位 IG/gg 第一行
      定位 G(shfit+g) 文本末(最后一行)
      定位 0 行首
      定位 $ 行尾
      定位 nG 任意行
      大小写 shift+~ /
      查找 n /briup 从上往下找
      查找 n /briup 从下往上找
    • 命令行模式

    快捷键 格式 作用
    删除 :1,3d 删除1-3行
    拷贝 :2,4co5 复制2-4行 粘贴到第五行下
    移动 :2,4m5 移动2-4行 粘贴到第五行下
    保存 w(write) /
    保存 w 文件 另存为
    保存 wq /
    保存 wq! /
    退出 q /
    退出 q! /
    追加 r文件 将指定文件的内容追加到当前文件
    替换 :1,$s/test1/test2/g 从第一行到最后一行寻找test1,替换test1为test2
    替换 :1,10s/test1/test2/g 从第一行到最后10行寻找test1,替换test1未test2
    行号 :set nu /
    行号 :set nonu /
    定位 :行号 /

  • 编辑模式:按住ESC回退到命令模式

  • LinuxCore_第1张图片

环境变量

  • .bashrc /home/briup 只对当前用户有效

  • .profile 全局配置

  • 键=值

    • 临时修改

      • PATH=...

      • echo $PATH

    • 持久修改(.bashrc)

      • name=briup

      • export name

 # 更改配置文件    name=briup
 sudo vim .bashrc
 # 让文件生效(更改后需要做的一步操作)
 source .bashrc

压缩/归档 ( 就是把多个文件变成一个归档文件

  • 归档

    • tar -cvf(归档名)(需要归档的文件和文件夹等)

    • tar -xvf(归档名)(需要归档的文件和文件夹等)

  • 压缩

    • gzip(压缩文件)(需要压缩的归档名)

    • gunzip(压缩文件)(需要压缩的归档名)

  • 归档并压缩

    • tar -zcvf(归档名)(需要归档并压缩的文件和文件夹等)

    • tar -zxvf(归档名)(需要归档并压缩的文件和文件夹等)

其他命令

  • pwd 当前工作目录

  • ps 程序进程

  • clear 清屏

  • chmod 权限

  • echo 打印常量/变量

  • man === 命令 --help (中文 一次展示)

    • 回车 一行一行浏览

    • 空格 一页一页浏览

    • b 前一页

    • f 下一页

    • q 退出

    • /字符串 查看该字符串 配合n

  • telnet 远程操作 ===SSH

  • shutdown 关机

  • reboot 重启

  • find 查找文件/文件夹 一般配合符号(正则表达式)

    •  find  .  -name  "*.txt"
  • date 日期

  • cal 日历 ---calandar

· 

你可能感兴趣的:(Linux,linux)