Linux期末复习总结

一、Linux基础及安装

  • LINUX是在UNIX基础上开发,具有UNIX全部功能。

  • Linux特点: 开放性、多用户、多任务、出色的稳定性、良好的用户界面、设备独立性、丰富的网络功能、安全性、可移植性

  • Linux由4个主要部分组成:内核、Shell、文件系统、应用程序

  • 内核:硬件方面:控制硬件设备、管理内存、通过接口、处理基本I/O;软件方面:管理文件系统、为程序分配内存和CPU时间。

  • Shell:系统的用户界面、命令解释器、编程语言。

  • 文件系统:/为根目录 目前流行的文件系统:ext2、ext3、fat等

  • 应用程序:应用程序的程序集,包括文本编辑器、编程语言、X Window、办公套件、Internet工具、数据库等。

  • Linux多用户系统,用户分为根用户(系统管理员)和普通用户两大类

  • 文本界面下注销

    $ logout
    $ ctrl+d
    $ exit
    
  • Linux的运行级别

    0-关机(千万不要把initdefault 设置为0)
    1-单用户模式
    2-多用户模式,但是没有NFS
    3-完全多用户模式
    4-没有用到
    5-X11
    6-重启(千万不要把initdefault设置为6)

  • Linux的基本命令:

    • passwd #更改用户密码
      
      --help
      
      man #显示系统稳定中的man也内容
      
      info # 超文本系统
      who #用于查看当前登录到系统的用户信息
      uname #显示正在使用的Linux系统信息
      date #显示或设置系统时间
      cal #在屏幕上输出日历信息
      echo #用于回显输入内容
      clear #清除shell窗口中的内容
      su #用户进入到系统后,切换到其他用户,使用su命令 
      
  • Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU操作系统

  • ping命令的运用

    1、在“开始”——“运行”中输入“cmd”进入XP的命令提示符模式。

    2、输入命令:ping 127.0.0.1观察结果

    得到回复的数量: TTL值是:

    3、先在网上邻居查看本机IP,如192.168.1.61然后ping 本机IP观察结果。

    得到回复的数量: TTL值是:

    4、ping 本局域网的其它IP,如192.168.1.62,观察结果

    得到回复的数量: TTL值是:

    5、ping我校的默认DNS服务器58.20.127.238

    得到回复的数量: TTL值是: 说明经过了几个路由:

    6、ping www.baidu.com

    百度网服务器的IP地址是: TTL值是: 说明经过了几个路由:

    7、ping www.csdn.net

    百度网服务器的IP地址是: TTL值是: 说明经过了几个路由:

    8、输入ping 192.168.1.62 –t 观察结果:

    9、输入ping 192.168.1.62–l 3000 观察结果:

    10、输入ping 192.168.1.62–n 10 观察结果:

    小结:ping命令的主要用途是:

    ipconfig命令的运用

    1、输入命令 ipconfig 可以得到本机的下列信息:

    1)本机的IP地址是:

    2)本机的子网掩码是:

    3)本机网卡的物理地址是:

    4)本机的默认网关是:

    2、输入ipconfig /all,观察结果。

    3、输入Ipconfig/release观察结果

    4、输入IPconfig/renew观察结果

  • Linux系统在中国用户使用最多的版本是CentOS

  • VMware虚拟网络中的网络模式 桥接 网络地址转换 NAT

