命令模式

strace命令

末鹿安然 提交于 2020-03-04 15:14:07
简介 strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通 过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执行消耗的时间。 输出参数含义 root@ubuntu:/usr# strace cat /dev/null execve("/bin/cat", ["cat", "/dev/null"], [/* 22 vars */]) = 0brk(0) = 0xab1000access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f29379a7000access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)...brk(0) = 0xab1000brk(0xad2000) = 0xad2000fstat(1, {st_mode=S_IFCHR|0620, st

查看Linux进程状态

时光总嘲笑我的痴心妄想 提交于 2020-03-04 14:26:11
一、使用top命令可提供实时的系统处理器的状态监视,它是一个动态的显示过程: 1、第一行的显示的内容是系统的运行状态,同uptime命令 top 22:22:44 当前时间 up 2:45 系统运行时间,格式为时:分 1 user 当前登录用户数 load average: 0.00, 0.00, 0.00 系统负载,即任务队列的平均长度。 三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。 2、第二、三行为进程和CPU信息 Tasks: 83 total 进程总数 1 running 正在运行的进程数 82 sleeping 睡眠的进程数 0 stopped 停止的进程数 0 zombie 僵尸进程数 Cpu(s): 0.0% us 用户空间占用CPU百分比 0.7% sy 内核空间占用CPU百分比 0.0% ni 用户进程空间内改变过优先级的进程占用CPU百分比 98.7% id 空闲CPU百分比 0.0% wa 等待输入输出的CPU时间百分比 0.0% hi 0.0% si 0.0% st 3、第四、五行为内存信息 Mem: 1020540k total 物理内存总量 180324k used 使用的物理内存总量 840216k free 空闲内存总量 13256k buffers 用作内核缓存的内存量 Swap: 2064376k total 交换区总量 0k

Linux学习笔记

