当前位置: 首页 > news >正文

Ubuntu学习笔记 - Day2

文章目录

  • 学习目标:
  • 学习内容:
  • 学习笔记:
    • Linux系统启动过程
      • 内核引导
      • 运行init
      • 运行级别
      • 系统初始化
      • 建立终端
      • 用户登录系统
    • Ubuntu关机
      • 关机流程
      • 相关命令
    • Linux系统目录结构
      • 查看目录
      • 目录结构
    • 文件基本属性
      • 读写权限
      • 命令
    • 下载文件的方法
      • 安装wget工具
      • 下载文件
    • 安装软件方法
      • 安装命令
      • 重新安装命令
    • Ubuntu桌面系统
      • 桌面预览
      • 系统设置
    • 修改用户密码
      • 命令行修改
      • 界面修改

学习目标:

  • 一周掌握 Linux基本使用技巧

学习内容:

  • Linux系统启动过程
  • Ubuntu关机
  • 系统目录结构
  • 文件基本属性
  • 下载文件方法
  • 安装软件方法
  • Ubuntu桌面系统
  • 修改用户密码

学习笔记:

Linux系统启动过程

内核引导

当计算机打开电源后,首先是BIOS开机自检,按照BIOS中设置的启动设备(通常是硬盘)来启动。操作系统接管硬件之后,首先读入/boot目录下的内和文件。

运行init

init进程是系统所有进程的起点,可以比拟为系统中所有进程的老祖宗,没有这个进程,系统中任何进程都不会启动。init程序首先需要读取配置文件/etc/inittab

运行级别

许多程序需要开机自启动。在Windows叫“服务Service”,在Linux叫“守护进程daemon“。init进程的一大任务,就是去运行这些开机启动的程序。不同场合需要启动不同的程序,比如用作服务器时,需要启动Apache,用作桌面时则不需要。Linux允许为不同场合,分配不同的开机启动程序,这就叫做“运行级别”。启动时,根据运行级别,确定要运行那些程序。

系统初始化

在init的配置文件中有一行:si::syinit:/etc/rc.d/rc.sysinit 它调用执行了/etc/rc.d/rd.sysinit,而rc.sysinit是一个bash shell脚本,主要是完成一些系统初始化的工作,rc.sysinit是每一个运行级别都要首先运行的重要脚本。

建立终端

启动getty进程(用于管理终端设备的守护进程),设置终端访问。

用户登录系统

登录方式:命令行登录、ssh登录、图形界面登录。

AI告诉我Linux内核启动的大致流程

  1. 引导阶段:BIOS 加电自检,读取 MBR(主引导记录),加载 GRUB(GRand Unified Bootloader)。
  2. GRUB 菜单:显示操作系统列表,加载并显示GRUB配置。
  3. 加载内核:选择Linux内核映像,读取内存中的内核。
  4. 内核启动:内核检测系统硬件,加载必要的驱动程序。
  5. 启动初始化进程:内核启动init进程,该进程PID为1。
  6. 系统初始化:init通过读取inittab文件确定系统运行级别,执行相应的脚本。
  7. 用户空间初始化:启动系统服务,如udevd,syslogd等。
  8. 设置终端:启动getty进程,设置终端访问。
  9. 用户登录:用户输入用户名和密码登录系统。
  10. 用户界面:用户进入命令行界面或图形界面进行操作。

Ubuntu关机

关机流程

sync > shutdown > reboot > halt

相关命令

  1. sync 将数据由内存同步到硬盘中。
  2. shutdown 关机命令
  3. reboot 重启命令,等同于下面
  4. shutdown -r now -r 重启的意思,即关机并立马重启,等同于reboot。
  5. halt 关闭系统,等同于 shutdown -h now 立马关机poweroff
  6. shutdown -h 20:30 今天晚上8点关机 shutdown -h +10 十分钟之后关机

Linux系统目录结构

查看目录

ls /
ls 

目录结构

/bin    banary的缩写,经常用的命令
/boot   系统启动的核心文件。
/dev    linux访问外部设备的方式,存放外部设备的文件。
/etc    系统管理所需要的配置文件和子目录。
/home   用户的主目录。
/lib    存放系统安装的一些共享库。
/media  识别设备,比如u盘光驱等。
/opt    额外的软件安装目录。
/root   超级权限的用户。
/usr    用户应用程序文件
/var    不断扩充的文件目录,比如日志等。

