linux基础 超级笔记

news2024/12/1 0:20:33

1.Linux系统的组成

· Linux系统内核:提供系统最核心的功能,如软硬件和资源调度。

· 系统及应用程序:文件、任务管理器。

2.Linux发行版

通过修改内核代码自行集成系统程序,即封装。比如Ubuntu和centos这种。不过基础命令是完全相同的。

3.虚拟机

给虚拟的计算机硬件配置新的os,虚拟的电脑称为虚拟机。

4.虚拟机快照

通过快照将虚拟机状态保存,以后可以恢复到这个状态。 

二、基础命令

1.linux目录结构

Linux没用盘符的概念,只有一个根目录“/”,所有文件都在它下面。

路径之间的层级关系使用:/来表示。eg:/usr/bin/hello.txt

2.命令基础

命令格式:command [-options] [parameter]

-op:命令的选项,控制命令的行为细节。选项可以组合使用。

para:命令的参数,用于命令的指向目标。

Linux的命令本质是可执行二进制程序。

3.ls命令

以平铺的形式,列出目录下(默认home目录)的内容。

ls [-a -l -h] [Linux路径]

-a:all展示,包括隐藏文件。

-l:竖向展示。

-h:需要和-l搭配使用,展示文件大小单位。

ls --help:

4.目录切换命令

cd:更改工作目录,change directory。

cd [linux path]

· 不写参数默认回到home目录。

pwd:查看当前所在的工作目录,print work directory。

无选项无参数。

5.文件操作命令

touch path:创建文件。

cat path:输出文件内容。

more path:分页输出文件内容,空格翻页,q退出。

mv:移动文件/夹,改名字。mv 1 2,将1移到2,如果2不存在则将1改名为2。

cp:复制,cp oldname newname。不必在同一目录中,可以加path。

rm [-r -f] p1 p2 p3...:删文件,-r表示删除文件夹,支持多个参数。支持通配符 * 模糊匹配。

ctrl + l:清屏。

rmdir:删空目录。

mkdir:创建目录。

6.查找命令

which:查看所使用的命令程序文件存放在哪里。

find path -name "filename":搜索指定文件。filename支持通配符查找。

find path -size +- n [k, M, G]:

· +-表示大于小于。

· n表示大小。

· kmg表示大小单位。

7.grep、wc和管道符

grep [-n] "关键字" 文件路径:从文件中通过关键字过滤文件。

· -n:在结果中显示匹配的行的行号。

· 文件路径:可作为内容输入端口。

wc [-c -m -l -w] 文件路径:

· -c统计bytes数   

· -m统计字符数

· -l统计行数

· -w统计单词数

管道符:|

将左边命令的输出结果作为右边命令的参数。

8.

echo "":输出。

echo ``:将内容作为命令执行,然后输出。

重定向符:

· >,将左侧命令结果,覆盖写入右侧文件。

· >>,~,追加写入。

tail [-f -num] path:查看文件尾部内容,默认查看10行。

head:同上,查看文件首部内容。

· -f:持续跟踪。

· -num:查看倒数num行的内容。

9.vim编辑器

vim path:使用vim编辑器编辑文件。

· 命令模式:所有按键都被视为命令,以命令驱动执行不同的功能。

具体指令可以自己搜。

· 输入模式:对文件内容自由编辑。

· 底线命令模式:以冒号开始,用于文件的保存退出。

三、Linux用户和权限

1.root用户

su - 用户名。switch user。

exit:退回上一个用户。 

sudo 命令:为这条命令临时赋予root授权。但是普通用户没有权力使用sudo,我们需要配置sudo认证。

· 切换到root,执行visudo命令。在最后一行添加:username ALL=(ALL)    NOPASSWD: ALL。然后wq。

2.用户、用户组

Linux中的权限管控分为:

· 针对用户的权限。

· 针对用户组的权限。

在root用户下:

· groupadd 组名:创建用户组。

