zoukankan      html  css  js  c++  java
  • Linux课堂笔记

    Linux随堂笔记

    一、Linux的背景

      1991年5月,Linux发明出来的,被誉为“Linux之父”

    二、Linux一切皆文件

      Linux系统中所有的都是文件,包括鼠标键盘等。

      Linux中一切没有消息的消息就是最好的消息。

    三、基本命令的学习

      命令的组成:cmd【选项】【参数】

      手册的查看:man---->打开首次;man man---->具体使用命令。

      命令展示:

        【pwd】显示当前路径。

        【cd】切换工作路径

            注:Linux文件系统结构从“根”开始,用“/”表示。

              当路径从根开始算,表示绝对路径。

              当路径从当前路径开始算,表示相对路径,其中  .---> 当前路径   ..---->上一级路径

        【ls】列出目录内容

            【-a】:显示所有文件(加点的表示为隐藏文件)

            【- l】:单列输出

            【-d】:将目录名像其他文件列出来,但不显示它内容(显示指定目录)

            【-h】:大小带单位,不带单位的以字节形式表现

            【- i】:显示ID,同一文件目录下,文件ID是唯一的

        【cat】查看文件内容的全部

        【more】查看文件的内容

        【less】按屏显示文件内容,“/”+关键字: 搜索,按“Q”退出,较【more】命令更灵活。

        【head】/【tail】显示文件的前/后几行

        【cp】复制文件,文件夹加上【-r】表示目录文件

        【mv】剪切文件,格式为:【mv】+源文件+目的目录

            注:切勿切电脑的本身文件。

              【mv】+文件名+当前文件夹  ---->重命名

        【rm】删除文件,格式为:【rm】+源文件,【-r】--->目录【-f】--->强制删除

        【touch】创建空文件

        【mkdir】创建空目录

          关机命令都有:(1)shutdown   -h   now    (2)poweroff (3)init 0 (4)halt

          重启命令都有:(1)shutdown   -r    now (2)reboot  (3)init 6

        【uname   -r】内核版本

        【history】查看历史命令

    四、文件管理

        包括文件属性(元信息)、文件查找、文件的打包压缩

      文件属性

        查看文件属性:(1)stat  +  文件的路径 --->查看文件的全部属性    (2)ls   -l   --->查看文件的部分属性

      文件类型

        Linux不易后缀名区分文件类型,它只有7种文件类型:

            -  ---> regular   普通文件
              d  ---> directory   目录文件
              c  ---> charactor  字符设备文件
              b  ---> block      块设备文件
              l   ---> link      符号链接文件
              p  ---> pipe       管道文件
              s  ---> socket      套接字文件

      文件权限

        非目录文件权限:r--->读    w--->写    x--->执行  

                8进制表示法:1--->r、w、x   0---> —  8进制以“0”开头

                eg:0635  6--->110——>rw-  3--->011——>-wx  5--->101——>r-x

        目录文件权限:u--->拥有者    g--->所属组    o--->其他用户

          权限对于root没有意义,但是对于普通用户意义很大。

          修改文件权限:(1)chmod   u/g/o   a(+/-) r/w/x   +文件名

                 (2)chmod   +  8进制  +  文件名

          修改文件的拥有者和所属组:chown  +  拥有者:所属组   +  文件名

        目录文件中的r/w/x:

            -r     将当前目录显示到终端  eg:ls

            -w   写目录  eg:touch/mkdir/rm

            -x    可搜索,可进入  eg:cd

         【umask】文件屏蔽字,为防止产生权限过大文件。

                普通文件的权限都是0666,最终权限取决于屏蔽字的大小。

                mode & ~umask ---> 文件真正的权限

         【-s】特殊权限,当所有用户在执行passwd命令,【-s】权限会将用户变为拥有着的身份。

            sudo   cat   /etc/shadow

            gedit    /etc/sudoers

        文件的硬链接:一个文件,多了个名,用命令【cp  -l】  / 【 ln】  创建

            inode是同一分区文件的唯一标识,故不能跨分区。

        文件的软链接:即符号链接,就是给文件创建一个快捷方式。

            用【ln   -s】创建,用于存放文件的路径,可跨区。

        创建用户

          useradd  +  用户名  --->创建用户

          passwd  +  用户名  --->给定密码

          su -   +   用户名  --->切换用户

          userdel -r  +  用户名 ---> 删除用户

          exit   --->   登出用户
           用户信息:   /etc/passwd
        组信息:    /etc/group
        密码:     /etc/shadow
        创建组   
            groupadd   +  组名  --->组创建
         groupdel   +  组名 ---> 组删除
            gpasswd   -a   +   用户名  +  组名   --->用户添加到组内
         gpasswd   -d   +   用户名  +  组名   --->用户从组中删除
      文件大小

        【ls   -l】只是查看文件的所占字节,不属于占磁盘空间大小

        磁盘空间大小  --->(block)   1 block = 512  bytes   可用命令【stat】查看

        【du  -sh  +  文件名】  查看文件所占用磁盘空间的大小

        【du    -s】  访问磁盘大小

        【du    -f】   查看当前磁盘分区占用情况

      文件时间

        最后一次访问时间:access   time

        最后一次更改时间:modify   time  ---->内容改变 【ls  -l】

        最后一次改动时间:change  time   --->属性改变

       文件的查找:分为可执行文件和非可执行文件
          可执行文件:
          环境变量:echo  $PATH   --->是个路径
               which/whereis  +  路径   --->内部命令,是当前解释器能实现的
          非可执行:
             locate filepath   --->遍历数据库
               updatedb   --->  更新数据库
                find(遍历磁盘空间)
                 find   +  路径  +  选项
              选项有:
                -name   按名字找     eg: find /etc/ -name "passwd"
                -size      按文件大小查找  eg: find /etc/ -size n(b/c/k)
                   -mtime  修改时间        eg:find /etc/ -mtime n(天)
                -type   类型       eg:find /etc/ -type f/d/c/b/p/l/s
                -exec   对于查找到的结果执行     eg:find /etc/ -name "hello" -exec ls -l {} ;   --->  只对找到的文件执行ls -l结果,不打印路径
                -ok       执行之前会询问    eg:find /etc/ -name "hello" -ok ls -l {} ;   ---> 在执行ls -l之前会询问
                     -print    打印查找的结果     eg:   find /etc/ -name "hello" -print  -exec ls -l {} ;   ---> 对找到的文件执行ls -l结果,打印路径
                   -a      连接多个查找选项    eg:   find /etc/ -type d -a -size +10k
       文件的打包与压缩
           压缩格式都有:【.gz】、【.bz2】、【.zip】
           文件压缩为【.gz】格式:  gzip  +  文件名    解压命令为:gunzip
           文件压缩为【.bz2】格式:bzip2  +  文件名   解压命令为:bunzip
           文件压缩为【.zip】格式: zip  +  文件名.zip  +  源文件名     解压命令为:unzip  +  文件名
             【.zip】是将多个文件放入一个压缩包中,其本身具有压缩打包的功能。
           【tar】命令:打包并压缩
              其格式为:【tar】+  选项  +  文件名.tar.格式  +  [*]--->表示当前目录下所有文件
              常用选项有:
                -c  --->创建包
                -v  --->过程可视化
                -f   --->压缩包文件名(置于选项命令最后)
                -z  --->生成.gz格式的压缩文件
                -j   --->生成.bz2格式的压缩文件
                   -J  --->生成.xz格式的压缩文件
                   -C --->指明压缩路径
                   -t   ---> 不解压不解包的情况下,查看压缩包中的内容
                -r   ---> 向压缩包内追加文件,只允许向包中放入新文件
       文件的重定向
            当用户登陆登陆成功后,有三个文件依次打开:
              标准输入(0)、标准输出(1)、标准错误输出(2)
                 0< 标准输入重定向
                 1> 标准输出重定向
                 2> 标准错误输出重定向
                 >> 追加
              "|"   --->   管道
                【wc  -l】 (line) ---->统计行数   【wc  -c】(charactor)---->统计单词个数    【wc  -w】(word)---->统计单词个数
              【grep】:筛选文件内容
                  -n   --->   确定内容在文件的第几行
                  -i    --->   忽略大小写
                  -w  --->   精确查找
       【vim】--->编辑器 
            【vim】  +  文件名    ---->   打开vim,进入vim的一般模式
            从一般模式进入编辑模式:按(“i” “I” “a” “A” “o” “O” “s” “S”)
            从编辑模式进入一般模式:按(“Esc” 或 “ctrl  +  c”)
            从一般模式进入命令行模式:按(“w”  --->  保存   “q”  --->  退出)
            在一般模式下的命令:
                yy--->复制,需要复制几行,在前面加行数。    
                p--->粘贴    
                dd--->剪切,需要剪切几行,在前面加行数。
                u --->撤销 
                ctrl  +  r  --->还原
                x/X  --->光标所在字符处开始删除   ==【delete】
                r/R  --->替换  【R】--->一直替换到Esc为止
                gg  --->首行,到第几行前面加数字
                G   --->末行
                /  --->搜索
            在命令行模式下的命令:(都需用 “  :” 开头)
                w  --->保存
                q  --->退出,加  !表示强制退出
                w  +  文件路径   ---> 另存为  ==  saveas
                set  number/nonumber   --->显示/不显示行号
                %s/oldstring/newstring/g    --->将所有的oldstring替换为newstring
             2,5s/oldstring/newstring/g  --->将第2行到第5行oldstring替换为newstring
             set nu    --->显示行号
             set ts=4 ---> 将Tab设置为4个字符宽度
                x  --->  加密
    五、软件包的管理
        源码包:
      .tar.gz .tar.bz2 .tar.xz
      <1>下载并解压解包
      <2>编译make
      <3>make install
        二进制包(.rpm)
            【yum】 安装:(/etc/yum.repo.d/xxx.repo)
             yum install 文件名     --->安装 
             yum remove 文件名  ---> 卸载 
             yum repolist   ---> 查看仓库中有多少软件包
             yum list     --->列出所有的软件包
             yum provides /usr/bin/ls   --->查看文件对应的软件包
             yum update   --->更新
             yum clean all    --->清除缓存
                 yum源所在路径:/etc/yum.repos.d/xxx.repo
          本地yum源配置:
            1.将镜像文件挂载到文件系统
            2.创建镜像的挂载点 mkdir /mnt/centos7
            3.光盘镜像在/dev/cdrom目录
            4.挂载光盘镜像
                mount -t iso9660 -o loop /dev/cdrom /mnt/centos7
            5.配置镜像的yum源
                vim /etc/yum.repos.d/my.repo
                     文件的内容:
                       [local_centos7]
                       name=centos7
                       baseurl=file:///mnt/centos7
                       enabled=1
                       gpgcheck=0
         已下载的【rpm】软件包,安装:
            rpm -ivh +包名  ---> 安装已下载的rpm包
            rpm -e +包名     ---> 卸载
            rpm -U +包名    ---> 更新
            rpm -qa   --->  查询系统中所有已安装的rpm包
            rpm -qf  + 路径  --->  查询对应的软件包
    六、网络管理
       【ifconfig】   ---> 查看ip地址,将iP,mac,网关等都显示出来
       【iP  addr】  ---> 查看mac地址
       【ip  route】 ---> 查看路由表
       【systemctl  status   +  服务名】  ---> 查看服务状态
       【systemctl  stop  +  服务名】      ---> 关闭服务状态
         手动配置静态ip:
             1、关闭NetworkManager     命令:【systemctl stop NetworkManager】
             2、配置/etc/sysconfig/network-scripts/ifcfg-xxx
                DEVICE=eth0
                BOOTPROTO=none
                NM_CONTROLLED=no
                ONBOOT=yes
                TYPE=Ethernet
                IPADDR=172.16.60.1
                PREFIX=24
                GATEWAY=172.16.60.254 
             3、重启网络服务   命令:【systemctl restart network】
        防火墙
            【systemctl  status  firewalld】   --->  打开防火墙
            【systemctl   stop    firewalld】   --->  关闭防火墙
            【systemctl  disable firewalld】  --->  禁用防火墙
        文件共享
            安装: 【yum  install  vsftpd】
            启动: 【systemctl  status   vsftpd】
            开机自启动:【systemctl   enable  vsftpd】
            配置文件:  【/etc/vsftpd/vsftpd.conf】
        访问共享目录:
            下载安装:【yum install lftp】
            访问地址:【lftp 192.168.5.129】
            get      ---> 下载非目录文件
            mirror  ---> 下载目录文件
            lcd    ---> 切换下载路径
            bye     ---> 退出
        nfs远程挂载
            下载安装;:【yum install nfs-utils rpcbind】
            启动服务:
              【systemctl start nfs】
              【systemctl enable nfs】

              【systemctl start rpcbind】

     

     

       

     

             【systemctl enable rpcbind】

     

            

     

        编辑共享路径:

        

     

                

     

              【vim /etc/exports】

        

        

     

        

     

              【/var/ftp/pub *(ro,sync,no_root_squash)】

        客户端挂载:
              【mount 192.168.5.129:/var/ftp/pub /mnt】

    七、进程管理

        【ps   aux】  --->  查看当前系统信息

        【kill    -l】    --->  列出当前系统中的所有信号

        【kill  -2  +  进程号】    --->  终止  ==  ctrl  +  c

        【kill  -9  +  进程号】    --->  干掉一个进程,只要是用户创建的均可以干掉

        【man    7   signal】     --->  查看信号和信号行为,默认为15

        【top】   --->   实时查看系统中进程的运行状态

              运行状态有: R ---> 运行  S  --->  睡眠,可中断  ---> 终端     Z  --->  僵尸状态(zombie)

    八、虚拟机内安装python的步骤:

        1、根据  pyenv.txt  逐步安装。注意:将  my.repo  中用户自定义安装的包删除或重命名。

        2、重启虚拟机后,依次用命令【which  python】和【which   pip3】查看两个文件是否在同一目录下。

        3、打开网络,用命令【pip3   install  ipython】,升级python

        4、升级中用到的命令:【pip   install  --upgrade   pip】

        5、开机自启动 network :【systemctl   enable   network】

        6、命令: 【/ sbin / chkconfig  network  on】

        7、用命令【ipython】 打开  python,用【exit】退出

    九、【git】命令

              1、创建仓库:登陆github帐号,创建远程仓库

              2、同步到本地:

              ssh-keygen

              cat ~/.ssh/id_rsa.pub   --->  将密钥复制到帐号的key

              打开远程仓库,找到SSH,创建SSH密钥并且复制密钥的链接

              返回终端:git clone git@github.com:zhangzongyan/python20181119.git

                  其中:git@github.com:zhangzongyan/python20181119.git  表示本地仓库

               3、用命令【ls】查看github库是否链接到本地文件夹

               4、进入文件夹,查看是否有文件REDM,存在表示链接成功

         远程仓库与本地文件夹之间的上传与下载

                 cd  git  init

              git   add --->跟踪

              git   status --->查看仓库状态

              git    commit  -m  ---> 备注提交到仓库

              git     push     --->  推上服务器

              git     pull       --->  从服务器上把文件拉到本地

         【git】的基本命令

              git log ----->查看仓库日志(id)

              git reset --hard id ----->切换到指定版本

              git reflog ----->查看最新版本日志

              git rm ----->删除

  • 相关阅读:
    Python并行编程(十三):进程池和mpi4py模块
    Python 列表集合 字典推导式、生成器表达式
    Python 迭代对象、迭代器
    Python 参数,嵌套函数 的变量 使用
    Python 编码进阶
    Python 深浅Copy
    Python 代码块、缓存机制
    Python 列表,字典 相关方法
    初识 python 字符串 相关函数
    初识编码格式
  • 原文地址:https://www.cnblogs.com/ljf5201314/p/10054669.html
Copyright © 2011-2022 走看看