文件基本属性

读写权限

文件类型属主权限属组权限其他用户权限
01 2 34 5 67 8 9
dr w xr - xr - x
目录文件读 写 执行读 - 执行读 - 执行

命令

查看属性命令:ls -l
在这里插入图片描述
修改文件属性:chmod 777 test.txt
在这里插入图片描述

下载文件的方法

安装wget工具

apt-get update
apt-get install wget

下载文件

wget xxx.txt(一般是某个网址)
实质是发起一个http请求

在这里插入图片描述

200 OK 代表请求已连接。

安装软件方法

安装命令

apt-get -h ##帮助
apt-get -V ##查看版本
apt-get remove ##移除安装包
apt-get autoremove ##自动移除安装包(所依赖的一些安装包)
apt-get clean ##清理在本地库中检索到的包
sudo apt-get install nginx

不是root目录时,前面加sudo表示用root用户安装软件

ps -ef|grep nginx ##查找nginx装在那里了

重新安装命令

sudo apt-get install --reinstall curl

Ubuntu桌面系统

桌面预览

在这里插入图片描述

系统设置

在这里插入图片描述

修改用户密码

命令行修改

passwd username

界面修改

在这里插入图片描述

相关文章:

Ubuntu学习笔记 - Day2

文章目录 学习目标:学习内容:学习笔记:Linux系统启动过程内核引导运行init运行级别系统初始化建立终端用户登录系统 Ubuntu关机关机流程相关命令 Linux系统目录结构查看目录目录结构 文件基本属性读写权限命令 下载文件的方法安装wget工具下载…...

c++基础12比较/逻辑运算符

比较/逻辑运算符 布尔比较运算符逻辑运算符位运算符&#xff08;也用于逻辑运算&#xff09;1<a<10怎么表达T140399判断是否为两位数代码 布尔 在C中&#xff0c;布尔类型是一种基本数据类型&#xff0c;用于表示逻辑值&#xff0c;即真&#xff08;true&#xff09;或假…...

mac-ubuntu虚拟机(扩容-共享-vmtools)

一、磁盘扩容 使用GParted工具对Linux磁盘空间进行扩展 https://blog.csdn.net/Time_Waxk/article/details/105675468 经过上面的方式后还不够&#xff0c;需要再进行下面的操作 lvextend 用于扩展逻辑卷的大小&#xff0c;-l 选项允许指定大小。resize2fs 用于调整文件系统的…...

数学建模学习(135):使用Python基于WSM、WPM、WASPAS的多准则决策分析

1. 算法介绍 多标准决策分析(Multi-Criteria Decision Analysis, MCDA)是帮助决策者在复杂环境下做出合理选择的重要工具。WSM(加权和法)、WPM(加权乘积法)、WASPAS(加权和乘积评估法)是 MCDA 中的三种常用算法。它们广泛应用于工程、经济、供应链管理等多个领域,用于…...

VScode的C/C++点击转到定义,不是跳转定义而是跳转声明怎么办?(内附详细做法)

以最简单的以原子的跑马灯为例&#xff1a; 1、点击CtrlShiftP&#xff0c;输入setting&#xff0c;然后回车 2、输入Browse 3、点击下面C_Cpp > Default > Browse:Path里面添加你的工程路径 然后就可以愉快地跳转定义啦~ 希望对你有帮助&#xff0c;如果还不可以的话&a…...

设备管理网关(golang版本)

硬件设备&#xff1a;移远EC200A-CN LTE Cat 4 无线通信模块 操作系统&#xff1a;openwrt 技术选型&#xff1a;layui golang sqlite websocket 工程结构 界面展示 区域管理 设备管理 运行监控 系统参数 资源文件 版本信息...

Armv8的安全启动

目录 1. Trust Firmware 2. TF-A启动流程 3. TF-M启动流程 3.1 BL1 3.2 BL2 4.小结 在之前汽车信息安全 -- 再谈车规MCU的安全启动文章里&#xff0c;我们详细描述了TC3xx 、RH850、NXPS32K3的安全启动流程&#xff0c;而在车控类ECU中&#xff0c;我们也基本按照这个流程…...

冒泡排序、选择排序、计数排序、插入排序、快速排序、堆排序、归并排序JAVA实现

