入门linux之Ubuntu学习

news2024/11/20 15:18:55

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 1、介绍Ubuntu
  • 2、虚拟机目录解析
  • 3、常用指令
    • ls:罗列当前目录文件信息
    • 对ls -l 的结果解析
      • 1.第一个字符
      • 2.每三个字符(第一个字符后)
      • 3.共九个字符
      • 4.一个数字
      • 5.当前用户与 当前用户所在的组
      • 6.文件大小
      • 7.日期、时间、目录名
    • pwd:查看当前所在目录
    • cd:更改工作路径
    • 创建
      • 1.mkdir
      • 2.touch
    • 删除
      • 1.rmdir
      • 2.rm
    • 查看
    • wc:统计
    • 复制移动
      • 1.cp
      • 2.mv
    • 归档压缩
      • 1.tar
      • 2.gzip
    • 内容修改
      • 1.重定向
      • 2.管道
      • 3.过滤
    • 连接
      • 1.软连接
      • 2.硬链接
    • which:执行文件的位置
    • 其他
      • 1.ps:查看进程
      • 2.kill:杀死进程
      • 3.ifconfig:查看ip
      • 4.ping:连接(网址、IP)
  • 4、用户指令
    • 1.用户(用户组)的创建和删除
    • 2.更改用户权限
      • 用户类型
      • 权限类型(可以用数字表示)
      • 案例
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
    • 3.扩展
      • 1.chown
      • 2.chgrp
  • 5、ssh和scp
    • ssh
      • 安装
      • 服务操作
        • 1.service
        • 2.systemctl
    • scp
  • 6、Python与Pycharm
  • 总结


前言

提示:这里可以添加本文要记录的大概内容:

Ubuntu是一个功能强大、稳定可靠、易于使用和高度可定制的操作系统,适用于各种计算需求的用户。它免费提供给用户,并受到全球范围内的大量用户和开发者的支持和推崇。


提示:以下是本篇文章正文内容,下面案例可供参考

1、介绍Ubuntu

Ubuntu是一个基于Linux的操作系统,它是一个开放源代码的免费操作系统,广泛用于个人电脑、服务器和云计算等领域。Ubuntu由南非企业家马克·舍特尔沃思在2004年创建,其目标是为了提供一个易于使用、稳定可靠、安全性强的操作系统。

Ubuntu有着用户友好的界面和易于安装的特点,可以满足各种用户的需求,无论是初学者还是专业人士。它的默认桌面环境是基于GNOME桌面环境的Unity,但也提供了其他选择,如KDE、Xfce等。

Ubuntu拥有庞大的软件仓库,用户可以通过软件中心或者命令行轻松地安装和更新各种软件。它支持大多数常见的文件格式和多媒体格式,并且提供了多种办公套件、开发工具和娱乐软件。

除了个人电脑外,Ubuntu也被广泛应用于服务器和云计算环境。它具有良好的稳定性和安全性,提供了强大的服务器功能和工具,适用于各种规模的服务器环境。

Ubuntu还注重隐私和安全,提供了强大的防火墙和加密功能,以保护用户的数据和隐私安全。

总的来说,Ubuntu是一个功能强大、易于使用、稳定可靠且安全性高的操作系统,适用于各种使用场景,并且拥有庞大的社区支持和活跃的开发团队。

2、虚拟机目录解析

linux下一切皆文件,没有盘符,根目录就是/
类似树,一个支上一直向下延伸

  • Desktop:桌面

  • bin:可执行文件目录,普通用户

  • sbin:管理员可执行目录

  • lib*:lib、lib32、lib64、libx32:可执行文件的依赖库

  • user
    bin、sbin、lib*:用户安装过的可执行文件
    /local:bin、sbin、lib*

  • etc:所有软件的配置文件
    etc/apt/source.list:下载源在这里配置

  • home:用户家目录,相当于Windows的用户目录

  • opt:第三方软件安装的位置

  • proc:所有进程的文件

  • root:系统管理员家目录,普通用户没有权限访问

  • var:/locak:临时文件(锁文件),例:www:web目录
    log:日志路径;
    mail:邮件路径

上方知识图
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

3、常用指令

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

ls:罗列当前目录文件信息

  • -a :显示所有隐藏文件信息(.开头)

  • -l:以列表显示详细信息

