深入理解Ubuntu22:探索Linux操作系统的功能与应用

一、linux

(一)、安装

1、电脑可以安装双系统,即在一套硬件上只能同时运行一个操作系统,例:C盘安装win,D盘安装linux。

2、虚拟机

虚拟机需要硬件支持,并需开启VT-x.
如:VirtualBox/VMware Workstation
虚拟机是一种软件实现的虚拟计算机环境,用来模拟真实环境,可在虚拟机内运行操作系统。

3、安装

(1)、新建虚拟机
在这里插入图片描述

(2)、选择自定义
在这里插入图片描述
(3)、默认配置硬件
在这里插入图片描述
(4)、‘新建虚拟机向导’-‘稍后安装操作系统’
在这里插入图片描述
(5)‘客户机操作系统’-‘linux’,‘版本’-‘ubuntu’
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/2590f327ae3c41958ec1bd79ffe8a40f.pn
(6)设置虚拟机名称与虚拟机位置
在这里插入图片描述
(7)设置处理器数量
在这里插入图片描述
(8)设置虚拟机内存
在这里插入图片描述
(9)网络类型、磁盘选择类型、磁盘容量、磁盘文件位置都可自定义。

(二)、虚拟机的基本操作

1、虚拟机快照:保存一个正确状态的虚拟机版本。

内容:保存快照、回退到上一个版本、管理快照

2、基本操作

(1)、汉化
在设置中更改语言
(2)、软件和更新
尽量不要更新
(3)、下载源
国内服务器
(4)、更新镜像
sudo apt update
(5)、查看ip
sudo apt install net-tools
(6)、调整分辨率
安装open-vm-tools
“查看”-“立即适应客户机”

(三)、目录

Linux下一切皆文件
没有盘符,根目录就是/

1、bin:普通用户可执行文件目录。
2、sbin:管理员可执行文件目录。
3、lib*:可执行文件依赖的类库。
4、usr:bin/sbin/lib*/local[bin/sbin/lib*]
5、etc:所有软件的配置文件,apt/sourse.list,下载源。
6、home:用户家目录。
7、root:系统管理员家目录,普通用户无法访问。
8、opt:第三方软件配置目录,如:pycharm。
9、var:lock:锁文件,www:日志文件,log:日志路径,mail:邮件看路径。

(四)常用指令

1、格式:指令名 选项(可选,一般没有先后顺序) 参数(可选)

2、斜杠/表示根目录,而点号.表示当前目录,双点号…表示父目录。

3、~表示当前用户的家目录(home directory)。cd ~会将你换到/home/user1目录下。

(1)、ls

罗列当前所有文件
-a: 显示所有隐藏文件(.开头)
-l:列表详细信息
每个字符:
-:代表是一个文件
d:表示是一个目录
l:代表是一个连接
九个字符:
头三个:当前用户
中间三个:当前用户组
最后三个:其他用户
每三个字符:r可读;w可写;x可执行;-无权限
一个数字:当前文件/目录 连接数(包括自己)
“当前用户"与"当前用户所在的组”,默认用户名与组名一致。
文件大小。
日期时间。
文件、目录名。
-h:文件大小可读性强
例:查看根目录列表信息:ls -alh /

(2)、cd:更改工作路径。

cd / :切换到根目录
cd … :上级路径
cd 路径名 :当前路径下面的文件夹
cd /etc/apt : 使用绝对路径
cd ~ : 回到当前用户家目录(一键回城)
cd - : 从哪里来回哪里去
例:cd ~/Desktop/: 去往桌面目录

(3)、mkdir

创建文件夹,默认在已有路径下创建。
-p :创建多级路径。

(4)、rmdir

删除空文件夹

(5)、touch

创建/更新文件

(6)、rm

删除文件
-r:递归,例:rm -rf 文件夹名:递归删除文件夹中的文件包括文件夹
-f:忽略错误
rm -rf / :删除跑路(不要轻易使用)

