前言
本篇文章继续介绍了一部分linux常用命令,包括字符设置和文件格式转换,文件系统分析,初始化一个文件系统,备份,光盘,网络这六个部分。linux常用命令及解释大全(三)详情请看正文。
一、字符设置和文件格式转换
在执行这些命令之前,要确保已正确安装相应的工具(如dos2unix、unix2dos和recode),并提前备份你的文件以防止丢失。
1.
dos2unix filedos.txt fileunix.txt
该命令将名为 filedos.txt
的MSDOS格式文本文件转换为UNIX格式,并将结果保存为 fileunix.txt
。
2.
unix2dos fileunix.txt filedos.txt
该命令将名为 fileunix.txt
的UNIX格式文本文件转换为MSDOS格式,并将结果保存为 filedos.txt
。
3.
recode ..HTML < page.txt > page.html
该命令将名为 page.txt
的文本文件转换为HTML格式,并将结果输出到名为 page.html
的文件中。
4.
recode -l | more
该命令将显示所有可用的字符转换格式列表,并以分页方式展示,你可以逐页查看。
二、文件系统分析
1.
badblocks -v /dev/hda1
该命令用于检查磁盘 “/dev/hda1” 上的坏磁块,并以详细模式显示检查的进度和结果。
2.
fsck /dev/hda1
该命令用于修复或检查磁盘 “/dev/hda1” 上Linux文件系统的完整性,它会自动进行必要的修复操作。
3.
fsck.ext2 /dev/hda1
或
e2fsck /dev/hda1
这两个命令都用于修复或检查磁盘 “/dev/hda1” 上ext2文件系统的完整性,可以选择使用其中之一。
4.
e2fsck -j /dev/hda1
或
fsck.ext3 /dev/hda1
这两个命令都用于修复或检查磁盘 “/dev/hda1” 上ext3文件系统的完整性,可以选择使用其中之一。
5.
fsck.vfat /dev/hda1
或
fsck.msdos /dev/hda1
或
dosfsck /dev/hda1
这些命令用于修复或检查磁盘 “/dev/hda1” 上FAT文件系统或DOS文件系统的完整性,可以选择使用其中之一。
三、初始化一个文件系统
1.
mkfs /dev/hda1
该命令将在hda1分区上创建一个文件系统,具体的文件系统类型将取决于系统的默认设置。
2.
mke2fs /dev/hda1
该命令将在hda1分区上创建一个Linux ext2的文件系统。
3.
mke2fs -j /dev/hda1
该命令将在hda1分区上创建一个Linux ext3(带日志)的文件系统。
4.
mkfs -t vfat -F 32 /dev/hda1
该命令将在hda1分区上创建一个FAT32文件系统。
5.
fdformat -n /dev/fd0
该命令用于格式化一个软盘。
6.
mkswap /dev/hda3
该命令将在hda3分区上创建一个swap文件系统。
7.
swapon /dev/hda3
该命令用于启用一个新的swap文件系统。
8.
swapon /dev/hda2 /dev/hdb3
该命令用于启用多个swap分区,以hda2和hdb3为例。
四、备份
1.
dump -0aj -f /tmp/home0.bak /home
该命令将创建一个 ‘/home’ 目录的完整备份,并将其保存到"/tmp/home0.bak"文件中。
2.
dump -1aj -f /tmp/home0.bak /home
该命令将创建一个 ‘/home’ 目录的交互式备份,并将其保存到"/tmp/home0.bak"文件中。
3.
restore -if /tmp/home0.bak
该命令将从"/tmp/home0.bak"文件中还原备份的内容。
4.
rsync -rogpav --delete /home /tmp
该命令将同步源目录"/home"和目标目录"/tmp"之间的文件和目录,并确保目标目录与源目录保持一致。
ip_address和ip_addr是示例中的占位符,实际使用时需要替换为合适的IP地址或主机名。
5.
rsync -rogpav -e ssh --delete /home ip_address:/tmp
该命令将使用SSH通道,将源目录"/home"的内容同步到远程主机的目标目录"/tmp"中。
6.
rsync -az -e ssh --delete ip_addr:/home/public /home/local
该命令将通过SSH通道在本地将远程主机上的目录“/home/public”内容同步到本地目录“/home/local”中,并且使用压缩来加快传输速度。
7.
rsync -az -e ssh --delete /home/local ip_addr:/home/public
该命令将通过SSH通道在本地将目录“/home/local”的内容同步到远程主机的目录“/home/public”中,并且使用压缩来加快传输速度。
8.
dd bs=1M if=/dev/hda | gzip | ssh user@ip_addr 'dd of=hda.gz'
该命令将备份本地磁盘/dev/hda的内容,并通过SSH通道将其传输到远程主机,并保存为hda.gz文件。
9.
dd if=/dev/sda of=/tmp/file1
该命令将/dev/sda的磁盘内容备份到文件/tmp/file1中。
10.
tar -Puf backup.tar /home/user
该命令将对目录/home/user执行一次交互式备份操作,并将结果保存为backup.tar文件。
11.
( cd /tmp/local/ && tar c . ) | ssh -C user@ip_addr 'cd /home/share/ && tar x -p'
该命令将本地目录/tmp/local/的内容通过SSH通道复制到远程主机的目录/home/share/中。
12.
( tar c /home ) | ssh -C user@ip_addr 'cd /home/backup-home && tar x -p'
该命令将本地目录/home的内容通过SSH通道复制到远程主机的目录/home/backup-home中。
13.
tar cf - . | (cd /tmp/backup ; tar xf - )
该命令将当前目录的内容复制到另一个目录/tmp/backup中,并保留原有的权限和链接关系。
14.
find /home/user1 -name '*.txt' | xargs cp -av --target-directory=/home/backup/ --parents
该命令将在目录/home/user1中查找所有以 ‘.txt’ 结尾的文件,并将它们复制到目录/home/backup/中,并保留原有的目录结构。
15.
find /var/log -name '*.log' | tar cv --files-from=- | bzip2 > log.tar.bz2
该命令将在目录/var/log中查找所有以 ‘.log’ 结尾的文件,并将它们打包为一个bzip2压缩包log.tar.bz2。
16.
dd if=/dev/hda of=/dev/fd0 bs=512 count=1
该命令将将磁盘/dev/hda的MBR内容复制到软盘/dev/fd0。
17.
dd if=/dev/fd0 of=/dev/hda bs=512 count=1
该命令将从软盘/dev/fd0中复制的MBR内容恢复到磁盘/dev/hda。
五、光盘
1.
cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -force
该命令将清空一个可复写的光盘的内容,并弹出光盘。
2.
mkisofs /dev/cdrom > cd.iso
该命令将从光驱设备/dev/cdrom中创建一个光盘的ISO镜像文件cd.iso。
3.
mkisofs /dev/cdrom | gzip > cd_iso.gz
该命令将从光驱设备/dev/cdrom中创建一个光盘的ISO镜像文件,并将其压缩为cd_iso.gz文件。
4.
mkisofs -J -allow-leading-dots -R -V "Label CD" -iso-level 4 -o ./cd.iso data_cd
该命令将创建一个名为cd.iso的ISO镜像文件,其中包含目录data_cd的内容,并添加标签“Label CD”。
5.
cdrecord -v dev=/dev/cdrom cd.iso
该命令将刻录名为cd.iso的ISO镜像文件到光驱设备/dev/cdrom中。
6.
gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom -
该命令将刻录一个压缩了的ISO镜像文件cd_iso.gz到光驱设备/dev/cdrom中。
7.
mount -o loop cd.iso /mnt/iso
该命令将ISO镜像文件cd.iso挂载到目录/mnt/iso中,以便访问其中的内容。
8.
cd-paranoia -B
该命令将从CD光盘转录音轨,并将其保存为WAV文件。
9.
cd-paranoia -- "-3"
该命令将从CD光盘转录音轨,并将其保存为WAV文件。参数-3指定了一些特定的选项,可以根据需要进行修改。
10.
cdrecord --scanbus
该命令将扫描总线以识别SCSI通道,并列出可用的CD/DVD设备。
11.
dd if=/dev/hdc | md5sum
该命令将从设备/dev/hdc读取数据,并计算其MD5校验和。
六、网络
1.
ifconfig eth0
该命令将显示名为eth0的以太网卡的配置信息。
2.
ifup eth0
该命令将启用名为eth0的网络设备。
3.
ifdown eth0
该命令将禁用名为eth0的网络设备。
4.
ifconfig eth0 192.168.1.1 netmask 255.255.255.0
该命令将设置名为eth0的网络设备的IP地址为192.168.1.1,子网掩码为255.255.255.0。
5.
ifconfig eth0 promisc
该命令将设置名为eth0的网络设备成为混杂模式,以便嗅探网络数据包。
6.
dhclient eth0
该命令将以DHCP模式启用名为eth0的网络设备,从DHCP服务器获取IP地址和配置信息。
7.
route -n
该命令将显示当前系统的路由表。
8.
route add -net 0/0 gw IP_Gateway
该命令将配置默认网关,其中IP_Gateway是要设置的网关的IP地址。
9.
route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1
该命令将配置一个静态路由以将流量发送到目标网络’192.168.0.0/16’,其中IP地址192.168.1.1是用于到达目标网络的网关。
10.
route del 0/0 gw IP_gateway
该命令将删除一个静态路由,其中IP_gateway是要删除的路由的网关IP地址。
11.
hostname
该命令将显示当前主机的机器名。
12.
host www.example.com
该命令将解析主机名www.example.com为对应的IP地址,或将IP地址解析为主机名。
13.
nslookup www.example.com
该命令用于查询DNS记录,检查域名解析是否正常。在网络故障排除时,可用于诊断网络问题。
14.
ip link show
该命令将显示当前系统中的网卡信息。
15.
mii-tool
该命令用于查看和管理介质网络接口的状态。
16.
ethtool
该命令用于查询和设置网卡的配置信息。
17.
netstat -tupl
该命令用于显示当前系统上TCP/UDP的状态信息。
18.
tcpdump tcp port 80
该命令用于捕获并显示所有HTTP协议流量。
总结
本文是对linux常用命令总结的最后一篇。学习Linux命令可以提高系统管理和维护的能力,扩展技术广度,更高效地完成任务。同时,它培养了问题解决和自动化思维,提升了技术竞争力。掌握Linux命令还能够深入理解操作系统和网络的工作原理,为进一步学习与开发打下坚实基础。