linux学习

简介: 学习了linux的基本命令

Linux(CentOs 7 )

消息队列(Kafka、tabbitMQ、RockeetMQ),搜索引擎(ES),集群分布式(需要多台服务器,如果没有服务器,使用虚拟机)

  1. 认识linux
  2. 基本的命令(重点:文件操作、目录管理、文件属性、Vim编辑器、账号管理、磁盘管理)
  3. 软件的安装和部署

Linux---Redis---Docker

入门概述

linux越来越受欢迎

Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的debianarchlinux,和基于商业开发的Red Hat Enterprise LinuxSUSEOracle Linux等。

环境搭建

  1. 配置安全组
  2. 获取服务器的ip地址,
  3. 下载xshell进行远程连接,还需要下载一个xFtp文件上传

走进Linux系统

开机会启动很多程序,在linux叫守护进程(daemon),windows下叫“服务”(service)

登陆的三种方式:

  • 命令行登陆
  • ssh登陆
  • 图形界面登陆

root为最高用户

Linux中没有错误就代表操作成功

sync     # 同步数据

shutdown   # 关机

shutdown -h now # 系统立即关机

reboot    #重启

系统目录结构

  1. 一切皆文件
  2. 根目录/,所有的文件都挂在这个节点下面

ls /    # 查看/目录

对目录的理解
  • /bin:bin是binary的缩写,这个目录存放着最经常使用的命令
  • /boot:这里放的是启动linux时使用的一些核心文件,包括一些连接文件以及镜像文件(不要动)
  • /dev:dev是device(设备)的缩写,存放的是linux的外部设备,在linux中访问设备的方式和访问文件的方式是相同的
  • /etc:这个目录用来存放所有的系统管理所需要的的配置文件和子目录
  • /home:用户的主目录,在linux中,每个用户都有一个自己的目录,一般该目录是以用户名的账号名命名的
  • /lib:这个目录里存放着系统最基本的动态连接共享库,其作用类似于windows里的DLL文件(不要动)
  • /lost+found:这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。(存放突然关机的一些文件)
  • /media:linux系统会自动识别一些设备,例如U盘,光驱等等,当识别后,linux会吧识别的设备挂在到这个目录下。
  • /mmt:系统提供该目录是为了让用户临时挂载别的问文件系统的,我们可以将光驱挂载在/mmt上,然后进入该目录就可以进行查看光驱里的内容了。(我们后面会把一些本地文件挂载在这个目录下)
  • /opt:这个是给主机额外安装软件所摆放的目录。比如Oracle数据库。默认为空
  • /proc:这个目录是一个虚拟的目录,他是系统内存的映射,我们可以通过他直接访问这个目录来获取系统信息(不用管)
  • /root:该目录为系统管理员,也称作超级权限管理者的主目录
  • /sbin:s是Super User的意思,这里存放的是系统管理员使用的系统管理程序
  • /srv:该目录存放一些服务启动之后需要提取的数据
  • /sys:该目录下安装了内核中新出现的一个文件系统sysfs
  • /temp:这个目录是用来存放一些临时文件的,用完即丢的文件,可以放在这个目录下,安装包
  • /usr:这个是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows的program files目录
  • /usr/bin:系统用户使用的应用程序
  • /usr/sbin:超级用户使用的比较高级的管理程序和系统守护程序
  • /usr/src:内核源代码默认的放置目录
  • /var:这个目录存放着不断扩充的东西,我们习惯将那些经常被修改的文件放在这个目录下,包括各种日志文件
  • /run:是一个临时文件系统,存储系统启动以来的信息,当系统重启时,这个目录下的文件应该被删除
  • /www:存放服务器网站相关的文件

常用的基本命令

目录管理

绝对路径和相对路径

绝对路径:路径的全称

相对路径

cd: # 切换目录命令

./  :  # 代表当前目录

..  # 退出当前文件

ls   # 列出目录(最长使用的)

参数 :

  • -a:all,查看所以的文件,包括隐藏文件
  • -l: 列出所有的文件,包含文件的属性和权限,不包含隐藏文件

所欲linux可以组合使用

cd 命令

cd 目录名 (绝对路径都是以/开头的,相对路径)

cd ~回到当前的用户目录

pwd显示当前用户所在的目录

mkdir创建一个目录

创建层级目录

[root@iZ0jl0sdl5v48c18a2iq16Z ~]# cd /home

