Linux --入门学习笔记

news2024/10/3 21:05:58

文章目录

  • Linux
    • 概述
    • 基础篇
      • Linux 的安装教程 ⇒ 太简单了,百度一搜一大堆。此处略……
      • Linux 的目录结构
      • 常用的连接 linux 的开源软件
      • vi 和 vim 编辑器
      • Linux 的关机、开机、重启
      • 用户登录和注销
      • 用户管理
        • 添加用户 ⇒ ( useradd 用户名 ) ( useradd -d 制定目录 新的用户名 )
        • 设置密码 ⇒ ( password 用户名 )
        • 删除用户 ⇒ ( userdel 用户名 ) ( userdel -r 用户名 )
      • 查看用户信息(id 用户名)
      • 查看自己的信息(whoami / who am i)
      • 用户组
        • 新增组(groupadd 用户组)
        • 删除组(groupdel 用户组)
        • 增加用户时,直接上组(useradd -g 用户组 用户名)
        • 修改用户的组(usermod -g 用户组 用户名)
        • 用户和组相关的文件
      • linux 运行级别
      • 帮助指令
      • 文件目录类
      • 权限
        • 修改文件属性 [ chgrp [ -R ] 属组名 文件名 ]
        • 修改文件属主,也可以同时更改文件的属组 [ chown [ -R ] 属主名:[ 属组名 ] 文件名 ]
        • chmod:更改文件(9个)属性
      • 链接(硬链接、软链接)
      • 磁盘管理(df、du)
      • 进程管理
        • 结构进程树
        • 杀掉进程
      • 环境安装
        • rpm安装(jdk)、解压缩(tomcat)、yum在线安装(docker)
          • jdk安装
          • 测试运行jar程序
          • 遇到问题解决(打包后只有4kb,并且提示找不到主类?
          • 向这类安装,参考百度,配置什么的,都很详细,

Linux

概述

Linux 是一个开源、免费的操作系统,其安全性、稳定性、搞笑 、处理 得到了各行各业的认可。

需要牢记的一句话:“在Linux中,一切皆为文件”。

Linux 的吉祥物:Tux
在这里插入图片描述

主要发行版:RedHat、CentOs、Ubuntu(乌班图)

基础篇

Linux 的安装教程 ⇒ 太简单了,百度一搜一大堆。此处略……

Linux 的目录结构

根目录 ⇒ " / "

/:根目录
/bin:存放着经常使用的命令。
/sbin:s 代表 super User 的意思。存放着 系统管理员使用的系统管理程序。
/home:存放普通用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该用户名是以用户的账号命名。
/root:该目录为系统管理员,也称之为超级权限的用户主目录。
/lib:系统开机所需要的最基本的动态连接共享库,类似于Windows里的DLL文件。几乎所有应用程序都需要用到这些共享库
/lost + found:这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
/etc:所有的系统管理所需要的配置文件和子目录,比如安装mysql数据库的my.conf
/usr:这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows中的 program files 目录
/boot:存放的是启动Linux时需要的一些核心文件,包括一些连接文件以及镜像文件
/proc:这个目录是一个虚拟目录,他是系统内存的映射,访问这个目录来获取系统的信息。
/srv: 是service缩写,该目录存放一些服务启动后需要提取的数据
/sys:这是linux内核的一个很大的变化,该目录下安装了2.6内核中新出现的一个文件系统sysfs
/tmp:这个目录是用来存放一些临时文件的。
/dev:类似于 windows 中的设备管理器,把所有的硬件用文件的方式存储。
/mnt:系统提供该目录是为了让用户临时挂载别的文件系统,我们可以将外部储存挂载到/mnt/下,这样进入该目录就可以看到里面的内容了。
/opt:这是给主机额外安装软件所摆放的目录。比如,安装:“ oracle数据库 ” 就可以放到该目录下,默认为空。
/usr/local:这是给另一个主机额外安装软件的目录。一般通过源码编译的方式安装。
var:这个目录中存放着在不断扩充的东西,习惯将经常被修改的目录放到这个文件夹下面。比如日志…等。
/selinux [ security-enhanced linux ]:SELinux 是一种安全子系统。它控制程序只能访问特定文件。有三种工作模式,可以自行设置。
/www:关于网站相关的资源

常用的连接 linux 的开源软件

XshellXftp ⇒ 官网可以下载,不会的话可以去百度,很简单。

vi 和 vim 编辑器

内置的工具,相当于 windows 中的记事本

在这里插入图片描述

命令功能
i/a编辑模式
:wq写入并退出
:q退出
:q!不保存的退出
yy / 5yy拷贝当前行 / 拷贝当前向下的5行
p粘贴
dd / 5dd删除 / 删除当前向下的5行
/ nihao查找字符串 “nihao”
n查找下一个
N查找上一个
:set nu / :set nonu查看当前行号 / 销毁当前行号
G快速定位到末尾行(一般模式下)
gg快速定位到首行(一般模式下)
u撤销动作
快速定位到某一行行号 + G
ctrl + f向下翻页
ctrl + b向上翻页

Linux 的关机、开机、重启

指令功能
shutdown -h now/时间现在关机 / xx分钟后关机(默认是一分钟)
shutdown -r now/时间现在重启 / xx分钟后用重启
halt和上面的指令一样
reboot现在重启计算机
sync将内存的数据存储到磁盘内(防止数据没有保存)⇒ 小心使得万年船

用户登录和注销

尽量使用普通身份登录,然后可以和管理员相互切换。

指令功能
su - 用户名切换身份
logout注销用户(在图形界面是无效的!)⇒ 如果是当前用户的账号下,则退出系统!

用户管理

添加用户 ⇒ ( useradd 用户名 ) ( useradd -d 制定目录 新的用户名 )

默认家的目录在 / home / 用户名

设置密码 ⇒ ( password 用户名 )

别忘了设置用户名,要不然则是更改当前用户的用户名。

删除用户 ⇒ ( userdel 用户名 ) ( userdel -r 用户名 )

删除用户的话,用户虽然不能登录,但是 home 目录还是会存在。此时此刻,我们要慎重考虑需不需要带 -r 了。带的话,就会和家目录一起被干掉。

一般情况下还是建议保留的。

查看用户信息(id 用户名)

在这里插入图片描述

查看自己的信息(whoami / who am i)

用户组

新增组(groupadd 用户组)

如果 新增用户 没有选择 “组” 的情况下,会默认创建一个 用户名 组成的组。

删除组(groupdel 用户组)
增加用户时,直接上组(useradd -g 用户组 用户名)
修改用户的组(usermod -g 用户组 用户名)
用户和组相关的文件

/etc/passwd 文件:用户配置的文件,记录用户的各种信息
每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录shell

/etc/shadow 文件:口令的配置文件
每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

/etc/group 文件:组配置文件,记录Linux包含的组的信息
每行的含义:组名:口令:标识号:组内用户列表

linux 运行级别

查看当前用户级别:systemctl get-default

命令:通过 init 来 控制运行级别

运行级别说明
0关机
1单用户模式
2多用户没有网
3多用户有网络
4系统未使用保留给用户
5图形界面
6系统重启

帮助指令

Linux下,文件或者文件夹,前面有个小点的,基本上都是隐藏文件。
Linux下,选项是可以组合使用的。

man 指令

help 指令

示例: help add

文件目录类

绝对路径:从根目录下开始
相对路径:从当前路径下开始

命令作用注释
pwd显示当前路径绝对路径
ls [-a] [-l]显示当前路径 【所有的,包括隐藏的】【以列表的方式】相对路径
cd ~ / cd ..回到家路径 / 返回上一级cd /home/test/hah⇒ 快速定位绝对路径
mkdir [-p] 文件路径创建目录 【多级】示例:mkdir -p /test/hah/test
rmdir [-rf] 文件路径删除文件夹【递归、强制】谨慎使用
touch 文件名创建一个空的文件
cp [-r] 目标文件名/目标位置 复制到的位置拷贝文件【递归】拷贝的文件名 把文件拷贝到哪最前面加上\,则不会有提示,例如\cp -r /bin/hah /test/testcp
rm -rf如上这里指的是文件夹,上面指代的是文件,但是方法是一样的
mv 旧名字 新名字/mv 旧目录/ 新路径 / mv 路径重命名 / 将目录下的文件全部移动到新路径 / 移动、剪贴举一反三,可以移动并重命名,示例:mv 旧名字 路径+新名字
cat [-n] 文件查看文件【显示行号】cat只能查看,却不能修改,一般会带上管道命令 | more
echo输出到控制台可以尝试一下echo $path
head 【-n 5】文件名显示文件开头内容默认不写参数的话,是默认前十行
tail 【-n 5】【-f】文件名显示文件的末尾内容【末尾十行】【实时更新】默认不写参数的话,是默认后十行
>覆盖、重定向cat 文件一 > 文件二【如果文件不存在,则自动创建】
>>追加echo "内容" >> 文件【如果文件不存在,则自动创建】
cat显示日历
ln 指令ln -s 【源文件/目录】【软连接路径 + 名称】也称为符号链接符,也称之为 windows 的快捷方式
history 【10】查看历史执行的命令 【十条】!5 执行第5条命令
datedate/date +%Y/%m 当前时间/当前几点、当前多少分钟

more 管道符指令

命令用法
空格向下翻页
回车向下翻一行
q表示离开,不再显示内容
Ctrl + F向下滚动一屏
Ctrl + B向上返回一屏
=输出当前的行号
:f输出文件名和当前行号

less指令 ⇒ 一般用于比较大的文件

more 文件类似,但是是一部分一部分加载,不会和 more 一样,一口气加载完。

指令用法
空格向下翻动一页
[pagedown]向下翻动一页
[pageup]向上翻动一页
/字符串向下搜索字符串的功能,用n或N来控制查找方向
?字符串向上搜索字符串的功能,用n或N来控制查找方向
q离开less程序

权限

在这里插入图片描述

首先我们看第一列

字符代表的含义
d目录
-文件
I表示为链接文档
b可储存装置接口设备
c一次性读取装置,例如:键盘鼠标

其次我们看后面,rwx ⇒ 读、写、操作

在这里插入图片描述

修改文件属性 [ chgrp [ -R ] 属组名 文件名 ]

[ -R ] : 递归更改文件数组。就是在更改某个文件目录的数组时,如果加上 -R 的参数下,那么该目录的所有文件的属组都会改变。

修改文件属主,也可以同时更改文件的属组 [ chown [ -R ] 属主名:[ 属组名 ] 文件名 ]

[ R ]:同上

chmod:更改文件(9个)属性

你权限操作此文件

chmod [ -R ] rwx 文件和目录

字符对应的数字
r4
w2
x1

设置的方式有两种。一种是数字( chmod 777 ),一种是字符

链接(硬链接、软链接)

硬链接: A—B,拥有多个路径,防止误删。
软链接:类似 windows 下的快捷方式,删除了原文件,则访问不了

在这里插入图片描述

磁盘管理(df、du)

df : 列出文件系统整体的磁盘使用量 ⇒ 默认的是 字节,如果查看 mb 的情况下,使用 df -h

在这里插入图片描述

du : 检查磁盘空间使用量
du -a : 查看所有文件和子文件夹

在这里插入图片描述

进程管理

进程一般存在的方式: 前台 和 后台 运行。

ps查看当前系统 中正在执行的各种进程的信息。

参数信息
-a显示当前终端运行的所有进程信息(当前的进程一个)
-u以用户的信息显示进程
-x显示后台运行进程的参数
查看专属的相关进程信息方式ps -aux | grep mysql
可以查看到父进程的信息ps -ef | grep mysql
结构进程树

pstree -pu

参数含义
-p显示父 id
-u显示用户组
杀掉进程
参数含义
kill -9 进程的id结束进程(数字9)

环境安装

rpm安装(jdk)、解压缩(tomcat)、yum在线安装(docker)
jdk安装

在这里插入图片描述
在这里插入图片描述

然后 vim 到 /etc/profile 中配置环境 ,写在最下面,然后保存退出

在这里插入图片描述

export JAVA_HOME=/usr/local/jdk/jdk-17.0.10
export PATH=$JAVA_HOME/bin:$PATH
测试运行jar程序

在这里插入图片描述

在这里插入图片描述

利用这些代码来开启端口号(百度有哦,一百度开启linux端口号就出来啦~~ 。我直接跳过啦)

在这里插入图片描述

在这里插入图片描述

遇到问题解决(打包后只有4kb,并且提示找不到主类?

在这里插入图片描述

在这里插入图片描述

向这类安装,参考百度,配置什么的,都很详细,

完结撒花

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2186859.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【AIGC】内容创作——AI文字、图像、音频和视频的创作流程

我的主页:2的n次方_ 近年来,生成式人工智能(AIGC,Artificial Intelligence Generated Content)技术迅速发展,彻底改变了内容创作的各个领域。无论是文字、图像、音频,还是视频,A…

SPARK调优:AQE特性(含脑图总结)

学完AQE需要能够回答如下的几个问题: 什么是AQE?AQE的实现原理是什么?AQE的特性有哪些?使用什么参数实现?AQE每个特性可以解决什么问题?什么问题是AQE不能解决的 HL:学习脑图如下 SparkAQE是spa…

MES系统适用于哪些行业?MES系统对于企业的作用和价值

MES系统(制造执行系统)广泛应用于多个行业,并在这些行业中发挥着重要作用,为企业带来了显著的价值。以下是对MES系统适用行业及其对企业作用和价值的详细分析: 一、MES系统适用的行业 电子信息行业: 随着市…

大功率LED模块(5V STM32)

目录 一、介绍 二、模块原理 1.尺寸介绍 2.模块原理图 3.引脚描述 三、程序设计 main.c文件 timer.h文件 timer.c文件 四、实验效果 五、资料获取 项目分享 一、介绍 大功率LED模块是一种照明设备,它将大功率高亮度发光二极管(LED)集成在铝基板上&…

Linux学习笔记(二):深入理解用户管理、运行级别与命令行操作

Linux学习笔记(二):深入理解用户管理、运行级别与命令行操作 Linux学习笔记(一):Linux学习环境的安装及远程连接工具的使用 1. 用户管理 1.1 用户密码管理 创建用户密码 使用 passwd 命令可以为指定用户…

封装了一个iOS水平方向动态宽度layout

我们有时候会遇到这样的情形,就是需要展示一些动态的标签,宽度是动态的, 水平方向是一行,其实这种情况还是比较容易处理的,只是一下子想不起来, 这里做了一个相关的需求,将思路和代码记录下来&a…

第5章 总线与微命令实验

第5章 总线与微命令实验 5.1实验目的 (1)理解总线的概念和作用。 (2)连接运算器与存储器,熟悉计算机的数据通路。 (3)理解微命令与微操作的概念。 5.2实验要求 (1)做…

69 BERT预训练_by《李沐:动手学深度学习v2》pytorch版

系列文章目录 文章目录 系列文章目录NLP里的迁移学习Bert的动机Bert架构对输入的修改五、预训练任务1、2、3、 六、1、2、3、 七、1、2、3、 八、1、2、3、 NLP里的迁移学习 之前是使用预训练好的模型来抽取词、句子的特征,例如 word2vec 或语言模型这种非深度学习…

香酥胡麻饼 一口沦陷的传统美食

🥯美食发现 | 胡麻饼,一口咬出的千年韵味🥯😋宝子们,今天我要给大家分享一款超级有历史底蕴的美食 —— 食家巷胡麻饼。 ✨食家巷胡麻饼,那可是有着悠久历史的传统美食。在古代,它就备受人们喜…

【算法】链表:160.相交链表(easy)+双指针

系列专栏 《分治》 《模拟》 《Linux》 目录 1、题目链接 2、题目介绍 3、解法(双指针) 返回结果 算法正确性 时间复杂度 4、代码 1、题目链接 160. 相交链表 - 力扣(LeetCode) 2、题目介绍 ​ 3、解法(…

MISC -第十天(音符加解密、敲击码、NtfsStreamsEditor工具)

前言 各位师傅大家好,我是qmx_07,今天继续讲解MISC的相关知识 [MRCTF2020]你能看懂音符吗 附件信息: rar文件无法打开,显示损坏,先放到hxd查看 头标识错误,尝试修复 rar标识头(52 61 72 21) 压缩包里有一个d…

4个顶级的大模型推理引擎

LLM 在文本生成应用中表现出色,例如具有高理解度和流畅度的聊天和代码完成模型。然而,它们的庞大规模也给推理带来了挑战。基本推理速度很慢,因为 LLM 会逐个生成文本标记,需要对每个下一个标记进行重复调用。随着输入序列的增长&…

【游戏模组】星际争霸1代模组燃烧之地,泰伦帝国对决UED。特效华丽兵种巨多特别好玩

各位星际争霸1代的粉丝大家好,今天小编给大家带来一个星际争霸1代的模组,这个模组的名字叫燃烧之地,主要是2个阵营。玩家可以扮演UED或者泰伦帝国中的一个来进行比赛。 这个模组设定的世界线背景是在异虫入侵并随后被星灵消灭后,…

昇思MindSpore进阶教程--梯度累加

大家好,我是刘明,明志科技创始人,华为昇思MindSpore布道师。 技术上主攻前端开发、鸿蒙开发和AI算法研究。 努力为大家带来持续的技术分享,如果你也喜欢我的文章,就点个关注吧 正文开始 本教程介绍梯度累加的训练算法…

C(十一)scanf、getchar(第三弹)

问题引入:如何实现输入一串密码,如:“123 xxxx” ,然后读取并确认,是 -- Y;否 -- N。 自然的,我们想到用scanf,但是在使用过程中你是否遇到跟我一样的困惑呢?如下&…

【Linux】进程管理:状态与优先级调度的深度分析

✨ 山海自有归期,风雨自有相逢 🌏 📃个人主页:island1314 🔥个人专栏:Linux—登神长阶 ⛺️ 欢迎关注:👍点赞 &#x1…

华为技术经理总结Java技术栈思维导图

最近帮在读大四的学生做了一个java项目,使用Spring bootVue3做了一个机器学习在线训练和服务的平台,发现他的Java技术栈并不全面,希望在下面分享一下Java技术栈,能够帮助到正在参加秋招或者是准备找工作的朋友们: 完整…

Vue.js 组件开发知识详解

✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…

为什么我可以做系统架构师?

人人都可以做产品经理,但是却没有人随随便便成为系统架构师,系统架构师为什么这么稀缺,因为系统架构师要求的能力是十分全面的,首先技术基本功要非常扎实,其次是你的统筹能力,一个项目交到你手上&#xff0…

软件管理【1.10】

软件管理【1.10】 13、软件管理13.1.包管理工具rpm13.2.yum和dnf13.2.1.配置yum源13.2.2.只下载安装包,不安装13.2.3.配置本地光盘ISO文件安装13.2.4.配置阿里云epel源13.2.5.base-for-centos7.repo13.2.6.base-for-rocky8.repo13.3.搭建私有yum仓库13.3.1.Apache实现网战功能…