选项一个杠 - 就可以了,例:-al

  • -h:文件大小,可读性强,例:从4096变为4.0K(下方图片中)

  • 完整格式:ls -alh /:根目录有哪些文件

对ls -l 的结果解析

显示结果
在这里插入图片描述

可以以 drwxr-xr-x 2 wll wll 4096 3月 14 00:08 Documents 为例

1.第一个字符

  • -: 代表是一个文件

  • d:代表是一个目录

  • l:代表是一个连接(软连接、硬链接)

2.每三个字符(第一个字符后)

Eg:drwxr-x—中的rwx、r-x、r-x

  • r:可读
  • w:可写
  • x:可执行
  • -:无权限

3.共九个字符

去掉第一个字符(例:rwxr-xr-x)

  • 头三个:当前用户

  • 中间三个:当前用户组

  • 最后三个:其他用户

4.一个数字

2
当前文件/目录,连接数:有几个连接连到这个目录里

5.当前用户与 当前用户所在的组

wll wll

  • 默认组名与用户名一致

6.文件大小

4096

7.日期、时间、目录名

3月 14 00:08 Documents

pwd:查看当前所在目录

pwd:查看当前所在目录

在这里插入图片描述

cd:更改工作路径

  • cd …(两个点):上级路径
  • cd 路径名:当前路径下的文件
  • cd /etc/apt:使用绝对路径
  • cd ~:回到当前用户家目录(一键回城)
  • cd -:从哪来回哪去

创建

1.mkdir

mkdir:创建文件夹

mkdir:只能在已经存在的文件夹下创建

  • -p 创建多级文件夹
    例:mkdir -p folder3/folder33;folder3:是不存在的

2.touch

  • touch 文件名 ==》 创建文件,如果已经存在会替换掉原文件

删除

1.rmdir

rmdir:删除空目录

2.rm

rm:删除文件,无法删除文件夹

  • rm -f:忽略错误,即使有错也不会爆红(有就删,没有就算了)

  • rm -r:递归

  • rm -rf:递归删除

  • rm -rf /:删库跑路,将根目录下的全部删完,不要使用!不要使用!不要使用!

查看

  • cat:查看内容,可以查看多个文件
    cat 文件列表 ==> cat f1 f2 f3

  • head:查看头10行
    -n:查看前n行

  • tail:查看后10行
    -n:查看后n行

  • more:每次查看一屏信息(文件信息将屏幕铺满)
    空格翻页;q:退出

wc:统计

  • -l:行数

  • -w:单词数

  • -c:字节数(大小)

复制移动

1.cp

cp:拷贝文件

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

2.mv

mv:移动文件

mv 源文件 新文件(如果是目录,名字不变;如果是文件名会改名)

:移动文件时可以先拷贝一份,有的文件是不能随便移动的,而且在linux中删除(还原)文件是一件很麻烦的事!!!

归档压缩

1.tar

tar:归档,将多个文件放在一起不压缩

  • -f:归档名,需要位于最后一个选项

  • -c:创建归档

  • -t:查看归档文件

  • -v:显示进度

  • -x:解开归档

创建一个归档:tar -cf 归档包名.tar 归档那些文件

新的归档文件比原始文件还大

		例子:tar  -cf  f15.tar  f1  f2  f3  f4 f5   ,	将f1-f5文件归档成f15.tar
		如果归档的文件不存在,仍然会归档,只是会出现警告

2.gzip

gzip:压缩解压

  • -d:解压
  • -r:压缩

内容修改

1.重定向

  • >:写入,会覆盖原内容,相当于open中的只写w
  • >>:追加

2.管道

|(竖线):管道

  • 左侧作为输入
  • 右侧作为输出

例子
cat /etc/apt/source.list | more
将左侧/etc/apt/source.list 作为内容以右侧的方式输出

3.过滤

grep:行过滤

  • -n:显示行号
    例子
    cat /etc/apt/sources.list | grep -n aliyun
    将/etc/apt/sources.list中带有aliyun的输出(带行号)

在这里插入图片描述

连接

ln:连接,分为软连接、硬链接

1.软连接

软连接:带有选项,-s

ln -s 原始文件 新文件

  • 相当于快捷方式,可以连接目录、文件

  • 删除原始文件,连接出来的文件将会无法使用

  • ls -l 的结果开头为l

2.硬链接

