1、基本命令
uname -m 显示机器的处理器架构
uname -r 显示正在使用的内核版本
dmidecode -q 显示硬件系统部件
hdparm -i /dev/hda 罗列磁盘的架构特性
hdparm -tT /dev/sda 在磁盘上执行测试性读取
arch 显示机器的处理器架构
cat /proc/cpuinfo 显示CPU信息
cat /proc/interrupts 显示中断
cat /proc/meminfo 校验内存使用
cat /proc/swaps 显示swap使用情况
cat /proc/version 显示内核版本
cat /proc/net/dev 显示网络适配器及统计
cat /proc/mounts 显示已加载的文件系统
lspci -tv 罗列 PCI 设备
lsusb -tv 显示 USB 设备
date 显示系统日期
cal 2007 显示2007年的日历
date 041217002007.00 设置日期和时间
clock -w 将时间修改保存到 BIOS
2、关机
shutdown -h now 立即关闭系统
init 0 关闭系统
telinit 0 关闭系统
shutdown -h hours:minutes & 按预定时间关闭系统
shutdown -c 取消预定关闭系统
shutdown -r now 立即重启
reboot 重启
logout 注销
3、文件和目录
cd /home 进入 '/ home' 目录
cd .. 返回上一级目录
cd ../.. 返回上两级目录
cd 进入个人主目录
cd ~user1 进入个人主目录
cd - 返回上次所在的目录
pwd 显示工作路径
ls 查看目录中的文件
ls -F 查看目录中的文件
ls -l 显示文件和目录的详细资料
ls -a 显示隐藏文件
ls *[0-9]* 显示包含数字的文件名和目录名
tree 显示文件和目录的树形结构
mkdir dir1 创建目录 'dir1'
mkdir dir1 dir2 同时创建两个目录
mkdir -p /tmp/dir1/dir2 创建目录树
rm -f file1 删除文件 'file1'
rmdir dir1 删除目录 'dir1'
rm -rf dir1 删除目录 'dir1' 及其内容
rm -rf dir1 dir2 同时删除两个目录及其内容
mv dir1 new_dir 重命名/移动目录
cp file1 file2 复制文件
cp dir/* . 复制目录下的所有文件到当前目录
cp -a /tmp/dir1 . 复制目录到当前目录
cp -a dir1 dir2 复制目录
ln -s file1 lnk1 创建软链接
ln file1 lnk1 创建硬链接
touch -t 0712250000 file1 修改文件时间戳
file file1 显示文件的 MIME 类型
iconv -l 列出已知的编码
iconv -f fromEncoding -t toEncoding inputFile > outputFile 转换文件编码
find . -maxdepth 1 -name *.jpg -print -exec convert "{}" -resize 80x60 "thumbs/{}" \; 批量调整图片大小
4、文件搜索
find / -name file1 从根目录搜索文件和目录
find / -user user1 搜索属于用户 'user1' 的文件和目录
find /home/user1 -name \*.bin 在目录中搜索特定文件
find /usr/bin -type f -atime +100 搜索未使用的执行文件
find /usr/bin -type f -mtime -10 搜索最近修改的文件
find / -name \*.rpm -exec chmod 755 '{}' \; 搜索并设置权限
find / -xdev -name \*.rpm 搜索特定文件,忽略可移动设备
locate \*.ps 寻找特定文件
whereis halt 显示文件位置
which halt 显示可执行文件的完整路径
5、挂载文件系统
mount /dev/hda2 /mnt/hda2 挂载磁盘
umount /dev/hda2 卸载磁盘
fuser -km /mnt/hda2 强制卸载
umount -n /mnt/hda2 不写入 /etc/mtab 文件的卸载
mount /dev/fd0 /mnt/floppy 挂载软盘
mount /dev/cdrom /mnt/cdrom 挂载光盘
mount /dev/hdc /mnt/cdrecorder 挂载 CD/DVD
mount -o loop file.iso /mnt/cdrom 挂载 ISO 镜像
mount -t vfat /dev/hda5 /mnt/hda5 挂载 FAT32 文件系统
mount /dev/sda1 /mnt/usbdisk 挂载 USB 设备
mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share 挂载网络共享
6、磁盘空间
df -h 显示已挂载的分区列表
ls -lSr |more 按大小排列文件和目录
du -sh dir1 估算目录的磁盘使用
du -sk * | sort -rn 按大小显示文件和目录
rpm -q -a --qf '%10{SIZE}t%{NAME}n' | sort -k1,1n 显示已安装 RPM 包的大小
dpkg-query -W -f='${Installed-Size;10}t${Package}n' | sort -k1,1n 显示已安装 DEB 包的大小
7、用户和群组
groupadd group_name 创建用户组
groupdel group_name 删除用户组
groupmod -n new_group_name old_group_name 重命名用户组
useradd -c "Name Surname" -g admin -d /home/user1 -s /bin/bash user1 创建用户
useradd user1 创建用户
userdel -r user1 删除用户
usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1 修改用户属性
passwd 修改口令
passwd user1 修改用户口令
chage -E 2005-12-31 user1 设置用户口令失效日期
pwck 检查用户文件
grpck 检查群组文件
newgrp group_name 切换群组
8、文件权限
ls -lh 显示权限
ls /tmp | pr -T5 -W$COLUMNS 分栏显示文件
chmod ugo+rwx directory1 设置目录权限
chmod go-rwx directory1 删除目录权限
chown user1 file1 改变文件所有人
chown -R user1 directory1 改变目录及文件的所有人
chgrp group1 file1 改变文件群组
chown user1:group1 file1 改变文件所有人和群组
find / -perm -u+s 罗列 SUID 控制的文件
chmod u+s /bin/file1 设置 SUID 位
chmod u-s /bin/file1 禁用 SUID 位
chmod g+s /home/public 设置 SGID 位
chmod g-s /home/public 禁用 SGID 位
chmod o+t /home/public 设置 STIKY 位
chmod o-t /home/public 禁用 STIKY 位
chmod +x 文件路径 添加执行权限
chmod -x 文件路径 删除执行权限
chmod u+x 文件路径 为所有者添加执行权限
chmod g+x 文件路径 为所属组添加执行权限
chmod o+x 文件路径 为其他用户添加执行权限
chmod ug+x 文件路径 为所有者、所属组添加执行权限
chmod =wx 文件路径 添加写、执行权限,取消读权限
chmod ug=wx 文件路径 为所有者、所属组添加写、执行权限,取消读权限
9、文件特殊属性
chattr +a file1 只允许追加方式读写文件
chattr +c file1 允许文件被内核自动压缩/解压
chattr +d file1 备份时忽略文件
chattr +i file1 设置文件不可变
chattr +s file1 允许安全删除文件
chattr +S file1 立即写入磁盘
chattr +u file1 允许恢复删除文件
lsattr 显示特殊属性
10、打包和压缩文件
bunzip2 file1.bz2 解压文件
bzip2 file1 压缩文件
gunzip file1.gz 解压文件
gzip file1 压缩文件
gzip -9 file1 最大程度压缩
rar a file1.rar test_file 创建压缩包
rar a file1.rar file1 file2 dir1 压缩多个文件和目录
rar x file1.rar 解压压缩包
unrar x file1.rar 解压压缩包
tar -cvf archive.tar file1 创建非压缩的 tarball
tar -cvf archive.tar file1 file2 dir1 创建包含多个文件和目录的 tarball
tar -tf archive.tar 显示 tarball 内容
tar -xvf archive.tar 解压 tarball
tar -xvf archive.tar -C /tmp 解压到指定目录
tar -cvfj archive.tar.bz2 dir1 创建 bzip2 压缩包
tar -xvfj archive.tar.bz2 解压 bzip2 压缩包
tar -cvfz archive.tar.gz dir1 创建 gzip 压缩包
tar -xvfz archive.tar.gz 解压 gzip 压缩包
zip file1.zip file1 创建 zip 压缩包
zip -r file1.zip file1 file2 dir1 压缩多个文件和目录
unzip file1.zip 解压 zip 压缩包
11、RPM 包
rpm -ivh package.rpm 安装 RPM 包
rpm -ivh --nodeeps package.rpm 安装 RPM 包,忽略依赖警告
rpm -U package.rpm 更新 RPM 包
rpm -F package.rpm 更新已安装的 RPM 包
rpm -e package_name.rpm 删除 RPM 包
rpm -qa 显示所有已安装的 RPM 包
rpm -qa | grep httpd 显示包含 "httpd" 的 RPM 包
rpm -qi package_name 获取 RPM 包信息
rpm -qg "System Environment/Daemons" 显示组件的 RPM 包
rpm -ql package_name 显示 RPM 包提供的文件列表
rpm -qc package_name 显示 RPM 包的配置文件列表
rpm -q package_name --whatrequires 显示依赖关系
rpm -q package_name --whatprovides 显示 RPM 包的体积
rpm -q package_name --scripts 显示安装/删除脚本
rpm -q package_name --changelog 显示 RPM 包的修改历史
rpm -qf /etc/httpd/conf/httpd.conf 确认文件由哪个 RPM 包提供
rpm -qp package.rpm -l 显示未安装的 RPM 包的文件列表
rpm --import /media/cdrom/RPM-GPG-KEY 导入公钥
rpm --checksig package.rpm 确认 RPM 包的完整性
rpm -qa gpg-pubkey 确认已安装的 RPM 包的完整性
rpm -V package_name 检查文件尺寸、许可、类型、所有者、群组、MD5 检查以及最后修改时间
rpm -Va 检查所有已安装的 RPM 包
rpm -Vp package.rpm 确认未安装的 RPM 包
rpm2cpio package.rpm | cpio --extract --make-directories *bin* 从 RPM 包运行可执行文件
rpm -ivh /usr/src/redhat/RPMS/`arch`/package.rpm 从 RPM 源码安装构建好的包
rpmbuild --rebuild package_name.src.rpm 从 RPM 源码构建 RPM 包
12、YUM 软件包升级器
yum install package_name 下载并安装 RPM 包
yum localinstall package_name.rpm 安装 RPM 包,解决依赖关系
yum update package_name.rpm 更新 RPM 包