【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(排查问题指令 - 上)

这篇具有很好参考价值的文章主要介绍了【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(排查问题指令 - 上)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前提介绍

在线上排查问题时,查询日志、查看系统配置和分析操作系统信息是至关重要的。这些操作可以帮助我们深入了解软件和服务的兼容性,并解决潜在的问题。在本次学习中,我们将介绍并深入学习一些我在处理类似问题时常用的指令。通过掌握这些指令,你将能够更加高效地定位和解决线上问题,提高系统的稳定性和性能。让我们一同进入这个学习过程吧!

主要的指令分为一下几大类
【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(排查问题指令 - 上),# 深入浅出Linux开发及实战,服务器,linux,学习

如何查看Linux操作系统版本

查看内核版本命令

在进行线上问题排查时,了解当前操作系统的版本和发行版信息非常重要。通过查看/proc/version文件和使用uname命令,我们可以获取这些信息。

首先,执行以下命令:

$ cat /proc/version

输出的结果类似于:

Linux version 5.4.0-100-generic (buildd@lcy02-amd64-002) (gcc version 9.3.0 (Ubuntu 9.3.0-17ubuntu1~20.04)) #113-Ubuntu SMP Thu Feb 3 18:43:29 UTC 2022

从这个信息中,我们可以看到操作系统的版本为2.6.32-358.el6.x86_64,它是在CentOS发行版上运行的。接下来,我们可以执行以下命令获取更详细的信息:

$ uname -a

输出的结果类似于:

Linux idn-prd-m01 5.4.0-100-generic #113-Ubuntu SMP Thu Feb 3 18:43:29 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

通过这个命令,我们得知了更多的细节,如主机名为192.168.1.10,内核版本为2.6.32-358.el6.x86_64。另外,通过执行uname -r命令,可以直接获取内核版本号,输出结果为2.6.32-358.el6.x86_64

以上这些信息非常有助于我们了解当前操作系统的特性和配置,为问题排查提供基础。请记得在实际应用中,根据具体情况使用这些指令。

查看Linux系统版本

在进行线上问题排查时,了解当前操作系统的版本和发行版信息非常重要。我们可以通过使用不同的命令获取这些信息。

首先,执行以下命令:

$ lsb_release -a

输出的结果类似于:

LSB Version: core-2.0-noarch:core-3.0-noarch:core-2.0-ia32:core-3.0-ia32:graphics-2.0-ia32:graphics-2.0-noarch:graphics-3.0-ia32:graphics-3.0-noarch
Distributor ID: SUSE LINUX
Description: SUSE LINUX Enterprise Server 9 (i586)
Release: 9
Codename: n/a

通过这个命令,我们可以获取到更详细的版本信息,包括发行版名称、描述、发布版本和代号。另外,我们也可以执行以下命令:

$ cat /etc/issue

输出的结果类似于:

Welcome to SUSE LINUX Enterprise Server 9 (i586) - Kernel \r (\l).

此命令会显示欢迎信息,其中包括了操作系统的版本和内核信息。对于Red Hat系列系统,我们可以执行以下命令:

$ cat /etc/redhat-release

输出的结果类似于:

CentOS release 6.4 (Final)

通过这个命令,我们可以直接获取操作系统的版本信息。

在实际应用中,请根据具体情况选择合适的命令使用,这些命令适用于不同的Linux发行版,包括Red Hat、SuSE、Debian等。这些信息对于问题排查非常重要,帮助我们更好地了解当前的操作系统环境。

设置和查看环境变量的方法

在Linux中,查看和设置环境变量是非常常见的操作。本文将介绍一些与环境变量相关的常用命令,希望对你有所帮助。

根据变量的生存周期,Linux变量可以被分为两类:
【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(排查问题指令 - 上),# 深入浅出Linux开发及实战,服务器,linux,学习

  • 永久的变量:这些是在系统配置文件中设置的变量,它们具有永久生效的特性。要修改永久变量,需要编辑相应的配置文件,例如~/.bashrc~/.bash_profile/etc/profile等。修改完成后,变量将在下次登录时自动加载并生效。

  • 临时的变量:这些变量可以通过使用export命令进行声明并设置,它们在当前的Shell会话中有效,但在关闭相应的Shell时会失效。通过export命令设置的变量只在当前Shell会话中可见。当会话结束时或使用unset命令对其进行取消设置,这些变量将不再可用。

区分永久变量和临时变量很重要,这样可以根据不同的需求选择适当的方式来设置和使用变量。永久变量适合于系统级的配置和全局使用,而临时变量适合于临时的、仅在当前Shell会话中有效的需求。

常用的环境变量

【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(排查问题指令 - 上),# 深入浅出Linux开发及实战,服务器,linux,学习

显示环境变量HOME

在Shell中使用echo $HOME命令可以查看当前用户的主目录路径。

$ echo $HOME
/home/wiz-reader