(7)、重定向

>:写入
>>:追加

(8)、更改文件中的内容

sed -i ‘s/原内容/新内容/g’ 文件名

(9)、查看

cat:查看文件内容

例:cat 文件名1 文件名2 文件名3 > 文件名4
将文件1、2、3中的内容写入文件4
head 默认查看所有; 加上-n,查看前几行

tail 默认查看全部;加上-n,表示查看后几行

more 每次查看一屏信息;按空格,可翻页;按q,表示退出

(10)、wc:对文件进行统计

-l:行数
例:wc -l 文件名
-w :单词数
-c :字符数

(11)、|:管道

左侧作为输入
右侧作为输出
例:cat abc | head -3
对于abc文件中的内容只显示前三行

(12)、grep:行过滤

-n:显示行号
例:grep -n 所找内容 文件名 相当于 cat 文件名 | grep -n 所找内容

(13)、cp:拷贝文件

cp 原文件 新文件 (如果是目录,名字不改变)

(14)、mv:移动文件

mv 原文件 新文件 (如果是目录, 名字不变)

(15)、tar:归档

-c:创建归档文件
例:tar -cf 归档名.tar 文件1 文件2 文件3
-f:归档名,需要位于最后一个选项
-t:罗列归档文件
-x:解开归档
-v:查看进度
后缀为.tar

(16)、gzip:压缩

后缀为.tar.gz
-r:将归档的压缩
例: gzip -r 归档名.tar
-d:解压
例:gzip -d 压缩名.tar.gz

(17)、ln:连接

硬链接:ln 原始文件 新文件
相当于拷贝一份文件,但两者又有关联
一个改变,另一个也改变
一个删除另一个也可以删除
只能连接文件,链接出来的也是文件
软连接:带有-s
ln -s 原文件 新文件
相当于快捷方式,可以连接文件,也可以连接文件夹
原文件删除后,链接出来的文件不可使用,即原始文件失效,连接文件不可使用

(18)、pwd:

查看当前所在的目录。

(19)、which:

bin执行文件的位置,定位并显示给定命令的绝对路径。

(20)、ps:

查看当前进程。
-ef:查看所有进程的详细信息。
-wf:显示完整的进程信息。
pid:进程号。
ppid:父进程号。

(21)、kill:

杀死进程。
-9:清理相关资源。

(22)、ifconfig:

查看ip信息。

(23)、wget:

wget+网址:下载。

(24)、clear:

清屏

(25)、quit或Ctrl+C

退出。

(五)、用户相关指令

1、linux为多用户,多任务操作系统。

在 Linux 系统中,可以创建多个用户账户,每个用户都有自己的用户名和密码,以及独立的用户环境和权限。这种多用户的机制使得多个用户可以在同一台计算机上共享资源,同时保持彼此的隐私和安全性。

2、常用指令

(1)、whoami:

显示用户

(2)、用户和组的存储位置:
  • /etc/passwd:用户信息文件。例:cat /etc/passwd,显示用户信息。
  • /etc/group:用户组信息。
(3)、useradd:

创建用户
注意使用权限,例:sudo useradd -m temp1
例2:sudo useradd -m -g 组名 用户名
-m:创建家目录,即:/home/user名。
-g:指定组

(4)、userdel:

删除用户
注意使用权限,例:sudo userdel -r temp1
-r:自动删除家目录

(5)、groupadd:

创建组
例:sudo groupadd 组名

(6)、groupdel:

删除组
例:sudo groupdel 组名

(7)、passwd:

设置密码
默认给root设置密码,即:sudo passwd
sudo passwd 用户名

(8)、su:

切换用户
默认切换到root
注意su root之前,先给root设置密码
su 用户名
例:su temp1

(9)、exit:

退出到当前用户的上一个用户
直到退出终端

(10)、chmod:

