Linux操作系统
文章平均质量分 63
我什么都布吉岛
Keep writing,Keep thinking!
展开
-
不同系统下的文件层级符号小结
Windows文件层级用反斜杠表示,而Linux、Unix则使用斜杠。同样的事物为什么有两种不同的表示方法?答:因为早期Windows的DOS是用表示参数,为了区分,就采用了反斜杠表示文件。如今的Window文件地址栏可以同时混用和,他会将其转换成,应用间可能还是存在差异,如cmd.exe只支持而powershell则支持两者。Linux从一开始就是用作为系统层级符号,使用 和表示命令行参数。操作系统我们容易获取到文件路径,通常可以在:Linux、Unix下,复制即可粘贴到程序中使用,层级符号与编程语言一致原创 2022-06-28 16:16:27 · 1613 阅读 · 0 评论 -
如何在Ubuntu创建一个桌面快捷方式
在Windows中安装大多数软件都会自动创建快捷方式,方便应用快速启动,而不是大费周折地去安装目录中寻找启动程序了;就算用户不小心删除了快捷方式或者压根没有创建快捷方式,解决的方法都可以直接到那个目录下将应用程序发送到桌面快捷方式。Ubuntu也一样,软件有可能根本不创建一个快捷方式,本文的目的就是为了创建一个任意程序的快捷方式。一、Desktop文件位置及其规则说明/usr/share/applications下创建桌面配置文件配置文件是以.desktop结尾的文件,其第一行为:[Desktop原创 2021-08-27 10:55:56 · 7599 阅读 · 1 评论 -
du和df
df(disk free) 是一个非常棒的命令,将会告诉你在所有已挂载的磁盘的磁盘大小、空间。附带的-h选项让这个大小更加符合人类阅读。du(disk usage)最适合用在需要查看目录和子目录大小的场合。-sh选项是他们的常用搭配,-s(summarize)汇总,-h(human-readable)人类可读的。df du的区别,df命令提供了一个全面的数据,用于说明整个文件系统上使用了多少空间。 du命令是给定目录或子目录的更准确的快照。https://www.redhat.com/sysadmi原创 2021-08-11 09:48:26 · 105 阅读 · 0 评论 -
Linux内核态和用户态
操作系统的核心部分是一组对系统硬件及逆行控制的底层接口(设备驱动文件),访问设备或者文件的底层函数会出现用户态和核心态之间的切换,为了提高运行效率,我们应该减少对系统的调用。本文首先对用户需要减少系统调用的原因进行说明,然后对系统调用的API进行简单的介绍。一、为什么系统调用应该尽量减少为什么系统调用需要尽可能的减少调用?系统调用会影响性能硬件的读写限制系统调用的时间比函数调用更加耗费时间。很多程序开始时运行于用户态,但在执行的过程中,一些操作需要在内核权限下才能执行,这就涉及到一个从用户态切原创 2021-08-09 22:36:30 · 367 阅读 · 0 评论 -
操作系统内核概念
操作系统内核(Kernal)是一组应用软件,这个软件能够控制所有硬件及计算机活动。如硬盘访问、网卡传输和键盘开始工作等,开机后内核程序将会常驻受保护的内存中。硬件由内核管理后,操作系统将会提供一组系统调用接口,帮助完成诸如显示、读写设备等基本操作,架构是计算机硬件的组织形式,架构不同则内核也不同(Arm架构和x86架构)。操作系统在计算机结构中的位置如下:红色部分则是操作系统。一个应用程序都是通过调用操作系统相关的接口完成工作的,所以只能在当前操作系统上运行,这也是为什么你在Windows编写的程序不能原创 2021-04-04 21:22:43 · 8533 阅读 · 0 评论 -
执行脚本的区别
主要分为三种:方式是否需要可执行是否启动子shell运行source f.sh否否. f.sh否否sh f.sh否是bash f.sh否是./sh是是source和.等效,效果相当于你直接在当前shell依次键入文件中的命令,只有这两个方式的export才能正确输出到当前shell,其他都是在子进程的eport的环境变量不会传回父shell...原创 2021-04-01 11:08:56 · 159 阅读 · 0 评论 -
mount挂载文件系统
简单来说就是挂载一个外部文件系统,使用选项-t可以显示告知系统要挂载得文件类型,原创 2021-03-30 17:28:51 · 599 阅读 · 0 评论 -
DISPLAY和X Window System
一、X Window SystemX Window System采用C/S结构,但和我们常见的C/S不同。常见的C/S结构中,称提供服务的一方为server,即服务器端(如HTTP服务,FTP服务等),使用服务的称为client,即客户端。但在X Window System中,client是执行程序的一方,在上面执行各种X程序,而server则是负责显示client运行程序的窗口的一方。X Window System的组成可以分为X server,X client,X protocol三部分。X ser原创 2021-03-30 13:54:39 · 788 阅读 · 0 评论 -
关于硬件的tips
查看Linux系统内核及及其的架构 uname -aLinux xiaoming-virtual-machine 4.15.0-136-generic #140~16.04.1-Ubuntu SMP Wed Feb 3 18:51:03 UTC 2021 x86_64 x86_64 x86_64 GNU/LinuxLinux内核是4.15.9-135-generic,发行版号是Ubuntu16.04,架构是X86_54查看Linux系统版本详细信息Linux version 4.15.0-136-原创 2021-03-01 13:22:18 · 196 阅读 · 2 评论 -
Ubuntu的网络设置
GUI网络配置文件在/etc/NetworkManager/system-connections;Ubuntu,系统网络配置在/etc/network,可以按照格式在interface文件按照要求进行配置,为了方便管理,我们常常在interface文件中添加source /etc/network/interfaces.d/*然后再interface.d以文件形式形式配置。iwconfig查看主机所有网卡。ethtool eth0 查看网卡性能参数ifconfig eth0 仅查看eth0参数原创 2021-02-24 21:57:27 · 1017 阅读 · 0 评论 -
man说明书如何查看
什么是man?man是系统的用户手册。你可以在shell中直接敲入man XXX,得到关于这个命令、工具和函数的说明。没错,你可以查询Linux下函数的用法,如pthread_create、open、socket等系统相关API,非常方便和全面,唯一一个不友好的地方是全英文,需要我们好好学学英语。手册所属类别如果有对应的手册存在,那么将会直接进入浏览界面。每一个手册都有对应的数字说明其所属的类别。数字含义1Executable programs or shell command原创 2021-02-17 18:26:46 · 781 阅读 · 0 评论 -
sed字符串处理工具
sed不仅能够分析Standard input,还能对给定数据进行替换、删除、新增和选取特定行的操作。其基本语法是:sed [-nefr] [动作]-n 安静模式,只输出sed特殊处理行-e 直接在sed的动作进行编辑-f sed动作写在一个文件中-r sed默认正则表达式变成扩展正则表达式-i 直接修改文件读取内容,而不是标准输出动作:[n1[,n2]]functionn1,n2进行动作的行数范围,如10,20则表示从10到20行进行。函数可以是:a 下一行新增c 行替换原创 2021-02-17 11:10:58 · 174 阅读 · 0 评论 -
grep打印符合某个特征的行
简介通用正则表达式解析器(grep,General Regular Expression Parser),打印符合某个特征的行。类似的命令还有egrep, fgrep, rgrep,这里只简单介绍一下常用的grep,语法:grep [option] PATTERN [FILES]一共有三个参数,分别是选项、模式和文件。选项选项含义-c输出匹配行数目,而不是输出匹配的行-E启动扩展表达式-h取消每个输出行前缀,即匹配查询模式的文件名-i忽略大小写原创 2021-02-09 18:59:58 · 753 阅读 · 0 评论 -
Linux文件权限
一、文件为什么需要权限?保证系统安全。防止阿猫阿狗都可以使用root权限重启、删除用户和文件等操作。团队开发软件和数据共享。这里我想从系统安全和隐私角度说一下文件权限的重要性。虽然我们都在一台主机上工作,但是我不希望任何人看到我的日记之类的文件(私人权限);在团队开发过程中,隶属于一个团队的开发人员,可以访问、使用具有团队权限的文件(小组权限);此时有个来自其他小组的人员,这时候在阐述的就是非小组成员权限(其他权限)。当然Linux中有更加专业的名称,依次是所有者权限、小组其他人权限和其他组成员权原创 2021-02-08 22:08:12 · 194 阅读 · 0 评论 -
Linux目录配置
Linux目录配置FHS标准(File System Hierarchy Standard)出现的主要目的是为了让用户了解到已经安装的软件通常被放置在哪个目录下,希望独立软件开发商、操作系统制作者以及想要维护系统的用户,都能够遵循FHS标准。简单来说,就是规范Linux每个目录应该放何种数据。通常来说,文件可以按照以下标准界定其性质:可分享的不可分享的不变的/usr(软件放置处)/etc(配置文件)不变的/opt(第三方软件)/boot(开机与内核文件)可变动的原创 2021-02-06 11:19:43 · 137 阅读 · 0 评论 -
find locate通配符
find和locate指令都会使用到pattern进行文件的比对查找,shell pattern是一个拥有特殊字符的字符串,通常称为通配符(wildcards)或者元字符(metacharacters).必须使用单引号或者双引号防止shell扩展含义。* 没有或者任意个字符?只能是一个字符[string] 指定范围内的一个字符。如[a-z0-9_] 表示的就是一个字符可能是小写字母、数字或下划线 ,最前面加上! 或者^表示取反。(这个叫做character classes)\ 去除转义,可以用在c原创 2021-02-03 14:10:44 · 272 阅读 · 0 评论 -
Ubuntu桌面环境异常
http://www.jmpcrash.com/?p=1142现象:Ubuntu docker栏目消失、搜索用不了登陆界面过于简化。error:GDBus.Error:org.gtk.GDBus.UnmappedGError.Quark._g_2dfile2_derror_2dquark.Code17:Cannot open dconf database: invalid gvdb header原创 2021-01-05 09:53:49 · 917 阅读 · 3 评论 -
包管理器和apt
一、什么是包(package)一个“ 包(package)”(或“软件包”)通常指的是一个应用程序,它可以是一个 GUI 应用程序、命令行工具或(其他软件程序需要的)软件库。包本质上是一个存档文件,包含二进制可执行文件、配置文件,有时还包含依赖关系的信息。在旧时代, 软件曾经是从它的源代码安装的 。你会参考一个文件(通常命名为 README),看看它需要什么软件组件、二进制文件的位置。它通常包括一个配置脚本或 Makefile。你必须自己编译该软件或自己处理所有的依赖关系(有些软件需要安装其他软件)。原创 2020-12-27 14:54:39 · 522 阅读 · 0 评论 -
换行符CR、LF和CRLF
换行符的名字CR:Carriage Return,对应ASCII中转义字符\r,表示回车LF:Linefeed,对应ASCII中转义字符\n,表示换行CRLF:Carriage Return & Linefeed,\r\n,表示回车并换行用Notepad++查看Windows下的换行符使用\r\n,如下:Unix下的换行符用\n,如下:Mac下的换行符用\r,如下:正则匹配的注意事项一般文档都说,点号可以匹配"任意字符",点号确实可以匹配"任意字符",常见的数字、字母、各种符原创 2020-11-16 13:53:04 · 2762 阅读 · 0 评论 -
打开一个shell将会发生什么?
查看当前环境变量env or export除了环境变量外,还有bash接口和自定变量,注意子进程仅会继承父进程的环境变量,自定义并不继承。要继承需要手动输入export 变量名称被export后的变量被称之为“环境变量”1.5 命令别名alias lm='ls -l|more'alias rm ='rm -i'查看当前别名:alias1.6 login shell一个需要输入完成完整的登陆命令的一个shell。login shell需要读取:/etc/profile 系统原创 2020-11-02 15:45:15 · 296 阅读 · 0 评论 -
ECS Linux解决SSH会话连接超时问题
用SSH客户端(我使用的Xshell)连接linux服务器时,经常会出现与服务器会话连接中断现象,造成这个问题的原因便是SSH服务有自己独特的会话连接机制。解决方案:设置服务器向SSH客户端连接会话发送频率和时间 #vi /etc/ssh/sshd_config,添加如下两行 ClientAliveInterval 60 ClientAliveCountMax 86400 --这里是24小时注:ClientAliveInterval选项定义了每隔多少秒给SSH客户端发送一次信转载 2020-09-24 22:55:48 · 322 阅读 · 0 评论 -
每天学点Linux(一)系统进程
今天的主角是我们系统的进程。本文主要参考的文章如下:Linux进程作业的查看和杀死 Linux中ctrl+z 、ctrl+c、 ctrl+d区别 Linux操作系统下运行命令时Ctrl+C和Ctrl+Z的作用及恢复今天我们要学习的是“进程”,学习的目的是为了查看、管理进程,以及进程的状态。掌握一些管理基本的指令。进程是什么?进程(process)是对某个数据集合进行的一次活...原创 2018-06-25 22:30:04 · 217 阅读 · 0 评论 -
每天学点Linux(二)Linux下VIM的使用
If do any of the following, you probably want to look into Vim: - System administration - Programming - Working with HTML, LaTeX, or other markup languages - Heavy editing of plain text filesvi/...原创 2018-06-27 20:36:14 · 202 阅读 · 0 评论 -
每天学点Linux(三)touch命令
touch命令有两个功能: - 文件时间标签更新为系统时间,内容不变 - 创建新的空文件。语法:touch(option)(parameter) option meaning -a 或–time=atime或–time=access或–time=use 只更改存取时间 -c 或–no-create 不建立任何文件 -d &l...原创 2018-06-29 16:29:24 · 247 阅读 · 0 评论 -
每天学点Linux (四) cd命令
今天学习的指令是cd指令。cd指令可以说是最常见的一个指令了:cd (option)(parameter)option 选项不展开,感兴趣自己去看。parameter 路径名。对于一些常见的目录有一些简单的符号来表示cd ~ #返回家目录cd - #返回上一次目录cd .. #返回上一级目录cd ../.. #返回上上级目录cd / #...原创 2018-06-30 15:36:29 · 193 阅读 · 0 评论 -
每天学点Linux(五)cat命令
周日日常放假。今天来学习一个新的命令cat指令。参考文章: [1]使用cat与重定向进行文件内容的写入与添加 [2]cat命令 [3][man cat]cat file1打印文件一的内容到标准输出cat file1 file2 > file3将会按顺序打印文件一和文件二的内容到文件三,如果file3存在则会被清空。cat file1 - file2 - fi...原创 2018-07-02 11:08:45 · 252 阅读 · 0 评论 -
每天学点Linux(六)cp命令
[1]linux cp命令使用cp命令格式cp(option)(parameter) option meaning -a 此参数的效果和同时指定”-dpR”参数相同(不知道什么意思) -d 当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录 -f 强行复制文件或目录,不论目标文件或目录是否已...原创 2018-07-04 08:37:57 · 415 阅读 · 0 评论 -
每天学点Linux(八)软链接和硬链接
本部分参考的内容来源于: 理解 Linux 的硬链接与软链接Linux 的文件与目录==UNIX/Linux 系统中除进程之外的一切皆是文件==。文件分为两个部分:用户数据 (user data) 与元数据 (metadata)。用户数据存储在文件数据块 (data block)中;而元数据则是文件的附加属性,如文件大小、创建时间、所有者等信息。在 Linux 中,元数据中的 =...原创 2018-07-04 11:28:34 · 458 阅读 · 2 评论 -
每天学点Linux(九)计算器、日期和日历
本文是对下文的重新整理:每天学一点linux(一)Linux小数数值计算之bc命令计算器bc是一个支持任意精度的交互式可执行语句的语言(默认的保存0位小数,通过scale设置位数)。它可以做:简单的四则运算、指数余数三角运算对数运算根号进制转换其的格式为:bc(选项)(参数)选项-l加载数学库,常见的对数、三角、指数等运算,默认此时scale为20。函数含...原创 2019-05-07 11:01:57 · 363 阅读 · 0 评论 -
每天学点Linux(十)查找文件
参考资料: [1]Linux中文件的五个查找命令总结 [2]type命令 [3]whereis命令在Windows下可以通过GUI界面直接输入一些关键字查找文件,那么Linux下如何查找某个文件?which:在环境变量中寻找系统命令的位置,返回第一个结果type:用来显示指定命令的类型,判断给出的指令是内部指令还是外部指令whereis:程序名的搜索,而且只搜索二进制文件(参数...原创 2018-07-05 15:02:23 · 282 阅读 · 3 评论 -
每天学点Linux(十)ls命令
参考资料: [1]每天学点Linux(八)软连接和硬链接 [2]Linux ls 命令的 20 个实用范例今天学习的指令是我们最最最常见的一种指令ls,说明部分参考的是man手册。简述ls (LiSt directory contents)列举目录内容。格式ls [option]...[file]...man手册给出的格式通常都是上面这个形式,Linux下一切皆...原创 2018-07-06 20:37:30 · 282 阅读 · 0 评论 -
每天学点Linux(十一)Linux下VIM的使用
本文要解决的问题是:如何让vim用得更加顺手主要参考的是《鸟哥的Linux私房菜》定位G 文件末gg 文件头nG 定位在文件第n行N 相对当前位置N行选择恰当的编辑位置编程的时候,有时候要在某一行的下一行开始编辑。按下i,在光标前开始编辑。感觉像是某个单词漏写了,这样比较方便。编辑位置选择恰当,可以减少操作。操作含义i光标前I第一个非空白字符...原创 2019-01-21 00:06:56 · 138 阅读 · 0 评论 -
每天学点Linux(十二).bashrc文件
参考文章:https://linux.cn/article-9298-1.html目的利用.bashrc文件存储并加载你的终端配置和环境变量以提高在终端中的工作效率什么是.bashrc?.bashrc是一个ASCII文本文件。它位于home目录下(~/.bashrc), bash在每次启动时都会加载 .bashrc 文件的内容。为什么说.bashrc可以提高工作效率?.bashrc...原创 2019-01-21 10:44:51 · 6228 阅读 · 0 评论 -
ps -aux和ps -ef区别
ps命令是Process Status。-aux和-ef基本没有区别,都是"显示全部进程",常常和grep(Globally Regular Expression Print,一种文本搜索工具)一起结合使用:ps -ef|grep 进程名(可以是正则表达式)ps -aux|grep 进程名(等效上面指令)获取到进程ID号后,使用kill结束掉它。注:在使用 kill -9 前,应该先使用 kill -15,给目标进程一个清理善后工作的机会。如果没有,可能会留下一些不完整的文件或状态,从而影响服务的原创 2020-08-29 10:26:51 · 1238 阅读 · 0 评论 -
进程间通信(一)简介
简单的介绍了Linux系统进程间通信方式,进程之间的用户控件和内核空间是不同享的,所有才需要各种通信方式。原创 2019-09-11 15:55:37 · 183 阅读 · 0 评论 -
进程间通信(三)无名管道
管道是连接两个进程间的工具,如进程A数据通过管道流入进程B,B通过管道也可以流入进程A。一、借助shell的管道Linux系统下,经常会使用到这样一种管道:cmd1|cmd2管道是一个暂存结果的一个空间,cmd1的标准输出或标准错误输出放进管道中,管道进行结果的转发,以标准输出的形式输出至下一个命令的cmd2标准输入。一个比较简单的例子就是使用popen#include <st...原创 2019-09-16 14:25:59 · 259 阅读 · 0 评论 -
POSIX线程库(四)线程同步——互斥量
互斥量与信号量非常相似,他允许程序员每一次锁住某个变量,使得每一次只能有一个线程访问他。一、信号量是什么?和信号量一样,互斥量用于保护一段代码的,保证一次只能被一个线程执行。二、信号量API使用一个信号量,其基本步骤是:声明一个互斥量初始化一个互斥量线程1使用pthread_mutex_lock获取执行权线程2使用pthread_mutex_unlock释放执行权销毁互斥量pthread_mutex_destory线程头文件本身就有互斥量的定义,#include <pthr.原创 2020-08-02 22:23:47 · 167 阅读 · 0 评论 -
tar -zxvf含义
tar -zxvf +filenamez: zipx:extractv:verboselyf:filename查看这里原创 2020-08-28 10:39:11 · 1143 阅读 · 0 评论 -
CRLF、CR、LF详解
原文地址:https://blog.csdn.net/lishuoboy/article/details/84768748 [CRLF、CR、LF详解] ...转载 2019-10-24 08:52:42 · 844 阅读 · 0 评论 -
循序渐进理解SSH(Secure Shell)
我是从《鸟哥私房菜》这本书开始接触Linux系统的,其中第六章开头的时候有句话一直不能理解:“Linux最优秀的地方之一,就是在于它的多用户、多任务环境”,你再多用户,一次不还是只是一个键盘和鼠标吗?那么多用户又有什么用呢?最近看了一下SSH相关的内容,让我有了新的体会。一、SSH是远程ShellShell是一个作为用户与Linux系统间的接口程序,它允许用户向操作系统输入需要执行的命令。Linux系统用户根据角色可分为三种:root用户:拥有对系统最高管理权限普通用户:只能对自己目录下的文件.原创 2020-08-07 23:37:54 · 359 阅读 · 0 评论