系统运行相关的命令
fg、bg让进程在前后台之间切换
Linux下的fg和bg命令是进程的前后台调度命令,即将指定号码(非进程号)的命令进程放到前台或后台运行。比如一个需要长时间运行的命令,我们就希望把它放入后台,这样就不会阻塞当前的操作;而一些服务型的命令进程我们则希望能把它们长期运行于后台。
进程前后台操作用到以下命令或按键:
Ctrl+C
终止并退出前台命令的执行,回到SHELL
Ctrl+Z
暂停前台命令的执行,将该进程放入后台,回到SHELL
jobs
查看当前在后台执行的命令,可查看命令进程号码
&
运行命令时,在命令末尾加上&可让命令在后台执行
fg N
将命令进程号码为N的命令进程放到前台执行,同%N
bg N
将命令进程号码为N的命令进程放到后台执行
fg
、bg
、jobs
、&
、ctrl + z
都是跟系统任务有关的,虽然现在基本上不怎么需要用到这些命令,但学会了也是很实用的
查看硬盘空间
lsblk
df -h
修改硬盘空间
cfdisk
管道符小技巧
找出被限制登录用户的命令是
grep "/sbin/nologin" /etc/passwd
;
统计文本行数的命令则是wc -l
。
查看nginx进程的pid
(ps -ef | grep nginx | head -n 1 | awk '{print $2}'
查看nginx所占用的端口号
netstat -anp | grep nginx
利用echo和管道符修改用户密码
echo qidong | passwd --stdin root
查看系统环境变量
env
echo $SHELL
直接别名设置快捷命令
alias wkcto="cd /data/site/wk"
字符
'单引号 把变量当字符串执行
"双引号可以解析变量
反引号中内容是执行命令
echo `ifconfig`
等于
echo $(ifconfig)
export导出变量全局用户使用
[root@localhost ~]# NAME=qidong
[root@localhost ~]# export qidong
[root@localhost ~]# su qidong
[qidong@localhost root]$ echo qidong
删除用unset
利用grep去掉注释、清理配置文件
[root@localhost ~]# mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
[root@localhost ~]# cat /etc/samba/smb.conf.bak | grep -v "#" | grep -v ";" | grep -v "^$" > /etc/samba/smb.conf
[root@localhost ~]# cat /etc/samba/smb.conf
在linux中命令顺序不对会引起错误
tar 中的 f参数一定要放在最后面
[root@localhost Desktop]# crontab -ue qidong
crontab: user `e' unknown
[root@localhost Desktop]# crontab -eu qidong
crontab: no changes made to crontab
[root@localhost Desktop]#
拿不准的命令 不要缩写
Linux中的特殊权限位
对文件的操作取决于上一级目录的权限
删除文件的操作取决于上一级目录的w(写)权限、没有写权限不能编辑修改和删除文件
1、SUID
SUID
是一种对二进制程序进行设置的特殊权限,可以让二进制程序的执行者临时拥有属主(root
也就是uid为零)的权限(仅对拥有执行权限的二进制程序有效)
[root@localhost Desktop]# ls -l /etc/shadow
----------. 1 root root 1129 Jul 19 21:39 /etc/shadow
[root@localhost Desktop]# ls -l /bin/passwd
-rwsr-xr-x. 1 root root 27832 Jan 30 2014 /bin/passwd
[root@localhost Desktop]#
例如,所有用户都可以执行passwd命令来修改自己的用户密码,而用户密码保存在/etc/shadow文件中。仔细查看这个文件就会发现它的默认权限是000,也就是说除了root管理员以外,所有用户都没有查看或编辑该文件的权限。但是,在使用passwd命令时如果加上SUID特殊权限位,就可让普通用户临时获得程序所有者的身份,把变更的密码信息写入到shadow文件中。这很像我们在古装剧中见到的手持尚方宝剑的钦差大臣,他手持的尚方宝剑代表的是皇上的权威,因此可以惩戒贪官,但这并不意味着他永久成为了皇上。因此这只是一种有条件的、临时的特殊权限授权方法。
使用chmod可以添加suid权限 、suid的特殊权限位是数字4
chmod u+s /bin/cat
这么使用后cat命令会变得非常危险
2、SGID
作用
- 让执行者临时拥有属组的权限(对拥有执行权限的二进制程序进行设置);
- 在某个目录中创建的文件自动继承该目录的用户组(只可以对目录进行设置)。
测试、用root用户创建文件夹
[root@localhost linux]# cd /tmp/
[root@localhost tmp]# mkdir linux
[root@localhost tmp]# chmod -R g+s linux/
[root@localhost tmp]# chmod -Rf 777 linux/
这回切换到普通用户qidong
[qidong@localhost Desktop]$ cd /tmp/linux/
[qidong@localhost linux]$ ll
total 0
[qidong@localhost linux]$ touch qidong
[qidong@localhost linux]$ ls -l
total 0
-rw-rw-r--. 1 qidong root 0 Jul 24 20:49 qidong
这时候就发现、qidong用户新建的文件继承了root用户组的权限。如果root用户在不加SGID权限那么则没有
3、SBIT
SBIT特殊权限位可确保用户只能删除自己的文件,而不能删除其他用户的文件。换句话说,当
对某个目录设置了SBIT粘滞位(保护位)权限限后,那么该目录中的文件就只能被其所有者执行删除操作了。
4、文件的隐藏属性
如果rwx权限都有、还不能更改或者删除、文件有可能有隐藏属性
查看文件隐藏属性命令 lsattr
[qidong@localhost who]$ lsattr qidong
---------------- qidong
1、chattr命令
chattr
命令用于设置文件的隐藏权限,格式为“chattr [参数] 文件
”。如果想要把某个隐藏功能添加到文件上,则需要在命令后面追加“+参数”,如果想要把某个隐藏功能移出文件,则需要追加“-参数”。chattr
命令中可供选择的隐藏权限参数非常丰富。
chattr命令中用于隐藏权限的参数及其作用
参数 | 作用 |
---|---|
i | 无法对文件进行修改;若对目录设置了该参数,则仅能修改其中的子文件内容而不能新建或删除文件 |
a | 仅允许补充(追加)内容,无法覆盖/删除内容(Append Only) |
S | 文件内容在变更后立即同步到硬盘(sync) |
s | 彻底从硬盘中删除,不可恢复(用0填充原文件所在硬盘区域) |
A | 不再修改这个文件或目录的最后访问时间(atime) |
b | 不再修改文件或目录的存取时间 |
D | 检查压缩文件中的错误 |
d | 使用dump命令备份时忽略本文件/目录 |
c | 默认将文件或目录进行压缩 |
u | 当删除该文件后依然保留其在硬盘中的数据,方便日后恢复 |
t | 让文件系统支持尾部合并(tail-merging) |
x | 可以直接访问压缩文件中的内容 |
[root@localhost linux]# chattr +a qidong
[root@localhost linux]# rm qidong
rm: remove regular empty file ‘qidong’? y
rm: cannot remove ‘qidong’: Operation not permitted
[root@localhost linux]# lsattr qidong
-----a---------- qidong
[root@localhost linux]#
[root@localhost linux]# chattr -a qidong
[root@localhost linux]# rm qidong
rm: remove regular empty file ‘qidong’? y
[root@localhost linux]# ll
total 0
[root@localhost linux]#
注意:普通用户是添加不了隐藏属性的
5、文件访问控制列表
某个指定的用户进行单独的权限控制,就需要用到文件的访问控制列表(ACL)了。
+权限
setfacl
命令
查看文件facl权限
getfacl
命令
[root@localhost linux]# setfacl -m u:qidong:rwx qidong
[root@localhost linux]# getfacl qidong
# file: qidong
# owner: root
# group: root
user::---
user:qidong:rwx
group::---
mask::rwx
other::---
挂载硬件设备
挂载的解释:当用户需要使用硬盘设备或分区中的数据时,需要先将其与一个已存在的目录文件进行关联,而这个关联动作就是“挂载”。
mount命令
[root@localhost ~]# mount /dev/cdrom ./cdrom/
mount: /dev/sr0 is write-protected, mounting read-only
[root@localhost ~]#
告诉你了 光盘有写保护、只能读取
CD目录进行查看
[root@localhost ~]# mkdir cdrom
[root@localhost ~]# mount /dev/cdrom ./cdrom/
mount: /dev/sr0 is write-protected, mounting read-only
[root@localhost ~]# cd cdrom/
[root@localhost cdrom]# ll
total 812
dr-xr-xr-x. 4 root root 2048 May 7 2014 addons
dr-xr-xr-x. 3 root root 2048 May 7 2014 EFI
-r--r--r--. 1 root root 8266 Apr 4 2014 EULA
-r--r--r--. 1 root root 18092 Mar 6 2012 GPL
dr-xr-xr-x. 3 root root 2048 May 7 2014 images
dr-xr-xr-x. 2 root root 2048 May 7 2014 isolinux
dr-xr-xr-x. 2 root root 2048 May 7 2014 LiveOS
-r--r--r--. 1 root root 108 May 7 2014 media.repo
dr-xr-xr-x. 2 root root 774144 May 7 2014 Packages
dr-xr-xr-x. 24 root root 6144 May 7 2014 release-notes
dr-xr-xr-x. 2 root root 4096 May 7 2014 repodata
-r--r--r--. 1 root root 3375 Apr 1 2014 RPM-GPG-KEY-redhat-beta
-r--r--r--. 1 root root 3211 Apr 1 2014 RPM-GPG-KEY-redhat-release
-r--r--r--. 1 root root 1568 May 7 2014 TRANS.TBL
[root@localhost cdrom]#
编辑网卡的四个方式
前两种是命令行的方式
1、vim编辑文件
vim /etc/sysconfig/network-scripts/ifcfg-ens33
2、命令方式
nmtui
3、 nm-connection-editor 命令图形化的方式
nm-connection-editor