· groupdel 组名:删除。

· useradd [-g -d] username:创建用户。-g指定用户的组,不指定-g,会创建同名组并自动加入,指定-g需要组已经存在,如已存在同名组,必须使用-g。-d指定用户H0ME路径,不指定,HOME目录默认在:/home/用户名。

· userdel[-r]用户名。-r,删除用户的HOME目录,不使用-r,删除用户时,HOME目录保留。

· id [用户名],查看用户所属组。用户名,被查看的用户,如果不提供则查看自身修改用户所属组。

· usermod -aG:用户组 用户名。指定用户加入指定组。

· getent passwd:查看系统中用户。共有7份信息,分别是:

用户名:密码(x):用户ID:组ID:描述信息(无用):HOME目录:执行终端(默认bash)。

· getent group:查看所有组。组名:组认证:组id。

3.权限信息查看

ls -l,显示权限细节。

第一部分

权限分为10个位置

· r是读,w是写,x是执行。

第二部分是所属用户,第三部分是所属用户组。

4.修改权限

只能是所属用户或root有权修改。

chmod [-R] 权限 文件或文件夹

· -R表示对文件夹内所有文件应用相同的操作。

eg:chmod u=,g=,o= test.txt

· u代表用户,g代表组,o代表其他。

chown [-R] [用户] [:] [用户组] 文件/文件夹

· 只能root用户执行。

· -R同上。

四、

1.软件安装

必需root权限。

apt [-y] [install | remove | search] 软件名

· -y:自动确认安装

2.控制软件

systemctl start | stop | status | enable | disable 服务名

· disable / enable:关闭/打开 开机自启动。

服务包括:

· NetworkManager,主网络服务

· network,副网络服务

· firewalld,防火墙

· sshd,ssh

3.软链接

将文件、文件夹链接到其他位置。

类似快捷方式。

ln -s 参数1 参数2

把1链接到2。

4.日期和时区

date [-d] [+格式化字符串]

· 格式化字符串:控制显示的日期格式

· -d:进行日期计算

修改时区:

rm -f /etc/localtime

sudo ln -s /usr/share/zoneinfo/Asia/Shanghai/etc/localtime.

自动校准时间

apt -y install ntp

设置开机自启动:systemctl start ntpd, systemctl enable ntpd.

5.IP地址

ifconfig查看ip

主网卡:ens33

hostname查看主机名

hostnamectl set-hostname 主机名:修改主机名,需root。    

域名解析:

就是通过主机名找到ip地址。

先查看本机的记录,再联网去DNS服务器。

6.配置固定IP

7.网络传输

检查指定服务器是否可联通:

ping [-c num] ip或主机名

· num是检查的次数

下载网络文件:

wget [-b] url下载链接

· -b:后台下载。

发送http网络请求,用于下载文件、获取信息:

curl [-O] url

· -O用于下载文件。

8.虚拟端口

锁定计算机上具体的程序

nmap安装:apt -y install nmap

nmap ip:查看端口占用。

9.进程管理

关闭进程

kill [-9] 进程ID

· -9强制关闭。

10.主机状态监控

top

11.环境变量

以键值对方式存储。

env查看~

echo $键:获取环境变量的工作目录。

设置环境变量:

· 临时设置,export 名=值

· 永久生效

vim修改文件

 

五、other

ctrl c:停止命令。

history:查看历史命令。

ctrl r:输入内容去匹配历史命令。

ctrl a:光标移动到命令开始。

ctrl e:~结束。

ctrl <-:光标左跳一个单词。

ctrl ->:右跳。

ctrl l:清屏。

.其他

· 一个dot代表当前目录,两个dot代表上级目录。

· ~:代表home目录的路径,可以直接~ls 或者 cd~。

· man + command:查看操作文档。

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

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

相关文章

Android.mk中宏定义的高级用法剖析-安卓framework高级实战