[root@iZ0jl0sdl5v48c18a2iq16Z home]# ls -l

total 4

drwxr-xr-x 2 root root 4096 Aug 13 16:55 hailong

[root@iZ0jl0sdl5v48c18a2iq16Z home]# ls

hailong

[root@iZ0jl0sdl5v48c18a2iq16Z home]# mkdir -p zij/a/b

[root@iZ0jl0sdl5v48c18a2iq16Z home]# ls

hailong  zij

[root@iZ0jl0sdl5v48c18a2iq16Z home]# cd zij

[root@iZ0jl0sdl5v48c18a2iq16Z zij]# ls

a

[root@iZ0jl0sdl5v48c18a2iq16Z zij]# cd z

-bash: cd: z: No such file or directory

[root@iZ0jl0sdl5v48c18a2iq16Z zij]# cd a

[root@iZ0jl0sdl5v48c18a2iq16Z a]# ls

b

[root@iZ0jl0sdl5v48c18a2iq16Z a]# cd b

[root@iZ0jl0sdl5v48c18a2iq16Z b]# ^C

[root@iZ0jl0sdl5v48c18a2iq16Z b]#


rmdir      删除目录(仅能删除空的目录)

rmdir   -p  可以强制删除非空文件夹

cp       (复制文件或者目录)

cp   原来的地方  新的地方

rm   (移除文件或者目录)

-f   忽略不存在的问阿金,不会出现警告,强制删除

-r   递归删除目录

-i   互动,删除询问是否删除

rm  -rf   / 系统中的所有文件都会被删除,删库跑路

mv    移动文件或者目录     重命名文件

-f  强制

-u  只替代已经更新过的文件

基本属性

Linux是一种典型的多用户命令

实例中,root文件的第一个属性d表示文件是一个目录文件

在Linux中第一个字符代表这个文件是目录,文件,或者链接文件等等:

  • d:目录
  • -:文件
  • l:链接文档
  • b:装置文件里面的可供储存的接口设备
  • c:装置文件里面的串行端口设备,例如键盘、鼠标

接下来的字符中,以三个为一组

第二列为文件个数,第三行属主,第四行属组

  1. chgrp:更改文件属组
  1. chgrp -R 数组名 文件名
  1. -R :递归更改文件属组,就是在更改某个目录文件属组时,如果加上-R的参数,那木该目录下的所有文件的属组都会更改
  1. chown:更改文件属主,也可以同时更改文件属组
  1. chown R 属主名 文件名
  2. chown -R 属主名:属组名 文件名
  1. chmod:更改文件9个属性
  1. chmod -R xyz 文件或目录
  2. r:4     w:2    x:1

  1. chomd  777 filename        所有人都可以进行操作

文件内容查看

Linux系统中使用以下命令来查看文件的内容

  • cat    由第一行开始显示文件内容
  • tac     从最后一行开始显示,可以看出tac是cat的倒着写

  • nl        显示时,会显示行号

  • more  一页一页的显示文件内容(空格代表翻页,回车代表看下一行)

  • less与more类似,但是比more更好的是,他可以往前翻页(退出使用q,上下键来看,查找字符串/set,/表示向下查询,?表示向上查询,n表示继续搜寻下一个,N代表向上寻找)
  • head    只看头几行(-n  行数)

  • tail       只看尾巴几行

网络配置目录:cd /etc/sysconfig/network-scripts

ping命令

ifconfig

链接的概念

  1. 硬链接
  1. A----B ,假设B是A的硬链接,那么他们两个指向了同一个文件,允许一个文件拥有多个路径,用户可以通过这种机制建立硬连接到一些重要文件上,防止误删。
  1. 软链接(-s,蓝色)(符号链接)
  1. 类似windows下的快捷方式,删除了源文件,快捷方式也访问不了了
  1. 创建链接:
  1. ln命令
  1. touch命令创建文件,
  2. echo输入字符串

[root@iZ0jl0sdl5v48c18a2iq16Z home]# touch f1

[root@iZ0jl0sdl5v48c18a2iq16Z home]# ll

total 4

-rw-r--r-- 1 root root    0 Aug 15 10:01 f1

drwxr-xr-x 3 root root 4096 Aug 13 17:50 hailong

[root@iZ0jl0sdl5v48c18a2iq16Z home]# touch f2

