Linux

linux文件基本属性

[root@www /]# ls -l
total 64
dr-xr-xr-x   2 root root 4096 Dec 14  2012 bin
dr-xr-xr-x   4 root root 4096 Apr 19  2012 boot
……
  • 当为[ d ]则是目录
  • 当为[  ]则是文件;
  • 若是[ l ]则表示为链接文档(link file);
  • 若是[ b ]则表示为装置文件里面的可供储存的接口设备(可随机存取装置);
  • 若是[ c ]则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。
    linux文件基本权限是数值来标识的
    image.png
    r:4、w:2、x:1

Linux文件属主和属组

image.png
root、root分别是文件所有者、所有者所属主。
linux系统按权限分为文件所有者、文件所有者同组用户和其他用户

更改文件所属组

chgrp [-R] 属组名 文件名
change group
-R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上-R的参数,那么该目录下的所有文件的属组都会更改

更改文件所属主

chown:更改文件属主,也可以同时更改文件属组
chown [–R] 属主名 文件名
chown [-R] 属主名:属组名 文件名

更改文件权限

chmod:更改文件9个属性
chmod [-R] xyz 文件或目录
r:4、w:2、x:1
x为所属主的三权限和相加
y为所属组的三权限和相加
zx为其他用户的三权限和相加

符号类型改变文件权限

chmod u=rwx,g=rx,o=r 文件名
或者使用
chmod a=rwx 文件名
a表示所属主、所属组、其他用户
+(加入) 、-(除去) 、=(设定)

Linux 文件与目录管理

相对路径,由/写起
绝对路径 ,不由/写起
处理目录的常用命令

  • ls: 列出目录
  • cd:切换目录
  • pwd:显示目前的目录
  • mkdir:创建一个新的目录
  • rmdir:删除一个空的目录
  • cp: 复制文件或目录
  • rm: 移除文件或目录
  • mv: 移动文件与目录、文件重命名
    ls -d ,只列出目录本身,不列出文件以及其他文件夹

mkdir (创建新目录)

  • -m :配置文件的权限喔!直接配置,不需要看默认权限 (umask) 的脸色~
  • -p :帮助你直接将所需要的目录(包含上一级目录)递回创建起来!

rmdir (删除空的目录)

  • -p :连同上一级『空的』目录也一起删除

查找指令

