linux basic knowledge

 

全栈必备Linux 基础 

标签: Linuxcentosubuntu全栈
  3064人阅读  评论(2)  收藏  举报
  分类:

目录(?)[+]

Linux 几乎无处不在,不论是服务器构建,还是客户端开发,操作系统的基础技能对全栈来说都是必备的。

系统的选择

Linux发行版本可以大体分为两类,一类是商业公司维护的发行版本,一类是社区组织维护的发行版本,前者以著名的Redhat(RHEL)为代表,后者以Debian为代表。

Redhat,应该称为Redhat系列,包括RHEL、Fedora、CentOS(RHEL的社区克隆版本,免费)。Ubuntu严格来说不能算一个独立的发行版本,Ubuntu是基于Debian加强而来,一个拥有Debian所有的优点,以及自己所加强的优点的近乎完美的Linux桌面系统。Ubuntu社区认为实用性和创新性高于一切。

如果你需要一个比较稳定的服务器系统而已,那么最好的选择就是CentOS了,安装完成后,经过简单的配置就能提供非常稳定的服务了。但是对云环境而言,unbantu也许不错,hadoop最早就是在ubantu上开发的。

体系结构

了解体系结构,可以有一个较好的方向感。Linux 有kernel和user两种模式,内核、shell和文件系统一起形成了基本的操作系统结构,Linux 内核由如下几部分组成:内存管理、进程管理、设备驱动程序、文件系统和网络管理等。 
引自维基百科

Linux内核

了解linux内核,可以充分利用资源,在系统调优时有目标感。 
Linux 内核结构

Linux 将内存划分为容易处理的“内存页”,提供了对 4KB 缓冲区的抽象,例如 slab 分配器。进程实际是某特定应用程序的一个运行实体,进程调度控制进程对CPU的访问。Linux 中常见的进程间通讯机制有信号、管道、共享内存、信号量和套接字等。 内核通过 SCI 提供了一个API来创建一个新进程(fork、exec 或 POSⅨ),停止进程(kill、exit),并在它们之间进行通信和同步(signal 或者 POSⅨ 机制)。Linux 操作系统将独立的文件系统组合成了一个层次化的树形结构,并且由一个单独的实体代表这一文件系统。由于 Linux 支持许多不同的文件系统,并且将它们组织成了一个统一的虚拟文件系统.设备驱动程序提供一组操作系统可理解的抽象接口完成和操作系统之间的交互,而与硬件相关的具体操作细节由设备驱动程序完成。Linux内核的网络部分由BSD套接字、网络协议层和网络设备驱动程序组成。 网络设备驱动程序负责与硬件设备通讯,每一种可能的硬件设备都有相应的设备驱动程序。

linux 文件系统

Linux系统能支持多种目前流行的文件系统,推荐用EXT4。 
Linux下面的文件类型主要有: 

1) 普通文件,分为纯文本和二进制。 

2) 目录文件,存储文件的地方。 

3) 链接文件,指向同一个文件或目录的的文件。 

4) 设备文件,分为块设备和字符设备。 

5)管道文件,提供进程间通信 

6)套接字文件,与网络通信有关

Linux使用标准的目录结构,安装程序就已经为用户创建了文件系统和完整而固定的目录组成形式,并指定了每个目录的作用和其中的文件类型。

目录名 简要说明
/bin  二进制可执行命令
/dev  设备特殊文件
/etc  系统管理和配置文件
/etc/rc.d  启动的配置文件和脚本
/home  用户主目录的基点,比如用户abc的主目录就是/home/user,可以用~abc表示
/lib  标准程序设计库
/sbin  系统管理命令,这里存放的是系统管理员使用的管理程序
/tmp  公用的临时文件存储点
/root  系统管理员的主目录
/mnt  系统提供这个目录是让用户临时挂载其他的文件系统。
/lost+found  这个目录平时是空的,系统非正常关机而留下“无家可归”的文件
/proc  虚拟的目录,是系统内存的映射。可直接访问这个目录来获取系统信息。
/var  某些大文件的溢出区,比方说各种服务的日志文件
/usr  最庞大的目录,要用到的应用程序和文件几乎都在这个目录。其中包含:    /usr/X11R6 存放X window的目录    /usr/bin 众多的应用程序    /usr/sbin 超级用户的一些管理程序    /usr/doc linux文档    /usr/include linux下开发和编译应用程序所需要的头文件    /usr/lib 常用的动态链接库和软件包的配置文件    /usr/man 帮助文档    /usr/src 源代码,linux内核的源代码就放在/usr/src/linux里    /usr/local/bin 本地增加的命令    /usr/local/lib 本地增加的库    

Linux Shell 及命令

shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行,是一个命令解释器。shell 有很多类型,这里推荐BASH。BASH是GNU的Bourne Again Shell,是GNU操作系统上默认的shell,大部分linux的发行套件使用的都是这种shell。

Linux 的命令很多,下面给出了一个简单的分类。

常用命令

在shell 中组织linux 的命令来完成一系列的任务,就是shell 编程了。Shell,Perl和Python 是Linux 上最常用的脚本语言,我还是推荐使用Python。

Linux 应用

