tee 三通管道 左为输入 中为输出1 右为输出2
history | tee /dev/pts/1 > history.txt
yy 复制 3yy
p 粘贴 3p
dd 删除
^d 删除之前到光标
d$ 删除光标到最后
Linux文件权限
d :文件夹
- :文件
l :快捷方式
ls -l 文件权限
ls -ld 查目录权限
chmod 777 scan_record.js
r 读权限read 4
w 写权限write 2
x 操作权限execute 1
权限数字对应权限组说明:
总共分为4部分
【文件或文件夹】【owner权限】【group权限】【others权限】
【文件是-,文件夹是d】【r/w/x相加】【r/w/x相加】【r/w/x相加】
Linux档案的基本权限就有九个,分别是owner/group/others三种身份各有自己的read/write/execute权限。
chmod g-rw 1.txt
chmod go-rw 1.txt
chmod a=r 1.txt
chmod 760 1.txt
在终端输入:
chmod o w xxx.xxx
表示给其他人授予写xxx.xxx这个文件的权限
chmod go-rw xxx.xxx
表示删除xxx.xxx中组群和其他人的读和写的权限
其中:
u 代表所有者(user)
g 代表所有者所在的组群(group)
o 代表其他人,但不是u和g (other)
a 代表全部的人,也就是包括u,g和o
r 表示文件可以被读(read)
w 表示文件可以被写(write)
x 表示文件可以被执行(如果它是程序的话)
其中:rwx也可以用数字来代替
r ------------4
w -----------2
x ------------1
- ------------0
行动:
表示添加权限
- 表示删除权限
= 表示使之成为唯一的权限
当大家都明白了上面的东西之后,那么我们常见的以下的一些权限就很容易都明白了:
-rw------- (600) 只有所有者才有读和写的权限
-rw-r--r-- (644) 只有所有者才有读和写的权限,组群和其他人只有读的权限
-rwx------ (700) 只有所有者才有读,写,执行的权限
-rwxr-xr-x (755) 只有所有者才有读,写,执行的权限,组群和其他人只有读和执行的权限
-rwx--x--x (711) 只有所有者才有读,写,执行的权限,组群和其他人只有执行的权限
-rw-rw-rw- (666) 每个人都有读写的权限
-rwxrwxrwx (777) 每个人都有读写和执行的权限
属组
批量修改
1.set位权限(suid,sgid)
set位权限有两部分组成:suid和sgid,分别对应可执行行文件属主和属组的身份
suid位权限的表现形式:s或S 也可用数字4表示
x: s -: S 若该文件之前,用户已有可执行权限,那么设置了suid位权限后,将在该文件属主的可执行权限位上,显示为s;
否则显示为S
sgid位权限的表现形式:s或S 也可用数字2表示
x: s -: S 若该文件之前,属组已有可执行权限,那么设置了sgid位权限后,将在该文件属组的可执行权限位上,显示为s;
否则显示为S
作用:设置完set权限后,任何用户在执行此可执行文件的过程中,将获得该文件属主、属组的身份。
suid权限位的设定:chmod u+s File ... 或chmod 4nnn filename...
sgid权限位的设定:chmod g+s File ... 或chmod 2nnn filename...
其中nnn:分别表示属主属组其他用户对该文件的权限
作用:设置粘滞位权限后,即便用户和对目录有写入权限,也不能删除该目录中其他用户的文件
应用场景:对于公共可写目录,用户可创建删除自己的文件,但是不能删除其他用户的文件
表现形式:sticky表示为文件其它用户执行权限位上的t或T:
x: t -: T
若之前在其它用户执行位已有执行权限,则显示为t,否则显示为T
使用,如chmod o+t filename ...
chmod o-t filename ...
数字1表示增加粘滞位权限;数字0表示取消粘滞位权限;
使用,如:chmod 1755 filename ...
查看这个进程所去掉的权限
umask
umask 0 此设置不会屏蔽任何权限
umask 007 其他所有权限都去掉
临时修改
umask 0002
永久修改
vi /etc/profile
vi /etc/bashrc
第七章 进程监控及管理
ps默认显示当前终端中的进程
参数:说明
a:选项包括所有终端中的进程
x:选项包括不连接终端的进程
u:选项显示进程所有者的信息
f:选项显示进程的父进程
o:属性...选项显示定制的信息:pid、comm、%cpu、%mem、state、tty、euser、ruser
ps aux 查看进程
kill -9 xxx 强制杀死PID为XXX的进程
kill -9 aaa 强制杀死名为aaa的进程
jobs 查看后台进程的工作号
kill -9 %xx 强制杀死工作号为xx的进程
pstree 查询所有进程的树状结构
pstree tom 查询tom启动的进程树
ps aux | grep x 匹配出含有X的进程
pgrep cc pidgrep匹配出含有cc的进程的PID
ps aux|grep .. 查看进程状态
top 查看进程状态及cpu内存的占用情况
w -f 还是进程状态信息
kill -9 pid 强制杀进程
kill -kill pid 标准强制杀法
killall name 把名字为name的进程都杀死
R:running
S:sleeping
stoped
Z:zombie
dd if=/dev/zero of=/dev/null
ctrl+z暂停执行的进程
psj
dd if=/dev/zero of=/dev/null & //表示直接在后台运行
作业控制
grep 'model name' /proc/vpuinfo | wc -l
第八章 管理服务与守护进程
查看活跃状态
systemctl is-active sshd
查看开机自启
systemctl is-enabled sshd
查看启动失败
systemctl --failed
守护进程
管理系统服务
systemctl start |stop|restart
systemctl [command] [unit]
command 主要有:
start:立刻启动后面接的 unit。
stop:立刻关闭后面接的 unit。
restart:立刻关闭后启动后面接的 unit,亦即执行 stop 再 start 的意思。
reload:不关闭 unit 的情况下,重新载入配置文件,让设置生效。
enable:设置下次开机时,后面接的 unit 会被启动。
disable:设置下次开机时,后面接的 unit 不会被启动。
status:目前后面接的这个 unit 的状态,会列出有没有正在执行、开机时是否启动等信息。
is-active:目前有没有正在运行中。
is-enabled:开机时有没有默认要启用这个 unit。
kill :不要被 kill 这个名字吓着了,它其实是向运行 unit 的进程发送信号。
show:列出 unit 的配置。
mask:注销 unit,注销后你就无法启动这个 unit 了。
unmask:取消对 unit 的注销。
SSH远程管理
OpenSSH
远程安全运行shell
使用ssh带来的好处:
所有数据都被加密
验证数据加密
客户端为每一个成功连接的服务器保存了钥匙,以防假冒
ssh remotehost [command]
ssh user@remotehost [command]
ssh --help