二、文件系统

  • Linux文件系统采用的是树形结构

  • Linux支持多种文件系统

  • Linux文件系统提供丰富的文件和目录操作命令

  • /bin: 存放二进制可执行命令目录
    /home: 用户主目录的基点目录,默认情况每个用户主目录都设在该目录下,如默认情况下用户user01的主目录是/home/user01;AHE
    /lib:存放标准程序设计库目录,又叫动态链接共享库目录目录中文件类似windows里的dll文件;
    /etc: 存放系统管理和配置文件目录
    /dev: 存放设备特殊文件目录,如声卡文件、磁盘文件等
    /usr: 最庞大的目录,存放应用程序和文件目录/proc: 虚拟目录,是系统内存的映射,可直接访问这个目录来获取系统信息;
    /root: 系统管理员的主目录
    /var: 存放系统产生的经常变化文件目录,例如打印机、邮件、新闻等假脱机目录、日志文件、格式化后的手册页以及一些应用程序的数据文件等等;
    /tmp: 存放公用临时文件目录
    
  • EXT文件系统

    • 高可用性
    • 数据的完整性
    • 文件系统的速度
    • 数据转换
    • 多种日志模式 ext3有三种日志模式
  • 文件类型

    • 普通文件
    • 目录文件
    • 设备文件
    • 符号链接文件
  • 路径

    • 绝对路径
    • 相对路径
  • 文件操作命令

    cat #显示文件命令
    more # 该命令显示文本文件的内容,一次显示一屏,满屏后
    停下来
    less #与more命令相似,分屏显示文件的内容less命令允许用户向前 (PageUp)或向后(PageDown)浏览文件。在less命令提示符下按q键退出。
    head #用于查看一个文本文件的开头部分,行数由参数值决定,默认值是10
    tail #用于查看一个文本文件的末尾部分,行数由参数值决定,默认值是10
    grep #grep家族包括grep、egrep和fgrep。egrep是grep的扩展,可使用扩展的字符串模式进行搜索,fgrep就是fixed grep或fast grep,把所有字母看作单词,不识别正则表达式。如果没有指定文件名,grep命令会搜索标准输
    sort #排序
    uniq #检查及删除文本文件中重复出现的行
    comm #对两个已经排好序的文件进行比较
    diff #比较文本文件,并找出他们的不同
    cp #复制
    rm #删除
    mv #移动
    wc #套件字节数、字数、行数
    find # 查找符合条件的文件和目录
    bzip2 # .bz2的压缩程序,并删除原始的文件
    gzip # .gz的压缩程序,并且删除原始的文件
    tar # 解开备份文件内的文件
    cd # 切换目录
    pwd # 显示当前目录
    ls # 列出目录内容
    mkdir # 创建目录
    rmdir # 删除目录
    chmod [mode] 文件或目录名 #修改文件权限
    hgrp[选项]...所属组 文件或目录#改变指定文件所属的用户组
    ln #链接文件命令
    

三、Vim编辑器

  • Linux系统提供了如ed、ex、vi和emacs等编辑器按功能可以将编辑器分为两大类:
    行编辑器 (ed、ex)
    全屏幕编辑器 (vi、emacs)
    vi属于全屏幕编辑器,是Linux系统的第一个全屏幕交互式的编辑程序。

  • vim编辑器没有菜单,只有命令,提供三种基本的工作方式:

    • 命令模式
    • 插入模式
    • 末行模式
  • 进入vim

    $vim
    $vim filename
    $vim +n filename
    $vim +/pattern filename
    
  • 退出vim

    命令模式下 连续按两下大写Z
    末行模式下 :q :wq :q! 
    
  • 移动光标

    HJKL 左下上右
    
    
  • 文本删除

    Linux期末复习总结_第1张图片
    Linux期末复习总结_第2张图片

  • 文本的复制与粘贴Linux期末复习总结_第3张图片

  • 文本的移动Linux期末复习总结_第4张图片

  • 文本的查找与替换Linux期末复习总结_第5张图片
    Linux期末复习总结_第6张图片

  • 重复与取消Linux期末复习总结_第7张图片

  • vim中执行shell命令Linux期末复习总结_第8张图片

  • 文件的读写Linux期末复习总结_第9张图片

四、系统管理基础

  • 系统启动

  • 系统运行

    • 系统运行级别:
      • 0:系统停机状态,默认运行级别不能设为0,否则不能正常启动
      • 1:单用户工作状态,root权限,用于系统维护,禁止远程登录
      • 2:多用户状态(没有NFS支持)
      • 3:完全的多用户状态(有NFS)
      • 4:系统未使用,保留
      • 5:多用户模式,X11控制台,登录后进入GUI模式
      • 6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动
    • 运行级别切换
      • 查看运行级别 $ runlevel
      • 进入其他运行级别 $init N
      • 系统关闭 shutdown
  • 用户管理

    • Linux系统用户三种类型:超级用户、普通用户、特殊用户

    • 用户管理方法
      (1) 通过GUI方式管理

      (2) 通过修改用户管理相关配置文件管理

      (3) 通过系统管理命令管理

  • 设备管理

    • Linux系统中设备分为:字符设备、块设备、网络设备
    • 磁盘和分区管理命令
      • fdisk 创建、删除、更改分区
      • mkfs 格式化
      • fsck 修复
      • df 检查文件系统的磁盘空间占用
      • du 统计目录所占磁盘空间的大小
      • quota 显示磁盘已使用的空间与限制
    • 存储设备的挂载与卸载
      • 挂载设备 mount
      • 卸载设备 umount
      • 设备自动挂接
  • 进程管理

  • 系统进程和用户进程

    • ps 进程查看
    • top 显示系统当前的进程和其他状况
    • renice 在命令执行时调整其优先权
    • wait 对一个进程的等待
    • sleep 将进程挂起一段时间
    • at 实现指定时刻执行指定的命令序列
    • cron 按一定时间自动完成任务调度
    • corntab 用于安装、删除或者列出用于驱动cron后台进程的表格
    • kill 中断一个前台进程
  • 日志管理

    • Linux有三个主要的日志子系统:连接时间日志子系统、进程统计日志子系统、错误日志子系统。

