Skip to content

基础

1
#!bin/sh
  • 对时
    ntpq -p #ntpq 需要安装
    北邮服务器:202.112.10.60

sudo chmod -R 777 文件夹路径改变权限

查看内存剩余:

1
2
3
4
5
6
7
8
9
free -m
              total        used        free      shared  buff/cache   available
Mem:          32115         901       25570           1        5644       30785
Swap:          8191           0        8191

free -h
              total        used        free      shared  buff/cache   available
Mem:           31Gi       902Mi        24Gi       1.0Mi       5.5Gi        30Gi
Swap:         8.0Gi          0B       8.0Gi

readlf:
https://unix.stackexchange.com/questions/18061/why-does-sh-say-not-found-when-its-definitely-there
https://man.linuxde.net/readelf

ldd:
https://linuxtools-rst.readthedocs.io/zh_CN/latest/tool/ldd.html
https://man.linuxde.net/ldd

磁盘分区

一块磁盘可以被划分成多个分区,以 Windows 观点来看,你可能会有一块磁盘并且将它划分成为 C、D、E 盘。那个 C、D、E 就是分区。
但是 Linux 的设备都是以文件的形式存在,那分区的文件名又是什么?

目前主流的磁盘接口是 SATA 接口。
正常的物理机大概使用的都是 /dev/sd[a-p] 的磁盘文件名,至于虚拟机环境中,为了加速,可能就会使用 /dev/vd[a-p] 这种设备文件名。

再以 SATA 接口来说,由于 SATA、USB、SAS 等磁盘接口都是使用 SCSI 模块来驱动的,因此这些接口的磁盘设备文件名都是 /dev/sd[a-p] 的格式。
所以 SATA 或 USB 接口的磁盘根本就没有一定的顺序,那如何决定它的设备文件名呢?
这个时候就得要根据 Linux 内核检测到磁盘的顺序来命名

如果你 PC 上面有两个 SATA 磁盘以及一个 USB 磁盘,而主板上面有六个 SATA 的插槽。
这两个 SATA 磁盘分别安插在主板上的 SATA1、SATA5 插槽上,请问这三个磁盘在 Linux 中的设备文件名是什么?
答:由于是使用检测到的顺序来决定设备文件名,并非与实际插槽顺序有关,因此设备的文件名如下。
1.SATA1 插槽上的文件名:/dev/sda
2.SATA5 插槽上的文件名:/dev/sdb
3.USB磁盘(系统启动完成后才被系统识别):/dev/sdc

文件权限

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
➜  ~ ls -al
total 6672
drwxr-xr-x+ 117 nocilantro  staff    3744  2  8 22:25 .
drwxr-xr-x    6 root        admin     192 10 24 08:37 ..
drwxr-xr-x    3 nocilantro  staff      96  7 24  2019 .3T
-rw-r--r--@   1 nocilantro  staff   18436  2  8 18:10 .DS_Store
drwxr-xr-x    5 nocilantro  staff     160  5 22  2019 .ShadowsocksX-NG
drwx------    2 nocilantro  staff      64  2  8 21:33 .Trash
-rw-------    1 nocilantro  staff       0 11  6 18:18 .Xauthority
drwxr-xr-x   16 nocilantro  staff     512 10 19 22:20 .android
-rw-------    1 nocilantro  staff     884  5 22  2019 .bash_history
-rw-r--r--    1 nocilantro  staff     537 12  1 10:36 .bash_profile
drwx------   15 nocilantro  staff     480  5 22  2019 .bash_sessions
drwxr-xr-x    3 nocilantro  staff      96 11  6 17:08 .cache
drwxr-xr-x    4 nocilantro  staff     128  2  3 23:42 .cargo
drwxrwsr-x    3 nocilantro  staff      96  8 23 09:46 .conda
-rw-r--r--    1 nocilantro  staff      80  8 23 09:51 .condarc
drwx------    4 nocilantro  staff     128  8 21 21:21 .config
drwxr-xr-x    3 nocilantro  staff      96 10 19 18:17 .dart
drwxr-xr-x    4 nocilantro  staff     128 10 19 18:17 .dartServer
-rw-------    1 nocilantro  staff       6  2  1 09:51 .dbshell
drwxr-xr-x    6 nocilantro  staff     192  2  1 10:52 .docker

选项 -al 表示列出所有的文件详细的权限与属性(包含隐藏文件,就是文件名第一个字符为 . 的文件)

第一栏代表这个文件的类型与权限
这一栏共有十个字符:
第一个字符代表这个文件是目录、文件或链接文件等;
当为 d 则是目录,当为 - 则是文件,当是 | 则表示为链接文件;若是 b 则表示为设备文件里面的可供存储的周边设备(可按块随机读写的设备)
若是 c 则表示为设备文件里面的串行端口设备,例如键盘、鼠标(一次性读取设备)
接下来的字符中,以三个为一组,且均为 rwx 的三个参数的组合。其中,r代表可读readw代表可写writex代表可执行execute
要注意的是这三个权限的位置不会改变,如果没有权限,就会出现减号-而已
第一组为文件拥有者可具备的权限
第二组为加入此用户组之账号的权限
第三组为非本人且没有加入本用户组的其他账号的权限

第二栏表示有多少文件名链接到此节点(inode)

第三栏表示这个文件(或目录)的拥有者账号

第四栏表示这个文件的所属用户组

第五栏为这个文件的容量大小,默认单位为 Bytes

倒数第二栏为这个文件的创建日期或是最近的修改日期

最后一栏为这个文件名
如果文件名之前多一个.,则代表这个文件为隐藏文件,可以使用ls -a显示