修改权限
改变文件或目录权限的命令
它可以控制文件或目录的读取、写入和执行权限,以及文件所有者、所属组和其他用户的权限设置。
chmod [选项] 模式 文件名
用户类型:
u:文件所属用户;g:所属用户组里的其他用户;o:组外其他用户。
权限类型:
r:读,4;w:写,2;x:执行,1。
-R递归修改

案例
chmod g+w temp1
让temp1文件夹所属的用户 所在的组的其他用户拥有写的权限
chmod o=— temp1
组外其他用户没有任何权限
chmod o-w temp1
组外其他用户没有写权限
chmod u+w,g-w,o=— temp1
修改三种用户
注意权限之间不要有空格
chmod 777 temp1
所有用户的所有权限
chmod 750 temp1
当前用户所有权限,组里用户可读可执行,其他用户没有权限

(10)、chown:

直接修改所属用户
例:chown 新用户名 旧用户名
参数:-R递归修改

(11)、chgrp:

直接修改用户所属组
例:chgrp 新组名 旧组名
参数:-R递归修改

(六)ssh与scp

1、ssh为一种通信协议

2、使用

(1)注意事项
  • 联网:查看是否联网,例如:ping baidu.com
  • 更新下载源:sudo apt update
  • 切换下载源(切换镜像):因为镜像可能不支持安装包
(2)下载sshd

sudo apt install openssh-service
查找进程号:ps -ef | grep sshd
查看状态:sudo systemctl status sshd
或:sudo service sshd status

3、使用工具

(1)scp是基于ssh的远程传输工具
(2)使用方法
  • 格式:scp 原始文件 新文件
  • scp 文件名 用户名@ip:远程文件路径

路径支持绝对路径也支持相对路径(用户家目录)
也支持改名字
-r 递归传输文件

  • scp 用户名@ip:远程文件路径 文件名
    路径支持绝对路径也支持相对路径(用户家目录)
    也支持改名字
    -r 递归传输文件

例:
在Windows窗口下
向linux中传入文件
scp abc.txt gaosinan@192.168.11.x:abc.txt
用户名和ip都是linux的
向linux中传入文件夹
scp -r efg gaosinan@192.168.11.x:efg

(七)服务操作

service

sudo service sshd start
sudo service sshd status
sudo service sshd stop
sudo service sshd restart

systemctl

sudo systemctl start sshd
sudo systemctl status sshd
sudo systemctl stop sshd
sudo systemctl restart sshd

(八)Python与pycharm

1、linux自带Python

给Python添加软连接
sudu   ln   -s   /usr/bin/python3.10   /usr/bin/python/

2、在linux系统下安装pycharm

1.在Windows下,下载linux版本的pycharm

注意不要有中文路径

2、移动到linux系统下

在Windows黑窗口下:scp pycharm-community-2023.3.4.tar.gz gaosinan@192.168.11.3:pycharm.tar.gz

3、更改opt文件夹的权限

opt文件夹是用于安装第三方软件包的
opt文件夹在根目录下,即/下
sudo chmod -R 777 opt

4、将pycharm.tar.gz移动到opt文件夹下

mv pycharm.tar.gz /opt/

5、将pycharm.tar.gz解压

进入opt文件夹
cd /opt/
gzip -d pycharm.tar.gz

6、将pycharm.tar解包(解开归档)

tar -xvf pycharm.tar

7、进入解档后的文件的bin文件夹

cd /opt/pycharm-community-2023.3.4/bin/

8、运行pycharm的启动文件

./pycharm.sh
注意在终端中使用sh启动文件启动pycharm后,在使用pycharm时不要关闭

9、设置pycharm快捷方式

“file”-“Tools”-“Create Desktop ……”

(九)Vim文本编辑器

1、三种模式

  • 普通模式:键盘输入内容被解释为指令
  • 插入模式:可以输入状态
    按下i或a进入插入模式
    按下esc退出插入模式
  • 命令行模式:按下:进入命令行模式
    可以搜索替换

