• linux-1


    # 1、Linux系统简介与服务器的硬件组成
        
    ## Linux系统
        Linux 是一种自由的开源的类Unix系统。有许多版本,但都使用了同一个内核。Linux可以安装在各种计算机硬件设备中,
        从手机、平板电脑、路由器和游戏控制台到台式计算机、大型计算机和超级计算机等。
    ## Linux系统的分支
        redhat 有技术支持  
        centos 与redhat差不多,centos免费,redhat收费的,
        fedora 快速 稳定 强大,redhat的桌面版
        ubuntu 开发 linux入门 桌面级操作系统
        kai linux 做渗透测试的
    ## Linux系统的特点
        window 系统 简单,合适大部分人群,适合办公
        unix 银行用的比较多
        linux 服务器比较多
        特点:
            模块化,
            源码公开,
            广泛的硬件支持,各种平台,几乎可以运行在各种主流处理器
            安全性和可靠性
            优秀的开发工具
            网络支持文件支持
            可以与unix完全兼容
    ## Linux服务器的硬件组成
            服务器的组成:
                中央处理器cpu 有台式机cpu和服务器的cpu
                服务器cpu常年连续工作,一个服务器可以有多个cpu,台式机cpu是72小时工作,不能支持多个cpu
                内存 
                芯片组 北桥芯片和南桥芯片 北桥芯片 是对cpu类型,主频内存 pcie和显卡的管理,南桥芯片是
                是对键盘控制器、rtc实时时钟控制器等的管理。
                I/O总线
                I/O设备
                电源
                机箱
                相关软件
    ## Linux的安装和部署
            Linux中分区,没有cde盘,都是文件
            简单的命令
            uname -r 看内核
            uname -a 看所有信息
            3.10.0-693.11.1.el7.x86_64 #1 SMP 
            主次  修         企业          对称多处理器

    # 2、Linux控制台的使用和shell命令的执行

    ## Linux控制台的使用
        桌面控制台
            x-window
        字符控制台
            默认有6个字符控制,独立运行,互不影响,多用户,多任务
            二者的相互切换 ctrl+alt+f1进入字符界面 字符切换到图形界面是alt+f1
            tty终端默认开启6个,可以有更多。
            pty终端 叫虚拟终端
            pts终端 ptmx终端 是pty的实现的方式
            ctrl+shift+T 开启多个终端,这个叫伪终端 通过alt+数字键切换
            who am i 命令可以查看哪个用户在什么时候登录了哪个终端
            dev 目录下存放的是硬件的设备,硬盘 软盘 光驱 cpu u盘 等设备文件
            
    ## Linux shell命令的执行
        什么是shell
        shell 不只是命令语言,也是程序设计语言,可以交互式的解析用户输入的命令
        [root@localhost ~]# root 是用户名 localhost 是来源地址 主机名称,
        查看主机名称可以直接打hostname ~ 代表root目录    #代表root管理员 $是普通管理员
        执行方式有两种:
        交互式:解释执行用户的命令,用户输入一条,shell执行一条
        批处理:用户事先写一个shell脚本,有很多条命令,让shell一次执行完毕。
        shell是脚本语言,需要解释器,常用的解释器有 bash sh ash csh ksh
        
        常用的shell解释器 cat /etc/shells
        /bin/sh    
        /bin/bash
        /sbin/nologin 禁止登录
        /usr/bin/sh
        /usr/bin/bash
        /usr/sbin/nologin
        /bin/tcsh
        /bin/csh
        shell命令的格式
        命令字                  【选项】               【参数】
        具体执行的命令            匹配的条件             命令处理的对象
        
        pwd 查看当前的位置
        cd 切换目录 
        ls 显示信息 -l 显示详细信息 -a显示隐藏文件 以 .为开头 -d 查看目录
        cat 查看文件

    # 3、Linux系统维护管理命令

    ## date和clear 命令    
        只用root用户才能显示和设置时间    ,普通用户只能显示时间
        date 直接使用 可以查看时间 忘了 可以 用date --help
        date "+now time is:%Y-%m-%d:%H:%M:%S"     
        date -s 2017-12-02
        clear 清屏
    ## who命令
        who -【选项】用户
            -r 所处运行级别
            -buT 用户名 所连接的终端
    ## w命令
        显示登录系统的用户信息
    ## man命令
        man ls 显示帮助信息
    ## uname命令
        uname -a 当前系统信息 -n 主机名 -r 操作系统内核
    ## uptime命令
        用户输出系统任务队列的信息
    ## last命令
        列出过去登录过系统的所有用户信息
    ## dmsg命令
        显示开机信息
    ## free命令    
        显示内存信息
        swap 虚拟分区,当系统内存不够的时候 swap会拿出一部分空间,防止系统崩溃

    # 4、Linux的文本编辑器
        vi编辑器, 是unix和类unix下的通用全屏幕纯文本编辑器
        Linux下的vi编辑器叫做vim 是vi的增强版
        有两种模式,一种是编辑模式 一种是命令模式 编辑模式可以完成对文本的编辑,命令模式可以完成对文件的操作命令
        默认情况打开vi是进入的命令模式,从编辑到命令模式的切换可以使用esc 从命令到编辑可以使用
        
        命令模式:输入快捷的命令,删除 复制 粘贴等
        编辑模式:a i o 等等进去编辑模式
        命令行模式:":"进入命令行模式对文件排序 操作 或者读取另外一些文件
        ~~~
        vim /etc/text.txt 
        命令行模式 w保存 wq 保存并退出
        
        快捷键和基本的操作
        进入编辑模式 a A i I o 
        a 在光标之后插入 A 在行尾插入
        i 在光标之前插入 I 在行首插入
        o 下一行插入     O 在上一行进行插入
        x 删除          X向前删除
        u 撤销
        
        行操作:
        home或^进入行首
        end或$  进入行尾
        删除行 dd  删除当前行 
              2dd 删除当前行和下一行 数字为需要删除的行数 
              d+G 删除后边所有文件
        复制行 yy 复制当前行  p 是粘贴
              2yy 复制当前行和下一行 数字为需要复制的行数
         

        v模式 命令模式下ctrl+v 进入  批量对每行进行操作
              按上下选择行,按I进入编辑模式,在首行添加后,每行都会添加
              同上,删除时候,选中 按d进行删除
        命令行模式
        :w保存
        :q不修改退出
        :q!修改了,不保存强退
        :wq 保存退出
        :wq!强制保存退出
        :!ifconfig 调用系统命令
        :!+命令
        替换
        % 代表所有内容 s 代表替换 旧的内容 新的内容
        默认是每一行第一个符合要求的单词 全部替换是 /g
        定位
        gg定位到行首 G最后行的行首
        快速定位 3G 5G 3gg
        
    # 5、Linux的远程连接
        SecureCRT 上传文件rz 下载文件 sz
    # 6、Linux的硬件资源管理和外设的使用
    ## Linux硬件的资源管理和信息
        PCI设备 显卡 网卡 声卡 
        网卡命令相当重要 
        
        lspci命令 显示所有pci设备信息
        dmesg |grep vga 管道过滤命令 前边的输出是后边的输入 只显示vga相关的
        lspci | grep -i eth 查看网卡命令
        

        cpu的信息
        用户和应用程序可以通过proc得到系统的信息,并可以改变内核的某些参数。
        ls /proc/
        cat /proc/cpuinfo查看cpu信息
        cat /proc/cpuinfo |grep "physical id"
        

        内存
        cat /proc/meminfo
        free -m
        磁盘分区信息
        fdisk
        fdisk -l
        df -h 查看
        dev 目录下放的是设备文件
        /dev/sda1   *        2048      616447      307200   83  Linux
        /dev/sda2          616448     4812799     2098176   82  Linux swap / Solaris
        /dev/sda3         4812800   104857599    50022400   83  Linux
        sd 是硬盘 a是第一块硬盘 1是第一块主分区
        
    ## Linux外设设备的使用
        在Linux系统中,硬件设备都以文件形式存在 不同的硬件设备具有不同的文件类型
        设备文件在 /dev下 主设备号+次设备号的形式存在
        外设设备,软盘 u盘 光驱,都需要挂载才能使用

        设备与文件对应表    
        设备名称             文件类型                文件
        u盘                    scsi                sdax x代表第几个分区
        光驱                 ide                 hdx
        光驱                    scsi                srx
        磁带                 scsi                stx
        
        常见的文件系统
        文件系统类型            备注
        msdos                dos 文件系统类型 windows
        vfat                长文件名dos系统  u盘
        iso9660                光盘格式系统文件类型
        etx2/etx3/etx4        Linux 主流系统文件类型
        xfs                    Linux 高性能日志文件系统类型

    ##    文件挂载
        单一文件不应该重复挂载到不同的挂载点
        一个挂载点不应该挂载多个设备
        挂载点目录理论上应该是一个空目录
        
        挂载命令是 mount命令挂载硬件设备
        挂载步骤,将设备连接到服务器,用命令挂载,用df验证
        mount /dev/sr0 /mnt
        挂载需要一个目录
        卸载
        umount /mnt  umount /sr0
        
    # 7、Linux的运行机制


    ##    系统的运行级别 以及级别的切换方式
        查看运行级别 ls /etc/rc*
        一共有6个运行级别 0是关机 1是但用户 2是无网络多用户 3是有网络多用户 4保留,未使用 
        5是有网络支持 有x-window支持的多用户模式 6重启
        切换运行级别 init  查看运行级别 runlevel
        ulti-user.target: analogous to runlevel 3
        graphical.target: analogous to runlevel 5
        systemctl get-default 查看默认运行级别
        systemctl set-default TARGET.target 设置默认运行级别
        systemctl isolate runleve3 切换运行级别
        
        关机命令
        shutdown 可以安全关闭系统
        
    # 7、Linux的用户管理

    ## 用户账号分类
        Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,必须向系统管理员申请一个账号,然后以这个账号的身份进入系统。
        用户账号一方面可以帮助管理员对使用系统的用户进行跟踪,并控制他们对于资源系统的访问;另一方面也可以帮助用户组织文件,并提供安全保护。
        每个账号都有各自唯一的用户名和口令。
        输入正确的用户名和口令后就可以进入自己的系统和自己的主目录。
        
        超级用户 root     
        本地用户    由管理员创建,权限受到一定限制,在自己的宿主目录权限是完整的
        系统用户 一般是不会登录系统的,用于维护系统的运行
        
        每个用户都有一个相对应的密码文件 账号和密码放在不同的文件中 账号放在 etc/passwd  密码放在 etc/shadow
        
        用户的添加
        useradd study 用户名
        -d 目录 用户创建时候的主目录
        -M 选项 不创建用户的宿主目录 伪用户
        -g 用户组 指定用户所属的用户组 创建完一个用户后 会有一个和用户名一样的基本组
        -G 用户组 用户组指定用户所属的附加组
        -s shell文件 指定用户登录的shell
        -u 用户号 指定用户登录的用户号
        
        字段说明
        study:x:1001:1001::/home/study:/bin/bash
        用户名:占位符:uid:gid:用户描述:用户主目录(登录后默认所处的目录):登录后使用的shell
        uid系统的标识号 每个用户都有uid 通常是0-65535 0是超级用户 1-99系统保留 
        gid是组id
        添加一个用户 主目录是opt/sam  shell是bin下的sh
        useradd -d /opt/sam -s /bin/sh sam
        查看是否添加成功
        tail -1 /etc/passwd
        伪用户 nobody
        是虚拟用户 不能登录系统,他们的存在主要是方便系统管理。
        id 用户名 可以看用户 uid
        id sam 
        uid=1002(sam) gid=1002(sam) groups=1002(sam)
        添加一个用户 uid 2010 初始组root 附加组ftp
        useradd -u 2010 -g root -G ftp test
        useradd -g root -M -d /var/www/html -s /sbin/nologin caiwu
        echo 1234 |  passwd --stdin caiwu  创建一个财务,属于root组,不创建宿主目录,指定目录未/www/html 不能登录系统
        用户的删除
        userdel 常用选项-r 把宿主目录一起删除,不加的话只删除账号
        删除文件 rm -fr 文件名
        修改用户信息
        usermod 常用选项与useradd中一样的    
        usermod -u 2020 -s sbin/nologin study 修改uid shell
        usermod -d /opt/sam study 修改宿主目录
    ##  用户密码的管理
        passwd 给用户设置密码 passwd study 就是给study用户设置密码
        改变一个目录的属主和属组 chown study:study sam/ 前边是属主后边是属组 最后是目录
        将用户模板拷贝到这个目录

        用户模板 在etc/skel下 隐藏
        拷贝文件 cp /etc/skel/.bash* ./
        拷贝目录 cp -rf /etc/skel/.mozilla* ./    
        无交互方式设置密码
        echo 123456 | passwd --stdin  echo是输出一个数据

    ##  用户批量添加
        不用脚本的方式
        根据etc下的passwd 复制一行,然后创建一个文件addusers.txt

        haoyp:x:1000:1000:haoyp:/home/haoyp:/bin/bash
        按照格式写入多个用户 每个用户uid不能一样,宿主目录不能一样
        然后执行 newusers <addusers.txt

        设置密码
        先取消shadow  passwd功能 pwunconv
        写一个密码文件 如用户一样passwd.txt
        chpasswd<passwd.txt
        pwconv
        

  • 相关阅读:
    js的同步和异步
    事件三
    事件2
    JS作用域题
    游戏之乐
    NSTimer(2)
    NSTimer
    理解 Objective-C Runtime
    iOS系统安全机制概览
    Which is the best of GCD, NSThread or NSOperationQueue?
  • 原文地址:https://www.cnblogs.com/haoyp/p/9145269.html
Copyright © 2020-2023  润新知