[root@iZ0jl0sdl5v48c18a2iq16Z home]# ln f1 f2

ln: failed to create hard link ‘f2’: File exists

[root@iZ0jl0sdl5v48c18a2iq16Z home]# rm -rf f2

[root@iZ0jl0sdl5v48c18a2iq16Z home]# ln f1 f2

[root@iZ0jl0sdl5v48c18a2iq16Z home]# ll

total 4

-rw-r--r-- 2 root root    0 Aug 15 10:01 f1

-rw-r--r-- 2 root root    0 Aug 15 10:01 f2

drwxr-xr-x 3 root root 4096 Aug 13 17:50 hailong

[root@iZ0jl0sdl5v48c18a2iq16Z home]# ln -s f1 f3

[root@iZ0jl0sdl5v48c18a2iq16Z home]# ll

total 4

-rw-r--r-- 2 root root    0 Aug 15 10:01 f1

-rw-r--r-- 2 root root    0 Aug 15 10:01 f2

lrwxrwxrwx 1 root root    2 Aug 15 10:03 f3 -> f1

drwxr-xr-x 3 root root 4096 Aug 13 17:5

[root@iZ0jl0sdl5v48c18a2iq16Z home]# echo "i love me" >>f1

[root@iZ0jl0sdl5v48c18a2iq16Z home]# cat f1

i love me

[root@iZ0jl0sdl5v48c18a2iq16Z home]# cat f2

i love me

[root@iZ0jl0sdl5v48c18a2iq16Z home]# cat f3

i love me

[root@iZ0jl0sdl5v48c18a2iq16Z home]# echo "come on" >>f2

[root@iZ0jl0sdl5v48c18a2iq16Z home]# cat f1

i love me

come on

[root@iZ0jl0sdl5v48c18a2iq16Z home]# cat f2

i love me

come on

[root@iZ0jl0sdl5v48c18a2iq16Z home]# cat f3

i love me

come on


[root@iZ0jl0sdl5v48c18a2iq16Z home]# rm -rf f1

[root@iZ0jl0sdl5v48c18a2iq16Z home]# ll

total 8

-rw-r--r-- 1 root root   18 Aug 15 10:04 f2

lrwxrwxrwx 1 root root    2 Aug 15 10:03 f3 -> f1

drwxr-xr-x 3 root root 4096 Aug 13 17:50 hailong

[root@iZ0jl0sdl5v48c18a2iq16Z home]#

Vim 编辑器

使用Vim进行查看内容,编辑内容,保存内容

进入Vim  文件名 (存在则修改,不存在则新建)

  1. 命令模式
  1. 刚进入时,是命令模式,按下i键可以进入输入模式,
  1. i(进入输入模式)
  2. x(删除当前光标所处的字符串)
  3. :(进入底线命令模式)如果是编辑模式,需要先退出编辑模式(Esc)
  1. 输入模式(编辑文件)

  1. 底线命令模式(wq保存退出)
  1. 光标就移动到了最底下
  1. q退出
  2. w保存文件
  3. wq二者结合

第一部分:一般模式可用的光标移动、复制粘贴、搜索替换等

移动光标的方法


h 或 向左箭头键(←)

光标向左移动一个字符

j 或 向下箭头键(↓)

光标向下移动一个字符

k 或 向上箭头键(↑)

光标向上移动一个字符

l 或 向右箭头键(→)

光标向右移动一个字符

[Ctrl] + [f]

屏幕『向下』移动一页,相当于 [Page Down]按键 (常用)

[Ctrl] + [b]

屏幕『向上』移动一页,相当于 [Page Up] 按键 (常用)

[Ctrl] + [d]

屏幕『向下』移动半页

[Ctrl] + [u]

屏幕『向上』移动半页

+

光标移动到非空格符的下一行

-

光标移动到非空格符的上一行

n< space>

那个 n 表示『数字』,例如 20 。按下数字后再按空格键,光标会向右移动这一行的 n 个字符。

0 或功能键[Home]

这是数字『 0 』:移动到这一行的最前面字符处 (常用)

$ 或功能键[End]

移动到这一行的最后面字符处(常用)

H

光标移动到这个屏幕的最上方那一行的第一个字符

M

光标移动到这个屏幕的中央那一行的第一个字符

L

光标移动到这个屏幕的最下方那一行的第一个字符

G

移动到这个档案的最后一行(常用)

nG

