根据《linux 兵书》在kali上实际操作 第三章 文件和磁盘管理
本博客操作内容有限,命令参数不能全部的涉及,可通过“命令+空格+--help”显示详细参数和使用方法,看不懂英文可以百度翻译。操作内容目录如下:
1.进入文件命令 cd
2.查看目录中的文件 ls
3.新建和删除文件 mkdir和rm、rmdir
4.复制和移动文件 cp和mv
5.查看和创建文件
6.压缩文件的生成及解压
7.文件权限设置
8.使用光盘
9.系统信息查询
10.文件搜索
1.进入文件命令 cd
cd /home (进入文件“/home”,注意小写)
cd /.. (返回上一级目录)
cd ../.. (返回上两级目录,由于home没有文件夹进入,所以切换成usr文件下的run)
cd usr (进入个人的主目录,用户文件)
2.查看目录中的文件 ls
ls -l (显示文件和目录的详细资料)
lsls -a (显示隐藏的文件) 更多命令参数(ls --help)
3.新建和删除文件 mkdir和rm、rmdir
新建目录mkdir
mkdir guigu (创建一个叫“guigu”的目录,不加指定路径则默认文件在home下)
mkdir xuexi shijian (同时创建两个目录)
mkdir -p /tmp/dir3/dir4 (指定目录,在tmp文件下,创建一个目录树)
删除命令:rm、rmdir
rmdir -guigu(删除一个叫guigu的目录,目录在home下面所用不用添加路径,在其他文件下的目录需要指定路径)
rm -rf xuexi shijian (强制删除两个目录)
rm -rf /tmp/dir1(删除目录tmp下的dir1所有内容及子目录)
这里我就不截图了。
4.复制和移动文件 cp和mv
首先生成目录“1”和文件“2”
目录1用mkdir 文件2用touch命令
mkdir /1 (新建目录1)
touch /1/2 (在目录1创建文件2)
mkdir /3
cp /1/2 /3/4 (复制目录1下的2,到目录3下并命名为4,indows对应拷贝)
移动 mv
touch /1/yidong (在目录1下创建yidong文件)
mv /1/yidong /3/yidong1 (将目录1下的yidong文件,移动到目录3并命名为yidong1。相当于windows下的剪切)
5.查看和创建文件 cat和touch
cat和touch都可以用来创建文件,cat命令还有多个文件合并等功能。
cat /1/2 (打开目录1下的文件2,用touch创建的二进制文件,不用加文件后缀,加后缀会出现错误。cat创建的文件需要加)
cat > /1/chuangjian.txt (在目录1下创建“chuangjian”文件,并且可输入文字信息保存,按Ctrl+c组合键结束)。
cat 命令允许多个文内容合并显示。将每个文件的文件名都输入即可。
cat /1/2 /1/chuangjian.txt(将目录1的两个文件合并阅读)
若文件很长,可以使用more命令分页显示,用空格键翻下一页。
more 加目录地址,文件后缀名
6.压缩文件的生成和解压
gzip /1/chuangjian.txt (创建一个压缩文件,用目录1下的chuangjian.txt文件)
zip file.zip /1 (将目录1的所有文件压缩成file.zip)
zip -m file.zip /1/chuangjian.txt (把chuangjian.txt压缩成file.zip文件后删除chuangjian.txt文件)
加参数-r ,意思是将子目录一起压缩。
若想忽略子目录的内容,使用-j参数。
文件打包程序tar
tar的命令参数:
-c (创建新文件) -v(显示命令执行的信息)-f(指普通文件操作)-x(解开tar文件)-h(重新进行打包)-r(将新文件加入已打包的文件中)
使用方法和格式:tar 参数 打包后的文件名 要打包的文件
tar -cvf file.tar+目录 打包操作
tar -hcvf file.tar+目录 再打包
tar -rvf file.tar file.txt+目录 将新文件加入打包的包文件
tar -xvf file.tar+目录 打开包的操作
7.设置文件/目录访问权限 chmod
Linux中文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录访问和操作,访问权限分为只读、只写和可执行三种,只读权限表示只允许读其内容,而禁止对其做任何的更改操作。可执行权限允许将该文件作为一个程序执行。文件所有者自动拥有对该文件的读、写和可执行权限。
chmod命令是非常重要的,用于改变文件或目录的访问权限,该命令有两种用法。一种包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。
1. 文字设定法
chmod [who] [+ | - | =] [mode] 文件名
who可以是下述字母中的任一个或者它们的组合:
u 表示“用户(user)”,即文件或目录的所有者。
g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。
o 表示“其他(others)用户”。
a 表示“所有(all)用户”。它是系统默认值。
操作符号可以是:
+ 添加某个权限。 - 取消某个权限。
= 赋予给定权限并取消其他所有权限(如果有的话)。
设置mode所表示的权限可用下述字母的任意组合:
r 可读。w 可写。x 可执行。
X 只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x 属性。
s 在文件执行时把进程的属主或组ID置为该文件的文件属主。方式“u+s”设置文件的用户ID位,“g+s”设置组ID位。
t 保存程序的文本到交换设备上。u 与文件属主拥有一样的权限。
g 与和文件属主同组的用户拥有一样的权限。o 与其他用户拥有一样的权限。
例1:$ chmod a+x sort 即设定文件sort的属性为:
文件属主(u) 增加执行权限 与文件属主同组用户(g) 增加执行权限 其他用户(o) 增加执行权限
例2:$ chmod ug+w,o-x text
即设定文件text的属性为:
文件属主(u) 增加写权限
与文件属主同组用户(g) 增加写权限
其他用户(o) 删除执行权限
2. 数字设定法:数字表示的含义:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加。
例如,想让某文件有“读/写”二种权限,需要把4(可读)+2(可写)=6(读/写)。
(2)数字设定法:
例1: $ chmod 644 mm.txt
$ ls –l
即设定文件mm.txt的属性为:
-rw-r--r-- 1 inin users 1155 Nov 5 11:22 mm.txt
文件属主(u)inin 拥有读、写权限
与文件属主同组人用户(g) 拥有读权限
其他人(o) 拥有读权限
例2: $ chmod 750 wch.txt
$ ls –l
-rwxr-x--- 1 inin users 44137 Nov 12 9:22 wchtxt
即设定wchtxt这个文件的属性为:
文件主本人(u)inin 可读/可写/可执行权
与文件主同组人(g) 可读/可执行权
其他人(o) 没有任何权限
8.使用光盘
-
Linux:访问光盘的命令Linux系统在使用光盘、软盘或U盘时,必须先执行挂载(mount)命令。挂载命令会将这些存储介质指定成系统中的某个目录,以后直接访问相应目录即可读写存储介质上的数据。1。新建一个目录在/mnt下新建一个 cdrom目录#mkdir /mnt/cdrom2。装载光盘#mount /dev/cdrom /mnt/cdrom (设备名不指定,会自动查找)#mount -t is09660 /dev/cdrom /mnt/cdrom (设备名已指定)该命令将光盘挂载到/mnt/cdrom目录,使用“ls /mnt/cdrom”命令即可显示光盘中数据和文件。3。卸载光盘linux 下如果光盘处于挂载状态,弹不出光盘,光驱退出按钮也不可用,强大吧必须先卸载光盘#umount /mnt/cdrom4。弹出光盘#eject5。关闭光驱
注意:命令之间是有空格的
9.系统信息查询
linux 查看系统信息命令是linux初学者必备的基础知识, 这些命令也非常有用, 因为进入linux第一件事就可能是首先查看系统信息, 因此必要的系统的学习一下这些linux系统信息命令还是非常有必要的
uname -a # 查看内核/操作系统/CPU信息
head -n 1 /etc/issue # 查看操作系统版本
cat /proc/cpuinfo # 查看CPU信息
hostname # 查看计算机名
lspci -tv # 列出所有PCI设备
lsusb -tv # 列出所有USB设备
lsmod # 列出加载的内核模块
env # 查看环境变量资源
free -m # 查看内存使用量和交换区使用量
df -h # 查看各分区使用情况
du -sh <目录名> # 查看指定目录的大小
grep MemTotal /proc/meminfo # 查看内存总量
grep MemFree /proc/meminfo # 查看空闲内存量
uptime # 查看系统运行时间、用户数、负载
cat /proc/loadavg # 查看系统负载磁盘和分区
mount | column -t # 查看挂接的分区状态
fdisk -l # 查看所有分区
swapon -s # 查看所有交换分区
hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备)
dmesg | grep IDE # 查看启动时IDE设备检测状况网络
ifconfig # 查看所有网络接口的属性
iptables -L # 查看防火墙设置
route -n # 查看路由表
netstat -lntp # 查看所有监听端口
netstat -antp # 查看所有已经建立的连接
netstat -s # 查看网络统计信息进程
ps -ef # 查看所有进程
top # 实时显示进程状态用户
w # 查看活动用户
id <用户名> # 查看指定用户信息
last # 查看用户登录日志
cut -d: -f1 /etc/passwd # 查看系统所有用户
cut -d: -f1 /etc/group # 查看系统所有组
crontab -l # 查看当前用户的计划任务服务
chkconfig –list # 列出所有系统服务
chkconfig –list | grep on # 列出所有启动的系统服务程序
rpm -qa # 查看所有安装的软件包
10.文件搜索locate和find
locate是对其生成的数据库进行遍历(生成数据库的命令:updatedb),这一特性决定了用locate查找文件速度很快,但locate命令只能对文件进行模糊区配,在精确点上说差了一些。
locate 两个选项:
-i //查找文件的时候不区分大小写。比如:locate -i passwd
-n //只现实查找结果的前N行。比如 locate -n 5 passwd
find在不指定查找目录的情况下是对整个系统进行遍历查找
使用格式:find 指定目录 查找规则 查找后执行的action
多项查找注意将目录之间要用空格分开
1.使用name选项。
find ~ -name 文件名 -print (~代表你的home目录)
让系统高负荷运行,就从根目录开始查找所有的文件
find / -name 文件名 -print