标准的Linux系统一般都有一套都有称为应用程序的程序集,它包括文本编辑器、编程语言、X Window、Internet工具和数据库等。

对于文本编辑而言,Emacs 和vim 各有千秋,通过插件配合甚至可以作为IDE使用。 个人感觉,VIM 还应该是必备技能。vim的命令也很多,整理如下: 
这里写图片描述

就应用的管理而言,ubantu 需熟知apt命令,centos 则是yum命令。当然了,源代码编译安装是必须的,makefile的写法,configure/autoconfig/make 的用法要手到擒来才好。

海康工业相机排雷笔记02-像素格式解析 工业相机使用过程记录 02-像素格式解析 通过将相机输出图像裸数据raw格式直接存图查看 一、黑白/Mono 直接使用相机测试图像存图: 图像中各部分灰度分别为:0、36、73、109、146、182、219、255,以灰度73列为例 (1)Mono 8 该列图像数据为十六进制49,十进制为73,那么Mono 8就是每个像素点占8bit,依次排列。 (2)Mono 10 该列图像数据为十六进制2401,由于相机均为小端数据,实际数据应解析为0124,十进制为292=73*4,那么Mono 10格式为每 阅读详情

相关推荐

局部路径规划算法 - B样条曲线(B-spline Curves)

本文详解了B样条以及代码实现

BigDavid123的博客 6506

深度:一文看懂Linux内核!Linux内核架构和工作原理详解

简介 作用是将应用层序的请求传递给硬件,并充当底层驱动程序,对系统中的各种设备和组件进行寻址。目前支持模块的动态装卸(裁剪)。Linux内核就是基于这个策略实现的。Linux进程1.采用层次结构,每个进程都依赖于一个父进程。内核启动init程序作为第一个进程。该进程负责进一步的系统初始化操作。init进程是进程树的根,所有的进程都直接或者间接起源于该进程。virt/ ---- 提供虚拟机技术的支...

jinking01的专栏 5万+

Python实战:5分钟搞定N-CMAPSS航空发动机数据集解析(附完整代码)

本文提供了一份针对N-CMAPSS航空发动机数据集的快速解析实战指南。通过Python的h5py库,详细演示了如何读取HDF5文件结构、理解数据分类(如传感器、健康参数、场景描述符)并加载为Pandas DataFrame。文章还澄清了数据集中常见的变量数量疑惑,并给出了从数据加载到构建剩余使用寿命预测模型预处理流水线的完整代码,帮助工程师和研究人员高效入门航空发动机预测性维护分析。

weixin_29057065的博客 422

Linux内核详解,什么是linux内核?

linux 内核是 Linux 操作系统的核心组件,负责管理计算机的硬件资源、提供系统调用接口、调度进程和管理内存等重要功能。本文将详细介绍 Linux 内核的组成、功能和关键技术,以及其在操作系统中的重要作用。

naer_chongya的博客 5005

UE 顶点动画工具 (VAT)

导入模型需要勾选全精度UV。

iesoxj的博客 1640

深入解析Android SoundTrigger架构:从HIDL到AIDL的演进与实践

本文深入解析Android SoundTrigger架构,从HIDL到AIDL的演进与实践。SoundTrigger是Android系统中低功耗语音唤醒的关键技术,通过分层设计和硬件协同实现高效语音识别。文章详细介绍了核心组件、HIDL与AIDL的对比及优化技巧,帮助开发者掌握语音模型优化和功耗管理。

brown的博客 230

科普文:图文探究Linux内核

本文主要讲解什么是Linux内核,以及通过多张图片展示Linux内核的作用与功能,以便于读者能快速理解什么是Linux内核,能看懂Linux内核。拥有超过1300万行的代码,Linux内核是世界上最大的开源项目之一,但是内核是什么,它用于什么?

为无为,事无事,味无味。 3863

CyberChef本地搭建

CyberChef本地搭建

2301_80241182的博客 6071

Linux内核编译只看这一篇就够了

Linux嵌入式操作系统-附加实验内核编译

CCSco4355 1万+

vue2 - elementUI表格table树形结构复选框勾选父子联动示例,el-table树状表格tree复选框checkbox多选框全选/反选取消children(当子级全选中,父级自动勾选)

vue2,elementui,el-table树状表格多选,树形结构结合多选框使用,实现单选父子联动全选反选,勾选联动父级勾选,表格多选check父子联动,table表格children如何嵌入复选框,el-table使用多选框与树形数据写一个有半选全选功能的表格,el-table树形表格实现复选框多选效果,表格树状结构多选,每一个row都可以选中并且联动全选按钮,table选父带子选子带父,树形数据与懒加载,Table表格树形结构多选框选中父级时会选中子级,elementUI表格里树形结构嵌套复选框全选全

✅ 精选推荐文章 1万+

AutoSAR系列讲解 - 前言

博主xyfx是一名汽车行业的嵌入式软件工程师,本职工作是同步电机的驱动控制(主要做FOC的,这个大家要是有兴趣,以后可以单独开一个专栏来讲解一下),由于做控制器的时候需要用到AutoSAR,所以特意的去学习了相关知识,同时博主自己也在同步提高中,有写的不合理的地方也请大家指正。我准备对AutoSAR开设两个大的方面来讲解,一是AutoSAR的入门篇,二是AutoSAR的实践篇,分别讲述AutoSAR的理论基础和工具的使用。