n 为数字。移动到这个档案的第 n 行。例如 20G 则会移动到这个档案的第 20 行(可配合 :set nu)

gg

移动到这个档案的第一行,相当于 1G 啊!(常用)

n< Enter>

n 为数字。光标向下移动 n 行(常用)

搜索替换


/word

向光标之下寻找一个名称为 word 的字符串。例如要在档案内搜寻 vbird 这个字符串,就输入 /vbird 即可!(常用)

?word

向光标之上寻找一个字符串名称为 word 的字符串。

n

这个 n 是英文按键。代表重复前一个搜寻的动作。举例来说, 如果刚刚我们执行 /vbird 去向下搜寻 vbird 这个字符串,则按下 n 后,会向下继续搜寻下一个名称为 vbird 的字符串。如果是执行 ?vbird 的话,那么按下 n 则会向上继续搜寻名称为 vbird 的字符串!

N

这个 N 是英文按键。与 n 刚好相反,为『反向』进行前一个搜寻动作。例如 /vbird 后,按下 N 则表示『向上』搜寻 vbird 。

删除、复制与粘贴


x, X

在一行字当中,x 为向后删除一个字符 (相当于 [del] 按键), X 为向前删除一个字符(相当于 [backspace] 亦即是退格键) (常用)

nx

n 为数字,连续向后删除 n 个字符。举例来说,我要连续删除 10 个字符, 『10x』。

dd

删除游标所在的那一整行(常用)

ndd

n 为数字。删除光标所在的向下 n 行,例如 20dd 则是删除 20 行 (常用)

d1G

删除光标所在到第一行的所有数据

dG

删除光标所在到最后一行的所有数据

d$

删除游标所在处,到该行的最后一个字符

d0

那个是数字的 0 ,删除游标所在处,到该行的最前面一个字符

yy

复制游标所在的那一行(常用)

nyy

n 为数字。复制光标所在的向下 n 行,例如 20yy 则是复制 20 行(常用)

y1G

复制游标所在行到第一行的所有数据

yG

复制游标所在行到最后一行的所有数据

y0

复制光标所在的那个字符到该行行首的所有数据

y$

复制光标所在的那个字符到该行行尾的所有数据

p, P

p 为将已复制的数据在光标下一行贴上,P 则为贴在游标上一行!举例来说,我目前光标在第 20 行,且已经复制了 10 行数据。则按下 p 后, 那 10 行数据会贴在原本的 20 行之后,亦即由 21 行开始贴。但如果是按下 P 呢?那么原本的第 20 行会被推到变成 30 行。(常用)

J

将光标所在行与下一行的数据结合成同一行

c

重复删除多个数据,例如向下删除 10 行,[ 10cj ]

u

复原前一个动作。(常用)

[Ctrl]+r

重做上一个动作。(常用)

第二部分:一般模式切换到编辑模式的可用的按钮说明

进入输入或取代的编辑模式


i, I

进入输入模式(Insert mode):i 为『从目前光标所在处输入』, I 为『在目前所在行的第一个非空格符处开始输入』。(常用)

a, A

进入输入模式(Insert mode):a 为『从目前光标所在的下一个字符处开始输入』, A 为『从光标所在行的最后一个字符处开始输入』。(常用)

o, O

进入输入模式(Insert mode):这是英文字母 o 的大小写。o 为『在目前光标所在的下一行处输入新的一行』;O 为在目前光标所在处的上一行输入新的一行!(常用)

r, R

进入取代模式(Replace mode):r 只会取代光标所在的那一个字符一次;R会一直取代光标所在的文字,直到按下 ESC 为止;(常用)

[Esc]

退出编辑模式,回到一般模式中(常用)

第三部分:一般模式切换到指令行模式的可用的按钮说明

指令行的储存、离开等指令


:w

将编辑的数据写入硬盘档案中(常用)

:w!

若文件属性为『只读』时,强制写入该档案。不过,到底能不能写入, 还是跟你对该档案的档案权限有关啊!

:q

离开 vi (常用)

:q!

若曾修改过档案,又不想储存,使用 ! 为强制离开不储存档案。

注意一下啊,那个惊叹号 (!) 在 vi 当中,常常具有『强制』的意思~


:wq

储存后离开,若为 :wq! 则为强制储存后离开 (常用)

ZZ

这是大写的 Z 喔!若档案没有更动,则不储存离开,若档案已经被更动过,则储存后离开!

