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、查看版本信息

php 复制代码
[root@node1 ~]# cat /etc/redhat-release 
Red Hat Enterprise Linux release 9.1 (Plow)

2、查看内核信息

php 复制代码
[root@node1 ~]# uname -r
5.14.0-162.6.1.el9_1.x86_64

3、查看shell

php 复制代码
#方法一
[root@node1 ~]# cat /etc/shells 
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash
#方法二
[root@node1 ~]# chsh -l
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash
#查看默认的SHELL
[root@node1 ~]# echo $SHELL
/bin/bash

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

php 复制代码
重启: reboot , shutdown -r now
关机: shutdown -h now

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

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

php 复制代码
[root@node1 ~]# ip addr #或者ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:0c:29:0f:b5:ac brd ff:ff:ff:ff:ff:ff
    altname enp3s0
    inet 192.168.78.133/24 brd 192.168.78.255 scope global dynamic noprefixroute ens160
       valid_lft 932sec preferred_lft 932sec
    inet6 fe80::20c:29ff:fe0f:b5ac/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

6、切换和退出用户

php 复制代码
su 用户  --切换用户
exit  --退出用户
whoami  --查看当前用户

7、修改主机名

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

8、修改密码

php 复制代码
#修改当前用户的密码
[root@node1 ~]# passwd
Changing password for user root.
New password: 
BAD PASSWORD: The password is shorter than 8 characters
Retype new password: 
passwd: all authentication tokens updated successfully.
#修改指定用户的密码  ---ROOT用户才能够修改其他普通用户的密码
[root@node1 ~]# passwd haha
Changing password for user haha.
New password: 
BAD PASSWORD: The password is shorter than 8 characters
Retype new password: 
passwd: all authentication tokens updated successfully.
#删除指定用户的密码
passwd -d 用户名

9、查看当前目录

php 复制代码
[root@node1 ~]# pwd
/root

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

php 复制代码
cd /目录名   #切换到对应目录
cd -  #返回上级目录
cd    #回到家目录
cd .. #返回上级目录
cd .  #当前目录

11、查看bash内部的命令

php 复制代码
 man 命令名 

12、date命令

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

语法

sql 复制代码
date [OPTION]... [+FORMAT]

选项参数

例如

php 复制代码
[root@node1 ~]# date '+%H'  --显示现在是这一天的第几小时
14
[root@node1 ~]# date '+%d'  --显示当前月的第几天
08
[root@node1 ~]# date '+%m'  --显示当前月份
09    
[root@node1 ~]# date '+%M'  --显示当前分钟
04
[root@node1 ~]# date '+%j'  --显示今天是这个一年的第几天
251
[root@node1 ~]# date '+%Y'  --显示年份
2023
[root@node1 ~]# date '+%Y-%m-%d'  --显示当前日期
2023-09-08
[root@node1 ~]# date '+%H:%M:%S'  --显示当前时间
14:04:54

13、timedatectl命令

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

语法

php 复制代码
timedatectl [OPTIONS...] COMMAND ...

选项

例如

php 复制代码
#查看状态信息
[root@node1 ~]# timedatectl status
               Local time: Fri 2023-09-08 14:11:27 CST
           Universal time: Fri 2023-09-08 06:11:27 UTC
                 RTC time: Fri 2023-09-08 06:11:27
                Time zone: Asia/Shanghai (CST, +0800)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no
#查看已知时区
[root@node1 ~]# timedatectl list-timezones 
Africa/Abidjan
Africa/Accra
Africa/Addis_Ababa
Africa/Algiers
Africa/Asmara
Africa/Asmera
Africa/Bamako
Africa/Bangui
Africa/Banjul
Africa/Bissau
Africa/Blantyre
#修改时区
[root@node1 ~]# timedatectl set-timezone Asia/Shanghai 
#修改日期
[root@node1 ~]# timedatectl set-time 2023-09-08
#修改时间
[root@node1 ~]# timedatectl set-time 14:20

14、ls命令

查看目录下的文件

语法

php 复制代码
ls [option]

例如

php 复制代码
[root@node1 ~]# ls
anaconda-ks.cfg  Desktop  Documents  Downloads  Music  Pictures  Public  Templates  test  Videos

[root@node1 ~]# ll
total 4
-rw-------. 1 root root 833 Mar 15 21:33 anaconda-ks.cfg
drwxr-xr-x. 2 root root   6 Mar 16 12:42 Desktop
drwxr-xr-x. 2 root root   6 Mar 16 12:42 Documents
drwxr-xr-x. 2 root root   6 Mar 16 12:42 Downloads
drwxr-xr-x. 2 root root   6 Mar 16 12:42 Music
drwxr-xr-x. 2 root root   6 Mar 16 12:42 Pictures
drwxr-xr-x. 2 root root   6 Mar 16 12:42 Public
drwxr-xr-x. 2 root root   6 Mar 16 12:42 Templates
drwxr-xr-x. 2 root root  34 Sep  8 11:02 test
drwxr-xr-x. 2 root root   6 Mar 16 12:42 Videos

[root@node1 ~]# ls -c
test  Desktop  Documents  Downloads  Music  Pictures  Public  Templates  Videos  anaconda-ks.cfg

[root@node1 ~]# ls -a
.                .ansible       .bash_profile  .config  Documents  .local    Public   Templates  .viminfo
..               .bash_history  .bashrc        .cshrc   Downloads  Music     .ssh     test       .Xauthority
anaconda-ks.cfg  .bash_logout   .cache         Desktop  .lesshst   Pictures  .tcshrc  Videos

[root@node1 ~]# ls -R
.:
anaconda-ks.cfg  Desktop  Documents  Downloads  Music  Pictures  Public  Templates  test  Videos

./Desktop:

./Documents:

./Downloads:

./Music:

./Pictures:

./Public:

./Templates:

./test:
a.sh  test.ini

./Videos:

[root@node1 ~]# ls -i
18587253 anaconda-ks.cfg  51178621 Documents   1269799 Music     34949624 Public      1321197 test
51178619 Desktop           1269787 Downloads  18814216 Pictures  18814215 Templates  34949626 Videos
相关推荐
少妇的美梦8 小时前
logstash教程
运维
chen9459 小时前
k8s集群部署vector日志采集器
运维
chen9459 小时前
aws ec2部署harbor,使用s3存储
运维
轻松Ai享生活13 小时前
5 节课深入学习Linux Cgroups
linux
christine-rr13 小时前
linux常用命令(4)——压缩命令
linux·服务器·redis
三坛海会大神55514 小时前
LVS与Keepalived详解(二)LVS负载均衡实现实操
linux·负载均衡·lvs
東雪蓮☆14 小时前
深入理解 LVS-DR 模式与 Keepalived 高可用集群
linux·运维·服务器·lvs
qq_2642208914 小时前
LVS负载均衡群集和LVS+Keepalived群集
运维·负载均衡·lvs
乌萨奇也要立志学C++14 小时前
【Linux】进程概念(二):进程查看与 fork 初探
linux·运维·服务器
雨落Liy14 小时前
Nginx 从入门到进阶:反向代理、负载均衡与高性能实战指南
运维·nginx·负载均衡