ln 原始文件 新文件

  • 只能连接文件,连接出来的也是一个文件

  • 相当于拷贝一份.,两者之间有关联

  • 修改一个另外一个也会变;删除一个,另外一个可以继续使用

which:执行文件的位置

linux自带python3

在这里插入图片描述

其他

1.ps:查看进程

  • ps -ef:显示所有进程的详细信息

在这里插入图片描述

2.kill:杀死进程

kill -9 进程号:杀死进程

  • -9:清理相关资源

3.ifconfig:查看ip

在这里插入图片描述

4.ping:连接(网址、IP)

在这里插入图片描述

4、用户指令

linu是多用户、多任务操作系统

  • whoami:我是谁,查看当前用户

  • 用户和用户组的存储的位置
    /etc/passwd:用户信息文件
    /etc/group:用户组信息文件

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

1.用户(用户组)的创建和删除

  • useradd:创建用户(需要权限,前方加上sudo)==》 sudo useradd 用户名(没有用户家目录)

    -m:创建用户时同时创建家目录
    -g:指定组

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

  • userdel:删除用户,同上加sudo
    -r:自动删除家目录
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • groupadd:创建组

  • groupdel:删除组

在这里插入图片描述

  • passwd 用户名:设置密码,默认设置root

  • su:切换用户(默认切换到root用户)
    su 用户名
    在这里插入图片描述
    补充:其他用户
    在这里插入图片描述

  • exit:退出当前用户返回上一次用户,直到退出系统

2.更改用户权限

chmod:更改权限

用户类型

  • u:所属用户
  • g:所属用户组里的其他用户
  • o:组外其他用户

权限类型(可以用数字表示)

  • r:读;4
  • w:写;2
  • x:执行,二进制执行,文件夹进入;1
  • -:无权限;0

在这里插入图片描述

对于其他用户不让进、不让读、不让写

案例

1

在这里插入图片描述

chmod g+w temp1:让temp1文件夹 所属用户所在组的其他用户拥有写的权限

2

在这里插入图片描述

chmod o=rwx temp1:让其他用户(wll)拥有读写、执行的权限

在这里插入图片描述
temp3(同组)对于temp1可读,可执行,不能写;wll(其他用户)可读写、可执行

3

在这里插入图片描述

chmod u+w,g+w,o=rwx temp1:修改三种用户

4

在这里插入图片描述

chmod 000 temp1:所有用户没有权限

5

在这里插入图片描述

chmod 777 temp1:所有用户所有权限

6

在这里插入图片描述

chmod 750 temp1:当前用户所有权限,组里用户可读可执行,其他用户没有权限

补充:一个数字代表一个用户
7:所有权限 ==》 可读4 + 可写2 + 可执行1 = 7
5:可读、可执行:可读4 + 可执行1 = 5

3.扩展

1.chown

直接修改所属用户

  • 参数-R 递归修改

2.chgrp

直接修改用户所属组

  • 参数 -R 递归修改

5、ssh和scp

ssh

一种通信协议,例:TCP、UDP、HTTP

注意事项

  • 连网:ping baidu.com成功即连网
  • 更新下载源:sudo apt update
  • 切换下载源(切换镜像):镜像(下载源)不支持安装包

安装

sudo apt install openssh-server
在这里插入图片描述

服务操作

查看状态

1.service
  • sudo service sshd status

  • sudo service sshd start

  • sudo service sshd stop

  • sudo service sshd restart

在这里插入图片描述

2.systemctl
  • sudo systemctl status sshd

  • sudo systemctl start sshd

  • sudo systemctl stop sshd

  • sudo systemctl srestart sshd

在这里插入图片描述
两个均可,从中可以看到ssh服务安装成功

scp

ssh是一种安全传输协议,scp是基于ssh的远程传输工具

使用方法:scp 文件名 用户名@IP:远程文件路径

具体操作可以看下方安装pycharm

6、Python与Pycharm

还记得前面讲过linux自带python3
所以不需要再安装python了
可以建立一个软连接
sudo ln -s python3.10 python
在这里插入图片描述
后续只要在任何地方输入python就可以进入python环境了

在这里插入图片描述

下面主要介绍pycharm的安装


在官方网站下载pycharm的linux安装包

在这里插入图片描述

然后通过Windows终端scp将安装包传输到虚拟机上

在这里插入图片描述

