【无标题】

Linux基础课堂笔记


前言

Linux基础的笔记

一、Linux的常规操作

1>apt管理软件包的工具


            在我们ubuntu,我需要需要安装软件就需要通过两个软件包管理工具
                1. dpkg:1>单机安装  --->不需要网络
                 2>需要事先留有软件安装包 
                 3>不会替用户考虑依赖关系 
            2.apt: 1>需要通过网络安装 
                 2>自行获取资源安装
                 3>会提用户考虑依赖关系

主要讲apt详解: 
              安装逻辑:

 在我们ubuntu18.04当中:源在/etc/apt下
                    sources.list    ---》源文件
                                      1>在更换源之前,需要先备份: 
                        sudo cp sources.list sources.list.bak
                    2>更换源 
                        打开源文件:sudo vim sources.list 
                        清空里面的内容,把在网络上复制的源,粘贴到里面 并 保存    
                    3>使源生效 
                        sudo apt-get update
                        
                apt命令: 
                    install  --->安装 
                    update   --->更新 
                    remove   --->卸载

 2>shell命令详解/通配符/标准文件重定向/挂载: 

1.shell命令: 
                ls cd cp touch mkdir mv vi  vim..... --->shell 

2. shell的  ---“贝壳”

    Linux中的Shell就是Linux内核的一个外层保护工具,并负责完成用户与内核之间的交互。

3.  shell命令的格式: 
                [命令] [选项] [参数]
                        --->三个成员各用空格隔开
                例如:
                ls    --->命令 
                ls -l --->命令 + 选项 
                ls -l 1.c --->命令 + 选项 + 参数
            
                PS:命令是必须的  选项和参数是可选的
                    命令行第一个读取的,必定是命令,所以命令是必须的

4. 命令行详解: 
                farsight@ubuntu:~$
                farsight:用户名 
                @       : 分隔符--->隔开两个信息
                ubuntu  : 主机名
                :       : 分隔符--->隔开主机名和所在路径
                ~       :代表当前所在位置 
                $       : 权限符
                $--->普通用户的权限 
                #--->超级用户的权限
                su -->super user 
                sudo ->super user do 

 5.通配符    
                什么是通配符
                    是一种用于匹配文件名字的符号 
                       *.yaml 
                       *:通配符

       通配符                               含义            
       星号(*)             匹配任意长度的字符串        
       问号(?)            匹配一个长度的字符 
       方括号([…])     匹配其中指定的一个字符
       方括号([ - ])     匹配指定的一个字符范围  a-z 1-9
        方括号([^…])  除了其中指定的字符,均可匹配

  标准文件和标准文件重定向 
            什么是标准文件: 
                是一种开机自启、负责ubuntu系统正常运作的三种文件
                    1>标准输入  ---  键盘
                    2>标准输出  ---  屏幕
                    3>标准错误输出-  屏幕 
           --->ubuntu开机的时候一起开启
                         ---->流/文件描述符
            
            标准文件重定向   ---->了解
                改变输入和输出的方向 
                    输入--->文件,命令行
                    输出--->屏幕 
                    错误输出->屏幕 
                            正常方向               
                重定向: 把正常方向修改 
                    >    输出重定向,将输出的结果定向别的地方  ->清空模式
                    >>   输出重定向,将输出的结果定向别的地方  ->追加模式
                    <    输入重定向,wc -c < 1.c,将1.c的文本内容输入给wc -c统计
                    2>   标准错误输出重定向

6>挂载操作
            什么叫挂载? 
就是将外来的文件系统,载入进ubuntu系统中,该操作用于抹除文件系统差异,该操作:挂载 
                   外来文件系统叫挂载项
                   挂载操作: 
                        1>挂载的地方必须事先存在 
                        2>用于共享文件系统
                        3>挂载点内原本拥有的文件,将会被隐藏
                   ubuntu:EXT4 
                   windows:NTFS
                        --->windows的目录或者文件,就需要通过挂载操作才可以
                            在ubuntu中使用   --->U盘

  把一个U盘,挂载进ubuntu中

     在 ubuntu用--->cat /proc/partitions   --->检查设备

                  major minor  #blocks  name

                       8        0  104857600 sda
                       8        1  104855552 sda1
                       
                       sd*X: 
                            sda:第一磁盘 
                            sda1:第一磁盘的第一分区
                       sdb3:
                            sdb:第二磁盘 
                            sdb3:第二磁盘的第三分区