这个命令在Shell中执行,通过使用echo命令和$HOME环境变量来打印当前用户的主目录路径。在示例中,输出的结果显示为/home/wiz-reader,表示当前用户的主目录路径是/home/wiz-reader

设置一个新的环境变量(当前session有效)

使用export命令将一个名为HELLO的环境变量设置为"Hello!"。然后,使用echo命令并通过$HELLO来检索并输出该环境变量的值。

$ export HELLO="Hello!"
$ echo $HELLO
Hello!

在示例中,输出结果显示为Hello!,表示环境变量HELLO的值为Hello!

设置一个新的环境变量(永久有效)

要将变量添加到/etc/profile文件中,以便在Linux下对所有用户生效并具有永久性,请按照以下步骤进行操作:

  1. 使用VI编辑器打开/etc/profile文件:
# vi /etc/profile
  1. 在文件的末尾添加变量的声明和设置。例如,为了添加一个名为CLASSPATH的变量,可以使用如下的语法:
export CLASSPATH=./JAVA_HOME/lib:$JAVA_HOME/jre/lib

确保将适当的变量名和值替换为自己所需的内容。在这个例子中,CLASSPATH变量被设置为./JAVA_HOME/lib:$JAVA_HOME/jre/lib

  1. 保存并关闭文件,在vi编辑器中,按下Esc键,然后输入:wq,表示保存并退出。

  2. 为了使更改立即生效,需要运行以下命令:

# source /etc/profile

通过运行source /etc/profile命令,可以立即加载并应用对/etc/profile文件的更改,从而使变量对所有用户生效。

注意,当文件被修改后,也可以在下次用户重新登录时才能使变量生效,但是通过运行source /etc/profile命令可以立即使变量生效,而不需要用户重新登录。

使用env命令显示所有的环境变量

通过查看环境变量,我们可以了解当前Shell会话的配置情况。使用env命令来列出所有的环境变量。输出的结果按照变量名=值的格式显示了多个环境变量。

wiz-reader@root:~$ env
SHELL=/bin/bash
HISTSIZE=1000
LANGUAGE=en_US:
HISTTIMEFORMAT=%F %T wiz-reader
PWD=/home/wiz-reader
LOGNAME=wiz-reader
XDG_SESSION_TYPE=tty
MOTD_SHOWN=pam
HOME=/home/wiz-reader
LANG=en_US.UTF-8
...

chmod命令详细用法

chmod是一个Linux/Unix命令,用于更改文件或目录的权限。它允许用户为文件或目录设置读、写和执行权限,以及其他特殊权限。

chmod指令对所有的使用者具有权限,即任何用户都可以使用该命令来更改文件或目录的权限。这使得用户可以根据需要灵活地更改文件和目录的访问权限,以提高系统的安全性和灵活性。

  • 指令名称chmod
  • 使用权限适用于所有的使用者

注意,为了执行chmod命令,用户必须具有对相应文件或目录的写权限。否则,只有具有合适权限的管理员或文件所有者可以更改文件或目录的权限。

使用方式

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

chmod命令用于更改文件或目录的权限。其权限设定字串的格式如下:

[ugoa...][[+-=][rwxX]...][,...]

其中:

  • u 表示该文件的拥有者(user)
  • g 表示与该文件的拥有者属于同一个群组(group)的人
  • o 表示其他以外的人
  • a 表示以上三者都包括(all)

符号含义:

  • + 表示增加权限
  • - 表示取消权限
  • = 表示唯一设定权限

权限含义:

  • r 表示可读取
  • w 表示可写入
  • x 表示可执行
  • X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行时才生效

其他选项:

  • -c 若该文件权限确实已经更改,则显示其更改动作
  • -f 若该文件权限无法被更改,不显示错误讯息
  • -v 显示权限变更的详细信息
  • -R 对目前目录下的所有文件和子目录进行相同的权限变更,以递归方式逐个变更
  • --help 显示帮助说明
  • --version 显示版本信息
案例

将文件 file1.txt 设为所有用户可读取:

chmod ugo+r file1.txt

将文件 file1.txt 设为所有用户可读取:

chmod a+r file1.txt

将文件 file1.txtfile2.txt 设为对文件拥有者及其所属群体可写入,但其他人不可写入:

chmod ug+w,o-w file1.txt file2.txt

将文件 ex1.py 设定为仅文件拥有者可以执行:

chmod u+x ex1.py

将当前目录下的所有文件和子目录都设为任何人可读取:

chmod -R a+r *

此外,chmod命令也可以使用数字来表示权限,例如 chmod 777 file。其中 a, b, c 分别表示 User、Group 和 Other 的权限。

  • r = 4
  • w = 2
  • x = 1

要表示 rwx 属性,则是 4 + 2 + 1 = 7
要表示 rw- 属性,则是 4 + 2 = 6
要表示 r-x 属性,则是 4 + 1 = 5

