linux基本使用
Centos7 常用命令
docs命令:
ipconfig
ipconfig /? 查看帮助
cls 清屏
操作系统提供的文件系统是树形结构
Centos优点:
CentOS:升级不频繁,省事省心。
CentOS:目前CentOS系统更加安全稳定
CentOS:用户量相对较少,没有详细的使用帮助类教程,新用户上手比较难。
CentOS:使用.rmp包,以及使用yum进行软件管理。
Centos装机教程:
F2进入BIOS
linux命令: 命令 参数
系统快捷键
Linux命令补全: tab键补全
快速启动终端快捷键: ctr+alt+t
查看历史命令: history
!历史命令编号:执行对应的历史命令 history -c 只是清除当前shell的历史纪录
清空该文件(echo > /root/.bash_history),那些历史命令就会被清空了。
部分删除操作:
1.vim ~/.bash_history
该文件即为历史记录存储文件,我们随意修改
2.修改后再次 history 查看,发现并没有变化。原因:缓存
执行:history -r
读取历史文件并将其内容添加到历史记录中,即重置文件里的内容到内存中,完成修改!
关机
init 0
shutdown -h now 关闭计算机,停止服务后再关闭系统
halt 关闭计算机
poweroff
shutdown -h 20:25 系统在今天20:25关机
shutdown -h +10 系统再过十分钟自动关机
重启
shutdown -r now 重新启动计算机,停止服务后重新启动计算机
reboot 重新启动计算机
init 6
Ctrl+Alt+Delete键
一般用shutdown -r now,先关闭相关服务,再
重启系统;shutdown -h now也是如此。
查看参考手册(例如ping 命令)
man ping
q退出man帮助
查看帮助 --help ,如 ls --help
显示磁盘的使用情况
df -h
切换终端 Ctrl + Alt+F[1-6]
退出登录状态 exit
查看权限 ll
w命令功能:显示登录用户的详细信息
which :获取命令的路径
查看当前用户 whoami
查看当前有哪些用户登陆 who
exit:退出账户
sudo -s:切换到管理员用户
日期 date
修改日期 date '月日时分年'
时间格式化: date "+%Y-%m-%d %H:%M:%S" : 年月日十分秒
日历 cal
cal -y:查看全年日历信息
显示前一个月,当前月以及下一个月的月历 cal -3
显示指定月,年的月历
cal 7 2008 hwclock -s
同步硬件时间 hwclock -w
同步系统时间
清屏 clear 快捷键 Ctrl + l (window : cls)
Ctrl + a 光标移动到行首(ahead of line)
Ctrl + e 光标移动到行尾(end of line)
Ctrl + r 显示:号提示,根据用户输入查找相关历史命令(reverse-i-search)
yum工具:
# yum -y install [package] 下载并安装一个rpm包 # yum localinstall [package.rpm] 安装一个rpm包,使用你自己的软件仓库解决所有依赖关系 # yum -y update 更新当前系统中安装的所有rpm包 # yum update [package] 更新一个rpm包 # yum remove [package] 删除一个rpm包 # yum list 列出当前系统中安装的所有包 # yum search [package] 在rpm仓库中搜寻软件包 # yum clean [package] 清除缓存目录(/var/cache/yum)下的软件包 # yum clean headers 删除所有头文件 # yum clean all 删除所有缓存的包和头文件
linux主要目录:
bin目录:用来存放常用的可执行文件
sbin目录:用来存放系统的可执行文件
家目录:用来存放用户的自己的文件
root用户的家目录是 /root/
dev目录 设备文件
etc目录 配置文件目录
tmp目录 临时文件目录
可以随意用的目录:
/mnt/
/opt/
/media/
文件和目录
新建文件 touch
查看文件内容
cat文件内容 查看命令
head查看文件的前几行(默认10)
head -1 第一行
tail查看文件的前几行(默认10)
tail -1 最后一行
tail -f 用来查看日志
less 查看文件,用上下键翻
more:分屏显示
f(空格):看下一页
b:看上一页
回车:看下一行
q: 退出
拷贝 cp
是否覆盖 cp -i
递归拷贝 cp -r
# cp file1 file2 将file1复制为file2 # cp -a dir1 dir2 复制一个目录 # cp -a /tmp/dir1 . 复制一个目录到当前工作目录(.代表当前目录)
浏览 ls
# ls 查看目录中的文件 # ls -a 显示隐藏文件 # ls -l 显示详细信息 # ls -la 显示隐藏文件的详细信息 # ls -lrt 按时间显示文件(l表示详细列表,r表示反向排序,t表示按时间排序) # pwd 显示工作路径 # mkdir dir1 创建 'dir1' 目录 # mkdir dir1 dir2 同时创建两个目录 # mkdir -p /tmp/dir1/dir2 创建一个目录树
搜索文件
find: 根据指定路径搜索文件
1. -name: 根据文件名搜索
2. -size: 根据文件大小搜索,注意点不准确一般不用
3. -perm: 根据权限搜索 r:4 w:2 x:1
4.find . -name "*.txt" -> 搜索后缀是.txt的文件
5.linux下查找某个文件位置的方法 find / -name filename
通配符:起到了模糊查询的作用, *表示匹配0个或者多个字符, ?:只能匹配任意一个字符, 提示:通配符和正则表达式没有关系
链接:
软链接: 好比快捷方式,注意点:删除原始文件软链接无效,创建软链接不会对硬链接数加1,可以目录创建软链接.
非常重要的注意点:如果软链接没有和原始文件在同一个目录里面,那么原始文件需要使用绝对路径
软链接的使用: ln -s 1.txt 1-s.txt , ln -s /home/python/Desktop/AAA/1.txt ../1-s.txt 默认在当前目录里面查找
硬链接: 好比一个人可以有多个名字,删除原始文件不会对硬链接文件产生影响,使用硬链接文件依然可以获取文件数据,
注意点: 不能给目录创建硬链接,创建硬链接只能给文件创建,创建硬链接会对硬链接数加1
硬链接的使用: ln 1.txt 1-h.txt
linux目录结构
/ 根目录
. 当前目录
.. 上一级目录,父目录
切换目录 cd
切换用户的家目录 cd ~
切换上次的目录 cd -
显示当前目录 pwd
切换到指定目录 cd 目录名:
切换到上一级目录 cd ..
切换到当前目录 cd .
移动 mv 参数说明:
-f:force,强制直接移动而不询问
-i:若目标文件(destination)已经存在,就会询问是否覆盖
-u:若目标文件已经存在,且源文件比较新,才会更新 # mv dir1 dir2 移动/重命名一个目录
删除 rm
删除目录 rm -r # rm -f file1 删除 'file1' # rm -rf dir1 删除 'dir1' 目录及其子目录内容
用户相关
创建用户 useradd 用户名 修改密码 passwd 用户名 切换用户 su - 用户名
创建用户:
useradd -m 用户名
/etc/passwd文件 用户名:密码占位符:u_id:g_id:用户描述:家目录:是否允许登录
/bin/bash 允许登录操作系统
/sbin/nologin 不允许登陆操作系统
/etc/shadow 用户密码存放文件
/etc/group 用户组文件 组名:组密码:组id:组成员
/etc/gshadow 用户组密码存放文件
/var/spool/mail/用户名
/home/用户名
删除用户
userdel -r 用户名
查看用户test
id test
修改用户信息
usermod
-u修改用户id
-g修改用户组id
-G加到指定的用户组(覆盖式)
-aG加到指定用户组(追加式 )
-d修改用户家目录
-c修改用户备注信息
-s修改用户所用的shell
usermod -L test 禁止test用户登录
usermod -U test 允许test用户登录
-d 修改用户家目录 如:
usermod -d /home/test/ testing
cp -r /home/testing/.[!.]* /home/test/
添加组: groupadd 组名
文件权限
文件的权限:作用于文件内容
root 用户不受权限控制
ls -l
权限信息 . 硬链接数 属主 属组 文件大小 文件创建日期 文件名
权限信息后面的. 是selinux的标志,在安全状态下创建的
权限信息:
10位
第1位、文件类型 -:普通文件 d:目录 l:软连接(ln -s xxx xx) b:设备 p:管道文件
权限分类:读(r),写(w),执行(x)
2-4:属主权限-->u
5-7:属组权限-->g
8-10:其他用户-->o
-rw-rw-r-- 1 yun yun 0 2月 19 18:31 hello.txt
yun@yun-virtual-machine:~/test$ chmod u-rw hello.txt
yun@yun-virtual-machine:~/test$ ll hello.txt
----rw-r-- 1 yun yun 0 2月 19 18:31 hello.txt
yun@yun-virtual-machine:~/test$ chmod u+rw hello.txt
yun@yun-virtual-machine:~/test$ ll hello.txt
-rw-rw-r-- 1 yun yun 0 2月 19 18:31 hello.txt
yun@yun-virtual-machine:~/test$ chmod u=rwx hello.txt
yun@yun-virtual-machine:~/test$ ll hello.txt
-rwxrw-r-- 1 yun yun 0 2月 19 18:31 hello.txt*
yun@yun-virtual-machine:~/test$ chmod u=--- hello.txt
yun@yun-virtual-machine:~/test$ ll hello.txt
----rw-r-- 1 yun yun 0 2月 19 18:31 hello.txt
执行文件的方法:
. /文件路径
shell方法
sh文件路径
bash 文件路径
. 文件路径
目录权限
目录权限管理:
权限分类:读(r),写(w),执行(x)
目录的读权限是:ls 该目录
目录的执行权限是可以cd 该目录
目录写权限是可以增删该目录下的文件,但是操作文件时必须能cd到该目录。
查看目录权限信息: ll -d /home/test
db_test@yun-virtual-machine:~/test$ ll -d hello
drwxrwxr-x 2 db_test db_test 4096 2月 19 19:32 hello/
权限信息:
10位
第1位、文件类型 -:普通文件 d:目录 l:软连接(ln -s xxx xx) b:设备 p:管道文件
权限分类:读(r),写(w),执行(x)
2-4:属主权限-->u
5-7:属组权限-->g
8-10:其他用户-->o
改变文件属主:chown root a.txt
改变文件属组:chown .root a.txt
改变文件属主、属组:chown root.root a.txt
批量创建文件: touch a/b/c/d/{1..9}.txt
递归修改文件属主、属组:chown -R 属主.属组 参数
r-4,w-2,x-1
文档合并
> 把左边的文件内容覆盖到右边的文件中
yun@yun-virtual-machine:~/test$ cat hehe.txt python yun@yun-virtual-machine:~/test$ echo 'python' > hehe.txt yun@yun-virtual-machine:~/test$ cat hehe.txt python
>> 把左边的文件内容追加到右边的文件中
yun@yun-virtual-machine:~/test$ echo '1213' >> hehe.txt yun@yun-virtual-machine:~/test$ cat hehe.txt python 1213
统计文件有多少行:wc -l 文件名 如:
yun@yun-virtual-machine:~/test$ wc -l /etc/passwd 38 /etc/passwd yun@yun-virtual-machine:~/test$ cat /etc/passwd | wc -l 38
文件归档
文件归档:将许多文件(或目录)打包成一个文件。
文件归档的目的:方便备份、还原以及传输文件
tar命令参数:
c:创建一个新的tar文件
t:列出tar文件中目录的内容
x:从tar文件中抽取文件
f:指定归档文件或磁带设备(一般都要选)
v:显示所打包的文件的详细信息
z:使用gzip压缩算法来压缩打包后的文件
j:使用bzip2压缩算法来压缩打包后的文件
打包:tar -zcvf xxx.tar *.py
#把本级目录所有python程序打包为xxx.tar包
tar -zcvf xxx.tar *.py
查看归档文件:
tar -tf xxx.tar
解包:tar -zxvf xxx.tar
#解包到当前目录下 tar –zxvf xxx.tar
#解包到/path目录下 tar –zxvf xxx.tar –C /path
出现扩展名是.tar.gz、.tgz都可用上面的方式打包和解包
出现扩展名是.tar.bz2
打包用tar –jcvf file.tar.bz2
解包用tar –jxvf file.tar.bz2
tar czvf /tmp/test/test1.tar.gz test1/
tar cjf /tmp/test/test1.tar.bz2 test1/
tar -tf /tmp/test/test1.tar.gz
tar xvf /tmp/test/test1.tar.gz -C /tmp/test2/
星号 *-->所有
tar czf /tmp/tt.tar.gz *
tar xf /tmp/tt.tar.gz -C test3/
文件压缩:
压缩:将大文件根据压缩算法,压缩为小文件,便于存储和传输
用法:
gzip
压缩:
gzip new_passwd
gzip -9 file1 最大程度压缩 file1
解压:gunzip new_passwd.gz
bzip2
压缩: bzip2 new_passwd
解压:bunzip2 new_passwd.bz2
zip
压缩:
zip file1.zip file1
创建一个zip格式的压缩包
zip -r file1.zip file1 dir1 把文件和目录压缩成一个zip格式的压缩包
解压:
unzip file1.zip 解压一个zip格式的压缩包到当前目录
unzip test.zip -d /tmp/ 解压一个zip格式的压缩包到 /tmp 目录
vim编辑器
命令行模式、编辑模式、扩展模式
命令行模式:
dd删除一行,ndd删除光标所在的下n行
yy复制一行,nyy复制光标所在的下n行
u:撤销上一步操作
剪贴:yy dd
Ctrl + r:恢复上一步操作
p:在光标下一行粘贴
P:在光标上一行粘贴
$-->行尾,0-->行首
G-->文本最后一行;gg-->文本第一行;nG-->文本第n行
H-->屏幕第1行;M-->屏幕中间;L-->屏幕最后一行
扩展模式:
:set nu 显示行号
系统的初始化和服务:bios-->mbr-->grub-->kernel-->init
BIOS:决定你是从哪里读取操作系统(启动介质)
MBR:主引导记录(512B):446:引导信息;64 分区信息 2:标志位
boot loader:帮助加载内核
查看操作系统:cat /etc/redhat-release
查看内核版本:uname -r
查看内核版本详细信息:uname -a
runlevel
init level ,
Centos的runlevel级别:
centos6修改运行级别:vim /etc/inittab 执行如下操作
id:5 修改id后面的数字,重启系统即可
centos6(init或systemv)
0 关机halt
1 单用户模式(用于维护,无需用户名、密码登录)
2 多用户模式(不启用网络功能)
3 多用户模式(带网络功能),命令行界面(CLI:command line interface)
4 未定义
5 图形界面(桌面环境)
6 重启reboot
centos7(systemd)
poweroff.target
rescue.target
multi-user.target
graphical.target
reboot.target
Debian系(ubuntu是基于debian)的Linux一直是用runlevel 2来默认启动,并且runlevel定义也与redhat有区别。
debian的runlevel级别定义如下:
0 – Halt
1 – Single
2 – Full multi-user with display manager (GUI)
3 – Full multi-user with display manager (GUI)
4 – Full multi-user with display manager (GUI)
5 – Full multi-user with display manager (GUI)
6 – Reboot
grub加密:
vim /etc/grub.conf
破解grub加密,从BIOS进入救援模式
加密bios:
bios可以破解group加密
破解BIOS加密,给BIOS电池放电
系统监控
系统监视和进程控制工具—top和free
top命令的功能 :top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。
top命令显示结果中一些常用状态信息的具体含义(注意q退出top命令)
free命令的功能
free:查看内存使用信息
free echo 'scalc=2;2030792 /1024/1024' |bc -l
free -m
free -h
系统中进程的监控—ps
1)进程的定义:进程是程序的一次动态执行。
2)守护进程的定义:守护进程是在后台运行并提供系统服务的一些进程。
3)父进程、子进程的定义:当一个进程创建另一个进程时,第1个进程被称为新进程的父进程,而新进程被称为子进程。
4)ps命令的功能:用来显示当前进程的状态。
Ps –aux 显示所有的与用户相关的完整信息
1.查进程 ps命令查找与进程相关的PID号: ps a 显示现行终端机下的所有程序,包括其他用户的程序。 ps -A 显示所有程序。 ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。 ps -e 此参数的效果和指定"A"参数相同。 ps e 列出程序时,显示每个程序所使用的环境变量。 ps f 用ASCII字符显示树状结构,表达程序间的相互关系。 ps -H 显示树状结构,表示程序间的相互关系。 ps -N 显示所有的程序,除了执行ps指令终端机下的程序之外。 ps s 采用程序信号的格式显示程序状况。 ps S 列出程序时,包括已中断的子程序资料。 ps -t<终端机编号> 指定终端机编号,并列出属于该终端机的程序的状况。 ps u 以用户为主的格式来显示程序状况。 ps x 显示所有程序,不以终端机来区分。 最常用的方法是ps aux,然后再通过管道使用grep命令过滤查找特定的进程,然后再对特定的进程进行操作。 ps aux | grep program_filter_word,ps -ef |grep tomcat ps -ef|grep python|grep -v grep 显示出所有的python进程,去处掉当前的grep进程。 2.杀进程 使用kill命令结束进程:kill xxx 常用:kill -9 324 Linux下还提供了一个killall命令,可以直接使用进程的名字而不是进程标识号,例如:# killall -9 NAME 3.启动进程
进入到进程的执行文件所在的路径下,执行文件 ./文件名
让进程在后台可靠运行的几种方法
方法1
#nohup 【命令】 &
例:
[root@pvcent107 ~]# nohup ping www.ibm.com &
方法2
# (【命令】 &)
例:
# (ping www.ibm.com &)
详细:https://www.cnblogs.com/yunwangjun-python-520/p/10713564.html
Linux 查看端口占用情况
Linux 查看端口占用情况可以使用 lsof 和 netstat 命令。 lsof lsof(list open files)是一个列出当前系统打开文件的工具。 lsof 查看端口占用语法格式: lsof -i:端口号 实例 查看服务器 8000 端口的占用情况: # lsof -i:8000 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME nodejs 26993 root 10u IPv4 37999514 0t0 TCP *:8000 (LISTEN) 可以看到 8000 端口已经被轻 nodejs 服务占用。 lsof -i 需要 root 用户的权限来执行,如下图: 更多 lsof 的命令如下: lsof -i:8080:查看8080端口占用 lsof abc.txt:显示开启文件abc.txt的进程 lsof -c abc:显示abc进程现在打开的文件 lsof -c -p 1234:列出进程号为1234的进程所打开的文件 lsof -g gid:显示归属gid的进程情况 lsof +d /usr/local/:显示目录下被进程开启的文件 lsof +D /usr/local/:同上,但是会搜索目录下的目录,时间较长 lsof -d 4:显示使用fd为4的进程 lsof -i -U:显示所有打开的端口和UNIX domain文件 netstat netstat -tunlp 用于显示 tcp,udp 的端口和进程等相关情况。 netstat 查看端口占用语法格式: netstat -tunlp | grep 端口号 -t (tcp) 仅显示tcp相关选项 -u (udp)仅显示udp相关选项 -n 拒绝显示别名,能显示数字的全部转化为数字 -l 仅列出在Listen(监听)的服务状态 -p 显示建立相关链接的程序名 例如查看 8000 端口的情况,使用以下命令: # netstat -tunlp | grep 8000 tcp 0 0 0.0.0.0:8000 0.0.0.0:* LISTEN 26993/nodejs 更多命令: netstat -ntlp //查看当前所有tcp端口 netstat -ntulp | grep 80 //查看所有80端口使用情况 netstat -ntulp | grep 3306 //查看所有3306端口使用情况 kill 在查到端口占用的进程后,如果你要杀掉对应的进程可以使用 kill 命令: kill -9 PID 如上实例,我们看到 8000 端口对应的 PID 为 26993,使用以下命令杀死进程: kill -9 26993
系统中进程的监控pstree、kill
centos7默认没有pstree,需要yum -y install psmisc
1)pstree命令的功能:以树状图显示程序。
2)pstree命令的用法举例:
例如:列出PID为4729的进程的进程状态树的命令:pstree 4729
进程树:pstree
pkill -9 进程名
pkill -9 'bash'
pgrep 'bash'过滤bash进程的id
3)kill命令的功能:把一个信号发送给一个或多个进程。默认发送终止信号。
4)灵活应用kill命令终止进程
例如:终止PID为3852的进程的命令:kill 3852
5)灵活应用kill -9命令杀死进程
例如:杀死PID为3906的进程的命令:kill -9 3906
pgrep命令的功能:通过名称或其他属性查找进程
例如:查找名为firefox的进程的命令为:pgrep firefox
pkill命令的功能:通过名称或其他属性发信号给进程
例如:杀死名为firefox的进程的命令为:pkill firefox
vi编辑技巧
1. 进入输入模式 新增 (append) a :从光标所在位置後面开始新增资料,光标後的资料随新增资料向後移动。 A:从光标所在列最後面的地方开始新增资料。 插入 (insert) i:从光标所在位置前面开始插入资料,光标後的资料随新增资料向後移动。 I :从光标所在列的第一个非空白字元前面开始插入资料。 开始 (open) o :在光标所在列下新增一列并进入输入模式。 O: 在光标所在列上方新增一列并进入输入模式。 2. 退出vi 在指令模式下键入:q,:q!,:wq或:x(注意:号),就会退出vi。其中:wq和:x是存盘退出,而:q是直接退出,如果文件已有新的变化,vi会 提示你保存文件而:q命令也会失效,这时你可以用:w命令保存文件后再用:q 退出,或用:wq或:x命令退出,如果你不想保存改变后的文件,你就需要用:q!命令,这个命令将不保存文件而直接退出vi。 3. 删除与修改文件的命令: x:删除光标所在字符。 dd :删除光标所在的列。 r :修改光标所在字元,r 後接著要修正的字符。 R:进入取替换状态,新增文字会覆盖原先文字,直到按 [ESC] 回到指令模式下为止。 s:删除光标所在字元,并进入输入模式。 S:删除光标所在的列,并进入输入模式。 4. 屏幕翻滚类命令 Ctrl+u: 向文件首翻半屏 Ctrl+d: 向文件尾翻半屏 Ctrl+f: 向文件尾翻一屏 Ctrl+b: 向文件首翻一屏 nz: 将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。 5. 删除命令 ndw或ndW: 删除光标处开始及其后的n-1个字 do: 删至行首 d$: 删至行尾 ndd: 删除当前行及其后n-1行 x或X: 删除一个字符,x删除光标后的,而X删除光标前的 Ctrl+u: 删除输入方式下所输入的文本 6. 搜索及替换命令 /pattern: 从光标开始处向文件尾搜索pattern ?pattern: 从光标开始处向文件首搜索pattern n: 在同一方向重复上一次搜索命令 N: 在反方向上重复上一次搜索命令 :s/p1/p2/g: 将当前行中所有p1均用p2替代 :n1,n2s/p1/p2/g: 将第n1至n2行中所有p1均用p2替代 :g/p1/s//p2/g: 将文件中所有p1均用p2替换 7. 复制,黏贴 (1) 选定文本块,使用v进入可视模式;移动光标键选定内容 (2) 复制选定块到缓冲区,用y;复制整行,用yy (3) 剪切选定块到缓冲区,用d;剪切整行用dd (4) 粘贴缓冲区中的内容,用p 8. 其他 在同一编辑窗打开第二个文件,用:sp [filename] 在多个编辑文件之间切换,用Ctrl+w
top命令;默认每间隔5s刷新一次
wa>0表示有IO操作
hi硬件中断
si软件中断
zombie僵尸进程
Swap交换分区,一旦交换分区被使用表示物理内存不够用
buffer:缓冲区;缓解硬盘到内存的速度差;把一些零散的数据攒齐再统一处理
cache:高速缓存,缓解cpu到内存的速度差
PID:进程号
NI:NI越大优先值越低
进程管理:
进程是程序的一次动态执行。
守护进程是在后台运行并提供系统服务的一些进程。
当一个进程创建另一个进程时,第一个进程被称为新进程的父进程,而新进程被称为子进程
ps查看当前进程
ps aux查看所有进程
grep过滤
yun@yun-virtual-machine:~$ ls test |grep 'txt'
a.txt
b.txt
c.txt
d.txt
hehe.txt
hello.txt
grep 'root' /etc/passwd
yun@yun-virtual-machine:~$ grep '/bin/bash' /etc/passwd
root:x:0:0:root:/root:/bin/bash
yun:x:1000:1000:yun,,,:/home/yun:/bin/bash
yun@yun-virtual-machine:~$ ps aux |grep 'init'
root 1 0.0 0.2 33884 4300 ? Ss 09:13 0:02 /sbin/init
yun 17779 0.0 0.2 40372 4500 ? Ss 09:38 0:00 init --user
yun 83886 0.0 0.1 15968 2136 pts/9 S+ 11:16 0:00 grep --color=auto init
-v是反向
yun@yun-virtual-machine:~$ ps aux |grep 'init'|grep -v 'grep'
root 1 0.0 0.2 33884 4300 ? Ss 09:13 0:02 /sbin/init
yun 17779 0.0 0.2 40372 4500 ? Ss 09:38 0:00 init --user
Linux的终端是一个bash
杀死进程
kill -9 PID强制杀死进程
查看后台运行的程序:jobs
yun@yun-virtual-machine:~$ firefox & 在后台运行
[1] 94195
yun@yun-virtual-machine:~$ jobs
[1]+ 已完成 firefox
yun@yun-virtual-machine:~$ fg %1 调到前台来运行
杀死进程法2:kill -9 %工作号;工作号通过jobs来查看
pgrep 'bash'
硬盘分区:
fdisk -l /dev/sda
1个扇区为512bytes
操作系统按block来操作I/O,block--->8*512
对象存储:如百度网盘。
硬盘存储:如同硬盘。
文件存储:文件
磁盘分区:
1、fdisk /dev/sda
partprobe更新分区
分区分类:主分区,扩展分区,逻辑分区(扩展分区下的分区叫逻辑分区)
文件系统:
格式化:
mkfs.ext4 /dev/sda3
扩展分区不能格式化
挂载文件系统:
/dev/sda ...>/mnt 挂载
挂载
mount /dev/sda1/ /sda1/
查看文件系统挂载:df
swap缓解内存压力
启动、关闭防火墙
永久打开或则关闭
chkconfig iptables on
chkconfig iptables off
即时生效:重启后还原
启动一个服务:systemctl start firewalld.service
关闭一个服务:systemctl stop firewalld.service
重启一个服务:systemctl restart firewalld.service
显示一个服务的状态:systemctl status firewalld.service
在开机时启用一个服务:systemctl enable firewalld.service
在开机时禁用一个服务:systemctl disable firewalld.service
查看服务是否开机启动:systemctl is-enabled firewalld.service
查看已启动的服务列表:systemctl list-unit-files|grep enabled
查看启动失败的服务列表:systemctl --failed
3.配置firewalld-cmd
firewall-cmd --zone= public --remove-port=80/tcp --permanent
service iptables start
service iptables stop
或者:
/etc/init.d/iptables start
/etc/init.d/iptables stop
ip地址与子网划分:
172.16.45.10/16
网络地址:172.16.0.0
主机地址:172.16.45.10/16
ipv4:
A 类
1.0.0.0 126.0.0.0
B类
128.0.0.0 191.0.0.0
C类
192.0.0.0 223.255.255.0
ifconfig:
重启网络服务:
service network restart
永久修改ip:
vim /etc/sysconfig/network-scripts/ifcfg-eth1
vim /etc/sysconfig/network-scripts/ifcfg-eth0
查看网络状态:
[root@localhost test]# service network status
配置设备:
lo eth0 eth1
当前的活跃设备:
lo eth1
网关守护进程:
[root@localhost test]# service NetworkManager status
NetworkManager (pid 1511) 正在运行...
检查同一网关有没有IP地址冲突的:
arping -I eth0 192.168.11.11
参考博客: