- 进入目录需要可执行权限, 在目录中执行增删查(cd, touch, ls, rm, mv等)改文件动作, 需要可写权限.
- 查找资料, 了解以下Linux下的重要目录/proc, /sys, /SElinux, /bin, /usr/lib, /usr/local, /var, /tmp
①/proc
本质上是一个虚拟文件系统。/proc放的数据(如系统内核、进程、外设状态、网络状态等)在内存中,所以本身不占任何硬盘空间。重要文件有/proc/cpuinfo、/proc/dma、/proc/interrupts、/proc/ioports、/proc/net/*等
②/sys
与proc类似,是虚拟文件系统。主要记录与内核相关的信息,包括目前已加载的内核模板和内核检测到的硬件设备信息等。不占硬盘空间。
③/SElinux
是在进行程序、文件等权限设置依据的一个内核模块。
④/bin
放置二进制可执行文件,/bin放置单用户维护模式下还能被操作的命令。/bin下的命令可以被root与普通用户使用,例如cat、chmod、chown、date、mv、mkdir、cp、bash等
⑤/usr/lib
包含库函数、目标文件及不被普通用户惯用的执行文件或脚本(script)。
⑥/usr/local
管理员在本机安装自己下载的软件,建议安装到此目录,会便于管理。有bin、etc、include、lib的子目录。
⑦/var
在系统运行后会逐渐占用硬盘容量。/var主要针对常态性变动的文件,包括缓存(cache)、登录文件(log file)、及软件运行产生的文件,包括程序文件(lock file、run file)。
⑧/tmp
让一般用户或正在执行的程序暂时放置文件的地方。
- 查找资料, 了解以下重要命令. du, df, top, free, pstack, su, sudo(sudo -, sudo -s), adduser, password
①du:不加参数,du会分析当前所在目录的文件与目录所占用的硬盘空间,实际显示时,仅显示目录容量(不含文件)
评估文件系统的磁盘使用量(常用于评估目录所占容量)
du [-ahskm] 文件或目录名
-a:列出所有的文件与目录容量
-h:以G/M显示容量
-s:列出总量,不列出每个各列的目录占用容量
-S:不包括子目录下的总计
-k:容量以KB显示
-m:容量以MB显示
②df:不加参数,默认以1KB容量来列出
列出文件系统的整体磁盘使用量
df [-ahikHTm] [目录或文件名]
-a:列出所有的文件系统,包括系统特有的/proc等
-k:以KB的容量显示各文件系统
-m:以MB的容量显示各文件系统
-h:以GB,MB,KB等格式显示
-H:以M=1000K替代M=1024K的进位方式
-T:连同该分区的文件系统名也列出,如ext3
-i:不用硬盘容量,以inode的数量来显示
③top:动态查看进程变化
top [-d 数字] | top [-bnp]
-d:后接秒数,整个进程界面更新的秒数,默认5秒
-b:以批次的方式执行top,还有很多参数可以使用,通常搭配数据流重定向来将批处理的结果输出成文件。
-n:与-b搭配--->需要进行几次的top输出结果
-p:指定某些个PID来进行查看检测
top执行过程中可以使用的按键命令:
? :显示在top当中可以输入的按键命令
P :以CPU的使用资源排序显示
M :以内存的使用资源排序显示
N :以PID排序
T :以该进程使用的CPU时间累积排序
k :给予某个PID一个信号(signal)
r :给予某个PID重新制定一个nice值
q :退出top
④free:查看内存使用情况 ,不加参数,以KB为单位
free [-b|-k|-m|-g] [-t]
-b:b ,m , k,g来显示单位
-t:在最终输出结果中显示物理内存与swap的总量
⑤pstack:查看进程所有线程运行函数调用栈的情况
pstack pid
pstack命令实质是一个shell脚本,通过调用gdb来打印了进程运行时的函数调用栈
⑥su:身份切换命令
su [-lm] [-c 命令] [username]
- :单纯使用-,如“su -”,表示使用login-shell的变量文件读取方式来登录系统。若不带用户名,则表示切换root用户
-l :与-类似,后需加上要切换的用户账号,是login-shell方式
-m :与-p一样,表示目前的环境设置,不读取新用户的配置文件
-c :仅进行一次命令,所以后要加上命令
⑦sudo(sudo -,sudo -s):只有root可以执行sudo
sudo [-b] [-u 新用户账号]
-b:后续命令让系统自动执行,不与目前的shell产生影响
-u:后接要切换的用户,无此项则切换到root下
⑧adduser:创建用户命令
会自动为创建的用户指定主目录、系统shell版本,会在创建时输入用户密码
默认情况下: adduser在创建用户时会主动调用 /etc/adduser.conf; 在创建用户主目录时默认在/home下,而且创建为 /home/用户名
(1) -home:指定创建主目录的路径,默认是在/home目录下创建用户名同名的目录,这里可以指定;如果主目录同名目录存在,则不再创建,仅在登录时进入主目录。
(2) -quiet:即只打印警告和错误信息,忽略其他信息。
(3) -debug:定位错误信息。
(4) --conf:在创建用户时使用指定的configuration文件。
(5) --force-badname: 默认在创建用户时会进行/etc/adduser.conf中的正则表达式检查用户名是否合法,如果想使用弱检查,则使用这个选项,如果不想检查,可以将/etc/adduser.conf中相关选项屏蔽
⑨passwd:设置或修改密码,不加参数是修改当前用户的密码
passwd [-l] [-u] [--stdin] [-S] [-n 日数] [-x 日数] [-w 日数] [-i 日期] 账号
--stdin:可以通过来自前一个管道的数据作为密码的输入,对shell script有帮助
-l :是Lock的意思,会将/etc/shadow第二列最前面加上!使密码失效
-u:与-l相反
-S:列出密码相关参数,即shadow文件内的大部分信息
-n:后接天数,shadow的第4字段,多久不可修改密码天数
-x:后接天数,shadow的第5字段,多久内必须要改动密码
-w:后接天数,shadow的第6字段,密码过期前的警告天数
-i:后接“日期”,shadow的第7字段,密码失效日期
- 查找资料, 学习如何使用命令安装gcc/g++, gdb, vim
在root用户下使用yum安装或在普通用户下使用sudo yum install+包名
yum install +包名:
yum install gcc/g++/gdb/vim