linux 基本命令总结

文件和目录操作命令
******************
清空历史命令 ----- history -c
查看当前目录下的文件 ----- ls
查看当前目录下所有文件 ----- ls -a
切换目录
  切换到当前用户的家目录 ----- cd (回车)
  切换最近使用的两次目录 ----- cd -
查看当前目录位置 ----- pwd
查看/etc/passwd文件中包含root的那一行 cat /etc/passewd |grep ^root
新建文件 ----- touch file1
新建多个数字顺序文件 ----- touch file{1..10}.txt
新建隐藏文件 ----- touch .a.txt
删除文件或目录 ----- rm -rf 目标文件或目标目录(可以删除非空目录)
编辑文件 ----- vi 目标文件
查找文件或目录 ----- find 目标目录 -name 文件名
查找一个命令所在位置 ----- which is ls(查找ls命令的位置)
复制文件 cp 文件名 目标目录
复制目录 cp -R 源目录 目标目录
移动文件 mv 源目录 目标目录
查看文件内容 cat 文件名
查看很长的文件 cat 文件名|grep
查看目标文件前十行 ----- head 文件名
查看目标文件后十行 ----- tail 文件名
查看目标文件前n行 ----- head -n 文件名
查看目标文件后n行 ----- tail -n 文件名
当前目录下创建目录 ----- mkdir 目录名
当前目录递归创建目录 ----- mkdir -p dir1/dir2/dir3
查看目录树 ----- tree 目标目录
           ----- ls lR 目标目录
文件或目录压缩
  gz压缩
  1.压缩 ----- tar czf aaa.tar.gz 目标文件名或目录名
  2.解压 ----- tar xzf 文件名.tar.gz
  3.解压到目标目录(如/mnt) ----- tar xzf 文件名.tar.gz -C /mnt
  4.查看压缩包里内容 ----- tar tf 文件名.tar.gz
  zip压缩
  1.压缩 ----- zip file.zip
  2.解压 ----- unzip file.zip
  3.查看压缩包里内容 ----- unzip -l file.zip
****************************************************************










用户操作
*********************************************************
创建一个用户user1 ----- useradd user1 ----- 在创建用户的同时会在/home下建立以用户名的目录
删除用户user1 ----- userdel -r 用户名
设置user1用户密码 ----- passwd user1
查看用户user1 ----- id user1
禁用用户user1 ----- usermod -L user1
启用用户user1 ----- usermod -U user1
新建用户组group1 ----- groupadd group1
删除用户组group2 ----- groupdel group1
把user1用户加入到用户组group1 ----- gpasswd -a user1 group1
把user1用户从group1组中删除 ----- gpasswd -d user1 group1
*********************************************************










*******************************************************
强制正在执行的程序中断 ----- ctrl+c
清空当前屏幕 ----- clear
清空当前命令行 ----- ctrl+u
命令补全 ----- tab
列出可补全的全部 ----- 双击tab
调用历史命令中离你最近一次的以ser开头的命令 ----- !ser
执行程序后台执行 ----- 命令结尾加 空格&
rsync ----- 操作远程计算机的一个命令后期需要掌握
******************************************************










权限设置
******************************************************
chmod acl sudo
权限常用人群代替字母
u 用户
g 组内其他用户
o 其他用户
a 所有人群


chmod权限
chmod u+x,o+x file1 给用户添加执行权限,给用户同组用户添加执行权限
chmod rwxrwxrwx file2 = chmod 777 file3 给所有人设置777权限
如果对所有用户设置777权限操作 用数字
如果对某一类用户做权限建议用字母(不用去计算数字以免出错)


acl权限分配
1.设置权限
  setfacl -m u:user1:rwx feil1
  给用户--user1分配读写执行权限
  setfacl -m o:user1:rwx file1
  给user1组成员设置rwx权限
实际的一个例子
Setfacl –m u:mysql:rwx –R /usr/local/mysql 
Setfacl –m d:u:mysql:rwx –R /usr/local/mysql
用acl来让mysql用户对/usr/local/mysql目录具有所有权限
因为mysql目录是数据库来操作只需要让这个目录的执行者具有权限即可
2.获得指定文件权限
  getfacl -e file 或者(getfacl 文件名/目录名)
3.删除某一个acl权限
  setfacl -x u:user1 file1--对user1用户删除当前目录下file1文件的权限
