Linux零碎知识

Posted 钉小丁

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux零碎知识相关的知识,希望对你有一定的参考价值。

Linux小知识

1.su 和 su -

su 和 su -是有区别的,su - 会切换环境变量,su只是切换用户

2.FTP 和 HTTP 端口

FTP(File Transfer Protocol),文件传输协议,是TCP/IP协议组中的协议的一种。FTP协议包括两个部分,一是FTP服务器,用于存储文件;二是FTP客户端,用户可以通过FTP客户端通过FTP协议访问位于FTP服务器上的资源。

HTTP(Hypertext Transfer Protocol),超文本传输协议,是一个简单的请求-响应协议,它通常运行在TCP之上。请求和响应消息都是以ASCII形式给出的。

HTTP有三个端口

80端口:默认访问的端口

8080端口

443端口:ssl加密

3.scp和ssh

scp用于远程数据传输(secure copy的缩写)

ssh用于远程登录

uptime命令能够打印系统总共运行了多长时间和系统的平均负载。uptime命令可以显示的信息显示依次为:现在时间、系统已经运行了多长时间、目前有多少登陆用户、系统在过去的1分钟、5分钟和15分钟内的平均负载。


4.grep、gzip、find和sort

grep:查找文件内的内容

gzip:压缩文件,文件经过压缩后会增加.gzip扩展名

find:在指定目录查找文件

sort:排序

5.linux系统文件功能和作用

★/bin 可执行文件(二进制)

★/boot linux内核和系统启动文件

★/dev 设备文件

★/etc 系统配置文件

★/home 用户主目录

★/initrd 启动时挂在initrdimg映像文件

★/lib 共享库文件

★/lost+found fsck放置的零散文件

★/media 系统自动挂在CD-ROM

★/mnt 被挂载的文件系统

★/opt 可选文件和程序的存放目录

★/proc 存放所有标志为文件的进程

★/root 根用户的主目录

★/sbin 存放更多的可执行文件(二进制)

★/srv

★/sys

★/tmp 存放用户和程序的临时文件

6.Linux进程下的三种状态


运行态 (Running) :       占有CPU,并在CPU上运行



就绪态 (Ready):        已经具备运行条件,但由于没有空闲CPU,而暂时不能运行



等待态 (Waiting/Blocked): 因等待某一事件而暂时不能运行:如等待读盘结果


7.路由信息的组成部分

子网掩码

8.kill pid和kill %job number

kill pid让进程正常退出

kill %job number 直接杀掉进程

9.fg bg ctrl+z ctrl+h

fg:将后台中的命令调至前台继续运行

bg:将一个在后台暂停的命令,变成继续执行

ctrl + z:可以将一个正在前台执行的命令放到后台,并且暂停

ctrl+h: 在shell就是向左删除的作用

10.产生死锁的四个必要条件

(1) 互斥条件:一个资源每次只能被一个进程使用。(2) 占有且等待:一个进程因请求资源而阻塞时,对已获得的资源保持不放。(3)不可强行占有:进程已获得的资源,在末使用完之前,不能强行剥夺。(4) 循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系。这四个条件是死锁的必要条件,只要系统发生死锁,这些条件必然成立,而只要上述条件之一不满足,就不会发生死锁。

11.info threads命令

backtrace bt 打印当前的函数调用栈的所有信息。

info threads 显示当前可调试的所有线程,每个线程会有一个GDB为其分配的ID,后面操作线程的时候会用到这个ID。前面有*的是当前调试的线程。

set scheduler-locking 线程调试 显示线程状态,off 不锁定任何线程

info break 可列出所有断点信息,info break 后也可设置要查看的break num

12.grep命令

grep是linux强大的文本搜索工具,能够使用正则表达式搜素文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。

-E  表示使用扩展表达式

^:匹配正则表达式的开始行。

$: 匹配正则表达式的结束行。

13.linux命令执行成功后会返回

和C语言里的main函数一样,正确返回0,其他的数字代表各种各样的错误

14.dns服务主配置文件

named.conf

15.替换命令

:s/p1/p2/g: 将当前行中所有p1均用p2替代
:n1,n2s/p1/p2/g: 将第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g: 将文件中所有p1均用p2替换

16.top netst free df命令

top查看CPU占用 netst查看网络 free看内存 df是查看磁盘空间

17.打包压缩命令

-c 建立压缩文件

-v 压缩的过程显示文件

-f 使用档名

-z 是否具有gzip属性

# tar -cvf /tmp/etc.tar /etc <==仅打包,不压缩!

#tar -zcvf /tmp/etc.tar.gz /etc <==打包后,以 gzip 压缩

18.fork函数

fork译为 复刻,是UNIX或类UNIX中的分叉函数,fork函数将运行着的函数分成两个完全一样的的进程

Fork后子进程保留父进程的环境变量和当前变量

19.进程间的通信

用于进程间通讯(IPC)的四种不同技术:
1.消息传递(管道,FIFO,posix和system v消息队列)
2.同步(互斥锁,条件变量,读写锁,文件和记录锁,Posix和System V信号灯)
3.共享内存区(匿名共享内存区,有名Posix共享内存区,有名System V共享内存区)
4.过程调用(Solaris门,Sun RPC)

20.SUID SGID

SUID 是 Set User ID, SGID 是 Set Group ID的意思。

SUID的作用就是:让本来没有相应权限的用户运行这个程序时,可以访问没有权限访问的资源。

为什么需要扩展权限呢?

因为特殊权限可以扩展系统基础权限的功能,使得linux权限更加强大灵活。


以上是关于Linux零碎知识的主要内容,如果未能解决你的问题,请参考以下文章

Linux学习笔记,零碎知识点整理 —— 运维

ping 的零碎知识

计算机相关零碎知识(持续更新)

iOS开发零碎知识点

零碎知识点整理

python零碎知识点积累