zoukankan      html  css  js  c++  java
  • Linux系统介绍

    Linux系统主要包括3层, 硬件(RAM、CPU、I/O设备等)、 Linux 内核和 用户进程。Linux 内核最初由芬兰黑客 Linus Torvalds 开发,Linux内核是Linux操作系统的重要组成部分,是操作系统的核心,是系统硬件和进程之间的接口。内核提供内存管理、进程管理、设备驱动和各种系统调用。

    Linux内核版本

    Linux各个内核版本可以在https://www.kernel.org/ 上下载,一些社区组织或厂商将Linux内核与各种软件和文档包装起来,并提供系统安装界面和系统配置、设定与管理工具,就构成了 Linux 的发行版本。Linux有多个发行版本,常见的Linux系统有Centos和Ubuntu。

    查看系统版本

    cat /proc/version
    uname -a
    
    [root@iZ8vb54310gt89j8qct198Z ~]# cat /proc/version
    Linux version 4.18.0-147.5.1.el8_1.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 8.3.1 20190507 (Red Hat 8.3.1-4) (GCC)) #1 SMP Wed Feb 5 02:00:39 UTC 2020
    [root@iZ8vb54310gt89j8qct198Z ~]# uname -a
    Linux iZ8vb54310gt89j8qct198Z 4.18.0-147.5.1.el8_1.x86_64 #1 SMP Wed Feb 5 02:00:39 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
    

    4.18.0-147.5.1.el8_1.x86_64 :

    • 4:内核主版本号
    • 18:内核次版本号,偶数代表稳定版;奇数代表开发版
    • 0:内核修订版本号,添加安全补丁,bug修复,新功能或驱动程序等
    • 147.5.1:发行版本的补丁版本
    • el8_1:使用的内核是 RedHat / CentOS 系列发行版专用内核
    • x86_64:x86平台64位CPU

    查看centos发行版本:

    [root@iZ8vb54310gt89j8qct198Z ~]# cat /etc/redhat-release 
    CentOS Linux release 8.1.1911 (Core) 
    

    shell

    常见 shell

    Shell 是一种脚本编程语言,连接内核和用户。常见的 Shell 有 sh、bash、ksh、csh等。

    • Bourne Shell (/usr/bin/sh或/bin/sh)
    • Bourne Again Shell (/bin/bash):兼容 sh
    • C Shell (/usr/bin/csh)
    • K Shell (/usr/bin/ksh)
    • Shell for Root (/sbin/sh)

    cat /etc/shells 命令查看系统可用shell:

    [root@client ~]# cat /etc/shells
    /bin/sh
    /bin/bash
    /usr/bin/sh
    /usr/bin/bash
    [root@client ~]# 
    

    运行 shell

    1. 使脚本具有执行权限
    chmod +x ./test.sh 
    chmod 777 ./test.sh 
    
    1. 执行脚本
    ./test.sh # 执行脚本
    /bin/sh test.sh
    

    查看Linux系统信息

    查看系统位数

    1. getconf LONG_BIT
    2. file /bin/ls
    [root@iZ8vb54310gt89j8qct198Z ~]# getconf LONG_BIT
    64
    [root@iZ8vb54310gt89j8qct198Z ~]# file /bin/ls
    /bin/ls: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=937708964f0f7e3673465d7749d6cf6a2601dea2, stripped, too many notes (256)
    [root@iZ8vb54310gt89j8qct198Z ~]# 
    

    查看内存信息

    Linux 查看内存支持的最大内存容量

    dmidecode|grep -P 'Maximums+Capacity'
    

    查看槽位上内存的速率,没插就是unknown。

    dmidecode|grep -A16 "Memory Device"|grep 'Speed'
    

    查看内存条厂家

    dmidecode -t memory | grep Manufacturer
    

    查看内存信息(显示插槽个数和每个插槽里内存条的大小)

    dmidecode -t memory | grep Size
    

    Linux软件包管理

    Linux软件安装可以直接通过源码编译安装,一般源码包都打包成tar.gz压缩格式。源码包安装比较麻烦,容易出错,也可以使用包管理来软件包的管理,包管理工具是对软件工具的安装、卸载及其他管理, 常见的两类软件包管理工具是RPM 和 DPKG,RPM是Red Hat软件包管理器,DPKG的是Debian的Linux系列基本的包管理系统。

    源码编译安装

    源码编译安装步骤:

    1. 下载安装文件
    2. 解压
    tar -xvzf xxx.tar.gz
    
    1. 检查编译
      进入解压文件内
    ./configure
    

    检查通过后,将生成用于编译的MakeFile文件。

    1. 编译
    make
    
    1. 安装
    make install
    

    安装完毕,应清除编译过程中产生的临时文件和配置过程中产生的文件。

    make clean
    make distclean
    

    如果要卸载,则执行

    make uninstall
    

    RPM

    RPM 全称为 Redhat Package Manager,最早由 Red Hat 公司制定实施,rpm包文件通常以.rpm结尾。

    RPM包安装

    下载rpm包后安装:
    安装 RPM 包

    rpm -ivh package.rpm
    

    升级 RPM 包

    rpm -Uvh package.rpm
    

    卸载 RPM 包

    rpm -ev package
    

    yum

    rpm无法解决软件包与软件包之间的依赖问题,可以使用yum工具进行在线安装,yum(Yellowdog update Modifier)是RPM前端工具,操作对象为rpm包。由于网络问题,可以设置yum国内镜像源,也可以配置本地源。下面介绍yum安装方法:
    搜索可用软件包:

    yum search all 软件关键字
    

    安装

    yum install package-name
    yum -y install package-name #接受所有互动问答
    

    卸载

    yum remove package-name
    yum -y remove package-name
    

    DPKG

    DPKG全称为 Debian Package,功能与 RPM 相似,包文件通常以 .deb 扩展名结尾。Ubuntu系统使用此包管理工具。

    DPKG 命令安装

    安装 DEB 包

    dpkg -i package.deb
    

    升级 DEB 包

    dpkg -i package.deb ( 和安装命令相同)
    

    卸载 DEB 包

    dpkg -r package.deb # 不卸载配置文件
    dpkg -P package.deb # 卸载配置文件
    

    apt

    apt 全称 Advanced Packaging Tools,DPKG 前端工具, apt 的主要包管理工具为apt-get,实现功能和yum类似。

    搜索可用软件包

    apt-cache search 软件关键字
    

    安装

    apt-get install package-name
    

    下载指定软件的源文件

    apt-get source package-name
    

    更新

    apt-get upgrade # 更新软件
    apt-get update # 更新软件列表
    apt-get dist-upgrade # 更新所有软件
    

    卸载

    apt-get remove package-name
    
    --THE END--

    文章标题:Linux系统介绍
    本文作者:hiyo
    本文链接:https://www.cnblogs.com/hiyong/p/14170449.html
    欢迎关注公众号:「测试开发小记」及时接收最新技术文章!

  • 相关阅读:
    mysql数据库引擎myisam与innodb
    Java观察者模式的理解
    线程安全的单例模式
    线程相关
    java 线程读写锁
    原子变量AtomicInteger
    接口文档管理,版本管理工具,阿里RAP的windows下部署
    谷歌浏览器报错:跨域问题处理( Access-Control-Allow-Origin)_ 用于本地测试的快捷解决方法
    mysql bin-log日志记录
    阿里RDS中插入emoji 表情插入失败的解决方案
  • 原文地址:https://www.cnblogs.com/hiyong/p/14170449.html
Copyright © 2011-2022 走看看