linux密码重置及基础命令

一、在Linux系统中重置root密码的方法,以下是步骤的总结:

1、重启系统并按下键盘的下箭头将白色光标定位到第二行上,然后输入"e"。
2、在以"linux"开头的那一行尾部添加"rd.break",然后使用Ctrl+X继续启动系统。
3、输入"mount"命令查看设备挂载信息,特别关注"/sysroot"目录的挂载权限。
4、输入"mount -o remount,rw /sysroot"命令重新挂载已经挂载的设备,将其以读写权限重新挂载。
5、输入"chroot /sysroot/"命令使用chroot命令改变系统的根目录位置,将其改为"/sysroot"之后,可以进行密码修改操作。
6、输入"passwd root"命令并输入两次新的root密码。
7、输入"touch /.autorelabel"命令创建一个文件以进行自动标签设置。
8、两次输入"exit"命令完成root密码重置。

二、在SSH服务器上启用root用户远程登录的方法,以下是步骤的总结:

  1. 使用SSH客户端通过命令"ssh 用户名@主机名"连接到目标服务器。如果服务器一直拒绝密码,请在虚拟机中打开bash。
  2. 输入"vim /etc/ssh/sshd_config"命令以编辑SSH服务器配置文件。
  3. 在编辑器中输入"/Root"以搜索包含"Root"的行。找到匹配的行后,删除该行前面的"#"符号,并将后面的内容修改为"yes"(表示启用root用户远程登录)。保存修改并退出编辑器。
  4. 输入"systemctl restart sshd"命令以重新启动SSH服务器。
  5. 然后再次使用SSH客户端进行远程连接,尝试以root用户身份登录服务器。

三、操作系统的概念

