Linux学习笔记(一)
如果有自己的物理服务器请先查看这篇文章
文章目录
- 网卡配置
- Linux基础指令
- ls:列出目录内容
- cd(mkdir.rmkdir): 切换文件夹(创建,删除操作)
- cp:复制文件或目录
- mv:文件/文件夹移动
- cat:查看文件
- vi:文件查看编辑
- man:查看命令手册
- more: 查看文件内容
- less : 查看文件内容
- ps: 显示当前进程的状态
- 参数:
- 扩展
- top: 监控linux的系统状况
- 一、top前五条信息解释
- 二、进程信息
- df: 显示文件系统磁盘空间
- du: 显示目录空间使用情况
- 关于用户操作
- whoami:显示当前登录用户名
- useradd: 创建用户
- uesrmod: 加入用户组
- chmod: 权限管理
网卡配置
如果
ssh连接和yum都报错,可以查看这篇文章进行网卡配置(注意这个是CentOS的网络配置,一些属性不一样的话请参考其他系统的属性含义)
Linux基础指令
ls:列出目录内容
ls: 列出目录内容ls
扩展:
查询文件目录中所以的文件ls -a查询文件中的
权限,所属用户,所属组,文件大小,创建时间,文件名ls -l有时可以简写成
ll如果不能请老实写ls -l
cd(mkdir.rmkdir): 切换文件夹(创建,删除操作)
cd: 切换文件夹#cd /root/dir #cd dir cd 文件夹路径
mkdir:创建文件夹mkdir 想要创建的文件夹名称
rmkdir:删除文件夹(文件夹中内容必须是空的)rmdir 想要删除的文件夹名称
扩展
关于切换文件夹(拓展)
查询当前文件夹从根目录开始的全部路径pwd文件路径可以是
当前文件夹中的文件夹,也可以是根目录开始的全部路径
关于创建文件夹(拓展)
递归创建文件夹# mkdir -p dir1/dir2 mkdir -p 想要创建的文件夹名称关于删除文件夹(拓展)
如果你的文件夹中存在文件夹或者文件,是会删除报错,如何删除文件夹中有文件的文件夹rm -r 想要创建的文件夹名称
确认删除rm -ri 想要创建的文件夹名称
强制删除rm -rf 文件夹名称/文件名
cp:复制文件或目录
cp:复制文件# cp test.txt test02 # cp test /root/test/ cp 文件名 目标文件夹名称
cp -r:复制目录# cp -r test2 test1(意思是将test2文件夹复制到test1文件夹中) cp -r 想要复制的文件夹 想要放入的目标文件夹注意:用户使用该指令复制目录时,必须使用参数
-r或者-R
复制文件,并在目标文件已存在时进行确认
#cp -i file.txt /path/to/destination/ cp -i 文件名.扩展名 目标文件夹路径
拓展
touch: 需要复制文件,肯定要有文件,所以下面是创建文件(txt文件为例)# touch test.txt touch 文件名称.扩展名linux cp命令的其他指令可以查看这里
mv:文件/文件夹移动
mv:文件/文件夹移动# mv test3 ../(将test3目录移动到上一级目录) # mv test3 /root/dir1(将test3目录移动到指定目录) # mv test3/test1.txt ./(将test3目录中的test1.txt文件移动到当前目录) mv 文件夹(文件) 目标文件夹
拓展
将一个文件夹下的所有文件移动到指定文件夹mv 源文件夹/* 目标文件夹linux mv命令的其他指令可以查看这里
cat:查看文件
cat:查看文件#cat file.txt cat 想要查看目标文件.扩展名注意:
cat是查看文件中的文件内容,并不会参与编辑, 所以比如如果cat file.txt,但里面什么都没写,就不会显示内容,注意这并不是查询失败,而是没有内容所以显示什么都没看到
一般我们使用cat指令都是用来查看的, 详情请看
vi:文件查看编辑
vi: 文件查看编辑vi 文件名.扩展名这是linux自带的查看编辑
vim: 文件查看编辑
这是也是文件查看器vim 文件名.扩展名如果你的控制台报
bash:vim:Not Found(bash:vim:未找到命令)错,则你需要执行以下操作rpm -qa |grep vim如果这条指令执行不了
yum -y install vim*操作方式和
vi一致。
常用的有ESC键推出编辑;i键进入编辑;:q退出文件;:q!强制退出;:wq:退出并保存;:wq!强制退出并保存
man:查看命令手册
man:查看命令手册#man vi man linux命令
q键退出查看
more: 查看文件内容
逐页显示 文件 文档内容
more -s 文件从第 n 行开始显示文件文档内容。
#more +20 test.txt (从20行开始显示) more +n 文件详细指令请看
less : 查看文件内容
less与more类似,less 可以随意浏览文件,支持翻页和搜索,支持向上翻页和向下翻页。
查看文件# less test.txt less 文件名.文件扩展名ps查看进程信息并通过less分页显示
ps -ef |less详细指令请看
ps: 显示当前进程的状态
Linux ps (英文全拼:process status)命令用于显示当前进程的状态,类似于 windows 的任务管理器。
ps -ef | grep 进程关键字打比方查询mysql的运行状态
ps -ef | grep mysql

从左到右看一次是行程拥有者,PID,占用的 CPU 使用率,占用的记忆体使用率,占用的虚拟记忆体大小,占用的记忆体大小,终端的次要装置号码 (minor device number of tty),该行程的状态:,行程开始时间,执行的时间,所执行的指令
显示进程信息
ps -A

显示指定用户信息
#ps -u root ps -u 用户名

显示所有进程信息,连同命令行
ps -ef

参数:
ps 的参数非常多, 在此仅列出几个常用的参数并大略介绍含义
- -A 列出所有的进程
- -w 显示加宽可以显示较多的资讯
- -au 显示较详细的资讯
- -aux 显示所有包含其他使用者的进程
- au(x) 输出格式 :
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
USER: 行程拥有者PID: pid%CPU: 占用的 CPU 使用率%MEM: 占用的记忆体使用率VSZ: 占用的虚拟记忆体大小RSS: 占用的记忆体大小TTY: 终端的次要装置号码 (minor device number of tty)STAT: 该行程的状态:D: 无法中断的休眠状态 (通常 IO 的进程)R: 正在执行中S: 静止状态T: 暂停执行Z: 不存在但暂时无法消除W: 没有足够的记忆体分页可分配<: 高优先序的行程N: 低优先序的行程L: 有记忆体分页分配并锁在记忆体内 (实时系统或捱A I/O)
START: 行程开始时间TIME: 执行的时间COMMAND:所执行的指令
详细指令请看
扩展
关闭进程
kill -9 PID
top: 监控linux的系统状况
top命令经常用来监控linux的系统状况,是常用的性能分析工具,能够实时显示系统中各个进程的资源占用情况。
top

一、top前五条信息解释
top - 14:49:28 up 1:33, 1 user, load average: 0.00, 0.00, 0.00
| 内容 | 含义 |
|---|---|
| 14:49:28 | 表示当前时间 |
| up 1:33 | 系统远行时间,格式为时:分 |
| 1 user | 当前登陆用户数 |
| load average: 0.00, 0.00, 0.00 | 系统负载,即任务队列的平均长度。 三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值 |
Tasks: 80 total, 2 running, 78 sleeping, 0 stopped, 0 zombie
| 内容 | 含义 |
|---|---|
| Tasks: 80 total | 进程总数 |
| 2 running | 正在运行的进程数 |
| 78 sleeping | 睡眠的进程数 |
| 0 stopped | 停止的进程数 |
| 0 zombie | 僵尸进程数 |
Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
| 内容 | 含义 |
|---|---|
| 0.0%us | 用户空间占用CPU百分比 |
| 0.0%sy | 内核空间占用CPU百分比 |
| 0.0%ni | 用户进程空间内改变过优先级的进程占用CPU百分比 |
| 100.0%id | 空闲CPU百分比 |
| 0.0%wa | 等待输入输出的CPU时间百分比 |
| 0.0%hi | 硬中断(Hardware IRQ)占用CPU的百分比 |
| 0.0%si | 软中断(Software Interrupts)占用CPU的百分比 |
| 0.0 st | 用于有虚拟cpu的情况,用来指示被虚拟机偷掉的cpu时间 |
Mem: 1922488k total, 406936k used, 1515552k free, 11940k buffers
| 内容 | 含义 |
|---|---|
| 1922488k total | 物理内存总量 |
| 406936k used | 使用的物理内存总量 |
| 1515552k free | 空闲内存总量 |
| 11940k buffers | 用作内核缓存的内存量 |
Swap: 835576k total, 0k used, 835576k free, 111596k cached
| 内容 | 含义 |
|---|---|
| 835576k total | 交换区总量 |
| 0k used | 使用的交换区总量 |
| 835576k free | 空闲交换区总量 |
| 111596k cached | 缓冲的交换区总量 |
二、进程信息
| 列名 | 含义 |
|---|---|
| PID | 进程id |
| USER | 进程所有者的用户名 |
| PR | 优先级 |
| NI | nice值。负值表示高优先级,正值表示低优先级 |
| VIRT | 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES |
| RES | 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA |
| SHR | 共享内存大小,单位kb |
| S | 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程 |
| %CPU | 上次更新到现在的CPU时间占用百分比 |
| %MEM | 进程使用的物理内存百分比 |
| TIME+ | 进程使用的CPU时间总计,单位1/100秒 |
| COMMAND | 命令名/命令行 |
Ctrl + c退出实时查看
详细指令请看
df: 显示文件系统磁盘空间
df

详细指令请看
du: 显示目录空间使用情况
方便阅读的格式显示的目标目录所占空间情况
# du -h test1 du -h dirName

详细指令请看
关于用户操作
whoami:显示当前登录用户名
whoami

useradd: 创建用户
#useradd username
useradd 用户名
为添加的用户指定相应的用户组
#useradd -g root tt useradd -g 用户组 用户
创建一个系统用户
#useradd -r tt useradd -r 用户名
为新添加的用户指定home目录
# useradd -d /home/myd tt useradd -d 目标目录 用户名
建立用户且制定ID
# useradd caojh -u 544 useradd 用户名 -u 用户id详细指令请看
拓展
查看所有用户ls /home
查看用户名和密码
用户名在/etc/passwd这个文件中;cat /etc.passwd
密码在/etc/shadow中cat /etc/shadow如果没有访问权限,请重新启动服务器,以root用户登录
为了安全,系统将明文密码进行了加密。接下来我们看看系统使用了什么加密方式:authconfig --test | grep hashing
Linux实用命令authconfig和authconfig-tui(备忘)
- 查看 autoconf、automake 是否已安装
rpm -qa|grep autoconf rpm -qa|grep automake
2. 查看 autoconf、automake 对应的包yum whatprovides autoconf automake
3. 安装#按照第2部查到的源来写,不一定一定要是是这个 yum -y install autoconf-2.69-30.oe1.noarch yum -y install automake-1.16.1-6.oe1.noarch其实我们要安装的并不是
autoconf,这只是介绍了另一种安装方式
安装authconfigsudo yum install authconfig --skip-broken如果安装不上也没关系,因为这只是1查询系统加密方式,一般会用
SHA256加密方式
因为linux系统是单项加密所以要么暴力破解要么破解不了,所以忘记密码的小伙伴请重新设置密码passwd 用户名
扩展
su:切换用户# su chen(管理员切换成普通用户) #sudo su root(普通用户切换成管理员) su 用户名用户名 is not in the sudoers file.
因为普通用户没有像root一样的运行权限,所以,凡是指令都要先使用sudo来执行,执行之后需要输入密码,但是出现了用户名 is not in the sudoers file.问题,解决办法vi /etc/sudoers增加配置, 在打开的配置文件中,找到root ALL=(ALL) ALL, 在下面添加一行
#其中xxx是你要加入的用户名称 xxx ALL=(ALL) ALL
su:拒绝权限
查看日志:tail -f /var/log/secure|grep su:
以root为例子vi /etc/pam.d/su注释这段
auth required pam_wheel.so use_uid
查看
当前如果是是普通用户时,切换回root用户输入用户密码即可sudo su root如果没有访问权限,请重新启动服务器,以root用户登录
passwd:设置密码passwd 用户名详细指令请看
uesrmod: 加入用户组
首先要确认你的Linux有哪些组
cat /etc/group
root是用户组 ,x是用户组指令,1002是用户组id
注意: 创建一个用户后,linux自动会创建相关用户名的组名,比如我创建了一个没有用户的chen用户,与之对应的linux会帮我们一起创建一个不存在的chen的组名
实例useradd chen su chen sudo cd test如果
非root用户使用sudo cd 目录切换不了目录(首先使用sudo su root切换到root下)which cd如果出现
/usr/bin/cd是正确的
那就要看文件夹的权限了#ll /root/testls -l 查看想要的文件夹(文件)
查看关于关键字的组名
# cat /etc/group|grep chen cat /etc/group|grep 组名
chmod: 权限管理
#chmod 777 fileName
chmod 777 文件夹名(文件)
这个是对全部人进行开放
详细指令请看
相关文章:
Linux学习笔记(一)
如果有自己的物理服务器请先查看这篇文章 文章目录 网卡配置Linux基础指令ls:列出目录内容cd(mkdir.rmkdir): 切换文件夹(创建,删除操作)cp:复制文件或目录mv:文件/文件夹移动cat:查看文件vi:文件查看编辑man:查看命令手册more: 查看文件内容less : 查看文件内容 ps: 显示当前进…...
Python 爬虫 教程
python爬虫框架:Scrapyd,Feapder,Gerapy 参考文章: python爬虫工程师,如何从零开始部署ScrapydFeapderGerapy? - 知乎 神器!五分钟完成大型爬虫项目 - 知乎 爬虫框架-feapder - 知乎 scrap…...
uniapp原生插件 - android原生插件打包流程 ( 避坑指南一)
【彩带- 避坑知识点】: 当时开发中安卓插件打包成功后,uniapp引用插件aar,用云打包 ,总是提示不包含插件。原因是因为module的androidManifest.xml文件没有注册activity。 这一步 很重要,一定要注册。 --------------------------…...
搭建maven私服
maven maven简介 什么是maven? Maven这个单词来自于意第绪语(犹太语),意为知识的积累。 Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。 Maven 除了以…...
EST-100身份证社保卡签批屏按捺终端PC版web版本http协议接口文档,支持web网页开发对接使用
<!DOCTYPE html><html lang"zh-CN"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width,initial-scale1.0"><title>演示DEMO</title><script type"text/…...
基于SpringBoot的毕业论文管理系统
文章目录 项目介绍主要功能截图:部分代码展示设计总结项目获取方式🍅 作者主页:超级无敌暴龙战士塔塔开 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 🍅文末获取源码联系🍅 项目介绍 基于SpringBoot的毕业论文管理系统,java…...
iToF人脸识别
iToF(间接飞行时间)是一种测量光飞行时间的技术,主要应用于人脸识别。 iToF人脸识别技术在哪些场景下会用到 iToF人脸识别技术可以应用于许多场景,以下是一些常见的应用场景: 平安城市:在城市监控系统中,iToF人脸识别技术可以用于实时监控、目标检测和识别,以及异常行为…...
Django开发3
Django开发3 Django开发编辑用户9.靓号管理9.1 表结构9.2 靓号列表9.3 新建靓号9.4 编辑靓号9.5 搜索手机号9.6 分页 10.时间插件11.ModelForm和BootStrap操作 各位小伙伴想要博客相关资料的话关注公众号:chuanyeTry即可领取相关资料! Django开发 部门管…...
MS2358:96KHz、24bit 音频 ADC
产品简述 MS2358 是带有采样速率 8kHz-96kHz 的立体声音频模数 转换器,适合于面向消费者的专业音频系统。 MS2358 通过使用增强型双位 Δ - ∑ 技术来实现其高精度 的特点。 MS2358 支持单端的模拟输入,所以不需要外部器 件,非常适…...
【Android12】Android Framework系列---tombstone墓碑生成机制
tombstone墓碑生成机制 Android中程序在运行时会遇到各种各样的问题,相应的就会产生各种异常信号,比如常见的异常信号 Singal 11:Segmentation fault表示无效的地址进行了操作,比如内存越界、空指针调用等。 Android中在进程(主要…...
中间件系列 - Redis入门到实战(原理篇)
前言 学习视频: 黑马程序员Redis入门到实战教程,深度透析redis底层原理redis分布式锁企业解决方案黑马点评实战项目 中间件系列 - Redis入门到实战 本内容仅用于个人学习笔记,如有侵扰,联系删除 学习目标 Redis数据结构Redis网…...
P2249 【深基13.例1】查找
P2249 【深基13.例1】查找 P2249 【深基13.例1】查找 题意 输入n 个不超过10的9次方的单调不减的(就是后面的数字不小于前面的数字)非负整数a1,a2,a3…然后进行 m 次询问。对于每次询问,给出一个整数q,要…...
linux常用shell脚本
查看系统当前进程连接数 netstat -an | grep ESTABLISHED | wc -l 如何在/usr目录下找出大小超过10MB的文件? find /usr -type f -size 10240k 添加一条到192.168.3.0/24的路由,网关为192.168.1.254? route add -net 192.168.3.0/24 netmask 255.2…...
Rust学习笔记005:结构体 struct
在 Rust 中,struct 是一种用于创建自定义数据类型的关键字,它允许你定义和组织数据的结构。struct 可以包含多个不同类型的字段(fields),每个字段都有一个名称和一个类型。 定义结构体 下面是一个简单的例子ÿ…...
maven中dependencyManagement标签
简介 dependencyManagement正如其名,用于项目依赖的统一管理。 在父项目中的pom.xml文件中加入dependencyManagement标签即可完成依赖版本的声明。在声明完成后,子项目(module)中引用相同的依赖时可以不指定version标签自动引入…...
SparkStreaming与Kafka整合
1.3 SparkStreaming与Kafka整合 1.3.1 整合简述 kafka是做消息的缓存,数据和业务隔离操作的消息队列,而sparkstreaming是一款准实时流式计算框架,所以二者的整合,是大势所趋。 二者的整合,有主要的两大版本。 kaf…...
openwrt源码编译
下载openwrt源码 git clone https://github.com/openwrt/chaos_calmer.git // 官方下载地址 当前我们基于15.05版本开发,如果开发者想用最新的OpenWRT系统,可以下载 https://github.com/openwrt/openwrt.git git clone https://github.com/Ying-Yun/o…...
【Leetcode Sheet】Weekly Practice 22
Leetcode Test 1349 参加考试的最大学生数(12.26) 给你一个 m * n 的矩阵 seats 表示教室中的座位分布。如果座位是坏的(不可用),就用 # 表示;否则,用 . 表示。 学生可以看到左侧、右侧、左上、右上这四个方向上紧邻…...
ROS TF坐标变换 - 静态坐标变换
目录 一、静态坐标变换(C实现)二、静态坐标变换(Python实现) 如前文所属,ROS通过广播的形式告知各模块的位姿关系,接下来详述这一机制的代码实现。 模块间的位置关系有两种类型,一种是相对固定…...
香橙派5plus从ssd启动Ubuntu
官方接口图 我实际会用到的就几个接口,背面的话就一个M.2固态的位置: 其中WIFI模块的接口应该也可以插2230的固态,不过是pcie2.0的速度,背面的接口则是pcie3.0*4的速度,差距还是挺大的。 开始安装系统 准备工作 一张…...
铭豹扩展坞 USB转网口 突然无法识别解决方法
当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…...
深度学习在微纳光子学中的应用
深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向: 逆向设计 通过神经网络快速预测微纳结构的光学响应,替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...
云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地
借阿里云中企出海大会的东风,以**「云启出海,智联未来|打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办,现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...
Debian系统简介
目录 Debian系统介绍 Debian版本介绍 Debian软件源介绍 软件包管理工具dpkg dpkg核心指令详解 安装软件包 卸载软件包 查询软件包状态 验证软件包完整性 手动处理依赖关系 dpkg vs apt Debian系统介绍 Debian 和 Ubuntu 都是基于 Debian内核 的 Linux 发行版ÿ…...
PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建
制造业采购供应链管理是企业运营的核心环节,供应链协同管理在供应链上下游企业之间建立紧密的合作关系,通过信息共享、资源整合、业务协同等方式,实现供应链的全面管理和优化,提高供应链的效率和透明度,降低供应链的成…...
基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容
基于 UniApp + WebSocket实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...
【机器视觉】单目测距——运动结构恢复
ps:图是随便找的,为了凑个封面 前言 在前面对光流法进行进一步改进,希望将2D光流推广至3D场景流时,发现2D转3D过程中存在尺度歧义问题,需要补全摄像头拍摄图像中缺失的深度信息,否则解空间不收敛…...
什么是库存周转?如何用进销存系统提高库存周转率?
你可能听说过这样一句话: “利润不是赚出来的,是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业,很多企业看着销售不错,账上却没钱、利润也不见了,一翻库存才发现: 一堆卖不动的旧货…...
MVC 数据库
MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...
在Ubuntu中设置开机自动运行(sudo)指令的指南
在Ubuntu系统中,有时需要在系统启动时自动执行某些命令,特别是需要 sudo权限的指令。为了实现这一功能,可以使用多种方法,包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法,并提供…...