开始操作: 准备工作:U盘
                    挂载命令:mount 
                    1>将U盘插入主机后,弹出页面选择连接至虚拟机
                    2>再次查看设备cat /proc/partitions
                        8       16   30720000 sdb
                        8       17   30719984 sdb1
                                    ---->多出来的磁盘
                     3>我们建立好挂载点 
                        /mnt/myusb
                    4>开始操作 
                        sudo mount /dev/sdb1 /mnt/myusb
                    >>>>>>
                    5>卸载操作
                        umount 
                        sudo umount /mnt/myusb

 

 3>ubuntu的常用命令

            ls – 列出当前目录下的文件和文件夹
            cd – 切换当前工作目录。
            cp – 复制文件或目录。
            rm — 删除操作  rm 删掉的东西完完全没办法恢复的
            touch  – 创建一个空文件
            mkdir  – 创建一个新的目录
            chmod – 修改文件或目录的权限
            man – 查看命令的帮助文档
            mv – 移动文件或目录。

  4>用户管理和进程管理

 (1)>用户管理:
                    1.源于我们系统中多用户机制:一个系统可以容纳多个用户
                    2.多个用户存在的目的是什么:是为了利用权限区分对文件的操作
                    3.用来一机多用的同时,尽可能的保护各个用户的文件安全

 1>修改密码:-----------****别乱用
                passwd 用户名 
                
                :密码太简单不行,密码比上一次相似不行
                
 2>添加用户:adduser 
                用法:adduser 用户名
            
                新添加用户:无法执行sudo命令 -->没有sudo权限
                为什么farisight 
                --->farsight --->由系统创建
                --->tonly    --->由用户创建
           
            PS:操作:get新用户添加sudo权限 
                在ubuntu中,管理用户的组件一共有三个
                    /etc/sudoers    --->权限  
                    /etc/passwd     --->密码 
                    /etc/shadow     --->信息
                    
                操作: ----》需要格外注意,如果要玩这个操作,记得快照,不快照
                    1>sudo vim /etc/sudoers
            
                    2>打开文件发现第20行: 
                    20 root    ALL=(ALL:ALL) ALL    //超级用户的权限位置

                    3>复制第20行,粘贴在第21行
                       用户名    ALL=(ALL:ALL) ALL 
                       
      3>把tonly做掉  --->删除用户:userdel 

            
  (2)> 进程管理---->应用层:多进程线程
            进程:程序执行的过程:进程              
            程序:你写的程序,是静态的
            
            查看我们系统中的进程: 
                ps -aux :静态查看进程 
                top     :动态查看进程

            
            kill:发送信号给进程 
                -9:杀死:无法被任何事件阻塞
                -2:终止:ctrl + c

 5>文件系统详解和文件压缩与解压 

 1>文件系统详解: 
            ubuntu的文件系统:EXT4 
                特点: 
                    1>分离式存储 --->了解 
                    2>用缓冲区隔开各个组件的输入和输出
                缓冲区: ---->IO编程第一天:标准IO 
                        硬件和输入输出的响应速度不同
                        在两者之间加入缓冲区,可以让两者速度匹配
                ".1.c.swp":临时缓存文件
                        出现原因:我们写入23071但是没有保存,也就没有写入到文件
                                 而是留在了缓冲区,遇到异常退出时,系统会自动
                                 保留缓冲区的数据,并在你下一次访问在文件时提示你

                        删除:sudo rm .1.c.swp
                        
                    3>文件信息详解
                        我们要查看文件的详细:ls -l
                        