:w [filename]

将编辑的数据储存成另一个档案(类似另存新档)

:r [filename]

在编辑的数据中,读入另一个档案的数据。亦即将 『filename』 这个档案内容加到游标所在行后面

:n1,n2 w [filename]

将 n1 到 n2 的内容储存成 filename 这个档案。

:! command

暂时离开 vi 到指令行模式下执行 command 的显示结果!例如 『:! ls /home』即可在 vi 当中看 /home 底下以 ls 输出的档案信息!

:set nu

显示行号,设定之后,会在每一行的前缀显示该行的行号

:set nonu

与 set nu 相反,为取消行号!

账号管理

  • 用户账号的添加,删除,修改
  • Useradd 选项 用户名
  • -m:自动创建这个用户的主目录/home/hailong
  • -c comment 指定一段注释性描述。
  • -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
  • -g 用户组 指定用户所属的用户组。
  • -G 用户组,用户组 指定用户所属的附加组。
  • -m 使用者目录如不存在则自动建立。
  • -s Shell文件 指定用户的登录Shell。
  • -u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。

理解一下本质:Linux中一切皆文件,这里的添加用户说白了就是往一个文件中写入用户的信息(/etc/password)

  • 删除用户
  • userdel -r qinjiang
  • -r:自动清理文件
  • 修改用户
  • Usermod  对应修改内容  那个用户
  • 常用的选项包括-c, -d, -m, -g, -G, -s, -u以及-o等,这些选项的意义与useradd命令中的选项一样,可以为用户指定新的资源值。

例如:

# usermod -s /bin/ksh -d /home/z –g developer kuangshen

此命令将用户kuangshen的登录Shell修改为ksh,主目录改为/home/z,用户组改为developer。

  • 修改完后查看配置文件即可
  • 切换用户
  • 1.切换用户的命令为:su username 【username是你的用户名哦】

2.从普通用户切换到root用户,还可以使用命令:sudo su

3.在终端输入exit或logout或使用快捷方式ctrl+d,可以退回到原来用户,其实ctrl+d也是执行的exit命令

4.在切换用户时,如果想在切换用户之后使用新用户的工作环境,可以在su和username之间加-,例如:【su - root】

$表示普通用户

#表示超级用户,也就是root用户

  • 用户密码设置  
  • passwd 用户名
  • 锁定账户
  • passwd  -l  用户名(锁定用户时,这个用户就不能登录)
  • 解锁用户
  • passws   -u   用户名
  • 用户口令的管理
  • 用户组的管理

用户组管理

属主、属组(开发、测试、运维、root)

本质:组的增加、删除、修改实际上是对/etc/group的文件进行更新

  • 创建一个用户组
  • groupadd  用户组名
  • 创建完后可以得到一个id,这个id可以指定-g指定(如果不指定,就会进行自增)
  • 删除用户组
  • groupdel   用户组名
  • 修改用户组的信息和名字
  • 切换用户组

磁盘管理

  • df   列出文件系统的整体磁盘使用量  -h

  • du 检查当前磁盘空间是用来量

将外部设备挂载到mnt目录下来实现访问

卸载:unmount

进程管理

对于我们开发人员来说,Linux会用就行

  1. 在Linux中,每一个程序都是有自己的一个进程,每一个进程都有一个id号
  2. 每一个进程,都会有一个父进程
  3. 进程可以有两种存在方式:前台,后台运行
  4. 一般服务都是后台运行的,基本程序都是前台运行的

命令:

  • ps:查看当前系统中正在执行的各种信息
  • ps -a:显示当前终端运行的所有进程信息
  • -u:以用户的信息显示进程
  • -x:显示后台进程的参数

ps -aux|grep mysql

ps -aux|grep java

# |   在linux这个叫做管道符

# grep  查找文件中符合条件的字符串

  • 对于我们来说我们只需要记住一个命令就行ps -aux|grep 进程名字
  • ps -ef:可以查看父进程的信息
  • pstree:通过目录树结构来查看
  • -p  显示父id
  • -u  用户组
  • 结束进程
  • kill -9  进程的id
  • java死循环时,使用

环境安装

  1. rpm(jdk:在线发布一个SpringBoot项目)
  2. 解压缩(tomcat:启动并通过一个外网访问,发布网站)
  3. yum在线安装(docker:直接安装并跑起来)