4.删除所有acl权限
  setfacl -b file
5.设置acl的默认权限
  setfacl -m d:u:user1:rwx test
  #当前目录的子目录会集成目录的acl权限


sudo权限分配
sudo /usr/sbin/useradd user4 给user4用户添加useradd命令的权限
在当前终端切换用户 su - 用户名  或者(su 用户名)
编辑sudo权限(不推荐)
  user1 localhost=/usr/sbin/useradd user5,/usr/sbin/userdel -r user5,/sbin/service httpd restart
  给user1用户分配localhost后面的操作权限


******************************************************










软件安装命令
***************************************************
rpm(redhat package management)软件安装
1.查看系统中安装的所有rpm包
  rpm -qa
2.查看rpm是否被安装
  rpm -qa|grep httpd
3.安装rpm包
  rpm -ivh httpd-0.0.0.conetos.i386.rpm
4.强制卸载rpm包
  rpm -e httpd-0.0.0.conetos.i386.rpm --force --nodeps(nodeps可以截断rpm包的依赖性)
5.查看rpm安装了一些什么(主要为了查看依赖包)
  rpm -qpl httpd-0.0.0.conetos.i386.rpm |more


yum查看已经安装的rpm包河yum源中的rpm包
  yum list
yum 安装rpm包
  yun -y install rpm包名称(或者httpd*)
yum卸载rpm包(会卸载依赖包)
  yum -y remove httpd*
  #谨慎使用,请使用 rpm -e
rpm安装软件的三个重要mulu
1应用程序目录  /usr/sbin/httpd(应用程序名称)
2配置文件    /etc/应用程序名称的目录/.......
3服务脚本   /etc/init.d/应用程序名的文件
***************************************************










系统服务类命令
**************
启动|重启|停止名称为aaa的系统服务 ----- service aaa start|restart|stop
查看系统中已经挂在的分区 ----- df
查看当前系统挂在分区情况 ----- df -h #-h把以k为单位的换算成m,g这种单位


查看系统当前时间 ----- date
按照固定格式0000-00-00 00:00显示系统时间 ----- date "%Y-%m-%d %H:%M:%S"
设置系统时间 ----- date -s "2010-10-10 10:10:10"


查看当前主机名称 ----- hostname
临时修改主机名称为myPc ----- hostname myPc
永久修改主机名称 ----- vi /etc/sysconfig/network
查看当前运行级别 ----- runlevel
查看计算机ip信息 ifconfig -a(-a可以显示所有网卡地址)
临时修改计算机eth0网卡ip地址 ifconfig eth0 192.168.100.136


查看环境变量 ----- echo $PATH #这个环境变量决定了你能在那些路径下直接找到执行程序
向屏幕输出 hello word ----- echo "hello word"
向file1文件中覆盖输入 hello word ----- echo "hello word">file1
向file1文件中追加输入 hello word ----- echo "hello word">>file1
查看httpd相关进程表 ----- ps -ef |grep httpd
查看进程树 ----- pstree |grep httpd
查看pid号(进程号) ----- pstree -p |grep httpd
查看80端口是否开放 ----- netstat -tunpl |grep :80
查看httpd程序占用端口号 ----- netstat -tunpl |grep httpd*
强制杀掉一个pid ----- kill -9 pid
一次性杀掉所有httpd进程 ----- pkill httpd
                              kelladd httpd
实时查看系统详细信息 ----- top
查看系统一分钟,五分钟,十五分钟平均负载 ----- uptime
查看在线用户 ----- who
查看最近一段时间谁操作过系统重要命令,并有ip信息 ----- last
查看htpd进程在不同级别下on还是off ----- chkconfig --list httpd
设置一次性计划任务 ----- at 19:43 /sbin/init 6
查看一次性计划任务 ----- atq
删除一次性计划任务 ----- atrm job(atq可以看到job号)
********************************************************










一些目录的作用
***********************************************
查看挂在表目录
  cat /etc/fstab
  硬件分区 挂载目录 文件系统 文件属性 读取顺序
永久性修改主机名称
  vi /etc/sysconfig/network
挂在光盘到/media下
  mount /dev/cdrom /media
修改默认启动级别
  vi /etc/inittab
  id:3:initdefault
  运行级别的解释0:关机 3:字符界面 5:图形界面 6:重启
