一、目录结构
二、简单命令(ls,cd,pwd,which,alias,pstree,tree)
三、环境变量PATH应用
四、快捷键
五、扩展知识 (stty ,ping 及 /var/log)
一、目录结构
1、 /bin, /sbin, /usr/bin, /usr/sbin 命令目录: lli下目录都是可执行的文件,颜色绿色。root ->sbin bin->普通用户
2、 /boot 内核和引导程序的目录 /etc/grub.conf->/boot/grub/grup.conf 常用
3、 /dev 存放linux外部设备
mount /dev/cdrom /mnt ;加载光驱
/dev/null 空目录
4、 /etc/ 配置文件目录 这几天常用到的配置文件
/etc/grub.conf
/etc/inittab
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/hosts
/etc/resolv.conf
/etc/selinux/conf
5、 /home 普通用户主目录 /root root用户主目录
6、 /lib 命令执行需要的动态加载库文件
ldd /bin/ls 有时命令不能执行,就是缺少了库文件
7、 /media,/mnt 临时挂载目录 // mount /dev/cdrom /mnt
8、 /opt 存放某些大型软件或特殊软件的目录,如Oracle
9、 /proc 系统内核相关 /proc/1,/proc/meminfo,/proc/cpuinfo 常用
10、/tmp 临时文件目录
11、/usr 程序目录,相当于Program file 。/usr/local/apache2
12、/var 系统中经常需要变化的文件。/var/log,/var/spool/cron
13、/selinux /etc/selinux/conf
14、/srv 存放一些服务启动之后需要提取的数据
15、/sys cat /etc/fstab
/sys/class 包含所有注册在kernel里面的设备类型,链接到device
/sys/dev 维护一个按照字符设备和块设备的主次号码列表,链接到device
/sys/device 是全局设备结构体系,包含所有被发现的注册在各种总线上的各种物理设备,是内核对系统中所有设备的分层次表达模型,也是/sys文件系统管理设备的最重要的目录结构
/sys/fs 描述系统中所有的文件系统
/sys/kernel 存放的是内核中所有可调整的参数
二、基本命令
1、ls 显示文件或目录信息
-a 显示所有文件或目录,包括隐藏文件
-l 显示详细信息
-d 显示本身信息。ls -ld 经常使用
-t 按时间排序, 由新到旧。-rt 由旧到新
-i 显示文件 inode号
******************** find参数又忘记了**************************
[[email protected] tmp]# ls -i
11420 1.txt 11540 2.txt 14 yum.log
[[email protected] tmp]# find -inum 11420 -exec rm {} \;
[[email protected] tmp]# find -inum 11540 | xargs rm -rf
[[email protected] tmp]# find /var/log -type f -exec ls -s {} \; | sort -n | head -5 查找5个最大的文件
*****************************************************************
2、cd
cd ~ 切换到主目录
· cd - 切换到之前的目录
cd .. ../.. 父目录和 上上级目录
3、pwd 显示当前目录
-P 硬链接目录
-L 软连接目录 默认
4、which ls 获取命令的绝对路径,如果是别名,显示别名信息
5、alias 查看命令别名 /root/.bashrc 永久保存别名。
[[email protected] ~]# alias
[[email protected] ~]# alias abc="ls -l"
[[email protected] ~]# abc // 和ls -l 命令一样
[[email protected] ~]# unalias abc // 取消别名
6、pstree 显示进程数。init 是第一进程
7、tree -CL 2 / -C 以颜色显示/的两层目录树
三、PATH (应用)
[[email protected] ~]# echo $PATH // 系统的环境变量PATH的值
[[email protected] ~]# cp /bin/ls /tmp/abc
[[email protected] ~]# /tmp/abc // /tmp/abc与/bin/ls 效果一样
[[email protected] ~]# PATH=$PATH:/tmp // 这时 abc 与ls 的命令一样了
[[email protected] ~]# echo $PATH
[[email protected] ~]# source /etc/profile // 或 . /etc/profile 立即生效
[[email protected] ~]# . /etc/profile // . 后有空格
************************************************************************************************
[[email protected] ~]# PATH=$PATH:/usr/local/apache2/bin // 面试题里经常出现
[[email protected] ~]# echo "PATH=$PATH:/usr/local/apache2/bin” >> /etc/profile // 重启生效
************************************************************************************************
四、快捷键 (加粗未掌握的快捷键)
ctrl+c 取消命令
ctrl+z 暂停命令
ctrl+a 光标到行首
ctrl+e 光标到行尾
ctrl+u 剪切光标前所有字符
ctrl+k 剪切光标后所有字符
ctrl+p 粘帖
ctrl+l 清屏
ctrl+d 退出登录 == exit
ctrl+s 锁住命令终端,按任何键都不会有反应
ctrl+q 解锁命令终端
五、扩展知识
1. 按ctrl+c, 命令后面会出现^C, 如何去掉呢?
[[email protected] ~]# yum install -y tree^C
[[email protected] ~]# stty -ctlecho
[[email protected] ~]# yum install -y tree
[[email protected] ~]# stty ctlecho
[[email protected] ~]# yum install -y tree^C
[[email protected] ~]# echo "stty -ctlecho" >> /root/.bashrc // 永久生效
2. 更改内核参数, 让别人无法ping通此自己 (内核和防火墙都可实现)
[[email protected] ~]# cat /proc/sys/net/ipv4/icmp_echo_ignore_all
0
[[email protected] ~]# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
[[email protected] ~]# iptables -A INPUT -p icmp -j DROP // 拒绝ping
3、/var/log 日志 // 面试题里有看到,了解先
(1) /var/log/messages — 包括整体系统信息,其中也包含系统启动期间的日志。此外,mail,cron,daemon,kern和auth等内容也记录在var/log/messages日志中。
(2) /var/log/dmesg — 包含内核缓冲信息(kernel ring buffer)。在系统启动时,会在屏幕上显示许多与硬件有关的信息。可以用dmesg查看它们。
(3) /var/log/auth.log — 包含系统授权信息,包括用户登录和使用的权限机制等。
(4) /var/log/boot.log — 包含系统启动时的日志。
(5) /var/log/daemon.log — 包含各种系统后台守护进程日志信息。
(6) /var/log/dpkg.log – 包括安装或dpkg命令清除软件包的日志。
(7) /var/log/kern.log – 包含内核产生的日志,有助于在定制内核时解决问题。
(8) /var/log/lastlog — 记录所有用户的最近信息。这不是一个ASCII文件,因此需要用lastlog命令查看内容。
(9) /var/log/maillog /var/log/mail.log — 包含来着系统运行电子邮件服务器的日志信息。例如,sendmail日志信息就全部送到这个文件中。
(10) /var/log/user.log — 记录所有等级用户信息的日志。
(11) /var/log/Xorg.x.log — 来自X的日志信息。
(12) /var/log/alternatives.log – 更新替代信息都记录在这个文件中。
(13) /var/log/btmp – 记录所有失败登录信息。使用last命令可以查看btmp文件。例如,”last -f /var/log/btmp | more“。
(14) /var/log/cups — 涉及所有打印信息的日志。
(15) /var/log/anaconda.log — 在安装Linux时,所有安装信息都储存在这个文件中。
(16) /var/log/yum.log — 包含使用yum安装的软件包信息。
(17) /var/log/cron — 每当cron进程开始一个工作时,就会将相关信息记录在这个文件中。
(18) /var/log/secure — 包含验证和授权方面信息。例如,sshd会将所有信息记录(其中包括失败登录)在这里。
(19) /var/log/wtmp或/var/log/utmp — 包含登录信息。使用wtmp可以找出谁正在登陆进入系统,谁使用命令显示这个文件或信息等。
(20) /var/log/faillog – 包含用户登录失败信息。此外,错误登录命令也会记录在本文件中。
(21) 除了上述Log文件以外, /var/log还基于系统的具体应用包含以下一些子目录:
(22) /var/log/httpd/或/var/log/apache2 — 包含服务器access_log和error_log信息。
(23) /var/log/lighttpd/ — 包含light HTTPD的access_log和error_log。
(24) /var/log/mail/ – 这个子目录包含邮件服务器的额外日志。
(25) /var/log/prelink/ — 包含.so文件被prelink修改的信息。
(26) /var/log/audit/ — 包含被 Linux audit daemon储存的信息。
(27) /var/log/samba/ – 包含由samba存储的信息。
(28) /var/log/sa/ — 包含每日由sysstat软件包收集的sar文件。
(29) /var/log/sssd/ – 用于守护进程安全服务。
上面的基本命令早已熟烂于心,做笔记,大都时候是感觉在分享,也是在不断提高自己的总结能力。希望大家和我一样,早日脱离heldesk群体,走向server 运维!