`find [搜索范围] [选项]
image.png
查找整个linux系统下大于200M的文件,

+n 大于 ,-n 小于 ,n 等于 ,单位有k、M、G

find / -size +200M

查找根目录下所有大于200M的文件

locate指令可以快速定位文件路径,locate指令利用实现建立的

locate 搜索文件

which指令可以快速定位命令的位置

grep指令和管道符

grep过滤查找,管道符,|表示将前一个命令的处理结果输出传递给后面的命令处理
基本语法
grep [选项] 查找内容 源文件

  • -n 显示匹配行及行号
  • -i 忽略字母大小写

压缩和解压

gzip/gunzip
gzip用于压缩文件,gunzip用于解压

zip/unzip指令
zip [选项] xxx.zip
unzip [选项] xxx.zip

zip常用选项

  • -r 递归压缩,即压缩目录
    unzip常用选项
  • -d<目录> 指定解压后的文件的存放目录

tar指令 既可以解压也可以压缩
基本语法
tar [选项] xxx.tar.gz 打包的内容
image.png

linux用户和用户组管理

linux用户管理

1、添加新用户

useradd 选项 用户名

  • -c comment 指定一段注释性描述。
  • -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
  • -g 用户组 指定用户所属的用户组。
  • -G 用户组,用户组 指定用户所属的附加组。
  • -s Shell文件 指定用户的登录Shell。
  • -u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。 在 Linux 中,Shell 有很多种“方言”和版本。常见的包括:
  • /bin/bash:目前最流行、功能最全的 Shell(大多数 Linux 发行版的默认选择)。
  • /bin/sh:较老、较基础的 Shell,通常遵循 POSIX 标准,速度快但功能相对少。
  • /bin/zsh:界面华丽、插件丰富的 Shell(很多程序员和 Mac 用户喜欢)。
  • /sbin/nologin:这是一个特殊的 Shell,如果你把用户的 Shell 设置为它,该用户就无法登录系统(常用于只需要运行服务、不需要人工操作的账号)。

echo $SHELL可以查看当前的shell
需要注意大小写

2、删除帐号

userdel 选项 用户名

  • -r,它的作用是把用户的主目录一起删除。

3、修改帐号

usermod 选项 用户名
常用的选项包括-c, -d, -m, -g, -G, -s, -u以及-o等,这些选项的意义与useradd命令中的选项一样,可以为用户指定新的资源值。
另外,有些系统可以使用选项:-l 新用户名
这个选项指定一个新的账号,即将原来的用户名改为新的用户名。

4、用户口令的管理

超级用户可以为自己和其他用户指定口令,普通用户只能用它修改自己的口令。
passwd 选项 用户名

  • -l 锁定口令,即禁用账号。
  • -u 口令解锁。
  • -d 使账号无口令。
  • -f 强迫用户下次登录时修改口令

Linux系统用户组的管理

1、增加一个新的用户组使用groupadd命令。

groupadd 选项 用户组

  • -g GID 指定新用户组的组标识号(GID)。
  • -o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。

2、如果要删除一个已有的用户组,使用groupdel命令

groupdel 用户组

3、修改用户组的属性使用groupmod命令。

groupmod 选项 用户组

  • -g GID 为用户组指定新的组标识号。
  • -o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
  • -n新用户组 将用户组的名字改为新名字

4、如果一个用户同时属于多个用户组,那么用户可以在用户组之间切换,以便具有其他用户组的权限。

newgrp root
这条命令将当前用户切换到root用户组,前提条件是root用户组确实是该用户的主组或附加组。

大量用户创建

  • 先编辑一个文本用户文件。
  • 以root身份执行命令 /usr/sbin/newusers,从刚创建的用户文件user.txt中导入数据,创建用户:
  • 执行命令/usr/sbin/pwunconv
  • 编辑每个用户的密码对照文件
  • 以root身份执行命令 /usr/sbin/chpasswd
  • 确定密码经编码写入/etc/passwd的密码栏后。

任务调度

crontab 进行定时任务的设置

设置任务调度文件:/etc/crontab
设置个人任务调度。执行crontab -e

*/1 * * * * ls -l /etc/ > /tmp/to.txt
image.png
corntab -r 终止任务调度
cornta -l 列出当前有哪些任务调度

at定时任务

at命令是一次性定时计划任务,at的守护进程atd会以后台模式运行,检查作业队列来运行

linux磁盘管理

linux采用挂载的概念,每个linux系统的文件系统都是相同多的
image.png
linux硬盘分为IDE硬盘和SCSI硬盘,目前大部分是SCSI硬盘

IDE硬盘,驱动器标识符为hdx~
SCSI硬盘,驱动器标识符为sdx~,

X为盘号,a为基本盘、b为基本从属盘,c为辅助主盘,d为辅助从属盘
~代表分区,前四个分区用数字1到4表示,他们是主分区或扩展分区,从5开始就是逻辑分区

wc

`wc(选项)(参数)
wc [选项]… [文件]…
wc [选项]… –files0-from=F

-c # 统计字节数,或–bytes:显示Bytes数。
-l # 统计行数,或–lines:显示列数。
-m # 统计字符数,或–chars:显示字符数。
-w # 统计字数,或–words:显示字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。
-L # 打印最长行的长度,或–max-line-length。
-help # 显示帮助信息。
–version # 显示版本信息。

df

df命令参数功能:检查文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
df [-ahikHTm] [目录或文件名]

  • -a :列出所有的文件系统,包括系统特有的 /proc 等文件系统;
  • -k :以 KBytes 的容量显示各文件系统;
  • -m :以 MBytes 的容量显示各文件系统;
  • -h :以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;
  • -H :以 M=1000K 取代 M=1024K 的进位方式;
  • -T :显示文件系统类型, 连同该 partition 的 filesystem 名称 (例如 ext3) 也列出;
  • -i :不用硬盘容量,而以 inode 的数量来显示

du

Linux du命令也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的,这里介绍Linux du命令。
du [-ahskm] 文件或目录名称

  • -a :列出所有的文件与目录容量,因为默认仅统计目录底下的文件量而已。
  • -h :以人们较易读的容量格式 (G/M) 显示;
  • -s :列出总量而已,而不列出每个各别的目录占用容量;
  • -S :不包括子目录下的总计,与 -s 有点差别。
  • -k :以 KBytes 列出容量显示;
  • -m :以 MBytes 列出容量显示;