chmod a=rwx file

chmod 777 file

效果相同。

chmod ug=rwx, o=x file

chmod 771 file

效果相同。

未完待续

接下来,剩下的指令分析和介绍会在下一个篇文章:【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(排查问题指令 - 下)进行分析和介绍。文章来源地址https://www.toymoban.com/news/detail-795361.html

到了这里,关于【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(排查问题指令 - 上)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • linux基本功系列之sudo命令实战一

    前言🚀🚀🚀 想要学好Linux,命令是基本功,企业中常用的命令大约200多个,不管是写shell脚本还是管理操作系统,最常用的命令必须要牢牢掌握,像我们以前学乘法口诀一样,烂熟于心,唯有如此,才能打牢基础。 💓 知识最重要的是记忆 💓 入门须知: 想要人生从容,必

    2024年02月05日
    浏览(28)
  • linux基本功之fsck命令详解

    💓 大家好,我是沐风晓月,双一流院校英语+计算机双专业在读; 💓 想要学好Linux,命令是基本功,企业中常用的命令大约200多个,不管是写shell脚本还是管理操作系统,最常用的命令必须要牢牢掌握,像我们以前学乘法口诀一样,烂熟于心,唯有如此,才能打牢基础。 💓

    2024年02月06日
    浏览(47)
  • linux基本功之列之wget命令实战

    大家好,又见面了,我是沐风晓月,本文是专栏【linux基本功-基础命令实战】的第56篇文章。 专栏地址:[linux基本功-基础命令专栏] , 此专栏是沐风晓月对Linux常用命令的汇总,希望能够加深自己的印象,以及帮助到其他的小伙伴😉😉。 如果文章有什么需要改进的地方还请

    2024年02月02日
    浏览(34)
  • linux基本功之历史记录history命令实战

    💓 想要学好Linux,命令是基本功,企业中常用的命令大约200多个,不管是写shell脚本还是管理操作系统,最常用的命令必须要牢牢掌握,像我们以前学乘法口诀一样,烂熟于心,唯有如此,才能打牢基础。 💓 只要地球不爆炸,我们永远不放假,只要宇宙不重启,我们永远不

    2024年02月08日
    浏览(39)
  • 苦练基本功——数据仓库

    🌿 最近在复习一些数据仓库和维度建模的知识,之前博客也写过,那就一起整理一下,对往期内容感兴趣的同学可以参考👇: 链接: 数据仓库入门. 链接: 大数据之维度建模中的重要概念. 🌰 废话不多说,让我们开始今日份的学习吧。   数据技术是指通过使用计算机和相

    2024年02月02日
    浏览(27)
  • python爬虫基本功(一)--初识python爬虫与爬虫学习路径

    大家好,这里是Kaiser。👏👏今天想给大家介绍下python爬虫的知识,我将与大家一起去揭开python爬虫的神秘面纱,字不多敲,让我们进入今天的主题:初识python爬虫。 爬虫,又被称为网页蜘蛛,网络机器人,是一种按照一定的规则,自动的抓取万维网信息的程序或脚本,是搜

    2024年02月16日
    浏览(33)
  • 用vue实现列表的增删改查基本功能(简单易懂)

    目录 文章目录 前言 一、安装vue 二、使用vue 三、相关代码 四、效果图如下 随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。 提示:以下是本篇文章正文内容,下面案例可供参考 vue开发文档参考

    2024年02月11日
    浏览(28)
  • 【MySQL】MySQL触发器入门宝典,助力MySQL初学者打下基本功

    🧑‍💻作者名称:DaenCode 🎤作者简介:啥技术都喜欢捣鼓捣鼓,喜欢分享技术、经验、生活。 😎人生感悟:尝尽人生百味,方知世间冷暖。 📖所属专栏:重温MySQL 在MySQL数据库中,大家都听过触发器。对于MySQL初学者而言,理解触发器的概念和应用是非常重要的。本文主

    2024年02月15日
    浏览(28)
  • 前端基本功 用 React Hooks + Antd 实现一个 Todo-List

    To-do list(待办事项列表)是用来记录和管理要完成的任务、活动或项目的列表。它是一种简单而常见的工具,用于帮助人们组织和安排日常生活中的任务。每当您有一项任务需要完成或者要记住某些事情时,您可以将它添加到待办事项列表中。 学习前端的一些新知识时,经

    2024年02月17日
    浏览(23)
  • 3年经验来面试20K的测试岗,连基本功都不会,还不如去招应届生

    为了新项目做准备,这段时间公司面了不少人,竟然没有一个满意的。一开始瞄准的就是中高级的水准,也没指望来技术大牛,提供的薪资在15-25K,面试的人很多,但结果让人失望。 从简历上来说都是3-4年工作经验,但面试中,不会工具方法和编程框架,基本功的技术很多也

    2024年04月24日
    浏览(23)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包