常见排序算法实现 冒泡排序、选择排序、计数排序、插入排序、快速排序、堆排序、归并排序JAVA实现 文章目录 常见排序算法实现冒泡排序选择排序计数排序插入排序快速排序堆排序归并排序 冒泡排序 冒泡排序算法&#xff0c;对给定的整数数组进行升序排序。冒泡排序是一种简单…...

SQL CASE表达式与窗口函数

CASE 表达式是一种通用的条件表达式&#xff0c;类似于其他编程语言中的if/else语句。 窗口函数类似于group by&#xff0c;但是不会改变记录行数&#xff0c;能扫描所有行&#xff0c;能对每一行执行聚合计算或其他复杂计算&#xff0c;并把结果填到每一行中。 1 CASE 表达式…...

基于SpringBoot的植物园管理小程序【附源码】

基于SpringBoot的植物园管理小程序 效果如下&#xff1a; 系统登录页面 管理员主页面 商品订单管理页面 植物园信息管理页面 小程序主页面 小程序登录页面 植物信息查询推荐页面 研究背景 随着互联网技术的快速发展和移动设备的普及&#xff0c;线上管理已经成为各行各业提高…...

asp.net网站项目如何设置定时器,定时获取数据

在 Global.asax.cs 文件中编写代码来初始化和启动定时器。Global.asax.cs 文件定义了应用程序全局事件&#xff0c;比如应用程序的启动和结束。在这里&#xff0c;我们将在应用程序启动时初始化和启动定时器。 using System; using System.Timers;public class Global : Syste…...

单元/集成测试解决方案

在项目开发的前期针对软件单元/模块功能开展单元/集成测试&#xff0c;可以尽早地发现软件Bug&#xff0c;避免将Bug带入系统测试阶段&#xff0c;有效地降低HIL测试的测试周期&#xff0c;也能有效降低开发成本。单元/集成测试旨在证明被测软件实现其单元/架构设计规范、证明被…...

高效作业跟踪:SpringBoot作业管理系统

1 绪论 1.1 研究背景 现在大家正处于互联网加的时代&#xff0c;这个时代它就是一个信息内容无比丰富&#xff0c;信息处理与管理变得越加高效的网络化的时代&#xff0c;这个时代让大家的生活不仅变得更加地便利化&#xff0c;也让时间变得更加地宝贵化&#xff0c;因为每天的…...

keepalived + nginx 实现网站高可用性(HA)

keepalive 一、keepalive简介二、实现步骤1. 环境准备2. 安装 Keepalived3. 配置 Keepalived 双机主备集群架构4. 配置 Nginx5. 启动Keepalived6. 测试高可用性7. 配置keepalived 双主热备集群架构 三、虚拟ip 一、keepalive简介 目前互联网主流的实现WEB网站及数据库服务高可用…...

有哪些编辑器,怎样选择编辑器

1. Visual Studio Code (VSCode) 特点&#xff1a; 轻量级且强大&#xff1a;启动速度快&#xff0c;占用资源少&#xff0c;但功能强大。跨平台&#xff1a;支持 Windows、macOS 和 Linux。丰富的扩展生态&#xff1a;拥有庞大的扩展市场&#xff0c;可以安装各种插件来扩展功…...

软件系统开发

目录 软件开发方法 软件开发生命周期 软件开发模型 敏捷方法 敏捷型方法两个特点 敏捷方法的核心思想三点 4个核心价值观 主要敏捷方法 RUP RUP的核心特点&#xff1a; RUP软件开发生命周期 9个核心工作流 RUP裁剪 软件系统工具 软件开发工具 需求分析工具 设计…...

浅谈RPC的实现原理与RPC实战

浅谈RPC的实现原理与RPC实战 什么是RPC?RPC框架基本原理gRPC框架介绍Http/2ProtoBuf gRPC实战一、创建项目二、导入依赖三、编写proto文件编写服务端编写客户端 什么是RPC? RPC(Remote Procedore Call)&#xff0c;及远程过程调用&#xff0c;是一种在分布式系统中用于进程间…...

算法|牛客网华为机试31-40C++

牛客网华为机试 上篇&#xff1a;算法|牛客网华为机试21-30C 文章目录 HJ31 单词倒排HJ32 密码截取HJ33 整数与IP地址间的转换HJ34 图片整理HJ35 蛇形矩阵HJ36 字符串加密HJ37 统计每个月兔子的总数HJ38 求小球落地5次后所经历的路程和第5次反弹的高度HJ39 判断两个IP是否属于同…...