背景&#xff1a; 前面的blog有讲解如何在Android.mk中进行控制安卓cpp源码中ifdef定义变量-干货技能分享&#xff0c;主要就是针对c代码中经常出现的#ifdef判断进行了剖析和实战 但是仅仅有上面的ifdef判断这个宏是否存在是不是对宏定义作用没有发挥到最大&#xff0c;是否可…

esp8266 at指令链接wifi时一直connect disconnest

那是你的连接wifi的名字密码有误或者热点有问题&#xff0c;看看热点是不是把设备拉入黑名单或者设置为5G或者连了校园网或者设置了最多链接设备

vAPI靶场

前言 自行去搭建vAPI靶场&#xff0c;配合postman使用 vapi1 创建用户 第一个用户 {"username": "shi","name": "shi1","course": "nihao","id": 10 } 第二个用户 {"username": "hui…

Pandas -----------------------基础知识(主要matplotlib知识)(七)

Dataframe变形 转置 T import pandas as pddata {2022: [10, 30, 15, 20], 2023: [40, 50, 36, 21]} df1 pd.DataFrame(data, index[q1, q2, q3, q4]) print("原始数据框&#xff1a;") print(df1)df2 df1.Tprint("转换后数据框&#xff1a;") print(df…

并查集——从LeetCode题海中总结常见套路

目录 并查集定义 LeetCode128.最长连续序列 先去重再sort&#xff1a; 改进去重的方法&#xff1a; 参考&#xff1a; 并查集定义 在计算机科学中&#xff0c;并查集是一种树型的数据结构&#xff0c;用于处理一些不交集&#xff08;Disjoint Sets&#xff09;的合并及查…

毕业设计选题:基于ssm+vue+uniapp的医院管理系统小程序

开发语言&#xff1a;Java框架&#xff1a;ssmuniappJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#xff1a;M…

管道内裂缝检测数据集 2000张 管道裂缝 带标注voc yol

管道内裂缝检测数据集 2000张 管道裂缝 带标注voc yol 管道内裂缝检测数据集 (Pipeline Crack Detection Dataset) 数据集概述 该数据集是一个专门用于训练和评估管道内裂缝检测模型的数据集。数据集包含2000张图像&#xff0c;每张图像都带有标注信息&#xff0c;标注格式为…

JavaScript中的高阶函数

高阶函数 所谓高阶函数&#xff0c;就是操作函数的函数&#xff0c;它接收一个或多个函数作为参数&#xff0c;并返回一个新函数&#xff1a; 来看一个mapper()函数&#xff0c;将一个数组映射到另一个使用这个函数的数组上&#xff1a; 更常见的例子&#xff0c;它接收两个函…

【Kubernetes】常见面试题汇总(五十六)

目录 123. pod 创建失败&#xff1f; 124. kube-flannel-ds-amd64-ndsf7 插件 pod 的 status 为 Init:0/1 &#xff1f; 特别说明&#xff1a; 题目 1-68 属于【Kubernetes】的常规概念题&#xff0c;即 “ 汇总&#xff08;一&#xff09;~&#xff08;二十二&#x…

5G NR物理信号

文章目录 NR 物理信号与LTE的区别上行参考信号DMRS (UL)SRSPT-RS(UL) 下行参考信号DMRS(DL)PT-RS(DL)CSI-RSPSSSSS NR 物理信号与LTE的区别 用SSS、CSI-RS和DMRS 取代了CRS信号。下行业务信道采用TM1波束赋形传输模式。基于SSB 或者CSI-RS进行RSRP和SINR测量。基于DMRS 进行共…

Golang | Leetcode Golang题解之第457题环形数组是否存在循环

题目&#xff1a; 题解&#xff1a; func circularArrayLoop(nums []int) bool {n : len(nums)next : func(cur int) int {return ((curnums[cur])%n n) % n // 保证返回值在 [0,n) 中}for i, num : range nums {if num 0 {continue}slow, fast : i, next(i)// 判断非零且方…

linux—进程控制

进程创建 使用fork函数可以在一个进程中创建一个子进程 fork函数 #include <stdio.h> #include <unistd.h> #include <sys/types.h> int main() {printf("begin: 我是一个进程&#xff0c;pid: %d,ppid:%d\n",getpid(),getppid());pid_t id fo…

Java项目实战II基于Java+Spring Boot+MySQL的宠物咖啡馆平台的设计与实现(源码+数据库+文档)

目录 一、前言 二、技术介绍 三、系统实现 四、文档参考 五、核心代码 六、源码获取 全栈码农以及毕业设计实战开发&#xff0c;CSDN平台Java领域新星创作者 一、前言 在快节奏的城市生活中&#xff0c;宠物咖啡馆作为一种结合了休闲与宠物陪伴的新型业态&#xff0c;正…

数据服务-实时同步(sersync)

1. 概述 1.之前我们通过rsync定时任务实现定时备份/同步 2. 对于NFS我们需要进行实时同步 2. Sersync原理 3. 上手指南 环境主机web0110.0.0.7(nfs客户端)nfs0110.0.0.31(rsync客户端) (nfs服务端)backup10.0.0.41(rsync服务端) 3.1 rsync服务端准备 参考: 数据服务-备份服务…

[c++高阶] 继承深度剖析

1.前言 继承 是 面向对象三大特性之一&#xff08;封装、继承、多态&#xff09;&#xff0c;所有的面向对象&#xff08;OO&#xff09;语言都具备这三个基本特征&#xff0c;封装相关概念已经在《类和对象》系列中介绍过了&#xff0c;今天主要学习的是 继承&#xff0c;即如…

RTX4060+ubuntu22.04+cuda11.8.0+cuDNN8.6.0 如何根据显卡型号和系统配置cuda和cuDNN所需的安装环境

文章目录 &#x1f315;电脑原配置&#x1f315;安装cuda和cuDNN前的环境选择&#x1f319;cuDNN与CUDA tookit和nvidia driver的对应关系&#x1f319;cuda版本选择⭐查看自己的nvidia driver版本和最大支持的CUDA版本⭐最小支持版本 &#x1f319;查看11.8.0版本的cuda和ubun…

前端学习——CSS——李白代表作品页面(3)

上传资源的地方&#xff1a;http://download.csdn.net/ 项目要求部分&#xff08;1&#xff09; &#xff1a; 支撑知识点&#xff1a; 1.CSS附加方式——外部样式表&#xff1a; --->链接式外部样式表 语法&#xff1a; 在head标签里边写link单标签&#xff0c;其中再…

认知杂谈99《打工人 警惕 画饼》

内容摘要&#xff1a; 领导心理游戏是指领导者利用甜言蜜语和虚假承诺来操控员工情感&#xff0c;使员工产生依赖和盲目信任的行为。他们常以美好未来的描绘来吸引员工&#xff0c;但这些承诺往往难以实现。 员工之所以容易陷入这种心理游戏&#xff0c;是因为他们渴望得到情感…

Golang | Leetcode Golang题解之第455题分发饼干

题目&#xff1a; 题解&#xff1a; func findContentChildren(g []int, s []int) (ans int) {sort.Ints(g)sort.Ints(s)m, n : len(g), len(s)for i, j : 0, 0; i < m && j < n; i {for j < n && g[i] > s[j] {j}if j < n {ansj}}return }

进阶岛第4关:InternVL 多模态模型部署微调实践

准备InternVL模型 我们使用InternVL2-2B模型。该模型已在share文件夹下挂载好&#xff0c;现在让我们把移动出来。 mkdir -p /root/project/joke/modelcp -r /root/share/new_models/OpenGVLab/InternVL2-2B /root/project/joke/model # 不用ln -s 准备环境 这里我们来手动配…