Linux系统使用超详细(一)

简介: Linux系统是一种开源的、类Unix操作系统内核的实现,它基于Unix的设计原理和思想,并在全球范围内广泛应用。以下是对Linux系统的详细描述:

Linux系统的认识

Linux系统是一种开源的、类Unix操作系统内核的实现,它基于Unix的设计原理和思想,并在全球范围内广泛应用。以下是对Linux系统的详细描述:

  • 开源性:Linux系统是开源软件,意味着其源代码可以被任何人免费获取、使用、修改和分发。这使得Linux系统具有高度的可定制性和灵活性,用户可以根据自己的需求进行定制和优化。
  • 文件系统:Linux系统使用层次化的文件系统布局,文件和目录被组织成一个树状结构。根目录(/)是整个文件系统的起点,包含了其他目录和文件。文件系统使用类Unix的文件权限模型,允许对文件和目录设置不同的权限。
  • 多用户和多任务:Linux系统是一个多用户和多任务的操作系统,它允许多个用户同时访问系统,并可以同时运行多个程序和任务。每个用户都有自己的账户和权限,可以独立地进行工作。
  • Shell和命令行界面:Linux系统提供了强大的命令行界面,用户可以通过Shell与系统进行交互。Shell是一个命令解释器,负责解析和执行用户输入的命令。Linux系统支持多种Shell,如Bash、Zsh等,用户可以选择自己喜欢的Shell。
  • 内核: Linux内核是操作系统的核心部分,负责管理硬件设备、内存和进程等。它提供了各种驱动程序来实现与不同硬件的交互。
  • 命令行界面: Linux提供了命令行界面(CLI),用户通过输入命令来与系统进行交互。这使得用户可以通过简单的文本命令完成各种任务,如文件管理、软件安装和配置等。
  • 图形界面: 虽然Linux最初是基于命令行的,但现代的Linux发行版大多都提供了图形界面(GUI),例如常见的桌面环境有Ubuntu、GNOME、KDE、XFCE等。这些界面使得用户可以通过图形化的方式操作系统。
  • 网络功能:Linux系统具有强大的网络功能,可以作为服务器或网络设备进行配置和使用。它支持各种网络协议和服务,如TCP/IP、HTTP、FTP、SSH等。Linux系统还具备网络管理和安全性的功能,可以进行网络设置、防火墙配置等。它还可以作为路由器、防火墙或网关使用。
  • 软件包管理:Linux系统采用软件包管理系统来管理和安装软件。常见的软件包管理系统有dpkg和apt-get(Debian/Ubuntu)、RPM和yum(Red Hat/CentOS)等。这些工具可以方便地安装、更新和删除软件包,并解决依赖关系。
  • 支持多种硬件平台:Linux系统可以运行在各种硬件平台上,包括个人计算机(如x86、x86_64架构)、服务器(如PowerPC、ARM架构)和嵌入式设备。这使得Linux系统具备广泛的适应性和可移植性。

Linux命令提示符介绍

     Linux命令提示符是在终端中显示的特殊字符序列,表示用户可以输入命令的位置。它通常包含了当前登录用户、主机名、当前工作目录和一些特殊字符

命令提示符

在用户模式下,Linux命令提示符的格式为:

[user@hostname current_directory]$

其中,各部分的含义如下:

  • user: 当前登录用户的用户名
  • hostname: 主机名,表示这个Linux系统所在的主机的名称
  • current_directory: 当前工作目录,表示用户当前所在的目录
  • $: 用户模式下命令提示符的结束符,表示用户可以输入命令了

我的linux机用户命令提示符如下:

在管理员模式下,Linux命令提示符的格式为:

[root@hostname current_directory]#
  • root: Linux系统管理员
  • hostname: 主机名,表示这个Linux系统所在的主机的名称
  • current_directory: 当前工作目录,表示用户当前所在的目录
  • #: 管理员模式下命令提示符的结束符,表示用户可以输入命令了

我的linux机管理员命令提示符如下:

linux常见指令

1、操作命令语法

语法

Shell 命令取分大小写字符。命令的语法一般为:

$命令动词 [–选项符1 –选项符2 …] [命令参数1 命令参数2 …]

其中各项使用空格键分开,回车键结束

举例

$ls –l hello

这里ls 是命令动词(它是列表list的缩写);-l 是选项符,表示要列出详细信息;hello 是ls 的命令参数,它是一个您想要了解的文件名。这将列出hello 文件详细的属性信息

2、获取帮助

