安装命令 yum wget rpm
wget 类似于迅雷,是一种下载工具 下载安装包
yum: 是redhat, centos 系统下的软件安装方式 下载安装包并自动安装 以及一些依赖关系
基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包。
rpm:软件管理 redhat的软件格式 rpm r=redhat p=package m=management 用于对于wget下载下来的安装包 安装,或者 卸载 .rpm软件
另外:apt-get:ubuntu下的一个软件安装方式,它是基于debain。
yum与rpm的区别,yum自动解决软件依赖性,而rpm不可以!
添加用户 useradd
useradd与adduser的区别
useradd与adduser都是创建新的用户
在CentOs下useradd与adduser是没有区别的都是在创建用户,在home下自动创建目录,没有设置密码,需要使用passwd命令修改密码。
而在Ubuntu下useradd与adduser有所不同
1、useradd在使用该命令创建用户是不会在/home下自动创建与用户名同名的用户目录,而且不会自动选择shell版本,也没有设置密码,那么这个用户是不能登录的,需要使用passwd命令修改密码。
2、adduser在使用该命令创建用户是会在/home下自动创建与用户名同名的用户目录,系统shell版本,会在创建时会提示输入密码,更加友好。
userdel 删除用户,
userdel只能删除用户,并不会删除相关的目录文件。userdel -r 可以删除用户及相关目录。
立即启动 + 每次重启启动
systemctl enable与systemctl start的区别
systemctl enable 将服务设置为每次开机启动;
systemctl start 服务立即启动 下次不启动;
systemctl enable --now 立即启动且每次重启也启动。
chmod授权命令(chmod 权限 文件名/目录名)
linux对文件赋权限的命令chmod的详细说明
指令名称 : chmod
使用权限 : 所有使用者
使用方式 : chmod [-cfvR] [–help] [–version] mode file…
说明 : Linux/Unix 的档案调用权限分为三级 : 档案拥有者、群组、其他。利用 chmod 可以藉以控制档案如何被他人所调用。
三个参数
mode : 权限设定字串,格式如下 : [ugoa…][[±=][rwxX]…][,…],其中
第一个参数(who,对谁操作):u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
第二个参数(何种操作):+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
第三个参数(何种权限):r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。
-c : 若该档案权限确实已经更改,才显示其更改动作
-f : 若该档案权限无法被更改也不要显示错误讯息
-v : 显示权限变更的详细资料
-R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)
–help : 显示辅助说明
–version : 显示版本
chmod范例 :
将档案 file1.txt 设为所有人皆可读取(所有人增加只读权限) chmod ugo+r file1.txt
将档案 file1.txt 设为所有人皆可读取(所有人增加只读权限) chmod a+r file1.txt
对于文件 file1.txt 与 file2.txt ,档案拥有者与其所属同一个群体者(ug)赋予(+)写入权限(w),但其他以外的人则不可写入 : chmod ug+w,o-w file1.txt file2.txt
将 ex1.py 设定为只有该档案拥有者(u)可以(+)执行(x) : chmod u+x ex1.py
将目前目录下的所有文件与子目录皆设为任何人可读取(r) : chmod -R a+r *
数字(更常用)
此外chmod也可以用数字来表示权限如 chmod 777 file
语法为:chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
对于三种权限 r=4,w=2,x=1
若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=7。
范例:
chmod a=rwx file 和 chmod 777 file 效果相同(任何人可读可写可执行)
chmod a=rr- file 和 chmod 440 file 效果相同(只读权限)
chmod ug=rwx,o=x file 和 chmod 771 file 效果相同
若用chmod 4755 filename可使此程序具有root的权限
使用数字,第二个参数为=,赋值,每个参数的位置表示who(ugo),每个参数数值表示操作(rwx)
ps -ef | grep 查看当前进程是否在运行
比如:
[root@localhost ~]# ps -ef | grep ApacheJetspeed
root 18887 18828 0 08:09 pts/0 00:00:00 grep ApacheJetspeed
字段含义如下:
UID PID PPID C STIME TTY TIME CMD
root 18887 18828 0 08:09 pts/0 00:00:00 grep ApacheJetspeed
第一,ps:将某个进程显示出来
-A 显示所有程序。
-e 此参数的效果和指定"A"参数相同。
-f 显示UID,PPIP,C与STIME栏位。
第二,grep命令是查找
中间的|是管道命令 是指ps命令与grep同时执行
这条命令的意思是显示有关Apachejetspeed有关的进程
UID PID PPID C STIME TTY TIME CMD
各相关信息的意义:
UID 程序被该 UID 所拥有
PID 就是这个程序的 ID (这种很重要,下面kill -9 pid,就要用到这个pid)
PPID 则是其上级父程序的ID
C CPU使用的资源百分比
STIME 系统启动时间
TTY 登入者的终端机位置
TIME 使用掉的 CPU 时间。
CMD 所下达的指令为何
对于查询结果,如何判断是运行与否呢?
因为ps -ef是显示所有进程的消息,包括ApacheJetspeed和grep ApacheJetspeed这两个甚至包括ps -ef本身,而grep是查找输出包含想要的字符串的行,也就是说grep ApacheJetspeed是在所有运行的进程中查找输出包含“ApacheJetspeed”字符串的输出行,这里面就包含ApacheJetspeed,和grep ApacheJetspeed 两个进程。
即如果运行了会显示两条输出,则一条是ApacheJetspeed的,另一条是grep ApacheJetspeed的。
如果没运行只会显示grep ApacheJetspeed的。
kill
杀死进程 # kill 12345
强制杀死进程 # kill -KILL 123456
彻底杀死进程 # kill -9 123456
kill 杀死进程,kill -9 强制杀死进程
su 和 sudo
这两个命令都没有参数,直接用就好了
su 切换到root用户,但是并没有转到root用户家目录下,即没有改变用户的环境。
su - 切换到root用户,并转到root用户的家目录下,即改变到了root用户的环境。
这个涉及到不同用户下的环境变量的配置。
sudo
通过sudo,我们能把某些超级权限有针对性的下放,并且不需要普通用户知道root密码(sudo用的不是root密码,而是当前用户密码),所以sudo相对于权限无限制性的su来说,还是比较安全的,所以sudo也能被称为受限制的su,另外sudo是需要授权许可的,所以也被称为授权许可的su。
sudo执行命令的流程是当前用户切换到root(或其他指定切换到的用户),然后以root(或其他指定的切换到的用户)身份执行命令,执行完成后,直接退回到当前用户,而这些的前提是要通过sudo的配置文件/etc/sudoers来进行授权。
sudo的配置文件是/etc/sudoers,我们可以用他的专用编辑工具visodu来进行配置,配置好后,可以切换到您授权的用户下,通过sudo -l来查看哪些命令是可以执行或禁止的。
tee + 文件名,前面的输出写入文件
假设因为某些原因,你正在使用 ping 命令。
ping google.com
然后同时,你想要输出的信息也同时能写入文件。这个时候,tee 命令就有其用武之地了。
ping google.com | tee output.txt
下面的截图展示了这个输出内容不仅被写入 output.txt 文件,也被显示在标准输出中。
如此应当明白了 tee 的基础用法。
-i参数能够让tee忽略中断事件(SIGINT)
ping baidu.com | tee -i ping.log