权限管理类命令:
chmod 改变文件或目录的权限
chown 改变文件或者目录的所有者
chgrp 改变文件或目录所属组
umask 设置新建文件的掩码
chattr 查看和改变文件、目录属性
lsattr 查看和改变文件、目录属性
磁盘管理类命令:
df i 节点和磁盘使用 -Th
du 统计文件和目录大小 -sh
fdisk 格式化磁盘分区
mkfs 创建文件系统
mkfs.ext2|3|4 格式化成特定的文件系统
mount 挂载磁盘分区
umount 卸载磁盘分区
fsck 修复文件系统
sync 同步
系统维护类命令:
at 定时任务
bg 后台执行进程
fg 前台执行进程
jobs 显示后台任务执行情况
kill 终止进程
crontab 定时任务
killall
pstree 显示当前进程及进程树
top 显示当前进程情况
nice 改变程序运行优先权等级
renice 允许用户修改一个正在运行的进程的优先级
sleep 使进程暂停执行一段时间
nohup 用户退出系统之后正在工作
pgrep 查找当前运行的进程,并列出匹配给定条件的进程的 pid,所有的条件都必须满足才会被列出
chkconfig 检查,设置系统的各种服务
改变 redhat 的系统语言/字符集
修改 /etc/sysconfig/i18n 文件,如
LANG="en_US",xwindow 会显示英文界面,
LANG="zh_CN.GB18030",xwindow 会显示中文界面。
还有一种方法
cp /etc/sysconfig/i18n $HOME/.i18n
vi $HOME/.i18n 文件,如
LANG="en_US",xwindow 会显示英文界面,
LANG="zh_CN.GB18030",xwindow 会显示中文界面。
这样就可以改变个人的界面语言,而不影响别的用户
查看系统信息
cat /proc/cpuinfo - CPU (i.e. vendor, Mhz, flags like mmx)
cat /proc/interrupts - 中断
cat /proc/ioports - 设备 IO 端口
cat /proc/meminfo - 内存信息(i.e. mem used, free, swap size)
cat /proc/partitions - 所有设备的所有分区
cat /proc/pci - PCI 设备的信息
cat /proc/swaps - 所有 Swap 分区的信息
cat /proc/version - Linux 的版本号 相当于 uname -r
uname -a - 看系统内核等信息
让 linux 自动同步时间
vi /etc/crontab
加上一句:
00 0 1 * * root rdate -s time.nist.gov
管理与网络
lsof 用法小全
lsof abc.txt 显示开启文件 abc.txt 的进程
lsof -i :22 知道 22 端口现在运行什么程序
lsof -c nsd 显示 nsd 进程现在打开的文件
lsof -g gid 显示归属 gid 的进程情况
lsof +d /usr/local/ 显示目录下被进程开启的文件
lsof +D /usr/local/ 同上,但是会搜索目录下的目录,时间较长
lsof -d 4 显示使用 fd 为 4 的进程
lsof -i [i] 用以显示符合条件的进程情况
语法: lsof -i[46] [protocol][@hostname|hostaddr][:service|port]
忘了 mysql 的 root 口令怎么办
# service mysql stop
# mysqld_safe --skip-grant-tables &
# mysqladmin -u user password 'newpassword''
# mysqladmin flush-privileges
mysqld 起来了,却无法登录,提示"/var/lib/mysql/mysql.sock"不存在
这种情况大多数是因为你的 mysql 是使用 rpm 方式安装的,它会自动寻找
/var/lib/mysql/mysql.sock 这个文件,
通过 unix socket 登录 mysql。
常见解决办法如下:
1)创建/修改文件 /etc/my.cnf,至少增加/修改一行
[mysql]
[client]
socket = /tmp/mysql.sock
#在这里写上你的 mysql.sock 的正确位置,通常不是在 /tmp/ 下就是在 /var/lib/mysql/ 下
2)指定 IP 地址,使用 tcp 方式连接 mysql,而不使用本地 sock 方式
#mysql -h127.0.0.1 -uuser -ppassword
3)为 mysql.sock 加个连接,比如说实际的 mysql.sock 在 /tmp/ 下,则
# ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock 即可
如何在命令行上执行 sql 语句
#mysql -uuser -ppassword -e "sql statements" database
过滤掉#号打头的行,和所有的空行(针对配置文档)
awk '/^[^#]/&&/^[^$]/' filename > new.file
网友评论