linux带有联机手册,可以用man命令查阅各系统命令及系统调用的语法

举例

$man ls

man命令将显示ls命令的详细使用方法

$man -a sleep

man命令将显示所有与sleep 相关的系统文档

3、虚拟终端

终端

终端是与计算机系统相连的一种输入输出设备,通常作为用户与计算机系统交互的接口

最初指的是物理设备,如电传打字机等,用于输入输出,没有自己的计算能力。在现代计算机系统中,终端通常指的是提供命令行或图形界面的软件程序,如Windows的命令提示符或Linux的各种终端模拟器(如Gnome-Terminal、Konsole等)

虚拟终端

是在同一台物理终端(设备)上模拟出的多个终端,它们之间互相不影响,至少看起来互相不影响。虚拟终端允许多个用户同时使用同一台计算机,每个虚拟终端都可以运行独立的会话,这对于多用户操作系统非常重要

Linux系统中的终端

微机上的linux 系统只有一个终端,但linux 提供多个虚拟终端,用户可以通过Alt+Ctrl+F1 (带有图形化界面)切换到默认的第一个终端,Alt+Ctrl+F2 切换到第二个终端,Alt+Ctrl+F3 切换到第三个终端等等


大多数Linux发行版在安装过程中会自动配置好图形界面,使其在第一个可用的虚拟终端(通常是tty1)上运行(其他虚拟终端只是没有和GUI界面配置)。这是因为图形界面需要较高的资源,而且通常是为桌面环境和普通用户设计的。


而虚拟终端目的是为了不同用户对一台计算机进行不同操作,更加追求操作的效率

在使用者角度,开一个终端可以认为就是开一个全新的计算机,自己是这个新计算机的唯一使用者

不过这些终端对应的计算机共享一个硬件资源

4、退出系统/shell会话

登录shell和非登录shell

登录shell和非登录shell的主要区别在于它们的启动方式和配置文件的加载行为

一、区别

登录shell是用户登录 系统/用户 时启动的shell,它需要用户输入用户名和密码进行身份验证。通常,当你在物理终端上进行登录或者使用--login选项启动一个shell时,会进入登录shell。

非登录shell则是在已经登录的用户会话中启动的额外shell,不需要再次进行身份验证

二、使用场景

这两种shell的使用场景也不同。登录shell通常用于系统管理员进行系统管理和维护任务,因为登录shell提供了一个完整的用户环境。而普通用户在日常使用中大多数时候是在操作非登录shell,因为它们足以满足日常的应用程序运行和命令执行的需求。

三、如何启动登录shell

su username --login
  • username:登录的系统名/用户名称
  • --login: 切换用户时的选项符,表示登录系统用户时也启动shell

三种方式退出系统/shell会话

1、exit

用于退出当前Shell会话或终端窗口,并且会返回一个退出状态值给父进程。使用exit可以正常退出Shell会话或终端窗口。用于非登录shell模式下的退出shell会话

2、logout

也用于退出当前的Shell会话或终端窗口,但与exit不同的是,logout命令还会断开与该终端窗口相关联的所有子进程的连接。用于登录shell模式下的退出shell会话

3、Ctrl+D组合键

在Shell会话或终端窗口中,使用Ctrl+D可以退出当前会话。用于非登录shell模式下的退出shell会话

5、关机

关闭系统或重新启动系统,可以使用命令halt、reboot或shutdown命令,也可以同时使如Ctrl+Alt+Del键。


  • halt命令:用于立刻关机。它会停止所有的进程,然后关闭系统。这个命令通常需要root权限来执行。
  • reboot命令:用于立刻重启系统。它不需要任何参数,直接调用即可完成系统的重启。同样,这个命令通常需要root权限。
  • shutdown命令:提供了更多的关机选项,可以指定在特定时间关机或重启,也可以设定延迟时间后关机或重启。例如,shutdown -h now会立即关机,而shutdown -r now会立即重启。如果使用了shutdown命令来设定关机或重启,可以使用shutdown -c来取消已经设置的关机或重启计划。

常用的还是shutdown命令

6、切换管理员模式

首先用su命令切换用户:

sudo su root # 以管理员权限切换至root用户,不可以可以用下一行

然后输入root用户的密码即可成功切换(Linux下输入的密码默认不会显示出来)。

这样以后的命令都是以root管理员权限运行的了。

总结

本文到这里就结束啦~~本篇文章重点在于linux系统的基本应用,也许对于软工、人工智能等专业的学生没有直接的用处,但是学一学拓展一下知识是非常好的呀~~

