查看磁盘空间
df -hl:查看磁盘剩余空间
df -h: 查看每个根路径的分区大小
du -sh [目录名]:返回该目录的大小
du -sm [文件夹]:返回该文件夹总M数
du -h [目录名]:查看指定文件夹下的所有文件大小(包含子文件夹)
根目录扩容 为linux的root目录扩容
umount: /home: device is busy
#查看还有多少空间可以使用
可以看到,这里home目录空闲的空间还很大,因此,我们将home的空间分给根目录一些。
df -h
fdisk -l
#扩容根目录的思路
将/home文件夹备份,
删除/home文件系统所在的逻辑卷,
增大/文件系统所在的逻辑卷,增大/文件系统大小,
最后新建/home目录,
并恢复/home文件夹下的内容。
备份/home分区内容
tar -zcvPf /run/home.tar /home
卸载/home
#要先终止所有使用/home文件系统的进程,这里要注意不要在/home目录下执行下面的操作
fuser -km /home
umount /home #卸载
删除/home所在的逻辑卷lv,选择y
lvremove /dev/mapper/centos-home
扩大根目录所在的逻辑卷,这里增大1T
lvextend -L +1T /dev/mapper/centos-root
lvextend -L +50G /dev/mapper/centos-root
扩大/文件系统
根据版本使用命令,7以上使用xfs_growfs,7以下使用resize2fs
#resize2fs /dev/mapper/centos-root
xfs_growfs /dev/mapper/centos-root
重建/home文件系统所需要的逻辑卷
由于刚才我们分出去1.0T,因此这里创建的逻辑卷大小为0.7T.
#lvcreate -L 2.5T -n/dev/mapper/centos-home
lvcreate -L 341G -n/dev/mapper/centos-home
https://blog.csdn.net/wxh0000mm/article/details/122403921
sudo find / -name libuuid.so.1
查看系统配置的/usr/loca/lib/libuuid.so.1:
nm -C -D /usr/local/lib/libuuid.so.1|head -n 8
再查看另一个路径下的libuuid.so.1:
nm -C -D /lib/x86_64-linux-gnu/libuuid.so.1|head -n 5
unlink libuuid.so.1
ln -s -f liblzma.so.5.2.2 libuuid.so.1
创建文件系统
mkfs.xfs不存在请参考:https://www.cnblogs.com/love3556/articles/5899538.html
mkfs.xfs /dev/mapper/centos-home
将新建的文件系统挂载到/home目录下
mount /dev/mapper/centos-home /home
恢复/home目录的内容
tar xvf /run/home.tar -C /
删除/run下面的备份
rm -rf /run/home.tar
View Code
查看cpu简要信息
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
查看物理cpu个数
grep 'physical id' /proc/cpuinfo | sort -u
查看核心数
grep 'core id' /proc/cpuinfo | sort -u | wc -l
查看线程数
grep 'processor' /proc/cpuinfo | sort -u | wc -l
查看服务器位数
getconf LONG_BIT
查看linux版本
uname -a && cat /etc/redhat-release
cat /etc/centos-release
查看显卡信息
lspci | grep -i nvidia
查看端口和进程情况
netstat -tunlp
netstat -tunlp | grep 端口号
查看已安装软件(分rpm/deb/yum包安装的)
rpm -qa
dpkg -l
yum list installed
yum list installed | grep anaconda
#显示安装文件信息及安装进度
rpm -ivh example.rpm
#显示安装包信息
rpm -qa | grep 包名
解压命令
1).tar 用 tar –xvf 解压
2).gz 用 gzip -d或者gunzip 解压
3).tar.gz和.tgz 用 tar –xzf 解压
4).bz2 用 bzip2 -d或者用bunzip2 解压
5).tar.bz2用tar –xjf 解压
6).Z 用 uncompress 解压
7).tar.Z 用tar –xZf 解压
8).rar 用 unrar e解压
9).zip 用 unzip 解压
命令行的光标移动,复制、粘贴、剪切与删除快捷键
##-----光标移动-----##
crtl + A # 光标移动到命令首
crtl + E # 光标移动到命令尾
alt + B ctrl + ← # 光标向左移动一个单词
alt + F ctrl + → # 光标向右移动一个单词
crtl + B # 光标向左移动一个字符
crtl + F # 光标向右移动一个字符
##-----复制、粘贴、剪切与删除-----##
crtl + U # 删除光标前面的文字 (还有剪切功能)
crtl + K # 删除光标后面的文字 (还有剪切功能)
crtl + Y # 粘贴Ctrl+U或ctrl+K剪切的内容到光标前
Ctrl + H # 删除光标左方位置的字符
Ctrl + D # 删除光标右方位置的字符
crtl + W # 删除光标左方的单词
alt + D # 删除光标右方的单词
##-----其他-----##
crtl + _ # 回复之前的状态;撤销操作
crtl + R # 搜索之前打过的命令
crtl + G # 退出历史搜索模式
crtl + ↓ # 跳到最底部
crtl + L # 清屏(不算清除内容)
!! # 执行上一条命令
View Code
vim 的光标移动,复制、粘贴、剪切与删除快捷键
##-----光标移动-----##
h # 光标向左移动一个字符
j # 光标向下移动一个字符
k # 光标向上移动一个字符
l # 光标向右移动一个字符
0 [Home] # 数字0;移动到这一行行首(常用)
$ [End] # 移动到这一行行尾(常用)
gg # 转到第一行(常用)
G # 转到最后一行(常用)
nG # n为数字;转到第n行
n<Enter> # n为数字;<Enter>表示<Enter>键;光标向下移动n行
H # 光标移动到这个屏幕的最上方那一行的第一个字符
M # 光标移动到这个屏幕的中央那一行的第一个字符
L # 光标移动到这个屏幕的最下方那一行的第一个字符
##-----光标词间移动-----##
w # 移动到下一个单词头部
b # 移动到前一个单词头部
e # 移动到下一个单词尾部
ge # 移动到前一个单词尾部
##-----复制-----##
yy # 复制光标所在的那一行(常用)
nyy # n为数字;复制光标所在的向下n行
y1G # 复制光标所在行到第一行的所有内容
yG # 复制光标所在行到最后一行的所有内容
y$ # 复制光标所在处,到该行的最后一个字符(常用)
y0 # 数字0;复制光标所在处,到该行的最前面一个字符(常用)
byw # 复制光标所在的一个单词
nyl # n为数字,复制光标向后的n个字符
##-----粘贴-----##
p # 将已复制的数据在光标下一行贴上(常用)
P # 大写;复制在上一行贴上
J # 将光标所在行与下一行的内容结合成同一行
##-----删除-----##
dd # 删除光标所在的那一整行(常用)
ndd # 删除光标所在的向下n行
dG
d1G
d$ D # 删除光标所在处到该行最后字符(常用)
d0
nd + ↑ # n为数字,删除光标所在行及其向上的n行
nd + ↓ # 删除光标所在行及其向下的n行(同ndd)
x # 删除光标处的字符
X # 删除光标的前一个字符
bdw # b 让光标回退到单词开头的位置;dw 从光标当前的位置开始删除,直到删到单词最后
daw # 直接删除光标所在的一个单词
##-----撤回/重复-----##
u # 复原前一个动作(常用)
Ctrl + r # 重做上一个动作(常用)
. # 重复前一个动作(常用)
View Code
yum 源
阿里
http://mirrors.aliyun.com/repo/
重庆大学
http://mirrors.cqu.edu.cn/repo/centos/
网易
http://mirrors.163.com/.help/centos.html
清华
https://mirrors.tuna.tsinghua.edu.cn/help/centos/
环境变量
/etc/profile: 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置.
/etc/bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.
~/.bash_profile: 每个用户都可使用该文件输⼊专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.
~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取.
~/.bash_logout: 当每次退出系统(退出bash shell)时,执行该文件.
#显示环境变量HOME
echo $HOME
#设置新环境变量
export HELLO="Hello!"
echo $HELLO
#使用env命令显示所有的环境变量
env | grep TEST
#使用set命令显示所有本地定义的 Shell 变量
#使用unset命令来清除环境变量
#set可以设置某个环境变量的值。清除环境变量的值用unset命令。如果未指定值,则该变量值将被设为 NULL
unset $TEST
#使用readonly命令设置只读变量
export TEST="Test..." #增加一个环境变量TEST
readonly TEST #将环境变量TEST设为只读
unset TEST #会发现此变量不能被删除
-bash: unset: TEST: cannot unset: readonly variable
TEST="New" #会发现此也变量不能被修改
-bash: TEST: readonly variable
#环境变量的设置位于 /etc/profile【对所有用户生效(永久的)】和.bash_profile【对单一用户生效(永久的)】
#在/etc/profile⾥设置系统环境变量时,路径末尾不能以"/"结尾,否则将导致整个PATH文件失效
#如果需要增加新的环境变量可以添加下属行
#vi /etc/profile
export path=$path:/path1:/path2:/pahtN
source /etc/profile
#vim /home/guok/.bash_profile #guok用户的环境变量
export path=$path:/path1:/path2:/pahtN
source /home/guok/.bash_profile
command not found
-bash: uname: command not found
#Debian
apt-get install coreutils
#Ubuntu
apt-get install coreutils
#Alpine
apk add coreutils
#Arch Linux
pacman -S coreutils
#Kali Linux
apt-get install coreutils
#CentOS
yum install coreutils
#Fedora
dnf install coreutils
#OS X
brew install coreutils
#Raspbian
apt-get install coreutils
#Docker
docker run cmd.cat/uname uname
View Code
-bash::not found
#Debian
apt-get install coreutils
#Ubuntu
apt-get install coreutils
#Alpine
apk add coreutils
#Arch Linux
pacman -S mailman
#Kali Linux
apt-get install coreutils
#CentOS
yum install coreutils
#Fedora
dnf install coreutils
#OS X
brew install coreutils
#Raspbian
apt-get install coreutils
#Docker
docker run cmd.cat/arch arch
View Code
-bash:not found
#Debian
apt-get install procps
#Ubuntu
apt-get install procps
#Alpine
apk add procps
#Arch Linux
pacman -S procps-ng
#Kali Linux
apt-get install procps
#CentOS
yum install procps-ng
#Fedora
dnf install procps-ng
#Raspbian
apt-get install procps
#Docker
docker run cmd.cat/uptime uptime
View Code