Linux笔记
# 系统安装
国内源镜像加速地址:https://jingxiangmao.com/sourcelist/
安装系统至少需要分配三个分区
分区 | 分区名 | 分区类型 | 文件系统 |
---|---|---|---|
/boot | 引导分区,建议1GB | 主分区 | ext4 |
swap | 交换分区,按需分配 | 主分区 | 无 |
/ | 根目录,新手建议剩余全部 | 主分区 | ext4 |
# 系统信息查看
# 架构信息
通过uname -m
命令查看系统架构信息,然后在下面的表格中找到对应的架构信息
$ uname -m
x86_64
输出 | 架构 |
---|---|
i386, i686 | i386 |
x86_64 | amd64 |
arm, arme | arm_garbage |
armv7l, armhf | armv7 |
aarch64, armv8l | arm64 |
mips | mips |
mips64 | mips64 |
# 硬件信息
CPU型号核心数
$ lscpu
架构: x86_64
CPU 运行模式: 32-bit, 64-bit
Address sizes: 46 bits physical, 48 bits virtual
字节序: Little Endian
CPU: 4
在线 CPU 列表: 0-3
厂商 ID: GenuineIntel
型号名称: Intel(R) Xeon(R) CPU E5-2680 v4 @ 2.40GHz
CPU 系列: 6
型号: 79
每个核的线程数: 1
每个座的核数: 4
......
内存信息
其中manufacturer
代表厂商,part number
代表型号规格,speed
代表频率和速度
$ dmidecode -t memory
# dmidecode 3.3
Getting SMBIOS data from sysfs.
SMBIOS 2.8 present.
Handle 0x1000, DMI type 16, 23 bytes
Physical Memory Array
Location: Other
Use: System Memory
Error Correction Type: Multi-bit ECC
Maximum Capacity: 4 GB
Error Information Handle: Not Provided
Number Of Devices: 1
Handle 0x1100, DMI type 17, 40 bytes
Memory Device
Array Handle: 0x1000
......
# 资源使用情况
# CPU和内存
CPU内存使用情况可以通过top
命令查看,也可以使用增强版的htop
命令,top
命令是系统自带的,htop
命令可能需要额外安装
# 执行top命令的打印
$ top
top - 18:02:58 up 2 days, 2:24, 1 user, load average: 0.73, 0.25, 0.14
任务: 204 total, 1 running, 203 sleeping, 0 stopped, 0 zombie
%Cpu(s): 1.5 us, 2.9 sy, 0.0 ni, 95.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
MiB Mem : 3904.5 total, 1026.5 free, 1412.3 used, 1465.7 buff/cache
MiB Swap: 0.0 total, 0.0 free, 0.0 used. 2219.2 avail Mem
进程号 USER PR NI VIRT RES SHR %CPU %MEM TIME+ COMMAND
# 汉化top命令打印结果
$ top
top - 18:02:58 已运行 2 天, 2:24, 1 用户, 平均负载: 0.73, 0.25, 0.14
任务: 204 总数, 1 运行中, 203 睡眠中, 0 已停止, 0 僵尸进程
%Cpu(s): 1.5 用户态, 2.9 系统态, 0.0 改变过优先级, 95.6 空闲, 0.0 等待IO, 0.0 硬中断, 0.0 软中断, 0.0 虚拟机时间
MiB 内存 : 3904.5 总数, 1026.5 空闲, 1412.3 已使用, 1465.7 缓存
MiB 交换空间: 0.0 总数, 0.0 空闲, 0.0 已使用. 2219.2 可用内存
进程号 用户 优先级 改变过优先级 虚拟内存 实际内存 共享内存 CPU占用率 内存占用率 运行时间 命令
# 查看实时网速
查看实时网速需要使用ifstat
命令,直接输入即可,如果命令不存在可以apt安装
# 安装ifstat命令
$ sudo apt install -y ifstat
# 直接使用ifstat就可以查看网速,但是一般建议搭配参数使用,效果更好
$ ifstat -S -i eth0 -t 1
# 这里对常用参数进行介绍
-S # 默认打印网速是一行一行打印的,很快铺满屏幕,-S后只会在一行内来回刷新
-i # 默认打印所有网卡的网速信息,如果只想看eth0网卡的网速信息就使用 -i
-t # 默认网速是每秒钟更新一次,可以使用-t指定更新频率
# 硬盘存储
# 硬盘分区信息查看,使用参数可查看分区UUID
$ lsblk
-a:显示所有设备(包括未挂载的)
-f:显示UUID以及分区使用情况
-t:显示设备的拓扑关系
-p:显示文件系统
-J:以JSON格式显示
# 查看挂载点使用情况
$ df -h
-a:显示所有挂载点
-h:以可读的存储单位显示(KB,MB,GB)
# 查看目录/文件使用情况
$ du -ah --max-depth=1
-h:以可读的存储单位显示(KB,MB,GB)
-s:查看当前目录总占用大小
-a:查看文件,默认只查看目录,不可与-s同时使用
--max-depth:统计深度
--exclude:排除条件
# VIM相关笔记
快捷键
# 复制行:yy,复制5行:5yy
# 删除行:dd,删除5行:5dd
# 粘贴复制的行:p
# 回退到上一步:u
# 撤销上一步的回退:Ctrl + R
指令
# 显示/关闭行号
:set nu
:set nonu
# 开启/关闭自动缩进
:set paste
:set nopaste
# 替换内容,带%表示全文,不带%表示当前行
%s/aaa/bbb/g
# 查找内容,快捷键n为下一条,N为上一条
/aaa
# 关闭查找高亮
:nohlsearch
配置文件
有些配置写在VIM配置文件中,例如我个人不喜欢VIM的自动缩进,可以将set paste
指令写入配置文件
# 编辑VIM系统配置文件,对所有用户生效
$ vim /etc/vim/vimrc
# 如果用户目录下有配置文件,也可以修改用户文件仅对当前用户生效
$ vim ~/.vimrc
关闭VIM可视化鼠标事件
# 移动到该目录,然后查看该目录的文件信息
$ cd /usr/share/vim
$ ll
总计 12
drwxr-xr-x 2 root root 4096 5月 4日 10:24 addons
drwxr-xr-x 2 root root 4096 5月 4日 10:24 registry
drwxr-xr-x 18 root root 4096 8月23日 04:44 vim90
# 该目录下有个vim开头的目录,我这里是vim90,移动到该目录下
$ cd vim90
# 编辑defaults.vim文件
$ vim defaults.vim
# 在文件中找到if has('mouse')命令,注释相关代码即可
"if has('mouse')
" if &term =~ 'xterm'
" set mouse=a
" else
" set mouse=nvi
" endif
"endif
# SSH端口,ROOT远程
# 编辑配置文件找到PermitRootLogin解开注释并修改为yes
# 找到Port属性并解开注释,这里强烈建议修改SSH端口号防止爆破,注意重配防火墙
$ vim /etc/ssh/sshd_config
# 重启sshd服务,就可以正常连接了
$ systemctl restart sshd
# 长命令起别名
Debian系用户配置文件为~/.bashrc
,全局配置文件为/etc/bash.bashrc
# 编辑配置文件
$ vim /etc/bash.bashrc
# 找到现有alias的位置,在结尾添加下面这段内容
alias ll='ls -lhF'
alias rm='rm -i'
alias df='df -Th'
alias docker='sudo docker'
alias dk='sudo docker'
alias dkc='sudo docker compose'
# 更新配置文件
$ source /etc/bash.bashrc
# 常用命令笔记
这里记录一些常用的命令,用的时候方便查阅
# 查找命令
# find 范围 选项 选项值
# 从根目录内查找名字为 1.txt 的文件
$ find / -name 1.txt
# 查找/opt目录下大于100MB的文件
$ find /opt -type f -size +100M
# locate 查找条件
# 查找 1.txt 文件
$ locate 1.txt
# 长时间未使用locate需要更新数据库
$ updatedb
# 命令不存在可以安装mlocate
# 文件上传下载
建议自己备一份 Debian 和 RedHat 的lrzsz
安装包用此命令上传后安装,防止电脑无法安装 XFTP 的情况,文件命名最好避免中文名称,防止文件上传后出现乱码现象
# 将本地文件上传至服务器
$ scp /路径/文件名 用户名@远程服务器:/路径/文件名
# 反之则是将服务器文件下载至本地
$ scp 用户名@远程服务器:/路径/文件名 路径/文件名