linux进程

每个执行的程序都有一个pid用来表示唯一的进程
每个进程都有两种方式来运行,前台和后台。
image.png

image.png

父子进程

PPID 父进程

终止进程

kill [选项] 进程号 通过进程号杀死进程 killall 进程名称杀死进程以及所有子进程 常用选项-9`强制杀死进程

进程树pstree

ps [选项]
常用选项
-p 显示进程号
-u 显示用户名

linux服务管理

服务本质就是进程,又称为守护进程
服务往往监听一个端口
centos7.0之后,很多服务不再使用service,而是systemctl进行管理
在/etc/init.d/目录下的服务仍然使用service进行管理

运行级别

image.png
chkconfig指令(新系统已经淘汰)
可以给服务的各个运行级别设置自启动/关闭

systemctl

image.png

linux动态监控系统

top

基本语法
`top [选项]

-b:以批处理模式操作;
-c:显示完整的治命令;
-d:屏幕刷新间隔时间;
-I:忽略失效过程;
-s:保密模式;
-S:累积模式;
-i<时间>:设置间隔时间;
-u<用户名>:指定用户名;
-p<进程号>:指定进程;
-n<次数>:循环显示的次数;
-H:所有线程占用资源情况。

h:显示帮助画面,给出一些简短的命令总结说明;
k:终止一个进程;
i:忽略闲置和僵死进程,这是一个开关式命令;
q:退出程序;
r:重新安排一个进程的优先级别;
S:切换到累计模式;
s:改变两次刷新之间的延迟时间(单位为s),如果有小数,就换算成ms。输入0值则系统将不断刷新,默认值是5s;
f或者F:从当前显示中添加或者删除项目;
o或者O:改变显示项目的顺序;
l:切换显示平均负载和启动时间信息;
m:切换显示内存信息;
t:切换显示进程和CPU状态信息;
c:切换显示命令名称和完整命令行;
M:根据驻留内存大小进行排序;
P:根据CPU使用百分比大小进行排序;
T:根据时间/累计时间进行排序;
w:将当前设置写入~/.toprc文件中。

监控网络状态

netstat

-a或–all:显示所有连线中的Socket;
-A<网络类型>或–<网络类型>:列出该网络类型连线中的相关地址;
-c或–continuous:持续列出网络状态;
-C或–cache:显示路由器配置的快取信息;
-e或–extend:显示网络其他相关信息;
-F或–fib:显示FIB;
-g或–groups:显示多重广播功能群组组员名单;
-h或–help:在线帮助;
-i或–interfaces:显示网络界面信息表单;
-l或–listening:显示监控中的服务器的Socket;
-M或–masquerade:显示伪装的网络连线;
-n或–numeric:直接使用ip地址,而不通过域名服务器;
-N或–netlink或–symbolic:显示网络硬件外围设备的符号连接名称;
-o或–timers:显示计时器;
-p或–programs:显示正在使用Socket的程序识别码和程序名称;
-r或–route:显示Routing Table;
-s或–statistice:显示网络工作信息统计表;
-t或–tcp:显示TCP传输协议的连线状况;
-u或–udp:显示UDP传输协议的连线状况;
-v或–verbose:显示指令执行过程;
-V或–version:显示版本信息;
-w或–raw:显示RAW传输协议的连线状况;
-x或–unix:此参数的效果和指定”-A unix”参数相同;
–ip或–inet:此参数的效果和指定”-A inet”参数相同。

软件包管理

rpm(centos、redhat等系统使用) Redhat package manager

  • CentOS (Red Hat 系列):使用 .rpm 文件,通过 yumdnf 管理。
  • Ubuntu (Debian 系列):使用 .deb 文件,通过 aptdpkg 管理。

yum和 apt

功能CentOS (RPM/YUM)Ubuntu (DEB/APT)
安装软件yum install xxxapt install xxx
卸载软件yum remove xxxapt remove xxx
更新列表yum makecacheapt update
搜索软件yum search xxxapt search xxx
安装本地包rpm -ivh xxx.rpmdpkg -i xxx.deb
列出已安装rpm -qadpkg -l
  • CentOS 体系yum (管家) ➔ 调用 rpm (工人)
  • Ubuntu 体系apt (管家) ➔ 调用 dpkg (工人)

linux vim命令

lunux yum命令

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注