2、linux自带vi编辑器

(1)使用升级版vim

sudo apt install vim

(2)文件操作

vim 文件名:有就打开,没有就创建

命令行模式

:进入命令行
q 退出;q!:退出,不保存;wq 保存,退出;

在普通模式下进行

gg:文件开头
gg:跳转到文档的开头(go to beginning of file)
G:文件末尾
G:跳转到文档的末尾(go to end of file)
M:文件中间
k:上
j:下
h:左
l:右

插入模式

在插入模式按下二手车退出 进入普通模式
i:光标之前插入
l:行首
a:光标之后插入
A:行末
o:下一行插入
O:上一行插入

其他指令

yy:复制一行
p:粘贴
u:撤销

删除内容

x:delete,表示删除
dd:delete line,表示删除整行
d0:delete to beginning of line,表示删除光标位置到行首的文本
D:delete to end of line,表示删除光标位置到行尾的文本

搜索

/向下搜索内容
?向上搜索内容
n寻找下一个
n:next,表示向下查找下一个匹配项
N寻找上一个
N:previous,表示向上查找上一个匹配项

(十)Ubuntu22下使用Mysql

1、mysql安装

sudo apt install mysql-server
mysql 8,没有配置密码

2、进入mysql

1、使用mysql_secure_installation配置
2、使用系统root登录mysql系统
直接登录mysql
mysql root用户默认没有密码

3、创建用户

create user ‘zzy’@‘%’ identified by ‘123456’;

4、分配权限

grant all on . to ‘zzy’@‘%’;

5、刷新权限

flush privileges;

(十一)Ubuntu22下使用Redis

1、下载redis安装包

sudo apt install redis-server

2、查看redis状态

systemctl status redis
连接redis客户端
redis-cli

3、配置redis的conf文件

到root用户下:su
到redis文件夹下找到配置文件:cd /etc/redis
修改配置文件:vim redis.conf
requirepass 123456
bind 0.0.0.0 :: 1
注意要把原来的bind注释掉

4、重新启动

sudo systemctl restart redis

5、查看状态

sudo systemctl status redis

6、使用redis客户端连接

redis-cli -h 192.168.11.x -a 123456

(十二)Ubuntu22下使用mongodb

官方网站

https://www.mongodb.com/docs/manual/tutorial/install-mongodb-on-ubuntu/
查看虚拟机版本号
cat /etc/lsb-release

安装

1、sudo apt-get install gnupg curl

curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc |
sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg
–dearmor

2、echo “deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse” | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list
3、sudo apt-get update
4、sudo apt-get install -y mongodb-org
5、查看mongod状态

systemctl status mongod

6、如果没有启动,重新启动,再查看状态

sudo systemctl start mongod
sudo systemctl status mongod

7、进入mongo客户端

mongosh

8、更改mongo的配置文件mongod.conf

进入 /etc/
即不在root用户下
su gaosinan
更改配置文件
sudo vim mongod.conf
重启mongod
sudo systemctl restart mongod

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PLM系统实施的六大难点及其解决方法

实施PLM系统是企业实现产品全生命周期管理的重要举措,但在实施过程中往往会面临一些难点。本文将探讨实施PLM系统的主要难点及其解决方法。 首先,数据迁移和整合是实施PLM系统的一个关键挑战。企业可能拥有大量的现有数据,包括设计文件、工艺…

幼儿教育管理系统|基于jsp 技术+ Mysql+Java的幼儿教育管理系统设计与实现(可运行源码+数据库+设计文档)