防火墙

# 查看firewall服务状态

systemctl status firewalld


# 开启、重启、关闭、firewalld.service服务

# 开启

service firewalld start

# 重启

service firewalld restart

# 关闭

service firewalld stop


# 查看防火墙规则

firewall-cmd --list-all    # 查看全部信息

firewall-cmd --list-ports  # 只看端口信息


# 开启端口

开端口命令:firewall-cmd --zone=public --add-port=80/tcp --permanent

重启防火墙:systemctl restart firewalld.service


命令含义:

--zone #作用域

--add-port=80/tcp  #添加端口,格式为:端口/通讯协议

--permanent   #永久生效,没有此参数重启后失效

Rpm安装(JDK安装)

  1. 下载JDKrpm包
  2. 安装java环境
  1. 检查是否存在java环境,java -version
  2. rpm -qa|grep jdk     #检测版本信息·
  3. 卸载 rpm -e  --nodeps  版本信息
  4. 安装 rpm -ivh  包名
  1. 配置环境变量
  1. /etc/profile
  1. 发布一个项目
  1. 查看端口开启
  1. firewall-cmd --list-port

解压缩安装(Tomcat 安装)

  1. 下载tomcat,官网下载
  2. 解压这个文件
  1. tar  -zxvf  名字
  1. 启动测试
  1. 执行./startup.sh
  2. 执行./shutdown.sh

域名解析后,如果端口是80-http或者443-https可以直接访问,如果是9000或者8080,就需要通过Apcahe或者nginx做一下反向代理即可,配置文件即可

Docker(yum安装)

一定要联网

  1. 检测CentOS版本
  2. 安装我们的准备环境
  1. yum -y install  报名       # yum instal 安装命令  -y  所有的提示都为y
  2. yum -y instal gcc
  3. yum -y  install  gcc-c++
  1. 清除以前的版本,后面根据官网安装即可
  • 更新yum软件包索引yum makecache fast
  • 安装Docker CEyum -y install docker-ce docker-ce-cli containerd.io
  • 启动dockersystemctl start docker
  • 测试docker version

    docker run hello-world

    docker images

快照

保留当前系统信息,为快照,随时可以恢复,来防止系统被你玩坏,类似游戏的存档

目录
相关文章
|
4月前
|
NoSQL 关系型数据库 MySQL
Linux学习记录---(1、基本命令)
该博客文章提供了Linux系统中基本命令的使用记录,包括文件和目录操作、Redis服务管理、MySQL数据库操作以及Tomcat服务器的启动和检查。
Linux学习记录---(1、基本命令)
|
25天前
|
存储 安全 Linux
|
27天前
|
Linux Shell 数据安全/隐私保护
|
5月前
|
Ubuntu Linux vr&ar
IM跨平台技术学习(十二):万字长文详解QQ Linux端实时音视频背后的跨平台实践
本文详细记录了新版QQ音视频通话在 Linux 平台适配开发过程中的技术方案与实现细节,希望能帮助大家理解在 Linux 平台从 0 到 1 实现音视频通话能力的过程。
173 2
|
2月前
|
Linux 编译器 C语言
【Linux快速入门(一)】Linux与ROS学习之编译基础(gcc编译)
【Linux快速入门(一)】Linux与ROS学习之编译基础(gcc编译)
|
2月前
|
网络协议 Linux
linux学习之套接字通信
Linux中的套接字通信是网络编程的核心,允许多个进程通过网络交换数据。套接字提供跨网络通信能力,涵盖本地进程间通信及远程通信。主要基于TCP和UDP两种模型:TCP面向连接且可靠,适用于文件传输等高可靠性需求;UDP无连接且速度快,适合实时音视频通信等低延迟场景。通过创建、绑定、监听及读写操作,可以在Linux环境下轻松实现这两种通信模型。
39 1
|
2月前
|
Linux 开发工具
【Linux快速入门(二)】Linux与ROS学习之编译基础(make编译)
【Linux快速入门(二)】Linux与ROS学习之编译基础(make编译)
|
4月前
|
NoSQL Ubuntu Linux
Linux内核学习
Linux内核学习
82 3
|
3月前
|
Linux
使用qemu来学习Linux的休眠和唤醒
使用qemu来学习Linux的休眠和唤醒
|
3月前
|
Linux
linux内核原子操作学习
linux内核原子操作学习