永久方式修改eth0网卡地址
  vi /etc/sysconfig/network-scripts/ficfg-eth0
  BOOTPROTO=(dhcp--动态,static--静态,none--不设置)
  IPADDR=192.168.100.136
  NETMASK=255.255.255.0
  ONBOOT=yes
查看计算机中的用户
  vi /etc/passwd
  user1:x:500:500::/home/user1:/bin/bash
用户组文件位置
  vi /etc/group
  user1:x:500真正的密码文件
  vi /etc/shadow
  user1:$6$ZWqoztNi$8DZaXNASfMPUvK8q8WlgvlaXOqEfQxkEOO/NZSQ.hq3LPGZMyj61aqxwiP02W3BcZ.eJvlZWoaYUg8RJsdg4m1:16352:0:99999:7:::
  !! 说明没有密码
  !说明被禁用
配置yum默认为光盘
  1.  cd /etc/yum.repos.d/ 
  2.  mv CentOS-Base.repo CentOS-Base
  3.  vi CentOS-Media.repo
      baseurl=file:///media/   -----这里要填写具体挂在目录
      #光盘挂在目的地
      gpgcheck=0 #关闭gpg签名
      enabled=1 #开启本光盘yum源
配置光盘默认加载到/media(就是修改挂载表文件)
  vi /etc/fstab
  /dev/cdrom /media    iso9660   defaults 0 0
  挂载源     目标地址  执行标准
配置计算机开机即执行的程序或者命令(例如默认开机启动httpd程序)
  vi /etc/rc.d/rc.local  (/etc/rc.local 是一个快捷方式)
  添加 service httpd start
**********************************************










防火墙设置
****************************************************
1.iptables
查看状态 ----- iptables -L
清空防火墙策略 ----- iptables -F
保存防火墙策略 ----- service iptables save
2.selinux
关闭selinux防火墙 ----- vi /etc/selinux/config
                  ----- SELINUX=desabled
 ----- 重启服务器
****************************************************










crontab计划任务
*********************************************************************************


*****分时日月周
00 03 ***           每天3点
30 23 ***           每天23:30
*/5 ****            每隔5分钟
59 23 ** 1-5        周一到周五
59 23 ** 1,3,5      没周一,周三,周五的23:59


案例需求(计划任务的命令要写清楚命令完整路径)
1.每隔两分钟向/mnt/error.log中写入一行aaa
  */2 **** /bin/echo "aaa">>/mnt/error.log    
2.每天19:20重启服务器
  20 19 *** /sbin/init 6
3.没周一,周三,周五晚上23:00重启服务器
  00 23 ** 1,3,5 /sbin/init 6
4.周一到周五每天00:00重启服务器
  59 23 ** 1-5 /sbin/init 6
5.每天凌晨3:00把网站制作一个压缩包,并且拷贝到/mnt下,而且压缩包的名字中必须要有日期
{
思路:考虑基本命令
具体操作方法
创建一个执行脚本  vi web.sh
内容如下
#!/bin/bash
DATE=`date +%Y-%m-%d`
file=web-${DATE}.tar.gz
tar czf /tmp/$file /var/www/html
mv -a /tmp/$file /mnt
}
00 03 * * 0 web.sh  计划任务执行这个脚本
6.设置一次性计划任务 at 19:43 /sbin/init 6
  查看一次性计划任务 atq
  删除一次性计划任务 atrm job号(atq可以看到job号)
创建计划任务:crontab -e
查看计划任务:crontab -l
删除计划任务:crontab -r
**********************************************************************






Linux
系统启动流程:
******************************************************************
1.bios找到磁盘上的mbr主引导扇区
2.进入grub界面选择相应的启动内核
3.读取kernel内核文件-/boot/vmlinuz-*
4.读取init的镜像文件-/boot/initrd-*
5.init去读取/etc/inittab
  设置运行级别 0关机 3字符界面 5图形界面 6重启
6.读取启动级(id:3:initdefault)
7.读取/etc/rc.d/rc.sysinit,
  读取系统主机名  识别加载硬件驱动
  读取selinux防火墙  设置系统字体  
  进入一个简单的小欢迎页面  设置系统时钟  
  设置文件和目录权限  加载映射分区
8.读取/etc/rc.d/rc脚本,通过该脚本吸收3级别,然后启动/etc/rc.d/rc3.d下所有以S开头的服务,不启动该目录下以K开头的服务
9.进入登录界面
*************************************************
****************
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值