五、网络管理及应用

Linux期末复习总结_第10张图片

六、shell编程

  • 通配符 * 代表任意字符串 ?代表单个字符 []代表指定的一个字符范围
  • 引号 单引号作为普通字符出现 双引号特殊字符保留特殊功能 反引号被shell解释为命令
  • 注释符 #
  • 别名 alias cdir=‘cd /home/user/dir’ 取消别名 unalias
  • 命令历史 history
  • 重复执行命令历史中指定的命令 !+命令编号
  • shell脚本执行方式
    • 为脚本文件加上可执行权限,然后在命令行直接输入shell脚本文件名执行
    • sh shell脚本名
    • .shell脚本名
#!/bin/bash
#this script is to test shell running
date
cd /home/user/dir
echo"The working directory is:"
pwd
#end

Linux期末复习总结_第11张图片

  • shell变量

    • 用户自定义变量

      var=hello
      echo $var
      hello
      var="hello world"
      echo $var
      hello world
      var=1+2
      echo $var
      1+2
      
      
    • 清除变量

      unset var
      
      
  • 环境变量

    • 查看环境变量 env
  • 特殊变量

    **$#*表示传递给脚本的实际参数个数

    **$ : ∗ ∗ 当前 s h e l l 脚本的进程号。 ∗ ∗ :**当前shell脚本的进程号。 ** :当前shell脚本的进程号。**位置参数的值,各个参数之间用环境变量IFS中定义
    的字符分隔开。
    **$@*也表示位置参数的值,它不使用IFS环境变量,所以当IFS为空时,参数值不会结合在一起。

    ** ! : ∗ ∗ 上一个后台命令的进程号。 ∗ ∗ !:** 上一个后台命令的进程号。 ** !:上一个后台命令的进程号。?*执行最后一条命令的退出状态

Linux期末复习总结_第12张图片

七、 C编程

  • 首先选择编辑器 VIM

  • 然后选择编译器 GCC

  • 选择调试器 GDB

  • 利用程序维护工具进行程序维护 make

  • 预处理-编译-汇编-链接

  • .c-.i-.s-.o

  • 编写程序将a、b、c三个字符压入堆栈,然后依次从堆栈中弹出三个字符并打印在屏幕上。

    /* stack.c */
    char stack[512];
    int top = -1;
    void push(char c)
    {
        stack[++top] = c;
    }
    char pop(void)
    {
        return stack[top--];
    }
    int is_empty(void)
    {
        return top == -1;
       }
       
    /* main.c */
    #include 
    void push(char);
    char pop(void);
    int is_empty(void);
    int main(void)
    {
        push('a');
        push('b');
        push('c');      
        while(!is_empty())
            putchar(pop());
        putchar('\n');
        return 0;
    }
    
    
    

    将两个文件编译链接成可执行文件main并运行

    • gcc main.c stack.c -o main
    • ./main
    • 输出 cba
    • gcc -c stack.c
    • gcc -c main.c
    • gcc -o main mian.o stack.o
    • ./main
    • 输出 cba
  • 程序中的错误分为三类:编译时错误、运行时错误、逻辑错误和语义错误

  • 程序调试工具 gdb

Linux期末复习总结_第13张图片

八、 GTK+图形界面程序设计

九、Qt图形界面程序设计

持续更新中…

你可能感兴趣的:(Linux,linux,服务器,unix)