操作系统(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是配置在计算机硬件上的第一层软件,任何其它软件都必须在操作系统的支持下才能运行。

  1. 开源:指将软件程序和源代码一起打包给用户,使用户可以自由地使用、复制、修改和创造衍生品。
  2. 低风险:开源软件通常具有较低的风险,因为用户可以查看和审查源代码,从而发现和修复潜在的安全漏洞和问题。
  3. 高品质:开源软件经常受到广泛的社区参与和审核,因此往往具有较高的质量和稳定性。

计算机的结构主要包括以下组成部分:

  1. 硬件:包括显示器、键盘、鼠标等外部设备,以及主机(计算机的中央处理单元)。
  2. 输入:通过键盘、鼠标等外部设备将数据或命令输入到计算机系统中。
  3. 主机:计算机的中央处理单元(CPU),由算数逻辑单元(负责程序的运算和逻辑判断)和控制单元(协调各周边组件和各单元之间的工作)组成。
  4. 输出:通过显示器、打印机等外部设备将计算机处理后的结果输出。

操作系统主要是通过操作系统内核实现的。

系统调用把应用程序的请求传给内核,调用相应的内核函数完成所需的处理,将处理的结果返回给应用程序。

四、Shell相关知识

  1. Shell(壳):Shell是一种命令行解释器,它是用户与操作系统内核之间的接口。它接收用户输入的命令,并将其解释执行。
  2. Bash(Bourne-Again Shell):Bash是一种常用的Unix和Linux操作系统的Shell,它是对Bourne Shell的改进和扩展,提供了更多的功能和特性。
  3. 终端:终端是计算机网络中用户与计算机系统进行交互的设备或程序。物理终端包括键盘、鼠标和显示器,而虚拟终端则是模拟出来的命令行界面。
  4. 命令格式:命令通常由命令名称、命令参数和命令对象组成。命令名称是动词,表示要执行的操作;命令参数是可选的,用于进一步指定命令的行为;命令对象是要处理的文件、目录或用户等。

通过Shell和终端,用户可以使用命令行界面与计算机系统进行交互,执行各种操作和任务。用户可以输入命令,使用命令参数来调整命令的行为,指定命令对象来对文件、目录或用户进行操作。Bash作为一种常用的Shell,提供了丰富的命令集和功能,使用户能够更灵活地管理和操作计算机系统。

五、常用命令

1、重启操作系统:

      reboot:重启操作系统

      shutdown -r now:立即重启操作系统

2、关机操作系统:

     shutdown -h now:立即关机操作系统

     poweroff:关机操作系统

3、查看IP地址:

     ip a:显示网络接口及其IP地址等详细信息

     ifconfig:显示网络接口及其IP地址等信息(在一些新的Linux发行版本中已经被弃用)

4、查看当前Linux发行版本:

     cat /etc/redhat-release:显示当前Linux发行版本的信息

5、查看内核版本:

     uname -r:显示当前内核的版本号

6、查看shell类型:

    cat /etc/shells:列出系统中可用的shell类型

    chsh -l:列出系统中可用的shell类型

7、查看当前默认shell类型:

    echo $SHELL:显示当前用户的默认shell类型

8、标识符解释:

[root@localhost ~]:表示当前用户是root用户,主机名为localhost,当前工作目录为用户的家目录(/root)

$:表示当前用户是普通用户

9、家目录:

   root用户的家目录:/root

    普通用户的家目录:/home/用户名

家目录是每个用户的个人目录,用于存放用户的个人数据和配置文件。

10、ls(list directory contents):用于列出指定目录下的文件和子目录的内容。

如果不指定目录,则默认列出当前工作目录下的内容。

常用选项:

   -l:以长格式显示文件和目录的详细信息,包括权限、所有者、大小和创建时间。

  -a:显示所有文件和目录,包括以"."开头的隐藏文件。

  -A:显示所有文件和目录,但不包括"."(当前目录)和".."(父目录)。

  -h:与-l选项结合使用,以人类可读的方式显示文件和目录的大小。

11、路径:

   绝对路径:以根目录开始的完整路径,例如:/home/rhcsa。

   相对路径:相对于当前工作目录的路径,例如:Rhcsa。

12、root用户和普通用户:

       root用户:超级管理员,具有系统最高权限。

       普通用户:一般用户,权限受限,不能执行一些系统级操作。

13、su(switch user):用于切换用户身份。

        如果从root用户切换到普通用户,不需要输入密码。

       如果从普通用户切换到root用户,需要输入密码。

       一般使用时,可以加上-选项来获取目标用户的环境变量和权限。

14、pwd(print working directory):显示当前工作目录的路径。

15、cd(change directory):用于切换当前工作目录。

       cd /root:切换到根目录下的root用户的家目录。

       cd -:切换到上一次切换的目录。

       cd ~:切换到当前用户的家目录。

六、常见目录

1、/bin:存放可执行的应用程序,也就是常说的命令。通常包含系统启动和维护所需的基本命令。

2、/boot:存放启动程序和内核镜像文件,包括引导加载程序(bootloader)和内核文件(vmlinuz)等。

3、/dev:存放设备文件,用于访问系统中的硬件设备,例如磁盘、光驱、串口等。

4、/etc:存放系统的配置文件,包括网络配置、用户账户信息、服务配置等。

5、/home:普通用户的家目录,每个用户都有一个以用户名命名的子目录,用于存放用户的个人文件和设置。

6、/root:root用户(超级管理员)的家目录,与普通用户的家目录类似,但只有root用户可以访问。

7、/lib 和 /lib64:存放系统最基本的动态连接共享库(库文件),其中/lib存放32位的库文件,/lib64存放64位的库文件。

8、/media:挂载点目录,用于临时挂载可移动媒体设备,如U盘、光盘等。

9、/mnt:挂载点目录,用于手动挂载其他文件系统或网络共享。

10、/opt:可选目录,用于存放额外安装的软件和应用程序。

11、/sbin:存放系统管理员使用的系统管理程序,这些程序通常只有超级用户(root)可以执行。

12、/srv:存放第三方服务所需的数据,例如Web服务器的网页文件。

13、/tmp:存放临时文件,通常由程序在运行过程中创建和使用,重启后会被清空。

14、/usr:存放用户的应用程序和文件,包括系统软件和用户安装的软件。常见子目录包括/usr/bin、/usr/lib等。

15、/var:存放经常变化的文件,如日志文件、缓存文件等。

16、/run:存放系统启动以来的临时文件,如进程ID文件、锁文件等。

17、/sys:提供对内核和设备的访问接口,用于查看和修改内核参数和设备状态。

18、/proc:虚拟文件系统,用于显示系统和进程的信息,包括进程状态、内存使用情况等。

七、块设备、总线与其他命令解释

1、块设备(Block Device):在计算机中,块设备是指以固定大小的块(通常为512字节或4KB)为单位进行读写的设备。常见的块设备包括硬盘、固态硬盘(SSD)等。块设备可以被操作系统用作存储数据的介质。

2、总线(Bus):总线是计算机系统中不同组件之间传输数据和控制信号的物理通道。总线扮演着连接处理器、内存、外部设备等组件的桥梁角色,使得它们能够相互通信和协调工作。

3、固件(Firmware):固件是嵌入在硬件设备中的软件,它提供设备的基本功能和控制。固件通常存储在设备的非易失性存储器中,例如闪存芯片。常见的固件包括BIOS(基本输入输出系统)、固态硬盘固件等。

4、/sys:/sys是Linux操作系统中的一个虚拟文件系统,用于显示和修改内核的运行时信息和参数。它提供了一种访问内核和设备的接口,可以查看和配置与硬件、驱动程序和内核相关的信息。

5、help命令:help命令是很多命令行界面(CLI)的内置命令,用于提供对命令的简要说明和用法。通过输入"help"或"help 命令",可以获取特定命令的帮助信息。

6、man命令:man命令用于查看Linux系统中的手册页(manual page),即命令的详细文档。通过输入"man 命令",可以打开相应命令的手册页。手册页按照不同的区段进行分类,常见的区段包括用户指定、系统调用、程序库、设备、文件格式、游戏、系统指令和内核内部等。

man cat

man ls

man passwd

7、Info命令:Info是一个用于查看GNU项目相关文档的命令。它提供了比man命令更详细的信息,通常包含命令、函数库、配置文件等方面的文档。

8、date命令:date命令用于显示或设置系统的日期和时间。在不带参数的情况下,它会显示当前的日期和时间。

                          

9、clock命令:clock命令不是一个标准的Linux命令,可能是你自己定义的别名或脚本。如果你能提供更多关于该命令的信息,我可以给出更具体的解释。

10、hwclock命令:hwclock命令用于设置和显示硬件时钟(Real Time Clock,RTC)。通过-h选项,可以查看更多关于hwclock命令的帮助信息。"-r"选项用于读取硬件时钟的值,"-s"选项用于将系统时间同步到硬件时钟,"-w"选项用于将系统时间写入硬件时钟。

11、timedatectl命令:timedatectl命令用于管理系统的日期、时间和时区。通过不同的选项和参数,可以查看和修改系统的时间和日期设置。使用"timedatectl status"命令可以查看当前系统的时间和日期状态。

12、文件权限:例如, "- rw- --- --- . 1 root root 1073 Oct 21 2023 anaconda-ks.cfg"是一个文件的权限和属性信息。其中,"- rw-"表示该文件对于所有者(root)具有读写权限,而对于组用户和其他用户没有权限。后面的"1"表示链接数,"root root"表示所有者和所属组,"1073"表示文件大小,"Oct 21 2023"表示文件的最后修改时间,"anaconda-ks.cfg"表示文件名。

八、软、硬链接与其特点

标记位——文件类型:在Linux系统中,每个文件都有一个标记位,用于指示文件的类型。常见的文件类型包括普通文件、目录文件、链接文件等。其中,链接文件可以分为硬链接和软链接两种。软链接是一个指向原始文件的符号链接,而硬链接是与原始文件共享相同的inode和数据块。

普通文件:普通文件是Linux系统中最常见的文件类型,用于存储文本、二进制数据等内容。普通文件可以通过各种编辑器进行编辑和修改。

目录文件:目录文件用于存储其他文件和目录的信息。在Linux系统中,目录文件也被视为一种特殊的文件类型。可以使用ls命令查看目录文件中包含的其他文件和目录。

链接文件:链接文件是Linux系统中的一种特殊文件类型,用于创建文件的链接。链接文件可以分为硬链接和软链接两种。软链接是一个指向原始文件的符号链接,而硬链接是与原始文件共享相同的inode和数据块。

文件:元数据inode(索引节点)类比身份证号

硬链接hard link和软链接(符号链接symbolic link ):

硬链接特点1、必须有原始文件

2、在同一个文件系统里面创建

3、不能对目录进行创建

软链接特点:1、对不存在的目录和文件进行创建

2、对存在的目录和文件进行创建

3、可以跨文件系统创建的

4、删除软链接的时候对原文件没有任何影响

软链接:软链接是一种指向原始文件的符号链接,可以跨越文件系统创建。软链接文件本身只是一个文件名,它的内容是指向原始文件的路径。在Linux系统中,可以使用ln -s命令创建软链接,语法为:ln -s 原始文件 软链接文件。

硬链接:硬链接是与原始文件共享相同的inode和数据块的链接,只能在同一个文件系统内创建。硬链接文件与原始文件具有相同的文件名和权限,删除硬链接文件并不会影响原始文件。在Linux系统中,可以使用ln命令创建硬链接,语法为:ln 原始文件 硬链接文件。

用户数据:在Linux系统中,设备文件用于访问系统中的硬件设备或其他内核模块。常见的设备文件包括块设备文件(如硬盘、USB存储设备等)、字符设备文件(如键盘、鼠标等)、管道设备文件和套接字文件等。其中,块设备文件以B开头,字符设备文件以C开头,管道设备文件以P开头,套接字文件以S开头。套接字文件用于实现网络通信,包括IP地址和端口号等信息。

     

文件权限:在Linux系统中,每个文件都有一组权限,用于控制对文件的读取、写入和执行操作。文件权限分为三个部分,分别是文件所有者(A)、所属组(B)和其他人(C)对文件的权限。每个部分包含读取(r)、写入(w)和执行(x)三种权限。如果对应位置上有相应的权限,则用字母表示,否则用横线表示。例如,rw-表示具有读取和写入权限,但没有执行权限。

扩展权限:扩展权限(D)是一些特殊权限,用于设置文件的特殊属性,如设置SUID、SGID和粘着位等。这些权限通常不会直接显示在文件权限的字符表示中,而是使用特殊的标志来表示。

时间戳:在Linux系统中,每个文件都有四个时间戳,包括访问时间(Access Time)、修改时间(Modify Time)、改变时间(Change Time)和创建时间(Birth Time)。

访问时间(atime):表示最近一次访问文件内容的时间。

修改时间(mtime):表示最近一次修改文件内容的时间。

改变时间(ctime):表示文件元数据(如权限、所有者等)最近一次发生变化的时间。

创建时间(birth time):表示文件的创建时间。

stat命令:stat命令用于显示文件的元数据信息,包括文件权限、时间戳等。通过运行"stat 文件名"命令,您可以查看文件的详细信息。

touch命令:touch命令用于修改文件的时间戳。如果touch一个已经存在的文件,则会更新除了创建时间之外的其他时间戳。如果touch一个不存在的文件,则会创建该文件,并设置相应的时间戳。

mkdir命令:mkdir(make directory)命令用于在Linux系统中创建目录。通过运行"mkdir 目录名"命令,您可以创建一个新的目录。

级联目录:级联目录是指在创建目录时同时创建其上层目录。在Linux系统中,可以使用"-p"选项来实现级联目录的创建。例如,"mkdir -p 目录1/目录2/目录3"会创建目录1、目录2和目录3,并且目录3位于目录2下,目录2位于目录1下。

tree命令:tree命令用于以树状结构显示目录的内容。通过运行"tree 目录名"命令,您可以查看指定目录下的文件和子目录,并以树状结构展示。

目录:目录是用于组织和存储文件的容器。在Linux系统中,目录使用文件系统的树状结构进行组织,每个目录可以包含文件和其他子目录。

rm命令:rm命令用于删除文件和目录。通过运行"rm 文件或目录名"命令,您可以删除指定的文件或目录。请注意,在删除目录时,需要使用"-r"选项以递归方式删除目录及其内容。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值