如果觉得对你有帮助,辛苦友友点个赞哦~

c6909aecbcc13d601e65c093ad0ee5d7_89df8d6140b14a71aa3f361105522376.gif


相关文章
|
3月前
|
Ubuntu Linux Anolis
Linux系统禁用swap
本文介绍了在新版本Linux系统(如Ubuntu 20.04+、CentOS Stream、openEuler等)中禁用swap的两种方法。传统通过注释/etc/fstab中swap行的方式已失效,现需使用systemd管理swap.target服务或在/etc/fstab中添加noauto参数实现禁用。方法1通过屏蔽swap.target适用于新版系统,方法2通过修改fstab挂载选项更通用,兼容所有系统。
236 3
Linux系统禁用swap
|
3月前
|
Linux
Linux系统修改网卡名为eth0、eth1
在Linux系统中,可通过修改GRUB配置和创建Udev规则或使用systemd链接文件,将网卡名改为`eth0`、`eth1`等传统命名方式,适用于多种发行版并支持多网卡配置。
346 3
|
4月前
|
Ubuntu Linux
计算机基础知识:linux系统怎么安装?
在虚拟机软件中创建一个新的虚拟机,并选择相应操作系统类型和硬盘空间大小等参数。将下载的 ISO 镜像文件加载到虚拟机中。启动虚拟机,进入安装界面,并按照步骤进行安装。安装完成后,可以在虚拟机中使用 Linux 系统。
|
4月前
|
存储 Ubuntu Linux
「正点原子Linux连载」第二章Ubuntu系统入门
在图2.8.2.4中,我们使用命令umount卸载了U盘,卸载以后当我们再去访问文件夹/mnt/tmp的时候发现里面没有任何文件了,说明我们卸载成功了。
|
Ubuntu Linux 网络安全
Linux系统初始化脚本
一款支持Rocky、CentOS、Ubuntu、Debian、openEuler等主流Linux发行版的系统初始化Shell脚本,涵盖网络配置、主机名设置、镜像源更换、安全加固等多项功能,适配单/双网卡环境,支持UEFI引导,提供多版本下载与持续更新。
309 0
Linux系统初始化脚本
|
4月前
|
运维 Linux 开发者
Linux系统中使用Python的ping3库进行网络连通性测试
以上步骤展示了如何利用 Python 的 `ping3` 库来检测网络连通性,并且提供了基本错误处理方法以确保程序能够优雅地处理各种意外情形。通过简洁明快、易读易懂、实操性强等特点使得该方法非常适合开发者或系统管理员快速集成至自动化工具链之内进行日常运维任务之需求满足。
244 18
|
3月前
|
安全 Linux Shell
Linux系统提权方式全面总结:从基础到高级攻防技术
本文全面总结Linux系统提权技术,涵盖权限体系、配置错误、漏洞利用、密码攻击等方法,帮助安全研究人员掌握攻防技术,提升系统防护能力。
289 1
|
3月前
|
监控 安全 Linux
Linux系统提权之计划任务(Cron Jobs)提权
在Linux系统中,计划任务(Cron Jobs)常用于定时执行脚本或命令。若配置不当,攻击者可利用其提权至root权限。常见漏洞包括可写的Cron脚本、目录、通配符注入及PATH变量劫持。攻击者通过修改脚本、创建恶意任务或注入命令实现提权。系统管理员应遵循最小权限原则、使用绝对路径、避免通配符、设置安全PATH并定期审计,以防范此类攻击。
1014 1
|
4月前
|
缓存 监控 Linux
Linux系统清理缓存(buff/cache)的有效方法。
总结而言,在大多数情形下你不必担心Linux中buffer与cache占用过多内存在影响到其他程序运行;因为当程序请求更多内存在没有足够可用资源时,Linux会自行调整其占有量。只有当你明确知道当前环境与需求并希望立即回收这部分资源给即将运行重负载任务之前才考虑上述方法去主动干预。
1592 10
|
4月前
|
安全 Linux 数据安全/隐私保护
为Linux系统的普通账户授予sudo访问权限的过程
完成上述步骤后,你提升的用户就能够使用 `sudo`命令来执行管理员级别的操作,而无需切换到root用户。这是一种更加安全和便捷的权限管理方式,因为它能够留下完整的权限使用记录,并以最小权限的方式工作。需要注意的是,随意授予sudo权限可能会使系统暴露在风险之中,尤其是在用户不了解其所执行命令可能带来的后果的情况下。所以在配置sudo权限时,必须谨慎行事。
594 0