• LINUX 基础


    一、了解计算机

    1、计算机组成

    1)、控制器:是整个计算机的中枢神经,根据程序要求进行控制,协调计算机各部分工作及内存与外设的访问等。

    2)、运算器:功能是对数据进行各种算术运算和逻辑运算。

    3)、存储器:功能是存储程序、数据和各种信号、命令等信息。

    4)、输入设备:输入设备的作用是将程序、原始数据、文字、字符、控制命令或现场采集的数据等信息输 入到计算机。常见的输入设备有键盘、鼠标等。

    5)、输出设备:它把计算机计算后的信息输出出来。常用的输出设备有显示终端、打印机、绘图仪等。

    计算机的功能:接收输入设备的指令和数据,经过cpu的数据和逻辑运算处理产生有用的信息存储起来 或者输出到屏幕上。

    2、操作系统(OS)

    操作系统是管理和控制计算机硬件与软件资源的计算机程序,是配置在计算机硬件上的第一层软件,任何其它软件都必须在操作系统的支持下才能运行。 操作系统的主要工作是由操作系统内核实现的,操作系统内核提供一系列具备预定功能的多内核函数, 通过一组称为系统调用的接口(应用编程接口API,由操作系统实现提供的所有系统调用所构成的集合, 是应用程序和系统之间的接口)呈现给用户。

    二、了解LINUX系统

    1、Linux

    Linux因其高效率、易于裁剪、开源、成本低、应用广等优势,成为了当今中高端服务器的主要操作系统,并且处于一个不可替代的地位。

    Linux内核:内核是系统的核心,是运行程序和管理 像磁盘和打印机等硬件设备的核心程序。

    文件系统:文件存放在磁盘等存储设备上的组织方法。Linux能支持多种目前浒的文件系统,如 ext4、FAT、VFAT、ISO9660、NFS、SMB等。

    Shell:Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。

    应用程序:包括文本编辑器、编程语言、XWindow、办公套件、Internet工具、数据库等。 

    2、Linux系统处理过程

    Linux的操作界面常称为Shell,Shell是操作系统提供给用户使用的界面(图形、字符),它提供了用户与内核进行交互操作的一种接口。当用户发出指令(命令或鼠标操作),先将这些指令发送给Shell,由 Shell将用户的指令翻译后传送给内核,再由内核来控制硬件的工作。然后内核将硬件的工作情况发送给 Shell,并由Shell返回硬件的工作信息和情况。

    Shell的分类: 图形界面的Shell :KDE、GNOME;字符界面的Shell:bash等

    3、Linux的特点

    1)源代码开放

    2)真正的多用户多任务

    3)完全兼容POSIX标准

    4)强大的可移植性

    5)丰富的网络功能

    6)良好的用户界面

    7)可靠的系统安全

    8)高度的稳定性

    4、Linux的应用领域

    服务器领域

    桌面应用领域

    嵌入式系统、集群、虚拟化、云计算、大数据平台等

    三、基础命令

    1、查看版本信息

    1. [root@node1 ~]# cat /etc/redhat-release
    2. Red Hat Enterprise Linux release 9.1 (Plow)

    2、查看内核信息

    1. [root@node1 ~]# uname -r
    2. 5.14.0-162.6.1.el9_1.x86_64

    3、查看shell

    1. #方法一
    2. [root@node1 ~]# cat /etc/shells
    3. /bin/sh
    4. /bin/bash
    5. /usr/bin/sh
    6. /usr/bin/bash
    7. #方法二
    8. [root@node1 ~]# chsh -l
    9. /bin/sh
    10. /bin/bash
    11. /usr/bin/sh
    12. /usr/bin/bash
    13. #查看默认的SHELL
    14. [root@node1 ~]# echo $SHELL
    15. /bin/bash

    4、重启和关闭linux操作系统

    1. 重启: reboot , shutdown -r now
    2. 关机: shutdown -h now

    poweroff shutdown -r +10 'the system will reboot'  再过10分钟之后系统会重启,并显示后面的消息给所有在线用户.

    5、查看网卡信息以及获取ip地址

    1. [root@node1 ~]# ip addr #或者ip a
    2. 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    3. link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    4. inet 127.0.0.1/8 scope host lo
    5. valid_lft forever preferred_lft forever
    6. inet6 ::1/128 scope host
    7. valid_lft forever preferred_lft forever
    8. 2: ens160: mtu 1500 qdisc mq state UP group default qlen 1000
    9. link/ether 00:0c:29:0f:b5:ac brd ff:ff:ff:ff:ff:ff
    10. altname enp3s0
    11. inet 192.168.78.133/24 brd 192.168.78.255 scope global dynamic noprefixroute ens160
    12. valid_lft 932sec preferred_lft 932sec
    13. inet6 fe80::20c:29ff:fe0f:b5ac/64 scope link noprefixroute
    14. valid_lft forever preferred_lft forever

    6、切换和退出用户

    1. su 用户 --切换用户
    2. exit --退出用户
    3. whoami --查看当前用户

    7、修改主机名

    1. hostname 新主机名 ---临时修改,当重启系统之后会失效
    2. hostnamectl set-hostname 新主机名 ---永久修改
    3. [root@node1 ~]# cat /etc/hostname ---查看主机配置文件
    4. node1

    8、修改密码

    1. #修改当前用户的密码
    2. [root@node1 ~]# passwd
    3. Changing password for user root.
    4. New password:
    5. BAD PASSWORD: The password is shorter than 8 characters
    6. Retype new password:
    7. passwd: all authentication tokens updated successfully.
    8. #修改指定用户的密码 ---ROOT用户才能够修改其他普通用户的密码
    9. [root@node1 ~]# passwd haha
    10. Changing password for user haha.
    11. New password:
    12. BAD PASSWORD: The password is shorter than 8 characters
    13. Retype new password:
    14. passwd: all authentication tokens updated successfully.
    15. #删除指定用户的密码
    16. passwd -d 用户名

    9、查看当前目录

    1. [root@node1 ~]# pwd
    2. /root

    10、更改当前工作路径/切换目录

    1. cd /目录名 #切换到对应目录
    2. cd - #返回上级目录
    3. cd #回到家目录
    4. cd .. #返回上级目录
    5. cd . #当前目录

    11、查看bash内部的命令

     man 命令名 

    12、date命令

    date命令后输入以 + 号开头的参数,即可按照指定格式来输出系统的时间或日期,这 样在日常工作时便可以把备份数据的命令与指定格式输出的时间结合到一起。

    语法

    date [OPTION]... [+FORMAT]

    选项参数

    例如

    1. [root@node1 ~]# date '+%H' --显示现在是这一天的第几小时
    2. 14
    3. [root@node1 ~]# date '+%d' --显示当前月的第几天
    4. 08
    5. [root@node1 ~]# date '+%m' --显示当前月份
    6. 09
    7. [root@node1 ~]# date '+%M' --显示当前分钟
    8. 04
    9. [root@node1 ~]# date '+%j' --显示今天是这个一年的第几天
    10. 251
    11. [root@node1 ~]# date '+%Y' --显示年份
    12. 2023
    13. [root@node1 ~]# date '+%Y-%m-%d' --显示当前日期
    14. 2023-09-08
    15. [root@node1 ~]# date '+%H:%M:%S' --显示当前时间
    16. 14:04:54

    13、timedatectl命令

    用来对时间进行修改调整。

    语法

    timedatectl [OPTIONS...] COMMAND ...

    选项 

    例如

    1. #查看状态信息
    2. [root@node1 ~]# timedatectl status
    3. Local time: Fri 2023-09-08 14:11:27 CST
    4. Universal time: Fri 2023-09-08 06:11:27 UTC
    5. RTC time: Fri 2023-09-08 06:11:27
    6. Time zone: Asia/Shanghai (CST, +0800)
    7. System clock synchronized: yes
    8. NTP service: active
    9. RTC in local TZ: no
    10. #查看已知时区
    11. [root@node1 ~]# timedatectl list-timezones
    12. Africa/Abidjan
    13. Africa/Accra
    14. Africa/Addis_Ababa
    15. Africa/Algiers
    16. Africa/Asmara
    17. Africa/Asmera
    18. Africa/Bamako
    19. Africa/Bangui
    20. Africa/Banjul
    21. Africa/Bissau
    22. Africa/Blantyre
    23. #修改时区
    24. [root@node1 ~]# timedatectl set-timezone Asia/Shanghai
    25. #修改日期
    26. [root@node1 ~]# timedatectl set-time 2023-09-08
    27. #修改时间
    28. [root@node1 ~]# timedatectl set-time 14:20

     14、ls命令

    查看目录下的文件

    语法

    ls [option]

    例如

    1. [root@node1 ~]# ls
    2. anaconda-ks.cfg Desktop Documents Downloads Music Pictures Public Templates test Videos
    3. [root@node1 ~]# ll
    4. total 4
    5. -rw-------. 1 root root 833 Mar 15 21:33 anaconda-ks.cfg
    6. drwxr-xr-x. 2 root root 6 Mar 16 12:42 Desktop
    7. drwxr-xr-x. 2 root root 6 Mar 16 12:42 Documents
    8. drwxr-xr-x. 2 root root 6 Mar 16 12:42 Downloads
    9. drwxr-xr-x. 2 root root 6 Mar 16 12:42 Music
    10. drwxr-xr-x. 2 root root 6 Mar 16 12:42 Pictures
    11. drwxr-xr-x. 2 root root 6 Mar 16 12:42 Public
    12. drwxr-xr-x. 2 root root 6 Mar 16 12:42 Templates
    13. drwxr-xr-x. 2 root root 34 Sep 8 11:02 test
    14. drwxr-xr-x. 2 root root 6 Mar 16 12:42 Videos
    15. [root@node1 ~]# ls -c
    16. test Desktop Documents Downloads Music Pictures Public Templates Videos anaconda-ks.cfg
    17. [root@node1 ~]# ls -a
    18. . .ansible .bash_profile .config Documents .local Public Templates .viminfo
    19. .. .bash_history .bashrc .cshrc Downloads Music .ssh test .Xauthority
    20. anaconda-ks.cfg .bash_logout .cache Desktop .lesshst Pictures .tcshrc Videos
    21. [root@node1 ~]# ls -R
    22. .:
    23. anaconda-ks.cfg Desktop Documents Downloads Music Pictures Public Templates test Videos
    24. ./Desktop:
    25. ./Documents:
    26. ./Downloads:
    27. ./Music:
    28. ./Pictures:
    29. ./Public:
    30. ./Templates:
    31. ./test:
    32. a.sh test.ini
    33. ./Videos:
    34. [root@node1 ~]# ls -i
    35. 18587253 anaconda-ks.cfg 51178621 Documents 1269799 Music 34949624 Public 1321197 test
    36. 51178619 Desktop 1269787 Downloads 18814216 Pictures 18814215 Templates 34949626 Videos
  • 相关阅读:
    ECharts数据可视化(案例)
    深度残差网络的实现与编程
    m短波宽带通信系统的信道建模matlab仿真
    Qt 5.15集成Crypto++ 8.8.0(MSVC 2019)笔记
    redis高可用之持久化
    iOS 在OC旧项目中使用Swift进行混编
    前端异常监控方案
    【Java 2 】Java 类的封装与使用
    Java: 复制文件最快方法
    电路的基本原理
  • 原文地址:https://blog.csdn.net/weixin_65685029/article/details/132752953