Mysql 大表limit查询优化原理

优化前( 查询耗时 114.1s) explain select * from link_exec_task limit 80000, 10 # 查询耗时 114.1s优化后( 查询耗时 0.121s) explain select * from link_exec_task a INNER JOIN (select id from link_exec_task limit 80000, 10) b on a.id b.id #0.121s原理&…...

封装axios、环境变量、api解耦、解决跨域、全局组件注入

官网&#xff1a;Axios中文文档 | Axios中文网 安装&#xff1a;npm install axios axios封装&#xff1a; // 1. 引入axios import axios from "axios"; import storage from /utils/storage // 2. 创建axios实例 const instance axios.create({baseURL: proces…...

网络编程(Modbus进阶)

思维导图 Modbus RTU&#xff08;先学一点理论&#xff09; 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议&#xff0c;由 Modicon 公司&#xff08;现施耐德电气&#xff09;于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...

XCTF-web-easyupload

试了试php&#xff0c;php7&#xff0c;pht&#xff0c;phtml等&#xff0c;都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接&#xff0c;得到flag...

大话软工笔记—需求分析概述

需求分析&#xff0c;就是要对需求调研收集到的资料信息逐个地进行拆分、研究&#xff0c;从大量的不确定“需求”中确定出哪些需求最终要转换为确定的“功能需求”。 需求分析的作用非常重要&#xff0c;后续设计的依据主要来自于需求分析的成果&#xff0c;包括: 项目的目的…...

【大模型RAG】Docker 一键部署 Milvus 完整攻略

本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装&#xff1b;只需暴露 19530&#xff08;gRPC&#xff09;与 9091&#xff08;HTTP/WebUI&#xff09;两个端口&#xff0c;即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...

Element Plus 表单(el-form)中关于正整数输入的校验规则

目录 1 单个正整数输入1.1 模板1.2 校验规则 2 两个正整数输入&#xff08;联动&#xff09;2.1 模板2.2 校验规则2.3 CSS 1 单个正整数输入 1.1 模板 <el-formref"formRef":model"formData":rules"formRules"label-width"150px"…...

AI书签管理工具开发全记录(十九):嵌入资源处理

1.前言 &#x1f4dd; 在上一篇文章中&#xff0c;我们完成了书签的导入导出功能。本篇文章我们研究如何处理嵌入资源&#xff0c;方便后续将资源打包到一个可执行文件中。 2.embed介绍 &#x1f3af; Go 1.16 引入了革命性的 embed 包&#xff0c;彻底改变了静态资源管理的…...

MacOS下Homebrew国内镜像加速指南(2025最新国内镜像加速)

macos brew国内镜像加速方法 brew install 加速formula.jws.json下载慢加速 &#x1f37a; 最新版brew安装慢到怀疑人生&#xff1f;别怕&#xff0c;教你轻松起飞&#xff01; 最近Homebrew更新至最新版&#xff0c;每次执行 brew 命令时都会自动从官方地址 https://formulae.…...

【SpringBoot自动化部署】

SpringBoot自动化部署方法 使用Jenkins进行持续集成与部署 Jenkins是最常用的自动化部署工具之一&#xff0c;能够实现代码拉取、构建、测试和部署的全流程自动化。 配置Jenkins任务时&#xff0c;需要添加Git仓库地址和凭证&#xff0c;设置构建触发器&#xff08;如GitHub…...

保姆级【快数学会Android端“动画“】+ 实现补间动画和逐帧动画!!!

目录 补间动画 1.创建资源文件夹 2.设置文件夹类型 3.创建.xml文件 4.样式设计 5.动画设置 6.动画的实现 内容拓展 7.在原基础上继续添加.xml文件 8.xml代码编写 (1)rotate_anim (2)scale_anim (3)translate_anim 9.MainActivity.java代码汇总 10.效果展示 逐帧…...

Spring Boot + MyBatis 集成支付宝支付流程

Spring Boot MyBatis 集成支付宝支付流程 核心流程 商户系统生成订单调用支付宝创建预支付订单用户跳转支付宝完成支付支付宝异步通知支付结果商户处理支付结果更新订单状态支付宝同步跳转回商户页面 代码实现示例&#xff08;电脑网站支付&#xff09; 1. 添加依赖 <!…...