网
工
圈
听说99%的网工都来这里充电吖
https://blog.csdn.net/lena7/article/details/120996761
龙哥在此致谢!
Part1Linux1命令行模式常用快捷键Tab:自动补全命令Shift PgUp/PgDn:向上翻页/向下翻页Ctrl c:停止当前程序2Linux系统运行级别
查看当前系统的运行级别命令:runlevel
[root@lena/]#runlevelN3#返回”前一个运行级别当前运行界别”其中N表示无
Linux运行级别的文件存放在/etc/rc.d/目录下:可以看到由rc0-rc6,共有7个运行级别。
[root@lena/]#cd/etc/rc.d/[root@lenarc.d]#lltotal36drwxr-xr-x.2rootroot4096May621:28init.ddrwxr-xr-x.2rootroot4096May621:28rc0.ddrwxr-xr-x.2rootroot4096May621:28rc1.ddrwxr-xr-x.2rootroot4096May1212:42rc2.ddrwxr-xr-x.2rootroot4096May1212:42rc3.ddrwxr-xr-x.2rootroot4096May1212:42rc4.ddrwxr-xr-x.2rootroot4096May1212:42rc5.ddrwxr-xr-x.2rootroot4096May621:28rc6.d-rw-r–r–1rootroot473May262017rc.local
Linux7个运行级别区别如下:
运行级别0:系统停机(关机)状态。若将0设为默认运行级别,则不能正常启动。
运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆。
运行级别2:多用户状态,无NFS。
NFS:网络文件系统,是UNIX表示层协议(presentation layer protocol),能使使用者访问网络上别处的文件就像在使用自己的计算机一样。
运行级别3:完全的多用户状态,有NFS。登录后进入控制台命令行模式。
运行级别4:未使用,保留级别。
运行级别5:图形化模式,登陆后进入图形GUI模式 。
运行级别6:重启模式。若将6设为默认运行级别,则不能正常启动,会陷入一直开机重启开机重启的循环中。
当前运行级别切换:init N,例如输入init 0,系统会关机;init 6,系统会自动重启;init 5,系统会进入图形GUI模式 …(注意,该切换是临时的)
init进程ID为1,是初始化进程,查看进程:ps \-ef|grep init
初始化进程存在一个对应的配置文件:/etc/inittab(系统配置文件),文件主要内容如:id:5:initdefault:
上面使用init N命令的切换是临时的,重启后会恢复到默认值,若想要永久切换运行级别,需要修改文件/etc/inittab中的initdefault的值。修改默认运行级别:vim /etc/inittab
3Linux文件目录结构bin:是usr/bin的快捷方式。存储二进制文件,都是可以被运行的文件。存储着最常使用的命令。boot:存放启动Linux使用的核心文件(连接文件、镜像文件)dev:主要存放外界设备(u盘、光盘…)不能直接被使用,需要挂载。在Linux中一切皆文件,访问设备和文件的方式一样。etc:主要 存放所有的系统管理所需要的配置文件和子目录。home:除了root用户外的其他用户的家目录。lib:存放着系统最基本的动态连接共享库lost found:用于非法关机后存放文件。默认情况是空的。media:Linux自动识别设备会挂载到该目录下。mnt:当外接设备需要临时挂载的时候,挂载在该目录下。opt:用来主机额外安装的软件。默认是空的。(optional)proc:存储Linux运行时的进程, 是一个虚拟的目录,它是系统内存的映射。(process)root:root用户的家目录。run:临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。若有/var/run目录,应该指向该目录。sbin:是usr/sbin的快捷方式。存储具有super权限才能执行的二进制文件,如halt、shutdown关机。(super bin)srv:该目录存放一些服务启动之后需要提取的数据。tmp:存放产生的临时文件,系统使用完会删除。(temporary)usr:存放用户自己安装的软件。var:存放程序/系统的日志文件。4Linux文件与权限
在Linux中,一切皆文件。
访问文件的身份
对一个文件来说,访问文件的一般有四种身份:
Owner身份(文件所有者):默认是文件的创建者。可以更改。Group身份(与文件所有者同组的用户):当同一团队多人在同一台主机上开发的时候,可以将同一组的人员的用户设为同一组。Others身份(其他人):既不是文件所有者,也不是与所有者同组的用户。Root用户(超级管理员):拥有最大权限。文件权限查看文件权限
我们可以使用ll或者ls –l命令来查看一个文件的属性以及文件所属的用户和组。查看到的文件信息会按列显示,前十个字符依次描述了文件的类型、文件所属者的权限、文件所属组的权限、其他用户的权限,具体字符的含义如下:
表明这个文件的类型,其中每个字符的含义是:“d”目录;“-”文件;“l”链接文档;“b”可随机存取装置;“c”一次性读取装置(鼠标、键盘)
文件所属者的读权限
文件所属者的写权限
文件所属者的执行权限
文件所属组的读权限
文件所属组的写权限
文件所属组的执行权限
其他用户的读权限
其他用户的写权限
其他用户的执行权限
以上1-3表示文件所有者的权限,4-6表示文件同组用户的权限,7-9表示其他用户的权限。若有读权限,则使用“r”字符表示;若有写权限,则用“w”字符表示;若有执行权限,则用“x”字符表示;如无权限,则用“-”表示。
例如:drwxr-xr-x表示了文件是文件夹,文件所有者有读写执行权限,文件同组用户和其他用户只有读和执行权限。
设置文件权限
设置文件权限,使用命令:chown 选项 文件所有者权限 文件所有者所属组权限 其他用户权限 文件
1.数字形式
没有任何权限=0;读权限=4;写权限=2;执行权限=1
由此可以得到0-7数值分别对应的权限:
数值可读=4可写=2可执行=1目录列表0???—1???–x2???-w-3???-wx4???r–5???r-x6???rw-7???rwx
例如:给文件a.txt设置权限,文件所有者拥有全部权限(4 2 1=7),文件所有者同组用户拥有读和执行权限(4 1=5),其他用户只能读文件(4),那么设置文件权限的命令为 chmod 754 a.txt
2.字母形式
指定设置的身份:
u:表示文件所有者(Owner身份)g:表示文件所有者同组用户(Group身份)o:表示其他用户(Others身份)a:表示所有身份(即=u、g、o)
指明要设置的权限:
r:表示可读,readw:表示可写,writex:表示可执行,execute-:表示没有权限
例如:给文件a.txt(-rw——-)设置权限,要求所有者拥有全部的权限,同组用户拥有读和执行权限,其他用户只有读权限,可使用命令设置 chmod u=rwx,g=rx,o=r a.txt
此外,还可以用命令指明要更改的部分,如 chmod u x,g rx,o r a.txt
去除文件所有权限:chmod a=— 文件
为所有文件设置读权限:chmod a r 文件
文件属性
使用ll或者ls –l命令时,会按列显示文件的信息,显示的内容格式为:文件类型权限 硬链接数量 文件所有者 文件所有者所在组 文件大小 最后一次更改时间 文件名
[root@lena/]#lllrwxrwxrwx.1rootroot7Aug182017bin->usr/bindr-xr-xr-x.4rootroot4096May2716:01boot-rw-r–r–1rootroot144935989Jun210:32jdk-8u291-linux-x64.tar.gzlrwxrwxrwx.1rootroot7Aug182017lib->usr/liblrwxrwxrwx.1rootroot9Aug182017lib64->usr/lib64drwx——.2rootroot16384Aug182017lost founddrwxr-xr-x.2rootroot4096Nov52016media修改文件属性
更改文件所有者:chown [-R] 用户名 文件
更改文件的所属用户组:chgrp [-R] 所属用户组 文件
同时更改文件的所有者和所属组:chown \-R 文件所有者:所属用户组 文件
其中,当文件是目录的时候,选项-R会迭代更改该目录下的所有文件。
5Linux命令
完整的命令标准格式:命令 [选项] [操作对象]
若不写操作对象,默认当前对象一个命令可以有多个选项、多个操作对象,但只能有一个命令
man
man 命令:查看Linux命令的手册,英文显示,不需要联网。
退出按下q键
文件与目录管理ls 列出目录
ls:列出当前工作目录下的所有文件/文件夹名称
[root@lena/]#lsbindevhomeliblost foundmntprocrunsbinsysusrbootetcjdk-8u291-linux-x64.tar.gzlib64mediaoptrootsambasrvtmpvar
ls 选项 路径:以指定格式显示指定路径下的目录信息
路径可以是绝对路径或相对路径选项-l:以详细列表的形式进行展示,list选项-a:显示所有文件/文件夹,包括隐藏的文件/文件夹选项-h:显示文档的时候按可读性较高的形式显示,即自动切换文件大小时显示的单位选项-d:仅列出当前目录的信息,而不是目录内的文件信息[root@lena/]#ls-lhlrwxrwxrwx.1rootroot7Aug182017bin->usr/bindr-xr-xr-x.4rootroot4.0KMay2716:01bootdrwxr-xr-x.89rootroot12KOct2320:34etc-rw-r–r–1rootroot139MJun210:32jdk-8u291-linux-x64.tar.gzpwd 显示当前工作目录
选项-P:显示出实际路径,而非使用连接(link)路径
[root@lenabin]#pwd/bin[root@lenabin]#pwd-P/usr/bincd 切换目录
cd [绝对路径/相对路径]:切换当前工作目录
绝对路径:“.”表示当前路径;“…”表示上一级目录。
“~”符号在Linux中表示家目录,命令cd ~与cd一样,都会切换到家目录。
mkdir 创建新目录
mkdir 选项 目录:创建新的文件夹,make directory
选项-m:配置文件权限选项-p:若创建目录路径上有多个不存在的目录,递归创建多层目录[root@lena~]#mkdir-m761linux[root@lena~]#lldrwxrw—x2rootroot4096Oct2513:33linux
可以一次性创建多个目录:mkdir 目录1 目录2 目录3
touch 创建文件
touch 文件:创建文件
可以一次性创建多个文件:touch 文件1 文件2 文件3
[root@lenalinux]#mkdirdirectory[root@lenalinux]#touchfile1file2[root@lenalinux]#lltotal4drwxr-xr-x2rootroot4096Oct2513:48directory-rw-r–r–1rootroot0Oct2513:48file1-rw-r–r–1rootroot0Oct2513:48file2rmdir 删除空目录
rmdir [-p] 目录:选项-p表示,从该目录起,一次删除多级空目录
注意:若文件夹有内容,则无法删除。
[root@lenalinux]#rmdirdirectoryrmdir:failedtoremove‘directory’:Directorynotemptyrm 删除文件或目录
rm 选项 文件或目录
选项-f:若文件或目录不存在,则忽略,不显示警告选项-i:互动模式,在删除前会进行询问选项-r:递归删除指定目录及下所有文件[root@lenalinux]#lsdirectoryfile1file2[root@lenalinux]#rm-ffile3#删除不存在的文件[root@lenalinux]#rmfile3#删除不存在的文件rm:cannotremove‘file3’:Nosuchfileordirectory[root@lenalinux]#rm-ifile2#删除时进行提示rm:removeregularemptyfile‘file2’?n[root@lenalinux]#lsdirectoryfile1file2mv 移动文件
mv 需要移动的文件路径 新文件路径,当同一路径不同文件名,也就实现了文件重命名的效果。
选项-f:若新文件名已经在路径中存在,不会询问直接覆盖。选项-i:若新文件名已经存在,会询问是否覆盖。选项-u:若目标文件已经存在, 且移动文件比较新,才会覆盖。[root@lenalinux]#lsdirectoryfile1file2[root@lenalinux]#mvfile1file3[root@lenalinux]#lsdirectoryfile2file3[root@lenalinux]#mv-ifile2file3mv:overwrite‘file3’?y[root@lenalinux]#lsdirectoryfile3cp 复制文件或目录
软链接:ln \-s 源文件 目标文件
硬链接:ln 源文件 目标文件
软连接硬连接参考文档:https://blog.csdn.net/gao_zhennan/article/details/79127232
find 查找文件
find 查询路径范围 选项 选项值:可以用于查询隐藏文件、隐藏文件夹
选项-name:按文档的名称进行搜索,支持模糊查询选项-type:按照文档类型进程搜索,其中“-”表示文件,“d”表示文件夹[root@lena~]#find~-name*2.java/root/linlena/apache-tomcat-7.0.109/webapps/examples/WEBINF/classes/async/Async2.java/root/linlena/apache-tomcat-7.0.109/webapps/examples/WEBINF/jsp/applet/Clock2.java/root/linlena/apache-tomcat7.0.109/webapps/examples/jsp/plugin/applet/Clock2.java[root@lena~]#find~/linux-typed/root/linux/root/linux/directory查看文件内容cat 显示文件所有内容
cat 选项 文件:读取文件后输出文件全部内容
选项-b:列出行号,行号只对非空白行显示,空白行不标选项-n:列出行号,空白行也显示选项-E:将文件中每行的断行字节$显示出来选项-T:将文件中tab键以^I显示处理选项-v:显示文件中的^M (去除^M)选项-A:相当于-v E T[root@lenalinux]#cat-bfile11iamfile12hello[root@lenalinux]#[root@lenalinux]#cat-Efile1iamfile1$$hello$[root@lenalinux]#cat-Tfile1iamfile1hellotac 倒序显示文件
tac 文件:倒序显示并不是所有内容都倒着显示,而是从最后一行向第一行显示,但每一行内的内容是正序的。
[root@lenalinux]#catfile1iamfile1hello*$!@%#^$#^#!#!@[root@lenalinux]#tacfile1*$!@%#^$#^#!#!@helloiamfile1more 按页查看文件
more 文件:一页页翻动,可以通过下面的按键操作
空白键:下一页
Enter:下一行
/字符串:向下搜索该字符串
q:退出more
b:往回翻页
:f :显示文件名 和当前所在行数
less 按页查看文件
less 文件:一页页翻动查看文件
空白键/PgDn:下一页PgUp:上一页数字 回车:从数字的那一行开始显示/字符串:向下搜索该字符串?字符串:向上搜索该字符串n:重复上一个搜索N:反向重复前一个搜索q:退出lesshead 显示文件前几行
head [-n 数字] 文件:显示文件的前几行
[root@lenaweblog]#head-n7nohup.out._________/\\/___’_____(_)______\\\\(()\___|’_|’_||’_\/_`|\\\\\\/___)||_)|||||||(_||))))’|____|.__|_||_|_||_\__,|////=========|_|==============|___/=/_/_/_/tail 显示文件后几行
tail [-n 数字][-f] 文件:显示文件后几行
若使用选项-f,会继续监控文件,当文件有追加的内容就继续显示出来。
用户管理
用户操作命令,除了设置密码(passwd)以外,只有超级管理员root有权限。
etc/passwd:存储用户的关键信息
etc/shadow:存储用户的密码信息
id 查看用户信息
id:查看一个用户的一些基本信息(包含用户ID、用户组ID、附加组ID…),该指令如果不指定用户则默认当前用户。
id 用户名:查看指定用户的基本信息
[root@lena~]#iduid=0(root)gid=0(root)groups=0(root)whoami 显示当前登录的用户名
whoami:一般用于shell脚本,获取当前操作的用户名来记录日志
[root@lena~]#whoamirootuseradd 添加用户
useradd 选项 用户名:添加用户
选项-c:添加注释描述选项-d:指定用户主目录,若目录不存在可使用选项-m创建主目录选项-g:指定用户所属的用户组选项-G:指定用户所属的附加组选项-s:指定用户登录shell选项-u:指定用户号,若要重复其他用户的表示号,可使用选项-o。系统默认会从500之后按顺序分配uid。
验证是否添加成功:
查看文件/etc/passwd最后一行(可以使用命令tail \-1 /etc/passwd或cat /etc/passwd),查看是否有新添加的用户信息。
passwd文件存储的信息格式是:用户名:密码:用户ID:用户组ID:注释:家目录:解释器Shell
– 密码位一般是”x”占位,若设置了密码则是以加密存储的。- 若不指定用户组,则会自动创建以当前用户为名的用户组。- 注释:解释该用户的作用- 家目录:用户登录系统后默认的位置- 解释器shell:等用户进入系统,输入指令后,该解释器会收集用户输入的指令,传递给内核处理。- 查看用户的附加组可以查看group文件。
创建用户后会自动创建同名家目录,若没有指定,会在home目录下,可以查看是否存在该用户的家目录。
userdel 删除用户
userdel [-r] 用户名:删除用户账号
选项-r:将用户的主目录随用户一起删除。
已经登录的用户无法删除,只能杀死该用户所有进程后再删除。
查看用户进程pid:ps -ef|grep 用户名杀死进程:kill pid删除用户:userdel [-r] 用户名usermod 修改用户
usermod 选项 用户名:修改用户的有关属性,如用户号、主目录、用户组、登录Shell等。常用选项与useradd一样。
修改用户名:usermod \-l 新名字 就名字
passwd 修改用户密码/口令
passwd 选项 用户名:用户账号刚创建时没有密码,而Linux不允许没有密码的用户登录到系统,所有没有密码就为锁定状态,无法使用,必须为其指定密码后才可以使用,即使是指定空口令。
选项-l:锁定口令,即禁用账号选项-u:口令解锁选项-d:使账号无口令选项-f:强迫用户下次登录时修改口令su 切换用户
su [用户名]:切换到指定的用户名
如果不指定用户名,则表示要切换到root用户。
用户组管理
每个用户都有一个月用户组,系统可以对一个用户组中的所有用户进行集中管理。
不同Linux系统对用户组的规定有所不同,如Linux下的用户属于它同名的用户组,这个用户组在创建用户时同时创建。
用户组的管理涉及用户组的添加、删除和修改。
用户组的添加、删除、修改实际上就是对/etc/group文件的更新。
group文件存储信息的格式:用户组名:密码:用户组ID:组内用户名
大部分下不会设置密码,无意义,X表示占位符。若组内用户有多个,则用多个逗号分隔用户名。groupadd 添加新的用户组
groupadd 选项 用户组:添加新的用户组
选项-g GID:指定GID选项-o:一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。
验证:查看group文件是否添加成功,命令tail \-1 /etc/group
groupdel 删除用户组
groupdel group1:删除用户组
若要删除的用户组是某个用户的主组,那需要先将组内用户移除,再删除:
方法1 修改主组:usermod -g 新主组 用户名方法2 删除用户:userdel -r 用户名groupmod 修改用户组
groupmod 选项 用户组:更该用户组
选项-g、-o与groupadd一样。
选项-n 新用户组名:重命名用户组。
newgrp 切换用户的用户组
newgrp 用户组:如果一个用户同时属于多个用户组,那么用户可以在用户组之间切换,以便具有其他用户组的权限。
前提条件是要切换的用户组确实是该用户的主组或附加组 。
### 时间日期
date 日期时间
date:输出当前年月日 时间
date ” %F”等价于date ” %Y-%m-%d”,输出格式:2021-10-27
date ” %F %T”等价于date ” %Y-%m-%d $H:%M:%s”,输出格【】式:2021-10-27 13:02:04
date \-d “操作符数字 单位” 日期格式:获取之前或之后某个时间
操作符可选: (之后)或-(之前)单位值可选:day(天)、month(月)、year(年)例如:date -d “-1 day” ” %Y-%m-%d $H:%M:%s”,输出结果是:2021-10-26 13:02:04cal 日历cal等价于cal \-l:直接输出当前月份的日历[root@lena~]#cal-1October2021SuMoTuWeThFrSa123456789101112131415161718192021222324252627282930#在Linux中27号(即当天)是会有不同的背景色31cal \-3:输出上一个月 本月 下一个月的日志[root@lena~]#cal-3September2021October2021November2021SuMoTuWeThFrSaSuMoTuWeThFrSaSuMoTuWeThFrSa12341212345656789101134567897891011121312131415161718101112131415161415161718192019202122232425171819202122232122232425262726272829302425262728293028293031
cal \-y 年份:输出某一年份的日历
cal \-s:默认值,日历的显示以星期日为第一天
cal \-m:日历中以星期一为第一天
[root@lena~]#cal-mOctober2021MoTuWeThFrSaSu12345678910111213141516171819202122232425262728293031ntp服务
主要用于对计算机的时间同步管理。
同步服务器时间的方式:一次性同步(手动同步)、通过服务自动同步
设置时间同步服务ntpd
启动ntpd服务:service ntpd start或/etc/init.d/ntpd start设置ntpd服务开机启动:chkconfig –level 35 ntpd on,查看是否设置成功:chkconfig –list|grep ntpd进程管理ps 查看服务器进程信息选项-e:等价于-A,表示列出全部进程选项-f:显示全部的列(显示全字段)
返回列格式:UID PID PPID C STIME TTY TIME CMD
UID:用户IDPID:进程IDPPID:父进程ID。若没有,则为僵尸进程C:CPU占用率,单位是%STIME:启动时间TTY:终端设备,发起该进程的设备标识符。若显示?则表示该进程不是由终端设备发起的。TIME:进程的执行时间CMD:进程名称或对应路径[root@lena~]#ps-efUIDPIDPPIDCSTIMETTYTIMECMDroot200May27?00:00:00[kthreadd]root320May27?00:03:36[ksoftirqd/0]root520May27?00:00:00[kworker/0:0H]root720May27?00:00:00[migration/0]root820May27?00:00:00[rcu_bh]……
ps \-ef|grep 进程名:能够根据进程名称模糊查询出进程。
至少会查询出一个进程,因为查询指令也是一个进程正常情况下应该返回两个及以上进程[root@lena~]#ps-ef|grepjavaroot804710Sep05?00:49:40java-jarweblog2104-0.0.1-SNAPSHOT.jarroot2090820856014:39pts/000:00:00grep–color=autojavaroot2363210Jul02?01:53:15java-jarapi-0.0.1-SNAPSHOT.jartop 动态显示进程占用资源
top:输入命令,会进入一个动态的页面。按下q键退出。
返回列格式:PID USER PR NI VIRT RES SHR S %CPU %MEN TIME COMMAND
PID:进程IDUSER:该进程用户PR:优先级VIRT:虚拟内存RES:常驻内存SHR:共享内存S:进程的状态,其中S表示睡眠,R表示运行%CPU:CPU占用百分比%MEN:内存占用百分比TIME :执行时间COMMAND:进程的名称或路径
有些进程启动需要依赖其他进程,计算一个进程实际使用内存=RES-SHR
在运行top时,可以使用方便的快捷键进行查询:
M:表示将结果按照内存(MEN)从高到低排序P:表示将结果按照CPU使用率从高到低排序1(数字):当服务器拥有多个CPU,使用该快捷键来切换是否展示各个CPU的详细信息(默认显示cpus,按下后能切换到cpu0,cpu1…)service 启动/停止/重启服务
service 服务名 start/stop/restart:启动/停止/重启服务
例如:service httpd start启动apache,服务名是http
kill 杀死进程
kill PID:杀死指定PID的进程。需要提前得知进程的PID(ps \-ef|grep 进程,第二列为PID)
使用场景:遇到僵尸进程或处于某些原因需要关闭进程时。
验证是否杀死进程:ps \-ef|grep 服务名,查看进程是否还存在
killall 杀死进程
kill 进程名称:通过进程名称直接杀死进程。
服务器相关命令hostname 主机名
hostname:输出完整的主机名
hostname \-f:输出当前主机名中的FQDN(全限定域名)
hostname 主机名:设置临时主机名
永久设置主机名,要在配置文件/etc/sysconfig/network文件中设置:
ifconfig:获取网卡信息
返回eth0表示Linux中的一个网卡,eth0是名称;
[root@lena~]#ifconfigdocker0:flags=4099<UP,BROADCAST,MULTICAST>mtu1500inet172.17.0.1netmask255.255.0.0broadcast172.17.255.255ether02:42:7a:30:0b:8atxqueuelen0(Ethernet)RXpackets0bytes0(0.0B)RXerrors0dropped0overruns0frame0TXpackets0bytes0(0.0B)TXerrors0dropped0overruns0carrier0collisions0eth0:flags=4163<UP,BROADCAST,RUNNING,MULTICAST>mtu1500inet172.24.8.69netmask255.255.192.0broadcast172.24.63.255ether00:16:3e:36:68:4etxqueuelen1000(Ethernet)RXpackets23729111bytes5536748394(5.1GiB)RXerrors0dropped0overruns0frame0TXpackets21559102bytes10642223762(9.9GiB)TXerrors0dropped0overruns0carrier0collisions0lo:flags=73<UP,LOOPBACK,RUNNING>mtu65536inet127.0.0.1netmask255.0.0.0looptxqueuelen1(LocalLoopback)RXpackets0bytes0(0.0B)RXerrors0dropped0overruns0frame0TXpackets0bytes0(0.0B)TXerrors0dropped0overruns0carrier0collisions0uptime 计算机持续在线时间
输出计算机从开机到现在持续在线时间:
返回信息:当前时间 up 持续时间, 同时连接用户, load average: 最近1min负载,最近5min负载,最近10min负载,查看负载也可以使用top命令。
uname 获取操作系统相关信息
uname:获取操作系统类型
uname \-a:获取操作系统全部信息(类型、全部主机名、内核版本、发布时间、开源计划)
[root@lena~]#unameLinux[root@lena~]#uname-aLinuxlena3.10.0-514.26.2.el7.x86_64#1SMPTueJul415:04:05UTC2017x86_64x86_64x86_64GNU/Linuxchkconfig 管理开机启动项
chkconfig \–list:开机启动项查询
每一个服务后0-6代表了在运行级别0-6服务对应启动/关闭:
chkconfig \–del 服务名:删除服务
? 查询是否删除成功:chkconfig \–list|grep 服务名
chkconfig \–add 服务名:添加开机启动服务
chkconfig \–level 运行级别 服务名 on/off:设置服务在某个运行级别下开机启动
? 运行级别可以一次指定多个,例如chkconfig \–level 35 httpd on
网络网关网卡配置文件
网卡配置文件位置:/etc/sysconfig/network-scripts/
? 配置文件的命名格式:ifcgf-网卡名称
? 查看配置文件信息:cat /etc/sysconfig/network-scripts/ifcgf-网卡名称
? ONBOOT:是否开机启动(yes/no)
重启网卡service network restart:并不是所有地方可用,在centos有的分支版本中可能没有service命令来快速操作服务,但有个公共目录/etc/init.d,因此可用方法二。/etc/init.d/netword restart:适用范围广重启单个网卡停止某个网卡:ifdown 网卡名称开启某个网卡:ifup 网卡名称
查看是否成功:ifconfig
netstat 查看网络链接状态
netstat [选项]
由于有的服务器是禁ping,因此不是100%准确。
windows默认发送4个数据报,若想一直发送可以在命令尾加上-t
Linux默认一直发送,直到手动停止。
[root@lena~]#pingwww.baidu.comPINGwww.a.shifen.com(110.242.68.4)56(84)bytesofdata.64bytesfrom110.242.68.4(110.242.68.4):icmp_seq=1ttl=50time=15.1ms64bytesfrom110.242.68.4(110.242.68.4):icmp_seq=2ttl=50time=15.2ms64bytesfrom110.242.68.4(110.242.68.4):icmp_seq=3ttl=50time=15.2ms64bytesfrom110.242.68.4(110.242.68.4):icmp_seq=4ttl=50time=15.2ms64bytesfrom110.242.68.4(110.242.68.4):icmp_seq=5ttl=50time=15.1ms64bytesfrom110.242.68.4(110.242.68.4):icmp_seq=6ttl=50time=15.2ms64bytesfrom110.242.68.4(110.242.68.4):icmp_seq=7ttl=50time=15.2mstraceroute
原理:会给经过的路由器都发送ICMP数据报,但有可能收不到回应。
注意:该命令不是内置命令,需要安装。
arp \-a:查看本地缓存MAC表
tcpdump 抓取数据包
tcpdump 协议 port 端口:监听端口
tcpdump \-i 网卡设备名
翻译:关机可用于停止、关闭电源或重新启动机器。
第一个参数可能是时间字符串(通常是“now”)。或者,这个之后可能会有一条墙消息,发送给所有登录的用户,然后再继续向下.
时间字符串的格式可以是“hh:mm”,表示小时/分钟,用于指定时间以24小时时钟格式指定的在执行停机的时间。或者也可以语法为“ m”,表示从现在起指定的分钟m。“now”是“ 0”的别名,即用于触发立即停机。如果没有时间参数已指定,“ 1”是隐含的。
请注意,要指定墙消息,还必须指定时间参数。如果使用time参数,则在系统关闭/run/nologin之前5分钟创建文件以确保不允许进一步登录。
马上关机:shutdown -h now十分钟后关机:shutdown -h 10十分钟后关机并提醒当前登录用户:shutdown -h 10 ‘tip : shutdown after 10 min’当天21点关机:shutdown -h 21:00马上重启:shutdown -r now十分钟后重启:shutdown -r 10取消关机:shutdown -chalt 关闭内存
halt命令,关闭内存(因为没有内存无法开机,所以也起到关机作用)
停止机器,仍保持通电:halt关闭机器(关闭电源):halt -p重启机器:halt –rebootreboot 重启重启机器:reboot停止机器:rebbot –halt关闭机器:reboot -p模拟重启:reboot -w,只写开机/关机日志,但实际不会重启。poweroff关闭机器(关闭电源):powereoff停止机器:poweroff –halt重启机器:poweroff –rebootinit 0
init 0切换运行级别命令
运行级别为0,系统处于关机状态。注意:有局限性,在某些版本不可用。yum
yum [选项] [操作] [安装的包名…]
选项-y:表示安装过程中提示全部为yes选项-q:表示不显示安装过程选项-h:获取命令帮助
常用命令:
列出所有可更新的软件:yum check-update更新所有软件:yum upate仅安装指定的软件:yum install <软件包名>仅更新指定的软件:yum update <软件包名>列出所有可安装软件:yum list删除软件包:yum remove <软件包名>查找软件包:yum search <关键词>清除缓存:清除缓存目录下的软件包:yum clean packages清除缓存目录下的headers:yum clean headers清除缓存目录下的旧headers:yum clean oldheaders清除缓存目录下的软件包及旧headers:yum clean或yum clean all,也可分步执行。磁盘管理df 查看磁盘空间
df [选项] [文件/目录]:利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
-a :列出所有的文件-k :以 K显示各文件-m :以 M显示各文件-h :按合适的单位自动显示-H :以 M=1000K 取代 M=1024K 的进位方式-T :显示文件系统类型, 连同该分区的文件系统名称也列出-i :不使用硬盘容量显示,而以 inode 的数量来显示
返回的信息格式为:Filesystem 大小 已使用 未使用 使用百分比 挂载
找出你系统中的根目录所在磁盘:df /
du 查看目录真实大小
du [选项] 文件/目录:查看文件/目录使用情况
-a :列出所有的文件与目录容量,默认仅统计目录底下的文件量。-h :选择合适单位显示大小-s :列出总量,而不列出每个各别的目录占用容量-S :列出总量,不包括子目录下的-k :以K为单位显示-m :以M为单位显示
查看指定路径共占用了多少内存:
[root@lena~]#du-sh~979M/root别名机制
给已有的命令映射一个自定义别名。
别名机制依靠别名映射文件:~/.bashrc
配置步骤:
打开文件:vim ~/.bashrc在文件中添加映射规则,格式:alias 自定义名=’原命令’。例如:alias cls=’clear’保存并推出::x
注意:若想新配置的别名生效,必须重新生路当前用户。
打开文件后会显示文件的内容,其中~的行,表示该行没有任何东西。
三种模式
命令模式
切换到末行模式:输入:
光标移动
光标移动到行首:[shift] ^(6)
光标移动到行尾:[shift] $(4)
光标移动到文档首行:gg
光标移动到文档末行:G或[shift] G
向上翻屏:[ctrl] b或PgUp
向下翻屏:[ctrl] f或PgDn
快速将光标移动到指定行:行数G
以当前光标所在行为准,向上/向下移动n行:行数↑/↓
以当前光标所在行为准,向左/向右移动n行:行数←/→
i:在光标所在字符前开始插入a:在光标所在字符后开始插入o:在光标所在行的下面另起一新行插入I:在光标所在行的行首开始插入,如果行首有空格则在空格之后插入A:在光标所在行的行尾开始插入O:在光标所在行上面另起一行开始插入S:删除光标所在行并开始插入
退出:按[esc]键
计算器的使用:不需要退出文件,在vim内计算
可以在末行输入命令来对文件进行操作(搜索、替换、保存、退出、撤销、高亮…)
进入:原本是命令模式,按下”:”或”/”即可进入,其中/表示查找,有局限性。
退出:输入操作后回车即可生效
:w [路径]:保存文件,若添加了路径则表示另存为指定路径的文件。
:q:退出。前提当前文件没有更改,若更改了没有保存会提示。
:q!:强制退出,不保存。或ZQ
!在vim中通常有强制的作用
:wq:保存并退出。注意,即使没有修改文件,使用了该命令也会更新文件的修改时间。
:x:在没有修改文件的时候,表示直接退出(不更新修改文件的时间);在修改了文件的情况下,保存并退出。
:X:表示对文件进行加密,下一次进入文件需要输入密码才能查看、操作文件,但如果没有保存文件,该加密配置不生效。
按下esc或删除末行中全部命令(含:)
操作:
:/关键词:搜索/查找关键词,高亮显示
在搜索结果中切换到上一个/下一个结果,使用N/n
:行数:移动到指定行
:行数j:向下移动指定行数。等同于:行数↓
:nohl:取消高亮显示。no highlight
:[%]s/搜索的关键词/新内容[/g]:替换光标所在行的第一个内容,若添加了/g,则替换光标所在行的所有内容。若加了%则表示整个文档,而不只是光标所在行。
:set nu:显示行号。仅一次生效,退出后重新进入不再显示。
:set nonu:不显示行号。
:syntax on:显示代码着色
:syntax off:不显示,默认。
使用vim同时打开多个文件,在末行模式下进行文件的切换
:files:查看当前vim已经打开的文件
返回的结果第二列显示的含义:
空白:不是上一次/当前打开的文件%a:active,表示当前正在打开的文件#:表示上一个打开的文件
切换文件的方式:
:open 文件名:切换到指定文件。前提,该文件已经打开。不能用[tab]补充文件名。:bn:back next,切换到下一个文件:bp:back previous,切换到上一个文件vim配置
解决:
查看error中存在的交换文件名。
删除交换文件:rm \-f 文件
end