对于有经验的软件工程师来说,这些命令是非常熟悉的,但我意识到,对于一个刚开始接触的人来说, Linux 对于系统的初学者来说,情况并非如此这就是为什么我决定在我连接的时候分享它 Linux 在服务器运行之前,服务器首先要运行 5 命令的原因。
-- SYLVAIN KALACHE

本文导航-连上 Linux 服务器第一分钟05%-w:12%-history23%-top29%-df70%-netstat75%作为一名系统管理员/SRE 工作 5 年后,我知道当我连接到一个时,我知道 Linux 我在服务器上应该做的第一件事。
您必须了解一系列关于服务器的信息,以便您能够更好地调试服务器(大部分时间)连上 Linux 服务器的第一分钟对于有经验的软件工程师来说,这些命令是非常熟悉的,但我意识到,对于一个刚开始接触的人来说, Linux 例如,对于系统的初学者来说,我在 Holberton 学校[1]教的学生并非如此。
这就是为什么我决定在我连接的时候分享它 Linux 在服务器运行之前,服务器首先要运行 5 命令的原因whistorytopdfnetstat这 5 任何一个命令 Linux 所有的发行版本都有,所以你可以直接使用它们,而不需要额外的安装步骤。
w:[ubuntu@ip-172-31-48-251 ~]$ w23:40:25 up 273 days, 20:52, 2 users, load average: 0.33, 0.14, 0.12
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHATubuntu pts/0 104-7-14-91.ligh 23:39 0.00s 0.02s 0.00s w
root pts/1 104-7-14-91.ligh 23:40 5.00s 0.01s 0.03s sshd: root [priv][ubuntu@ip-172-31-48-251 ~]$
这里列出了许多有用的信息首先,您可以看到服务器的运行时间 uptime[2],即服务器连续运行的时间然后你可以看到哪些用户连接到服务器,当你想确认你没有影响同事的工作时,这是非常有用的最后 load average[3] 能很好地向您展示服务器的健康状况。
history[ubuntu@ip-172-31-48-251 ~]$ history 1 cd /var/app/current/log/ 2 ls -al 3 tail -n 3000 production.log
4 service apache2 status 5 cat ../../app/services/discourse_service.rb history 可以告诉您当前连接的用户之前已经执行了什么命令。
你可以看到很多信息,比如机器之前执行了什么类型的任务,可能出现了什么错误,可以从哪里开始调试toptop - 23:47:54 up 273 days, 21:00, 2 users, load average: 0.02, 0.07, 0.10
Tasks: 79 total, 2 running, 77 sleeping, 0 stopped, 0 zombieCpu(s): 1.0%us, 0.0%sy, 0.0%ni, 98.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.3%st
Mem: 3842624k total, 3128036k used, 714588k free, 148860k buffersSwap: 0k total, 0k used, 0k free, 1052320k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME COMMAND
21095 root 20 0 513m 21m 4980 S 1.0 0.6 1237:05 python
1380 healthd 20 0 669m 36m 5712 S 0.3 1.0 265:43.82 ruby
19703 dd-agent 20 0 142m 25m 4912 S 0.3 0.7 11:32.32 python
1 root 20 0 19596 1628 1284 S 0.0 0.0 0:10.64 init
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 27:31.42 ksoftirqd/0
4 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0
5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
7 root 20 0 0 0 0 S 0.0 0.0 42:51.60 rcu_sched
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh您想知道的下一个信息:服务器目前正在执行什么工作使用 top 命令你可以看到所有正在执行的过程,然后遵循 CPU、对内存使用进行排序,并找到占用资源的过程。
df[ubuntu@ip-172-31-48-251 ~]$ df -hFilesystem Size Used Avail Use% Mounted on/dev/xvda1 7.8G 4.5G 3.3G 58% /
devtmpfs 1.9G 12K 1.9G 1% /devtmpfs 1.9G 0 1.9G 0% /dev/shm磁盘空间是您服务器正常工作所需的下一个重要资源。
消耗磁盘空间是一个典型的问题netstat[ubuntu@ip-172-31-48-251 ec2-user]# netsta
来源:火资源软件