然后使用Xshell将安装包进行解压,我们将安装包解压到opt,但是因为权限的问题,无法 “写” ,所以需要先进行权限修改
在这里插入图片描述
修改后:
在这里插入图片描述
将安装包移动到opt,随后进行解压

在这里插入图片描述
使用虚拟机运行
在这里插入图片描述

在这里插入图片描述

好了,pycharm安装完成了
如果你们不想每回运行pycharm都需要运行 ./pycharm.sh

可以按照下面的方式安装快捷方式
在这里插入图片描述

在这里插入图片描述


总结

以上就是今天要讲的内容,望诸君共勉٩(๑>◡<๑)۶

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

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

相关文章

服务器软件express搭建web服务器

文章目录 1.express 是什么2.路由2.1&#xff08;参数一&#xff09;读取用户的请求&#xff08;request&#xff09;2.2&#xff08;参数二&#xff09;给用户响应&#xff08;response&#xff09;2.3&#xff08;参数三&#xff09;next()函数&#xff08;传递请求到下一个处…

卡尔曼滤波跟踪自由落体的高度程序,带MATLAB例程

背景 已知一物体做自由落体运动,对其高度进行20次测量,测量值如下表:(g=9.80m/s2). 设高度的测量误差分布为: N(0, 1),该物体的初始高度h0和速度v0分布也为高斯分布,且: 试求该物体高度和速度的随时间变化的最优估计(matlab Kalman filters)。N(0, 1),该物体的初始高…

【QT入门】 Qt实现自定义信号

往期回顾&#xff1a; 【QT入门】图片查看软件(优化)-CSDN博客 【QT入门】 lambda表达式(函数)详解-CSDN博客 【QT入门】 Qt槽函数五种常用写法介绍-CSDN博客 【QT入门】 Qt实现自定义信号 一、为什么需要自定义信号 比如说现在一个小需求&#xff0c;我们想要实现跨ui通信&a…

计算机实体安全

计算机实体安全定义&#xff1a; 对场地环境、设施、设备和载体、人员采取的安全对策和措施。 一、计算机可靠性与故障分析 1.1 计算机的可靠性 可靠性 (狭义) ■计算机在规定时间与条件下完成规定功能的 概率 ■规定条件&#xff1a;环境条件&#xff0c;使用条件&#xff0…

计数质数——算法思路

题目链接&#xff1a;204. 计数质数 - 力扣&#xff08;LeetCode&#xff09; 会超时的代码&#xff1a; 使用了枚举的方法 方法一&#xff1a; public static int countPrimes(int n) {int ans1;if (n<2)return 0;for (int i3;i<n;i){boolean flagtrue;for (int j2;j&…

docker安装WireGuard服务

启动 WireGuard 如下异常 则是linux内核需要升级 $ wg-quick down wg0 $ wg-quick up wg0 Error: WireGuard exited with the error: Cannot find device "wg0" This usually means that your hosts kernel does not support WireGuard!at /app/lib/WireGuard.js:65…

【计算机毕业设计】基于ssm038框架的网上招聘系统的设计与实现lw7

基于ssm038框架的网上招聘系统的设计与实现lw7&#xff1a; 本课题是基于ssm框架&#xff08;springMVC,spring,mybatis)的招聘系统&#xff0c;是标准的MVC模式&#xff0c;将系统分为表现层、controller层、service层、DAO层四层&#xff0c;使用spring MVC负责请求的转发和视…

【Linux】从零认识进程 — 中下篇

送给大家一句话&#xff1a; 人一切的痛苦&#xff0c;本质上都是对自己无能的愤怒。而自律&#xff0c;恰恰是解决人生痛苦的根本途径。—— 王小波 从零认识进程 1 进程优先级1.1 什么是优先级1.2 为什么要有优先级1.3 Linux优先级的特点 && 查看方式1.4 其他概念 2…

【C语言】编译和链接----从源代码到可执行程序的转换【图文详解】

欢迎来CILMY23的博客喔&#xff0c;本篇为【C语言】文件操作揭秘&#xff1a;C语言中文件的顺序读写、随机读写、判断文件结束和文件缓冲区详细解析【图文详解】&#xff0c;感谢观看&#xff0c;支持的可以给个一键三连&#xff0c;点赞关注收藏。 前言 欢迎来到本篇博客&…

写作兔怎么用 #微信#其他#知识分享