我只是一个虾纸丫 提交于 2020-03-04 12:58:47
Linux学习文档 简介 Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。 Linux 能运行主要的 UNIX 工具软件、应用程序和网络协议。它支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。 系统启动过程 Linux系统的启动过程并不是大家想象中的那么复杂,其过程可以分为5个阶段: 内核的引导。 运行 init。 系统初始化。 建立终端 。 用户登录系统。 init程序的类型: SysV: init, CentOS 5之前, 配置文件: /etc/inittab。 Upstart: init,CentOS 6, 配置文件: /etc/inittab, /etc/init/*.conf。 Systemd: systemd, CentOS 7,配置文件: /usr/lib/systemd/system、 /etc/systemd/system。 内核引导 当计算机打开电源后,首先是BIOS开机自检,按照BIOS中设置的启动设备(通常是硬盘)来启动。 操作系统接管硬件以后,首先读入 /boot 目录下的内核文件。 运行级别 许多程序需要开机启动。它们在Windows叫做"服务"(service)

iwlist/iwconfig/iw命令

陌路散爱 提交于 2020-03-04 08:29:36
iwlist/iwconfig/iw命令 1、iwlist 命令:用于对/proc/net/wireless文件进行分析,得出无线网卡相关信息 # iwlist wlan0 scanning 搜索当前无线网络 # iwlist wlan0 frequen 显示频道信息 # iwlist wlan0 rate 显示连接速度 # iwlist wlan0 power 显示电源模式 # iwlist wlan0 txpower 显示功耗 # iwlist wlan0 retry 显示重试连接次数(网络不稳定查看) # iwlist wlan0 ap 显示热点信息 # iwlist --help 显示帮助信息 # iwlist --version 显示版本信息 2、iwconfig 系统配置无线网络设备或显示无线网络设备信息。iwconfig 命令类似于ifconfig命令,但是他配置对象是无线网卡,它对网络设备进行无线操作,如设置无线通信频段 auto 自动模式 essid 设置ESSID nwid 设置网络ID freq 设置无线网络通信频段 chanel 设置无线网络通信频段 sens 设置无线网络设备的感知阀值 mode 设置无线网络设备的通信设备 ap 强迫无线网卡向给定地址的接入点注册 nick<名字> 为网卡设定别名 rate<速率> 设定无线网卡的速率 rts<阀值>

Linux的gdb调试命令(详细)

↘锁芯ラ 提交于 2020-03-04 06:23:22
转自: https://blog.csdn.net/gatieme/article/details/51671430 程序的调试过程主要有:单步执行,跳入函数,跳出函数,设置断点,设置观察点,查看变量。 本文将主要介绍linux下的强大调试工具是怎么完成这些工作的。 之所以要调试程序,是因为程序的运行结果和预期结果不一致,或者程序出现运行时错误。 调试的基本思想是: 分析现象 -> 假设错误原因 -> 产生新的现象去验证假设 调试器(如GDB)的目的是允许你在程序运行时进入到某个程序内部去看看该程序在做什么,或者在该程序崩溃时它在做什么。 GDB主要可以做4大类事(加上一些其他的辅助工作),以帮助用户在程序运行过程中发现bug。 * 启动您的程序,并列出可能会影响它运行的一些信息 * 使您的程序在特定条件下停止下来 * 当程序停下来的时候,检查发生了什么 * 对程序做出相应的调整,这样您就能尝试纠正一个错误并继续发现其它错误 您能使用GDB调试用C、C++、Modula-2写的程序等GNU Fortran编译器准备好过后,GDB将提供对Fortran的支持 gdb参数选项详解 gcc调试相关编译选项 GDB通过在命令行方式下输入gdb来执行。启动过后,GDB会从终端读取命令,直到您输入GDB命令quit使GDB退出。您能通过GDB命 gcc -g main.c 1

Linux命令中使用正则表达式

倾然丶 夕夏残阳落幕 提交于 2020-03-04 05:31:14
在使用grep、awk和sed命令时,需要使用正则表达式。 比如我通过grep找代码编译结果中是否有错误。或者是否有我代码的错误。 这里说下正则表达式基本的应用: • 匹配行首与行尾。 • 匹配数据集。 • 只匹配字母和数字。 • 匹配一定范围内的字符串集。 ^ 只匹配行首 $ 只匹配行尾 * 一个单字符后紧跟*,匹配0个或多个此单字符 [] 匹配[]内字符,可以是一个单字符,也可以是字符序列。可以使用 - 表示[]内字符序列范围,如用[1-5]代替[12345] \ 用来屏蔽一个元字符的特殊含义。因为有时在shell中一些元字符有特殊含义。\可以使其失去应有含义。 . 匹配任意单字符 pattern\{n\} 用来匹配前面pattern出现次数。n为次数 pattern\{n,\} 含义同上,但次数最少为n patter\{n,m\} 含义同上,但pattern出现次数在n与m之间 使用句点匹配单字符 句点“.”可以匹配任意单字符。例如,如果要匹配一个字符串,以be g开头,中间夹一个 任意字符,那么可以表示为be g . n,“.”可以匹配字符串头,也可以是中间任意字符。 在ls-l命令中,可以匹配一定权限: .. . x . . x . . x 此格式匹配用户本身,用户组及其他组成员的执行权限。 ~$ ls -l |grep ...x..x..x drwxrwxrwx 1

NVIDIA-SMI系列命令总结

风格不统一 提交于 2020-03-04 05:21:25
转载自: https://blog.csdn.net/handsome_bear/article/details/80903477 文章目录 1 NVIDIA-SMI介绍 2 NVIDIA-SMI命令系列详解 2.1 nvidia-smi 2.2 nvidia-smi -q 2.3 设备修改选项 2.4 nvidia-smi dmon 2.5 nvidia-smi pmon 2.6 [nvidia-smi实时刷新并高亮显示状态](https://www.cnblogs.com/haiyang21/p/7725469.html) 1 NVIDIA-SMI介绍 nvidia-smi 简称 NVSMI,提供监控GPU使用情况和更改GPU状态的功能,是一个跨平台工具,它支持所有标准的NVIDIA驱动程序支持的Linux发行版以及从WindowsServer 2008 R2开始的64位的系统。该工具是N卡驱动附带的,只要安装好驱动后就会有它。 Windows下程序位置:C:\Program Files\NVIDIACorporation\NVSMI\nvidia-smi.exe。 Linux下程序位置:/usr/bin/nvidia-smi,由于所在位置已经加入PATH路径,可直接输入nvidia-smi运行。 2 NVIDIA-SMI命令系列详解 2.1 nvidia-smi

FFmpeg初遇见_基本命令

拟墨画扇 提交于 2020-03-04 00:34:27
一、FFmpeg的故事 1.FFmpeg是什么? 从百度百科中来看,FFmpeg是一套可以用来 记录、转换数字音频、视频,并能将其转化为流的开源计算机程序 。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多code都是从头开发的。 官网:https://www.ffmpeg.org/ github地址:https://github.com/FFmpeg/FFmpeg 补充知识:音视频格式的基本概念 音/视频流 在音视频领域,我们把一路音/视频称为一路流。如我们小时候经常使用VCD看港片,在里边可以选择粤语或国语声音,其实就是CD视频文件中存放了两路音频流,用户可以选择其中一路进行播放。 容器 我们一般把 MP4、 FLV、MOV等文件格式称之为容器。也就是在这些常用格式文件中,可以存放多路音视频文件。以 MP4 为例,就可以存放一路视频流,多路音频流,多路字幕流。 channel channel是音频中的概念,称之为声道。在一路音频流中,可以有单声道,双声道或立体声。 2.FFmpeg的组成 构成FFmpeg主要有三个部分。 第一部分 第一部分是三个作用不同的工具软件,分别是:ffmpeg.exe,ffplay.exe,ffprobe

Linux系统基础优化

给你一囗甜甜゛ 提交于 2020-03-03 23:26:23
第1章 基础环境 第2章 使用网易163镜像做yum源 默认国外的yum源速度很慢,所以换成国内的。 第一步:先备份 mkdir backup mv C* backup/ 第二步:下载163yum源 wget http://mirrors.163.com/.help/CentOS6-Base-163.repo 第三步:清除旧缓存 yum clean all 第四步:创建新缓存 yum makecache 第五步:安装必要的软件包 yum -y install tree nmap sysstat gcc gcc-c++ make telnet 第3章 关闭SElinux功能 SELinux(Security-Enhanced Linux)是美国国家安全局(NSA)对于强制访问控制的实现,这个功能让系统管理员又爱又恨,这里我们还是把它关闭了吧,至于安全问题,后面通过其他手段来解决,这也是大多数生产环境的做法,如果非要开启也是可以的。关闭方式如下。 修改配置文件,使关闭SElinux永久生效: /etc/selinux/config :selinux的配置文件 可以直接vi(vim)修改或者用sed -i直接对配置文件进行修改。 临时关闭SElinux,可在命令行执行如下命令: 命令说明 setenforce:用于命令行管理SELinux的级别,后面的数字表示设置对应的级别

用户/磁盘/内存/网络 管理

旧城冷巷雨未停 提交于 2020-03-03 22:54:56
用户管理 一些细节 root 用户为根用户,也就是 系统管理员 拥有全部权限 一个用户只能拥有一个 GID ,但是还可以归属于其它附加群组 用户管理的重要配置文件: /etc/passwd 用户名 密码位 UID 归属GID 姓名 $HOME目录 登录Shell /etc/shadow 用户名 已加密密码 密码改动信息 密码策略 /etc/group 群组名 密码位 GID 组内用户 /etc/gshadow 群组密码相关文件,不重要 /etc/sudoers 用户名 权限定义 权限 可以使用 pwconv 命令创建影子密码,将 /etc/passwd 文件中的密码转换到 /etc/shadow 文件 su [用户名] 切换到其它用户,默认切换到root用户。提示密码为将切换用户密码 -f 快速切换,忽略配置文件 -l 重新登录 -m , -p 不更改环境变量 -c < 命令 > 切换后执行命令,并退出切换 sudo [命令] 以其它用户的身份执行命令,默认以root的身份执行。提示密码为当前用户密码 -s 切换为 root shell -i 切换为 root shell ,并初始化 -u < 用户名 |UID> 执行命令的身份 -l 显示自己的权限 passwd [用户名] 设定用户密码 -d 清除密码 -l 锁定用户 -e 使密码过期,在下次登录时更改密码 -S