嵌入式基础总结2

软件包管理

软件包管理机制:

Debian Linux首先提出“软件包”的管理机制——Deb软件包

Redhat Linux基于这个理念推出了自己的软件包管理机制——Rpm软件包

软件包:

二进制包:它包含可执行文件、库文件、配置文件、man/info页面、版权声明和其它文档

源码包: 包含软件源代码、版本修改说明、构建指令以及编译工具等

软件包的命名规则:

eg:
rxvt_1%3a2.6.4-14_i386.deb
软件名
版本号
修订版本号(次版本号)

软件包管理工具:

作用:安装、查询、卸载…

[1]. dpkg:

	dpkg -i <package>    安装一个在本地文件系统上存在的Debian软件包
	dpkg -r <package>    移除一个已经安装的软件包
	dpkg -P <package>    移除已安装软件包及配置文件(P是大写的)
	dpkg -L <package>    列出安装的软件包清单
	dpkg -s <package>    显出软件包的安装状态
		
[2]. APT:APT系列工具是Deb软件包管理工具中功能最强大的。


	Ubuntu采用集中式的软件仓库机制
	
	镜像服务器站点列表:/etc/apt/sources.list

	镜像服务器站点软件包列表:/var/lib/apt/lists
	
	使用apt下载的软件存放的位置:/var/cache/apt/archives
更新软件包信息:
	sudo apt-get update
apt工具相关命令:

	apt-get:用于管理软件包,包括安装、卸载、升级等操作;
	
		格式:apt-get  subcommands   [选项]  操作对象
		
		子命令:
		
			update			更新软件源列表
			install			安装
			remove			卸载
			clean			删除缓存中的软件包
			check			检测依赖关系
			upgrade			更新所有的软件
			
		选项:
		
			--purge			和remove一起使用,卸载软件的时候将配置文件一起删除
			--reinstall		重新安装软件包
			-f				修复系统中存在的软件包依赖性问题	
	
	apt-cache:用于查询软件包信息;
	
	
		子命令:
			
			showpkg			获取二进制软件包的常规描述信息
			showsrc			获取源码包的详细描述信息
			show			获取二进制软件包的详细描述信息	
			depends			获取该软件包的依赖信息
			rdepends		获取所有依赖于该软件包的软件包
			policy			获取软件包当前的安装状态

shell命令

  1. shell是什么

命令行解释器

  1. shell有什么作用:

[1]. 解析命令
[2]. 保护内核

  1. shell的种类:

    Bourne Shell(简称sh)
    Bourne Again Shell(简称bash)

    1. shell命令行格式:

命令行提示符:

linux @ ubuntu : ~ $/#
登录用户的用户名 主机名 路径 $:普通用户
#:超级用户(root用户)
格式:

命令 [选项] [操作对象]

  1. shell执行过程:

    用户在命令行提示符下键入命令文本,开始与Shell进行交互。
    接着,Shell将用户的命令或按键转化成内核所能够理解的指令
    控制操作系统做出响应,直到控制相关硬件设备。
    然后,Shell将输出结果通过Shell提交给用户。

    1. shell命令体验:

shell关机、重启命令

sudo shutdown -h +45 “That is all, game over.”

-h :关机
+45:关机时间(45min后)
“string”:关机提示

sudo shutdown -r +60

-r : 重启
+60: 重启时间(60min后)

  1. 查看命令行的历史记录:
    history

    !编号 —>>> 执行编号所对应的命令
    !命令的首字母 —>>> 执行最近匹配到的命令

修改历史命令行数:

修改家目录下.bashrc配置文件

HISTSIZE=100
HISTFILESIZE=2000

  1. shell的特殊字符:

[1]. 通配符:

*: 匹配所有长度的字符串
?: 匹配一个长度的字符
[…]: 匹配方括号中列举的所有字符

[2]. 管道 |

命令1 | 命令2

将命令1 的输出作为命令2 的输入

wc

选项:

-l:行数
-w:单词数

[3]. 输入输出重定向

标准输入:键盘、鼠标
标准输出:终端

输出重定向:

: 覆盖的方式进行重定向

: 追加的方式进行重定向

输入重定向:

< file:将file文件重定向为输入源

错误重定向:

2> / &>

[4]. 命令置换

``

命令1 命令2

命令2 的 输出作为命令1 的参数

eg: ls pwd

  1. shell常用命令

man : an interface to the on-line reference manuals

1 Executable programs or shell commands
2 System calls (functions provided by the kernel)
3 Library calls (functions within program libraries)

passwd: change user password

格式:passwd [选项] [要修改的用户登录名]

su: change user ID or become superuser

su 普通用户用户名

sudo su 切换超级用户

echo:display a line of text

eg:echo “字符串”

date:

显示或修改日期

clear: 清屏 <==> ctrl + l

df: 查看磁盘使用情况

-a: 显示所有的文件系统所用情况
-T: 显示文件系统类型
-h: 大小以方便读的方式显示

eg:df -Tah
Filesystem Type Size Used Avail Use% Mounted on

/dev/sda1     ext4     29G  9.6G   18G  35% /

du: 列出目录和文件所使用的磁盘块数,每块占512个字节

-a :仅列出空闲的文件数
-k :列出磁盘的使用情况(KB)
-s :列出总的空闲空间(KB)

  1. 用户管理

/etc/passwd

linux : x : 1000 : 1000 : linux, : /home/linux :
用户名 密码 用户ID 组ID 用户信息 linux用户的家目录

/bin/bash
命令行解析器

/etc/shadow

root: ! : 15605 :0 : 99999 : 7 : : :
用户名 密码 创建时间 密码修改间隔 密码有效期 警告时间 密码过期后的宽限天数 账号失效时间
0:立即失效
-1:不会失效

/etc/skel —>>> 模板目录

/etc/adduser.conf —>>> 添加用户配置文件

[1]. 创建用户:

adduser [options] [–home DIR] [–shell SHELL] [–no-create-home] [–uid ID]
[–gid ID] user

[2]. passwd 命令修改密码:

-S :查询用户状态
-l :暂时锁定用户
-u :解锁用户
–stdin:可以通过管道输出的数据作为用户的密码

echo “123” | passwd --stdin xxx

[3]. usermod:修改用户属性

-u UID
-G 组名 //eg:usermod -G linux usr2 将usr2用户添加到linux组
-L 暂时锁定用户
-U 解锁用户

举例用户oldname改名为newname,注意要同时更改家目录:
usermod –d /home/newname –m –l newname oldname

sudo usermod -G linux,usr1,usr2 usr3

  1. 删除用户deluser
    deluser --remove-home user1

–remove-home : 同时删除家目录

  1. 进程管理

进程:程序的一次执行过程

a.out —>>> ./a.out

ps aux

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
用户名 进程ID CPU占用率

D uninterruptible sleep (usually IO)
R running or runnable (on run queue) 正在运行或可运行(在运行队列上)
S interruptible sleep (waiting for an event to complete) 可中断睡眠(等待事件完成)
T stopped, either by a job control signal or because it is being traced. 停止,要么是由于作业控制信号,要么是因为它正在被跟踪。
X dead (should never be seen) 死亡(不应该被看到)
Z defunct (“zombie”) process, terminated but not reaped by its parent. 终止的进程,但其父进程未收割。

top 查看进程实时的信息

kill : send a signal to a process

-l:查看当前系统支持的信号类型

  1. SIGKILL

kill -9 pid

pstree 显示进程的关系

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值