Linux--VMware虚拟机安装

发布时间 2023-12-19 21:17:26作者: 学Java的`Bei

1. 介绍

  操作系统(Operation System, OS),是管理计算机硬件与软件资源的计算机程序,同时也是计算机系统的内核与基石。

  操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入设备与输出设备、操作网络与管理文件系统等基本事务。

  操作系统也提供一个让用户与系统交互的操作界面。

  在操作系统的最上层是用户,中间层是操作系统(里面可能装了很多的应用程序),最下层是硬件的支撑,包含CPU/内存/硬盘等。

主流操作系统按照应用领域的划分:

     桌面操作系统:

       Window 系列:用户群体大。

      MacOS:细节处理的更好, 没有windows软件丰富, 价格高。

      Linux:应用软件少。

     服务器操作系统:

      Linux:安全、稳定、免费、占有率高。

      Windows Server:付费、占有率低。

  ③ 嵌入式操作系统:

        Linux

  ④ 移动设备操作系统:

         IOS

         Android (基于Linux)

        华为鸿蒙(基于linux)

 

2. 基本思想

  Linux的基本思想有两点:

    第一:一切都是文件

    第二:每个软件都有确定的用途

    一详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。至于说Linux是基于Unix的,很大程度上也是因为这两者的基本思想十分相近。

 

3. 内核

  操作系统内核(Kernal)是一组应用软件,这个软件能够控制所有硬件及计算机活动。如硬盘访问、网卡传输和键盘开始工作等,开机后内核程序将会常驻受保护的内存中。硬件由内核管理后,操作系统将会提供一组系统调用接口,帮助完成诸如显示、读写设备等基本操作,架构是计算机硬件的组织形式,架构不同则内核也不同(Arm架构和x86架构)。

  内核是操作系统中应用连接硬件设备的桥梁。

 

  内核的能力:

    •  管理进程、线程(决定哪个进程、线程使用 CPU...);
    •  管理内存(决定内存用来做什么...);
    •  连接硬件设备(为进程、和设备间提供通信能力...);

  内核分类:

     宏内核:
      内核的功能都集中在一起,运行在内核进程中,模块之间的交互直接通过方法调用。宏内核的特点就是有很多程序会打包在内核中,比如,文件系统、驱动、内存管理等。

     微内核:
      微内核中,内核只提供最核心的功能,如进程调度、内存管理,其他模块都被移除内核,运行在不同进程,这样即使某一个模块出现问题,只要重启该进程即可;但是该种做法需要使用IPC作为进程间通信的方式,进程间的效率较低。

     微内核,只保留最基本的能力。比如进程调度、虚拟内存、中断。多数应用,甚至包括驱动程序、文件系统,是在用户空间管理的。

    ③ 混合内核:
      宏内核和微内核的结合体,混合内核就是集中了两者的特点,让微内核的一些核心模块运行在内核中,从而使得内核效率更高。

     外内核:
      外内核就是把硬件暴露给应用程序,应用程序可以直接访问硬件,外内核对系统提供保护。

 

4. 优点

    •  Linux由众多微内核组成,其源代码完全开源;
    •  Linux继承了Unix的特性,具有非常强大的网络功能,其支持所有的因特网协议,包括TCP/IPv4、 TCP/IPv6和链路层拓扑程序等,且可以利用Unix的网络特性开发出新的协议栈;
    •  Linux系统工具链完整,简单操作就可以配置出合适的开发环境,可以简化开发过程,减少开发中仿真工具的障碍,使系统具有较强的移植性;

 

5. CentOS和Linux区别

  CentOS,是基于 Red Hat Linux 提供的可自由使用源代码的企业级 Linux 发行版本;是一个稳定,可预测,可管理和可复制的免费企业级计算平台。

  主要特点:

    •  主流: 目前的Linux操作系统主要应用于生产环境,主流企业级Linux系统仍旧是RedHat或者CentOS;
    •  免费: RedHat 和CentOS差别不大,CentOS是一个基于Red Hat Linux 提供的可自由使用源代码的企业级Linux发行版本;
    •  更新方便:CentOS独有的yum命令支持在线升级,可以即时更新系统,不像RED HAT那样需要花钱购买支持服务。

 

6. Linux 文件目录

    •  ls:列出目录

    •  ll:排出列表
    •  cd: 切换目录

    •  pwd: 显示目前的目录

    •  mkdir:创建一个新的目录

    •  rmdir:删除一个空的目录

    •  cp:复制文件或目录

    •  rm:移除文件或目录

    •  mv:移动文件与目录或修改文件与目录的名称

    •  touch:创建文件

7. 基础操作命令

    •   Linux刚面世时并没有图形界面, 所有的操作全靠命令完成, 如 磁盘操作、文件存取、目录操作、进程管理、文件权限 设定等。

    •        在职场中,大量的 服务器维护工作 都是在 远程 通过SSH客户端 来完成的,并没有图形界面,所有的维护工作都需要通过命令来完成。

   用户管理:

    添加用户:useradd  选项  用户名

        选项:

        •  -c comment 指定一段注释性描述。

        •  -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。

        •  -g 用户组 指定用户所属的用户组。

        •  -G 用户组,用户组 指定用户所属的附加组。

        •  -s Shell文件 指定用户的登录Shell。

        •  -u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。

     用户口令(密码) passwd  选项 用户名

        选项:

        •  -l 锁定口令,即禁用账号。

        •  -u 口令解锁。

        •  -d 使账号无口令。

        •  -f 强迫用户下次登录时修改口令。

      修改用户:usermod 选项 用户名 用户名

    删除用户:userdel 选项 用户名

        •  -f:强制删除用户,即使用户当前已登录;
        •  -r:删除用户的同时,删除与用户相关的所有文件;
        •    -rf:删除(建议使用);

  ② 用户组:

      为了方便用户管理, 提出了 组 的概念;一个用户可以有一个或者多个组。

    增加用户组:groupadd 选项 用户组名

        选项:

        •    -g GID 指定新用户组的组标识号(GID)。

        •    -o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。

    修改用户组:groupmod 选项用户组名

      选项:  

        •   -g GID 为用户组指定新的组标识号。

        •   -o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。

        •   -n新用户组 将用户组的名字改为新名字。

      查询用户所属组:groups 用户名

    删除用户组:groupdel 用户组名

 

  ③ 将用户添加到组

    •  将已经存在的用户添加到组中: usermod -a -G 组名 用户名
    •  将新用户添加到指定组 useradd -g 组名 新用户名

  ④ 系统管理

     系统管理,说的就是CentOS系统,它不同于Windwos;CentOS是字符界面,需要通过命令进行操作。

    date可以用来显示或设定系统的日期与时间

 

       参数:

 

          -d "字符串":显示字符串所指的日期与时间。字符串前后必须加上双引号;

        -s "字符串":根据字符串来设置日期与时间。字符串前后必须加上双引号;

        -u:显示GMT;

        --help:在线帮助;

        --version:显示版本信息。

      显示登录账号的信息:logname

 

  ⑤ su 切换账户

    从root管理员权限切换到其他用户,直接 su 用户名

       切换回 root :exit

       如果你最初登录的不是管理员则用 su root ,然后输入密码

 

  ⑥ sudo执行:

    需要安装:yum install lrzsz -y

    语法:sudo 参数

    参数:

    •  -V 显示版本编号

    •  -h 会显示版本编号及指令的使用方式说明

    •  -l 显示出自己(执行 sudo 的使用者)的权限

    •  -v 因为 sudo 在第一次执行时或是在 N 分钟内没有执行(N 预设为五)会问密码,这个参数是重新做一次确认,如果超过 N 分钟,也会问密码

    •  -k 将会强迫使用者在下一次执行 sudo 时问密码(不论有没有超过 N 分钟)

    •  -b 将要执行的指令放在背景执行

    •  -p prompt 可以更改问密码的提示语,其中 %u 会代换为使用者的帐号名称, %h 会显示主机名称

    •  -u username/#uid 不加此参数,代表要以 root 的身份执行指令,而加了此参数,可以以 username 的身份执行指令(#uid 为该 username 的使用者号码)

    •  -s 执行环境变数中的 SHELL 所指定的 shell ,或是 /etc/passwd 里所指定的 shell

    •  -H 将环境变数中的 HOME 指定为要变更身份的使用者HOME目录(如不加 -u 参数就是系统管理者 root )

    •  command 要以系统管理者身份(或以 -u 更改为其他人)执行的指令。

  ⑦ top 命令用于实时显示 process 的动态。使用权限:所有使用者。

    PID:进程ID

    USER:进程的所有者

    PR:进程的优先级

    VIRT:占用的虚拟内存

    RES:占用的物理内存

    SHR:使用的共享内存

    S:进行状态

    S:休眠 R运行 Z僵尸进程 N nice值为负

    %CPU:占用的CPU

    %MEM:占用内存

    TIME+: 占用CPU的时间的累加值

    COMMAND:启动命令

  ⑧ ps 命令

 

    ps命令用于显示当前进程 (process) 的状态信息。使用者权限:所有用户。

    ps -ef  | grep  进程名称

 

  kill 命令

    kill 命令用于删除执行中的程序或工作(可强制中断)。使用者权限:所有用户。

    kill 参数 进程号; 例:kill -9 进程号 -9 强制终止

 

   clear 清除屏幕;但不是清除进程...

 

  chmod 权限命令

    Linux文件属性有两种设置方法,一种是数字,一种是符号

    Linux的文件调用权限分为三级 : 文件属主、属组、其他。利用 chmod 可以控制文件如何被他人所调用。

   使用权限 : 所有使用者。

   语法:

  chmod [-cfvR] [--help] [--version] mode file...

   参数说明

    •  u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
    •  +表示增加权限、- 表示取消权限、= 表示唯一设定权限。
    •  r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。

   1)数字权限 

    Linux文件的基本权限有九个,分别是owner/group/others三种身份各有自己的read/write/execute权限。

    文件的权限字符为:-rwxrwxrwx, 九个权限是三个三个一组(owner/group/others就是所说的三个一组 )的;

             也可以使用数字来代表各个权限,各权限的数字对照表:r:4;w:2;x:1;-:0

    每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为: [-rwxrwx---] 分数则是:

    •  owner = rwx = 4+2+1 = 7

    •  group = rwx = 4+2+1 = 7

    •  others= --- = 0+0+0 = 0

    变更权限的指令chmod的语法:chmod [-R] xyz 文件目录

    选项与参数:

    •  xyz: 就是刚刚提到的数字类型的权限属性,为 rwx 属性数值的相加。

    •  -R:进行递归(recursive)的持续变更,亦即连同次目录下的所有文件都会变更。

    例:chmod -R 770 
    例:
chmod -R 777 a.txt

    此时:a.txt的属主权限、属组权限、其他权限都发生了改变。

  2) 符号权限

    •  user 属主权限

    •  group 属组权限

    •  others 其他权限

    可以使用 u,g,o 来代表三种身份的权限!

    a 则代表 all,即全部的身份。读写的权限可以写成 r, w, x

    需要将文件权限设置为 -rwxr-xr-- ,可以使用 chmod u=rwx,g=rx,o=r 文件名 来设定:chmod u=rx,g=rw,o=r a.txt(文件名)

     将权限去掉不改变其他已存在的权限。例:拿掉全部的可读权限: chmod  o-r a.txt(文件)