推荐阅读100套最新项目 最新ssmjava项目文档视频演示可运行源码分享 最新jspjava项目文档视频演示可运行源码分享 最新Spring Boot项目文档视频演示可运行源码分享 2024年56套包含java,ssm,springboot的平台设计与实现项目系统开发资源(可…

HANA VIEW 用 ABAP 创建CDS VIEW,在生成ODATA

这里我们做ADT来创建 场景介绍:把hana中的一个底表,创建成ABAP的 CDS VIEW ,在把CDS VIEW 生成 OData 服务。 一、创建CDS Table Function 红框内根据自身情况填写 选择 Define Table Function with Parameters 创建 Data Definition 完整代码,定义 结构 , 也可以定义参…

力扣Lc18--- 168. Excel表列名称(java版)-2024年3月19日

1.题目描述 2.知识点 因为是输入字符 然后显示数字。 就类似2进制10代表2&#xff0c;110代表4&#xff0c;用某进制次幂的方式返回最后的数字结果。 3.代码实现 class Solution {public int titleToNumber(String columnTitle) {int sum0;for(int i0;i<columnTitle.len…

python网络爬虫实战教学——urllib的使用(1)

文章目录 专栏导读1、前言2、urllib的使用3、发送请求3.1 urlopen3.2 request 专栏导读 ✍ 作者简介&#xff1a;i阿极&#xff0c;CSDN 数据分析领域优质创作者&#xff0c;专注于分享python数据分析领域知识。 ✍ 本文录入于《python网络爬虫实战教学》&#xff0c;本专栏针对…

C#对ListBox控件中的数据进行的操作

目录 1.添加数据&#xff1a; 2.删除数据&#xff1a; 3.清空数据&#xff1a; 4.选择项&#xff1a; 5.排序&#xff1a; 6.获取选中的项&#xff1a; 7.获取ListBox中的所有项&#xff1a; 8.综合示例 C#中对ListBox控件中的数据进行的操作主要包括添加、删除、清空、…

关于小仙炖燕窝的崛起!

产品策略 爆火逻辑 1. 超级品类&#xff1a;对传统的升级 干燕窝&#xff1a;选&#xff1f;炖&#xff1f;吃&#xff1f; &#xff08;口感差&#xff09;即食燕窝&#xff1a;新鲜&#xff1f;营养&#xff1f;&#xff08;营养保障&#xff09;鲜炖燕窝&#xff1a;保质期、…

【鸿蒙HarmonyOS开发笔记】应用数据持久化之通过关系型数据库实现数据持久化

概述 关系型数据库&#xff08;Relational Database&#xff0c;RDB&#xff09;是一种基于关系模型来管理数据的数据库。关系型数据库基于SQLite组件提供了一套完整的对本地数据库进行管理的机制&#xff0c;对外提供了一系列的增、删、改、查等接口&#xff0c;也可以直接运…

18个惊艳的可视化大屏(第28辑):房产楼盘领域

在房产楼盘领域&#xff0c;可视化的大屏可以提供以下九大价值&#xff1a; 展示楼盘信息 可视化的大屏可以用于展示楼盘的基本信息&#xff0c;包括楼盘名称、位置、户型、价格、面积等&#xff0c;帮助潜在客户快速了解楼盘的特点和优势。 展示楼盘效果图 通过大屏展示楼盘…

load函数无法正常加载CUDA扩展的问题(程序在某一行突然卡死,也不报错,也不停止运行就可以考虑这个原因)

背景&#xff1a;在服务器上跑代码的时候&#xff0c;有时候会遇到程序在某一行代码卡死(阻塞)&#xff0c;既不报错&#xff0c;也不停止运行&#xff0c;就堵在那里。 此时就可以考虑是代码在哪里碰到了load函数&#xff0c;load函数无法正常加载CUDA扩展的问题。 下面以碰到…

MFC界面美化第三篇----自绘按钮(重绘按钮)

1.前言 最近发现读者对我的mfc美化的专栏比较感兴趣&#xff0c;因此在这里进行续写&#xff0c;这里我会计划写几个连续的篇章&#xff0c;包括对MFC按钮的美化&#xff0c;菜单栏的美化&#xff0c;标题栏的美化&#xff0c;list列表的美化&#xff0c;直到最后形成一个完整…

S2-066漏洞分析与复现(CVE-2023-50164)

Foreword 自struts2官方纰漏S2-066漏洞已经有一段时间&#xff0c;期间断断续续地写&#xff0c;直到最近才完成&#xff0c;o(╥﹏╥)o。羞愧地回顾一下官方通告&#xff1a; 2023.12.9发布&#xff0c;编号CVE-2023-50164&#xff0c;主要影响版本是 2.5.0-2.5.32 以及 6.0…

[薅羊毛活动]体验AI编码和开盲盒

​​​​​​​通义灵码 体验 AI 编码&#xff0c;开 AI 盲盒 上面是我的邀请码,直接点击 活动说明 【活动玩法一】“体验AI编码、领取AI盲盒”活动玩法 玩法简述&#xff1a;用户进入活动页面后&#xff0c;随机参与或体验活动页面中通义灵码的任一场景&#xff0c;即可获…

软件测评中心:进行科技成果鉴定测试的注意事项和好处简析

软件产品科技成果鉴定是有效评价科技成果质量和水平的方法之一&#xff0c;也是鼓励科技成果通过市场竞争等方式得到有效的评价和认可&#xff0c;可以推动科技成果的进步和转化。 一、进行科技成果鉴定测试时的注意事项&#xff1a;   1、应由具备一定资质和能力的专业机构…

VS code配置免密连接Linux服务器

1. 服务器端 1.1 安装OpensSSH sudo apt install openssh-server 1.2 开启ssh服务 使用下面的命令查看是否开启了ssh&#xff1a; service ssh status 或者 sudo systemctl status ssh 只要看到绿色高亮的active(running)就是开启了ssh 如果没有开启&#xff0c;则使用…

如何用 Rust Reqwest 写一个Web 爬虫?

用 Rust Reqwest 编写 Web 爬虫 您是否曾考虑过建立自己的 潜在业务数据库&#xff0c;用于潜在客户开发或产品价格数据&#xff0c;以便您可以毫不费力地以最便宜的价格获得产品&#xff1f;网络爬虫可以让您无需亲自执行任何手动工作即可做到这一点。Rust通过允许显式地处理错…

MD5算法:密码学中的传奇

title: MD5算法&#xff1a;密码学中的传奇 date: 2024/3/15 20:08:07 updated: 2024/3/15 20:08:07 tags: MD5起源算法原理安全分析优缺点比较技术改进示例代码应用趋势 MD5算法起源&#xff1a; MD5&#xff08;Message Digest Algorithm 5&#xff09;算法是由MIT的计算机…

【数据结构】哈希表与哈希桶

&#x1f440;樊梓慕&#xff1a;个人主页 &#x1f3a5;个人专栏&#xff1a;《C语言》《数据结构》《蓝桥杯试题》《LeetCode刷题笔记》《实训项目》《C》《Linux》《算法》 &#x1f31d;每一个不曾起舞的日子&#xff0c;都是对生命的辜负 目录 前言 1.概念 2.哈希冲突…

Vulnhub靶机渗透:DC-7打靶记录

前言 自信自强&#xff0c;来自于不怕苦、不怕难的积淀。宝剑锋从磨砺出&#xff0c;梅花香自苦寒来&#xff1b;任何美好理想&#xff0c;都离不开筚路蓝缕、手胼足胝的艰苦奋斗&#xff01; 靶场介绍 DC-7是一个初中级的靶场&#xff0c;需要具备以下前置知识&#xff1a;…

DevEco Studio 项目创建

安装DevEco Studio后开始使用&#xff0c;双击桌面DevEco Studio 快捷方式弹出界面&#xff1a; 选择Application —> Empty Ability&#xff0c;点击Next 项目配置 Project name&#xff1a;工程的名称&#xff0c;可以自定义&#xff0c;由大小写字母、数字和下划线组成。…