-rw-rw-r--           1              farsight             farsight     126       Jul       27  1:31                1.c
类型与权限   硬链接数    文件拥有者    文件所属组 文件大小  文件最后修改时间   文件名
        文件类型与权限: 
            -rw-rw-r--
            10为一体: 
            1+3+3+3
            1:文件类型 
            3: 文件拥有者权限 
            3: 文件所属组权限 
            3: 其他用户的权限

            1: 就看第一位
                -:普通文件 
                d:目录 
                c:字符设备 
                l:软链接
                s:套接字文件--->网络编程 
                p:管道文件  --->多进程线程 
                
            3+3+3:权限位:由系统决定
               rw-      rw-      r-- 
    八进制: 0   6         6        4    
    二进制:    110      110      100
                            --->标志位保存 --->32位 前16废物位  后16标志位
            修改权限:chmod  八进制  文件名 

umask:

            0002   --->掩码 
            0777-0002=0775
            0666-0002=0664
        权限掩码:权限阉割码 
            用来保护创建文件时使文件权限过大而被修改的保护手段 
            创建目录的权限:0777  - 掩码权限        =0775
            创建文件的权限: 0666  - 掩码权限        =0664

   2>文件压缩与解压
                    压缩:将文件压缩使其大小比原大小 要小  -->便于网络传输
                        文件格式变成压缩包格式            -->传输时不易损坏
                        下载和传输:网络波动的             -->文件传输的完整性
          
                    解压:将压缩包还原成完整文件 恢复 大小
                    
                     ubuntu的压缩和解压工具有哪些? 
                        1>压缩:gzip   解压:gunzip       后缀:.gz 
                        2>压缩:bzip2   解压:bunzip2      后缀:.bz2 
                        3>压缩:zip    解压:unzip       后缀:.zip
                        4>神中神工具:tar   -->集归档、压缩、解压为一身全能
                              
                        1>gzip的压缩与解压过程 -->只能操作一个对象,且操作的是本体
                        压缩:
                            farsight@ubuntu:~/test1$ gzip 1.c
                            farsight@ubuntu:~/test1$ ls
                            1.c.gz  2.c  3.c
                            
                        解压:
                            farsight@ubuntu:~/test1$ gunzip 1.c.gz
                            farsight@ubuntu:~/test1$ ls
                            1.c  2.c  3.c
                            
                            
                        2>bzip2的压缩与解压过程
                        压缩:
                            farsight@ubuntu:~/test1$ bzip2 1.c
                            farsight@ubuntu:~/test1$ ls
                            1.c.bz2  2.c  3.c
                            
                        解压:
                            farsight@ubuntu:~/test1$ bunzip2 1.c.bz2
                            farsight@ubuntu:~/test1$ ls
                            1.c  2.c  3.c
                            
                            
                        3>zip的压缩和解压过程 //有所不同将一个文件或多个文件压缩成单一的压缩文件。    
                        用法:自定义压缩包名字 
                        zip [选项] 压缩包名字 压缩文件名 
                        压缩: 
                            farsight@ubuntu:~/test1$ zip 123.zip 1.c 2.c 3.c
                              adding: 1.c (stored 0%)
                              adding: 2.c (stored 0%)
                              adding: 3.c (stored 0%)
                            farsight@ubuntu:~/test1$ ls
                            123.zip  1.c  2.c  3.c
                  
                            
                        解压: 
                          
                         farsight@ubuntu:~/test1$ ls
                            123.zip
                            farsight@ubuntu:~/test1$ unzip 123.zip
                            Archive:  123.zip
                             extracting: 1.c                     
                             extracting: 2.c                     
                             extracting: 3.c                     
                            farsight@ubuntu:~/test1$ ls
                            123.zip  1.c  2.c  3.c

 

                        4>tar  
                        tar [ -t | -x | -u | -c | -v | -f | -j | -z ] tarfile filelist
                        选项 描述
                        -t 显示归档文件中的内容
                        -x 释放归档文件
                        -u 更新归档文件
                        -c 创建一个新的归档文件
                        -v 显示归档和释放的过程信息
                        -f 用户指定归档文件的文件名,否则使用默认名称
                        -j 由tar生成归档,然后由bzip2压缩
                        -z 由tar生成归档,然后由gzip压缩
                        
                        具体用法: 
                            压缩: 
                                tar -zcvf hello.gz 1.c 2.c 3.c 
                                tar -jcvf hello.bz2 1.c 2.c 3.c
                        
                            解压:通用: 
                                tar -xvf hello.gz
                                tar -xvf hello.bz2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值