一、Linux文件目录及指令
1.1、 Linux系统下下列目录的用途
/ :根目录
/bin 二进制可执行命令
/dev :设备文件目录
/home:用户配置文件目录
/root: 系统管理员的主目录
/tmp:公共的临时文件储存点
/boot:存放引导加载器使用的文件目录
1.2. 下列文件代表什么意思
/dev/sda: 表示第一个SCSI硬盘/sda:第二块硬盘
/dev/sda1:表示第一块SCSI硬盘的第一个主分区
/dev/hda:表示第一个ide硬盘/hab:第二块硬盘
/dev/sd 串行设备 【sata scsi】
/dev/hd 并行设备
/dev/vd 虚拟设备
1.3. Systemctl命令的用途?
控制系统服务的命令行工具,主要用于管理和控制系统的启动,停止,重启,开机自启动等操作,时systemed系统的和服务管理的一部分,可以在大多Linux的操作系统中使用。即:
启动、重启和停止服务
开启和关闭服务的自动启动
查看服务的状态信息
列出所有可用的服务
显示服务的依赖关系
执行服务的单个任务
1.4. Swap
协调内存和硬盘操作速度差异,在硬盘上独立开辟的一片空间,在操作系统运行过程中,如果需要从硬盘读取信息时,先从swap检查是否有缓冲内容,有直接读取,没有才去读取实际硬盘空间。
1.5. Linux安装过程中都做了哪些系统配置
内存/cpu/空间分配/用户
二、 linux安装
2.1. 选择ubuntu的lts(长期技术支持)版本,每年发布的04版本为测试版 ,10版本为稳定版.
2.2. 开始安装ubuntu,选择“正常安装”,取消“安装时下载更新”
2.3.选择对磁盘收到分配空间
一块新的磁盘并不能直接使用=>磁盘初始化 => 分区/格式化操作
新的硬盘先“选择新建分区表”=> 磁盘设备的初始化
2.4. 磁盘分区
A. 识别磁盘
所有的设备在目录/dev
硬盘的识别:
/dev/sd 串行设备 【sata scsi】
/dev/hd 并行设备
/dev/vd 虚拟设备
/dev/sda 第1个串口硬盘
/dev/sda1 第1个串口硬盘的第1个分区
/dev/sda2 第1个串口硬盘的第1个分区
先选择空间分区=> “+” (新增分区)
B. Linux系统运行必须得两个分区:
(1)/:安装了Linux系统以及你自己的用户文件
(2)Swap => 交换分区 :分区的大小一般建议和你机器上安装的内存大小相当一般为内存的1-2倍
(3)如果没有特殊需求,可以直接将剩余空间放入1个分区,该分区的目录[挂载点]是:/
(4)以下系统目录默认都可以独立划分到另一个分区
/boot 引导文件目录=>grub/内核文件:存储引导加载程序和内核等启动相关的文件
/home 用户的配置文件目录,用于存储用户的个人文件和设置
建议的分区方案:
关于SWAP分区?
交换分区【windows下交页面文件(虚拟内存)】
推荐学习计算机方向的原理书籍:
计算机组成原理
操作系统原理
【图灵计算机书籍】
三、虚拟机操作及基本命令:
3.1、虚拟机的克隆与快照:
快照:1. 虚拟机标题处[右键] => 快照=>拍摄快照 ,保存当前虚拟机的状态,将来可以直接恢复到该状态
克隆:需要先关机再克隆。1. 关机=> 虚拟机标题处[右键] => 管理=> 克隆
3.2、基本命令:
3.2.1、关机指令
poweroff
shutdown -h
init 0
3.2.2.ifconfig :
查看本地网络配置:不支持需要先安装net-tools
sudo apt install net-tools
安装慢建议切换为国内安装源,因为权限问题,建议直接切换为root操作
su进入管理员模式
打开sources文件
gedit /etc/apt/sources.list
删除原内容,粘贴新的安装源:
sudo apt update
3.2.4、Ubuntu采用Debian软件技术,两个命令来维护软件
Apt => 在线维护
Dpkg => 本地维护
安装ssh-server => ssh:安全远程终端【非对称加密技术】
(1) apt list 列出所有可用软件包
apt list|grep ssh 从安装包列表结果中筛选需要的ssh
(2) apt search ssh 搜索软件包
(3) apt install openssh-server
(4) dpkg -l 查看所有已安装的软件列表
dpkg --list 查看所有已安装的软件列表
Linux系统下,命令的参数 -简写 --全写 不得混用
(5)启动ssh服务
Systemctl status /stop/start/restart ssh 看状态/停止/启动/重新启动
Systemctl enable/disable ssh 设置开机自启/禁用开机自启
(6)在windows下使用命令远程登录ubuntu
使用专业的ssh终端软件登录ubuntu => 选择new session
SecureCrt => 命令终端
WinSCP => 方便进行ubunut系统文件的维护
MobaXterm_Personal_23.1 => 命令终端+文件维护
( 7)dpkg 本地软件维护
Dpkg -i 软件包名称
(8) 安装vscode+gcc的C开发环境
A.安装gcc和g++
Sudo apt install gcc
Sudo apt install g++
四、Linux软件管理:Debian(.deb)
4.1、Apt 在线管理
(1) apt list =>列出所有可安装的软件名
筛选:apt list |grep 软件包名
查找软件包命令:apt search
(2) 安装:apt install +软件名
(3) 检查本地已安装的软件名:dpkg –list
筛选:dpkg –list|grep +软件包名
(4) 删除软件包::apt remove +软件名
4.2、 Dpkg => 本地管理
(1) dpkg -i 软件安装包的文件名(.deb)
dpkg --install
(2) dpkg -r 软件名
dpkg --remove 软件名
dpkg -s
dpkg -S
4.3、 安装vscode+gcc的C开发环境
(1) sudo apt install gcc
(2) dpkg –i code_1.85**x64.deb
(3) 运行vscode,打开1个目录,然后新建.c文件
(4) 安装支持c/c++的扩展,编译执行.c
五、Linux基本指令:
A.文件管理命令
1.cd 进入目录
2.pwd 查看自己当前所在的目录
3.mkdir 创建目录
4.rmdir 删除目录
6.rm 删除文件 -r -f
7.cp 复制文件【拷贝文件】
8.clear 清除屏幕
9.history
!行号 => 行某行历史命令
10.mv 移动文件
11.ls 查看文件详细信息
ls –d
ls -l
ls –d -l
ls –ld
12. touch
补充:
两个特殊的文件名
1. . 当前目录
2. .. 父目录
文件路径:
1. 相对路径 =>以自己当前所在的路径作为文件名的起点
2. 绝对路径 =>以计算机的最顶级目录/作为文件名的起点
查看命令帮助
1. whatis 命令 =>命令的简单说明
2. which 命令 =>查询命令的详细路径
3. man 命令 =>系统man手册
[查命令/可查软件帮助/可查配置帮助]
六、makefile
代码管理工具=> 通过比对最终生成的目标文件和依赖文件的修改时间,来确定是否需要更新目标文件。如果有某一个依赖的最后修改时间晚于目标文件,则认为目标文件非最新版,需要更新。检查依赖关系,把和所有有更新的依赖文件和目标文件有关系的全部自动重新生成并更新最终目标文件。
需要在项目目录下新建1个文件 makefile
编写规则,规则语法如下:
目标:依赖项命令
Mafile中的两个特殊函数:
Wildcard : 搜索指定目录下的所有按通配符匹配的文件项,构造列表
Patsubst :按规则替换目标列表中的所有项目【依次取出列表中的项目,按命令转换】
七、阅读文本文件的命令
1. more:分页读文件
2. Cat:读取文件输出到屏幕
3. Less:随机读文件
4. Head:从头部读 -n 行数
5. Tail:从尾部读 -n 行数
八、用户管理
8.1、基本指令:
1. useradd adduser
Useradd 用户名 -d 家目录 -m -G 附加组 -u uid
2. Passwd 用户名
3. Usermod:修改用户信息
4. Userdel
Useradd 用户名
Useradd 用户名 -r
5. Id
6. Finger => 先安装sudo apt install finger
write 用户名 pts/1 => write 用户 终端号
补充:Chown 更改文件的所属者/所属组
Chown 用户名:组名 文件名
8.2、用户信息的配置文件
1. /etc/passwd 用户基本信息
2. /etc/group 组信息
3. /etc/shadow 用户安全配置
九、VIM
9.1、安装vim:
sudo apt install vim
9.2、打开文件
vi 文件名
9.3、 三种模式
A.命令模式 按ESC键
B.编辑模式 按i、a、o进入编辑模式
C.末行模式 按ESC键,输入: =>能看见界面的最末行有:,表示切换成功
9.4、常用的基本命令
1、删除光标所在的整行【dd】(在命令模式下)
2、删除从光标所在行开始的多行【3dd】【4dd】...(数字表示删除的行数)
3、复制光标所在的整行【yy】
4、复制从光标所在行开始的多行【5yy】(数字表示复制的行数)
5、将复制或删除的行插入到光标所在行的下面【p】
将复制的内容粘贴多行【7p】
6、查找和替换一次当前行的某个内容【:s/查找的内容/替换的内容】
7、查找和替换所有当前行的某个内容【:s/查找的内容/替换的内容/g】
8、查找和替换指定行的某个内容【:1,6s/查找的内容/替换的内容/g】(第1 行 到第6行)
9、给文本内容显示行号【:set nu】
10、去掉文本显示的行号【:set nonu】
9.5、末行模式常用的功能
W:保存
Wq:保存并退出
Q:退出
Wq!:强制退出不保存
Set nu
Set number:在 Vim 中显示行号
十、linux中的文件
1. Linux系统下文件的扩展名没意义。
2. Linux文件类型:
L s - d p c b
3. Linux系统下的两个特殊文件
4. /dev/null 黑洞文件
5./dev/zero 零字符设备文件 => 取0