6.22
- 多线程(LWP轻量版的进程):线程是粒度更小的处理单元
- 进程是资源分配的最小单元,线程是调度器进行调度的最小单位
- 线程共享进程的资源,多进程拥有自己独立的资源
- 线程几乎不占用资源,只占用的很小的有关执行状态的资源,大概在(8K)左右
- 线程由于共用进程的资源,所以多线程没有多进程安全,使用多线程是因为开销较小
- 在一个进程内,至少要有一个线程(主线程)
- 因为线程操作函数,需要依赖于第三方库,所以,想使用线程处理函数,需要安装对应的库 sudo apt-get install manpages-posix manpages-posix-dev
答案 C
6.23
- 用户相关的指令
- 创建用户
id -u id -g 查看用户和组用户id
Whoami 查看用户
sudo adduser 用户名 (创建用户)
如何查看用户是否添加成功
- 通过图形化界面,右上角,账号设置
- 通过查看/etc/passwd文件
- /etc/skel:用户的 配置文件模版
- /etc/passwd:保存用户的详细信息
Ubuntu :x: 1000 : 1000: guoq /home/ubuntu: /bin/bash用户名 用户是否加密过 uid gid 用户描述信息 用户家目录 用户使用shell解析器
- /etc/shadow:存放用户的密码,加密的存放
- 给新用户添加sudo权限
报错因为,新创建的用户默认没有sudo 权限
给新用户添加sudo权限的步骤:(建议提前拍一张虚拟机快照)
切换到一个能执行sudo的用户,或者直接切换到root
sudo vim /etc/sudoers
保存退出加 强制执行
- 删除用户
- sudo userdel 用户名 ----->默认不删除家目录
- sudo userdel -r 用户名 -----> 删除家目录
- sudo deluser 用户名 -----> 默认不删除家目录,也不能加-r参数
4.usermod ---->修改用户的信息
前提:保证用户不在登陆状态,没有进程占用
可以开机后,就不登陆该用户
- sudo usermod -c 描述信息 用户名 ------->修改用户的描述信息,图形化界面看到的和开机的显示
- sudo usermod -l 新的用户名 原来的用户名 ------>修改用户名
- sudo usermod -m -d 新的家目录的位置 用户名 ------>修改用户的家目录位置
-m -MOVE -d -HOME_DIR
- sudo usermod -g 目标组 用户名 ------>修改用户的所属组,目标组必须已经存在
- sudo vim /etc/group ------>存放所有组用户的信息
- 磁盘相关的操作
- 保证U盘连接到ubuntu
方法一:VW弹窗,选择链接到虚拟机
方法二:虚拟机---->可移动设备----->选择U盘----->链接
- 查看U盘是否成功连接
ls /dev/sd*,如果ls的结果包含除sda外的其他内容说明U盘连接成功
sda ----->ubuntu的磁盘,sda1表示ubuntu只有一个分区
sdb ----->外部设备/U盘,sdb1表示U盘只有一个分区
- 查看U盘的使用率
如果U盘,挂载到了ubuntu中的具体文件夹下,可以使用df -h查看到
如果没有挂载点,查看不到
- 给U盘分区
- fdisk ----->磁盘分区工具,如果没有fdisk工具,去使用apt下载
- 一定要使用sudo 来完成fdisk相关的操作
- fdisk常用的指令:
- n: 新建分区
- d:删除分区
- P:打印分区
- q:退出
- w:保存退出
- 格式化操作
- mkfs ---->make file system
- Sudo mkfs.要格式化的文件类型 分区
- 按两下tab可以显示,mkfs可以格式化的所有文件系统,常用ntfs(wins),ext3,ext4(ubuntu)
说明格式化成功
- 挂载 --->mount
- sudo mount 要格式化的分区 挂载的 目标路径
- sudo umount 挂载的路径
- Sudo umount 分区名
apt-get:
安装软件
sudo apt-get install 软件名
sudo apt-get install oneko 追鼠标的猫
sudo apt-get install lolcat 渐变色
sudo apt-get install gnome-mines 扫雷
sudo apt-get install cowsay 奶牛说
sudo apt-get install cmatrix 代码雨
卸载软件
sudo apt-get remove 软件名 不完全卸载,不删除配置文件
完全卸载
sudo apt-get remove --purge 软件名 完全卸载,包括配置文件
下载软件包,但是不安装软件
sudo apt-get download 软件名
下载软件源码
sudo apt-get source 软件名
清空安装包
sudo apt-get clean 清空默认下载位置的安装包,/var/cache/apt/archives
dpkg --->离线安装软件
先使用在线下载,把软件安装包下载到ubuntu里
离线安装和在线安装的区别:
- 在线安装会检查软件依赖,并主动安装依赖的软件
- 离线安装不会检查依赖,也不会安装依赖软件
软件包的命名规范
sl _3.03- 17build2_ amd64 .deb
软件名 主版本号 修订版本号 支持64为架构 debian软件包的后缀名
i386支持32位架构 rpm是redhat软件包的后缀名
dpkg--->debian package
离线安装软件的指令
如果没有dpkg工具,手动下载,sudo apt-get install dpkg
安装软件
sudo dpkg -i 软件包名
要求:执行指令的路径下,一定有软件包
卸载软件
sudo dpkg -r 软件名 ---->不完全卸载
完全卸载软件
sudo dpkg -p 软件名
查看软件的安装列表
sudo dpkg -l 软件名
查看软件的安装路径
sudo dpkg -L 软件名
find 查找文件 ,在实际开发的过程中经常用到
- find 查找的路径 -name 文件名 ----->在指定路径下,以文件名为条件查找文件
- find -name 文件名 --->在当前路径下,查找文件
- find -name .c ---->find可以进行模糊查找, 不建议使用
grep ---->查找字符串
- grep 字符串 文件名
- -w:按单词查找
- -R:实现递归查找,主要用于路径是目录的情况
- -i:不区分大小写
- -n:显示行号
- grep -w “^ubuntu” /etc/passwd ---->查找以ubuntu单词作为开头位置的所在行
- grep -w “ubuntu$” /etc/passwd ---->查找以ubuntu为结尾的所在行
- grep -w “^ubuntu$” /etc/passwd ---->查找开头和结尾都是ubuntu的所在行,(这一行只有uubuntu)
cut ---->截取字符串
- cut -d “分隔符” -f “域” 文件名
- 分隔符:要截取的内容以什么作为分隔
- 域:截分隔后的哪一块
- -f后面可以跟的格式
- “3”,“3-4”,“3,4”
tar ---->归档、打包和拆包
归档、打包和拆包后,源 文件仍然存在
- 打包,就是把多个文件合并成一个文件
- tar -cvf 打包后的文件名.tar打包的文件
- -v:显示指令执行的过程
- -c:实现打包功能的
- -f:file -f参数后面一定要跟文件名
打包并压缩
- tar -cvjf 文件名.tar.bz2 要归档压缩的文件
- tar -cvJf 文件名.tar.xz 要归档压缩的文件
- tar -cvzf 文件名.tar.gz 要归档压缩的文件
- 压缩工具的参数和文件的后缀,必须严格对应,如果不对应,不会报错但是生成的不是压缩包
拆包和解压缩
- tar -xvf 要拆包的文件名 ----->万能的拆包解压缩指令,既能完成拆包,也能解压缩
- -x:拆包和解压缩
ln --->创建链接文件
- ln ---->创建硬链接文件
- ln 被链接文件的路径 创建的硬链接文件的路径
- 硬链接文件和源文件有相同的inode号(ls -i)
- #inode号,表示文件存储的扇区,有相同的inode号意味着占用同一片空间,硬链接文件是源文件的别名/保存了一个副本
- 硬链接文件的修改会影响到源文件,源文件的修改也会影响硬链接文件
- ls显示的文件的描述 信息中链接文件的个数,指的是硬链接文件的个数
- 只有硬链接文件个数为0时,文件才被删除
- ln -s ---->创建软链接文件
- ln -s 被链接文件的绝对路径,软链接文件的绝对路径
- ln -s /home/ubuntu/23041c/day2/1.c /home/ubuntu/23041c/100.c
- 给/home/ubuntu/23041c/day2/1.c创建了一个路径为/home/ubuntu/23041c/100.c文件
- 创建软链接文件时,使用绝对路径
- 软链接文件可以理解为快捷方式
- 软链接文件的文件类型是l,它不会增加文件描述中的链接文件个数
- 软链接文件,如果源文件被删除,链接会断开,软链接文件会失效,如果重新创建一个同名的源文件,软链接文件会重新链接,并且链接到新创建的文件
- 软链接文件的修改会影响到源文件,源文件的修改也会影响软链接文件
- wins下不支持软链接文件,Linux下的压缩包不要放到主机下解压
目录文件可以创建软链接文件,不能创建硬链接文件,目录文件默认链接文件个数为2