写作兔是一款非常实用的论文写作工具&#xff0c;不仅具有查重和降重的功能&#xff0c;而且操作简单方便&#xff0c;使用起来非常便捷。那么&#xff0c;接下来就让我们一起来了解一下“写作兔怎么用”。 首先&#xff0c;要使用写作兔&#xff0c;你只需要在浏览器中输入写作…

背包dp模板

01背包 for (int i1; i<n; i) //物品 {for (int j1; j<V; j) //容积 { // 装得下 分为 1.装 2.不装if (j>v[i]) dp[j] max(tmp[j],tmp[j-v[i]]v[i]);else dp[j] tmp[j]; // 装不下第i个}for (int j1; j<V; j) tmp[j] dp[j]; //滚动数组 } 滚动数组 for (int …

网络安全知识核心之TCP与UDP区别

TCP 面向连接&#xff08;如打电话要先拨号建立连接&#xff09;提供可靠的服务;UDP 是无连接的&#xff0c;即发送数据之前不需要建立连接&#xff0c;;UDP 尽最大努力交付&#xff0c;即不保证可靠交付。&#xff08;由于 UDP 无需建立连接&#xff0c;因此 UDP 不会引入建立…

【漏洞复现】科立讯通信指挥调度平台editemedia.php sql注入漏洞

漏洞描述 在20240318之前的福建科立讯通信指挥调度平台中发现了一个漏洞。该漏洞被归类为关键级别,影响文件/api/client/editemedia.php的未知部分。通过操纵参数number/enterprise_uuid可导致SQL注入。攻击可能会远程发起。 免责声明 技术文章仅供参考,任何个人和组织使…

2024年全球生成人工智能全景图【中文】

2024年全球生成人工智能全景图【中文】 在过去的一年中&#xff0c;产生式人工智能&#xff08;GenAI&#xff09;无疑成为了全球各行各业的热门话题。特别是ChatGPT的发布&#xff0c;激发了公众对GenAI强烈的兴趣和激动&#xff0c;唤醒了我们对其变革潜力的认知。 虽然我们…

算法系列--动态规划--回文子串系列

&#x1f495;"我们好像在池塘的水底&#xff0c;从一个月亮走向另一个月亮。。"&#x1f495; 作者&#xff1a;Mylvzi 文章主要内容&#xff1a;算法系列–动态规划–回文子串系列 今天为大家带来的是算法系列--动态规划--回文子串系列(1),本文重点掌握如何快速判…

树,二叉树与堆

这里写目录标题 树树的概念树的相关概念树的表示 二叉树二叉树的概念满二叉树与完全二叉树二叉树的重要性质二叉树的存储结构 堆二叉树的顺序存储堆的概念堆的实现堆插入和删除数据 树 树的概念 树的概念&#xff1a; 树是一种非线性的数据结构&#xff0c;它是由n&#xff08…

链表oj测试题(上)

链表的申明&#xff1a; struct ListNode {int val;struct ListNode* next; }; 1.题1 删除指定元素 例如&#xff1a;链表1 2 6 3 4 5 6&#xff0c;然后选择删除元素6&#xff0c;返回的链表为1 2 3 4 5 。 代码演示&#xff1a; typedef struct ListNode ListNode;List…

01-java面试题八股文-----java基础——20题

文章目录 <font color"red">1、java语言有哪些特点&#xff1a;<font color"red">2、面向对象和面向过程的区别<font color"red">3、标识符的命名规则。<font color"red">4、八种基本数据类型的大小&#xff…

Elastic 线下 Meetup 将于 2024 年 3 月 30 号在武汉举办

2024 Elastic Meetup 武汉站活动&#xff0c;由 Elastic、腾讯、新智锦绣联合举办&#xff0c;现诚邀广大技术爱好者及开发者参加。 活动时间 2024年3月30日 13:30-18:00 活动地点 中国武汉 武汉市江夏区腾讯大道1号腾讯武汉研发中心一楼多功能厅 13:30-14:00 入场 活动流程…

关于调度算法,小林给出更好的例子(银行办理业务)

看的迷迷糊糊&#xff1f;那我拿去银行办业务的例子&#xff0c;把上面的调度算法串起来&#xff0c;你还不懂&#xff0c;你锤我&#xff01; 办理业务的客户相当于进程&#xff0c;银行窗口工作人员相当于 CPU。 现在&#xff0c;假设这个银行只有一个窗口&#xff08;单核 …