雪云飞星的博客 4万+

【Linux】Linux内核结构基础

本文介绍了Linux内核的组成结构与架构,同时重点解释了用户态的系统调用(如 open函数)在打通上层和底层硬件过程中的作用,以及Shell脚本的基础运用

weixin_46216674的博客 3339

4、高级认证解决方案:Active Directory、LDAP、RADIUS和TACACS+深度解析

本文深入解析了多种高级认证解决方案,包括Active Directory、标准LDAP、RADIUS和TACACS+,涵盖其技术优势、配置步骤及适用场景。同时介绍了如何实现通用用户管理,包括使用第三方认证解决方案和ADSI自助用户管理。通过实际案例部署,展示了如何高效、安全地管理大规模用户认证与权限控制,为企业安全架构提供参考。

o4p5q6r7s的博客 303

Linux basic knowledge

Linux获取CPU,内存和硬盘信息 本文目的 本文搜集了Linux上常用的获取机器配置信息和实时信息相关命令。这些命令在开发运维相关程序时,比较常用。 CPU CPU位数(32或64): getconf LONG_BITCPU配置信息:cat /proc/cpuinfoCPU实时信息:top -n 1 | grep Cpu | cut -d ',' -f 4 (获取实时C

screaming的博客 390

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Linux学习笔记——1、Basic knowledge

参考鸟哥的Linux私房菜地址:http://vbird.dic.ksu.edu.tw/linux_basic/linux_basic.php 参考网中人地址:http://www.study-area.org/linux/linuxfr.htm 工具书:《Linux系统最佳实践工具》 Linux命令在线速查:https://ganquan.info/linux/ 在学习Linux前,应具

2820

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

deep learning and linux basic knowledge

.bashrc .theanorc 后面rc 指的是 runtime configopenmp  指的是是否开启CPU的multi process 多和处理。在终端里面激活环境: source activate python27  source deactivate在终端里面运行Python 语句,第一种方法是Python 直接进入Python交互环境。 第二种方法是 Python -c 'imp...

likejoey的专栏 274

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Learning Linux(1) : basic knowledge

Installed Ubuntu 10.04.But I could not watch Youku or Xinlang or Tudou online videos using Firefox browser. So I have to go here:http://get.adobe.com/flashplayer/to download the flashplayer needed.

Kevin的专栏 809

Certification Objective 1.01: Basic Linux Knowledge

原文来自:RHCE Red Hat Certified Engineer Linux Study Guide Exam RH302 4th ED 2004.chm认证目标1.01: Basic Linux KnowledgeLinux和Unix都是通过一系列的文本文件来管理。Linux管理员通常不会使用图形化的编辑工具来管理这些配置文件。诸如WordPerfect, StarOffice,

Plan9 615

Notes for the missing semester. Useful and basic knowledge about Linux.

The notes for the missing semester. The course is awesome and I recommend it for all new beginners of Linux.

qq_45523675的博客 1312

linux防火墙基础知识,linux防火墙基本知识(Basic knowledge of Linux Firewall).doc

linux防火墙基本知识(Basic knowledge of Linux Firewall)linux防火墙基本知识(Basic knowledge of Linux Firewall)Firewall classification(1) packet filtering firewalls.Packet filtering (packet Filtering) technology is to...

weixin_39982452的博客 140

linux基础教程-linux运维日志

https://www.centos.bz/linux-basic-knowledge/

m0_37477061的博客 408

linux 基础教程地址(centos)

http://www.centos.bz/linux-basic-knowledge/

sebastain的专栏 603

SQL injection_basic knowledge

help limit

Daria 224

root/user basic knowledge...

UID:使用者的号码GID:群组的号码一般来说 root的UID和GID都为0.可以在/etc/passwd中可以看到只要把UID设为0的话,账户就具有root权限。平时最好不用root来登陆哦~以防不小心修改了文件,会造成致命的错误。。。还有一个常见问题。root的密码是什么呢?可以进普通user 然后输入命令 sudo root passwd

blue881280的专栏 449

在 goose 中接入 Knowledge Graph Memory MCP Server:打造跨会话的持久化知识图谱记忆

知识图谱记忆(Knowledge Graph Memory)扩展把 goose 从"能记住零散偏好"的助手升级为"能理解概念间关联"的推理伙伴:它以实体(entities)、关系(relations)与观测(observations)组织知识,让 goose 可以追溯漏洞影响链、匹配解决方案、发现数据中的隐藏模式。本文将以"将 goose 训练成智能安全审查员"为主线,完整演示如何在 goose

gitblog_00084的博客 469

linux初学者_Linux上的软件开发初学者注意事项

linux初学者Linux is a great platform for software development targeting servers or backends. In general, working on Linux is very productive. The problem that beginners on Linux face is the the learning ...

cuma2369的博客 378
上一篇: docker vs rtk
下一篇: mysql tuning
screaming
博客等级 码龄19年 60粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值