? bin(binaries):存放可执行的二进制文件
? sbin(super user binaries):存放可执行的二进制文件,只有root用户才能访问
? boot:存放用于系统引导时使用的的各种文件
? dev(devices):用于存放设备文件
? etc(etcetera):存放系统配置文件【重要】
? root:超级用户(管理员)目录
? home:存放用户文件的根目录
? lib(library):存放根文件系统中的程序运行所需要的共享库及内核模块
? mnt(mount):系统管理员安装临时文件系统的安装点
? tmp(temporary):用于存放各种临时文件
? usr(Unix share resource):用于存放共享的的系统资源【重要】,一般我们都会把文件安装在该目录下
? var(variable):用于存放运行时需要改变数据的文件
1、 内部命令:help + 命令,例如help cd
2、 外部命令:man + 命令,例如 man ls
一:
操作文件或目录常用命令
cd / :根目录 cd /a/b/c :进入指定目录 cd ~ :进入到用户的根目录root目录 cd - :返回到原来目录 cd .. :回退上一级 cd ../b/c :上一级的下一集 pwd :print working directory,显示当前工作目录 ls :查看当前目录下的所有文件,ls –la或者ll mkdir :make directory,创建目录 mkdir directory1 directory2 mkdir -p /home/orale/(创建多级目录) touch :创建空文件 echo :向文件中添加内容echo “content” > x.txt; 追加数据:echo “content” >> x.txt cp :copy,复制文件或者目录(递归持续复制 cp -r ) cp (复制档案或目录) [root@linux ~]# cp [-adfilprsu] 来源档(source) 目的檔(destination) [root@linux ~]# cp [options] source1 source2 source3 …. directory 参数: -a :相当于 -pdr 的意思; -d :若来源文件为连结文件的属性(link file),则复制连结文件属性而非档案本身; -f :为强制 (force) 的意思,若有重复或其它疑问时,不会询问使用者,而强制复制; -i :若目的檔(destination)已经存在时,在覆盖时会先询问是否真的动作! -l :进行硬式连结 (hard link) 的连结档建立,而非复制档案本身; -p :连同档案的属性一起复制过去,而非使用预设属性; -r :递归持续复制,用于目录的复制行为; -s :复制成为符号连结文件 (symbolic link),亦即『快捷方式』档案; -u :若 destination 比 source 旧才更新 destination ! 最后需要注意的,如果来源档有两个以上,则最后一个目的文件一定要是『目录』才行! scp nginx-1.8.0.tar.gz 192.168.200.129:/root/ mv :move,移动文件或者目录、 (同一目录下就是改名)(mv a b c -t 目录) rm :remove,删除文件; -r:recursive,同时删除该目录下的所有文件; -f:force,强制删除文件或目录 rmdir :remove directory,删除空目录 cat :catenate,显示文件文件内容 more、less :分页显示文本文件内容 (空格:翻页) head、tail :head|tail –n 5 a.log:查看a.log的前5行|或后5行数据; tail –500f b.log:循环读取最后500行(ctrl+c退出) stat :查看文件详情
常用命令
wc :word count,统计文本的字符个数、单词个数、行数 -l:统计该文本的行数; -w:统计该文本的单词个数; -m:统计该文本的字符个数; find :在文件系统中查找指定的文件,例:find /usr/ -name “xxx.txt” grep :在指定的文本文件中查找指定的字符串,例如:grep “hello” x.txt du :显示指定的文件(目录)已使用的磁盘空间的总数 free :显示当前内存和交换空间的使用情况 netstat :显示网络状态信息 ifconfig :网卡的网络配置信息 ping :测试网络的连通性 ps :显示瞬间的进程状态 kill :杀死一个进程,kill -9 pid df :显示文件系统磁盘空间的使用情况 ln :link,建立连接文件(link),例如:ln –s family/son lnson netstat -ltunp
文件搜索命令locate
命令搜索命令whereis和which
文件搜索命令find
字符串搜索命令grep
find命令与grep命令的区别
解压缩命令
gzip(文件) :压缩文件(xxx.gz) 例:gzip 1.txt; 解压:gzip –d xxx.gz(或者gunzip xxx.gz) bzip2(文件)(相比.gz压的更狠) :压缩文件(xxx.bz2) 例:bzip2 1.txt;解压:bzip2 –d xxx.bz2或者(bunzip2 xxx.bz2) tar (文件夹) : -c 建立一个压缩文件的参数指令(create) -x 解开一个压缩文件的参数指令(extract) -z 是否需要用 gzip 压缩 -j 是否需要用 bzip2 压缩 -v 压缩的过程中显示文件(verbose) -f 使用档名,在 f 之后要立即接档名(file) 1、 将当前目录打包: tar –cvf bak.tar bak/ 2、 解压: tar –xvf bak.tar 3、 打包并压缩成gzip: tar –zcvf bak.tar.gz bak.tar 4、 解压gzip: tar –zxvf bak.tar.gz [-C /usr 解压到该目录下] 5、 打包并压缩成bz2: tar -jcvf a.tar.bz2 6、 解压bz2: tar -jxvf a.tar.bz2 unzip abc.zip -d /solr 解压会散落在solr中(可以先建个文件夹)
其他命令
tab键 自动补全 Ctrl+c 停止当前进程 history 查看历史命令 ↑ ↓键 Ctrl+l 清屏,与clear命令作用相同 Ctrl+r 搜索历史命令 shutdown:系统关机 -r:关机后立即重启 -h:关机后不启动 shutdown -h now halt:关机后关闭电源 reboot:重启 su - root 提示密码(切换用户,- 表示环境变量跟着变): ubunto系统是: su do root date 当前时间
二:
vim编辑器
vi/vim是Unix/Linux上最常用的文本编辑器而且功能非常强大 vim 进入一般模式 :wq退出一般模式 ZZ(Shift+zz), q!(强制退出,不保存) wq!(强制,退出) i a o 进入插入模式 Esc退出插入模式 : 进入底层模式 命令回车即可退出 /x n N ?x n N :noh 插入命令:i a o(一般模式) i :在当前光标前插入 I :在当前光标行首插入 a :在当前光标后插入 A :在当前光标行尾插入 o :在当前光标的下一行插入新行 O :在当前光标的上一行插入新行 定位命令:(底层模式) :set nu :显示行号 :set nonu :取消行号 :n :到文本的第n行 gg :到文本第一行 G :到文本的最后一行 删除命令(好用) x :删除光标所在处的字符 nx :删除光标所在处的n个字符 dd :删除光标所在行, ndd : 删除n行 dG :删除光标所在行到末尾行的所有内容 D :删除光标所在处到行尾的内容 :n1,n2d :删除指定范围的行 复制粘贴命令 yy :复制当前光标行; nyy : 复制n行 p :粘贴到该行下 P :粘贴到该行上 替换和取消命令 u :undo,取消上一步操作 ctrl+r :redo,返回到undo之前 r :替换光标所在处的字符 R :从光标所在处开始替换,按Esc键结束 常用快捷键 ZZ(Shift+zz) :保存并退出,与”:wq”作用相同, q!不保存强制退出 Ctrl+c :结束当前进程 Ctrl+r :搜索历史命令 Tab键 :自动补全
三:
关于Linux的配置
修改主机名 vim /etc/sysconfig/network 修改hostname=master即可,需要注意的是:主机名不能包含下划线或者中划线 修改ip vim /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE="eth0" BOOTPROTO="static" #修改 HWADDR="00:0C:29:7D:A4:4E" IPV6INIT="yes" NM_CONTROLLED="yes" ONBOOT="yes" TYPE="Ethernet" UUID="f804bacc-f3e8-452b-ae55-3f97d3bf5108" IPADDR="192.168.31.251" #添加 保证你的ip地址和net1在同一网段下 NETMASK="255.255.255.0" #添加 GATEWAY="193.168.31.250" #添加 修改主机名和IP的映射关系 vim /etc/hosts 最后一行添加 192.168.31.251 master 关闭防火墙 cat /etc/sysconfig/hosts 1、 查看防火墙强状态:service iptables status; 2、 关闭防火墙:service iptables stop 3、 查看防火墙是否开机启动:chkconfig iptables --list 4、 查看该系统已哪种方式启动:vim /etc/inittab 1:单用户启动 3:多用户启动,server版 5:图形界面方式启动 5、 关闭防火墙开机关闭:chkconfig iptables off service iptables restart
CentOS 7.0默认使用的是firewall作为防火墙,使用iptables必须重新设置一下
1、直接关闭防火墙
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
2、设置 iptables service
yum -y install iptables-services
如果要修改防火墙配置,如增加防火墙端口3306
vi /etc/sysconfig/iptables
增加规则
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
保存退出后
systemctl restart iptables.service #重启防火墙使配置生效
systemctl enable iptables.service #设置防火墙开机启动
最后重启系统使设置生效即可。
四:
权限管理
三种基本权限 r:read, 读权限 w:write, 写权限 x:execute,执行权限 -rw-rw-r-- 1 ftpuser ftpuser 41894 Jul 3 22:27 girl.jpg 第1位: 文件类型 (d 目录,- 普通文件,l 链接文件) 第2-4位: 所属用户权限, 用u(user)表示 第5-7位: 所属组权限, 用g(group)表示 第8-10位: 其他用户权限, 用o(other)表示 第2-10位: 表示所有的权限,用a(all)表示 完整信息:一个文件,所属用户具有读写执行权限;所属组的用户 有读写权限,没有执行权限;其他用户只有读权限 更改操作权限 chmod: 修改文件权限命令(change mode) 参数: -R 下面的文件和子目录做相同权限操作(Recursive递归的) 例如:chmod u+r a.txt 例如:chmod 750 a.txt 用数字来表示权限 r=4,w=2,x=1,-=0 rwx用二进制表示是111,十进制4+2+1=7 r-x用二进制表示是101,十进制4+0+1=5
五:
Linux下安装软件
jdk安装 设置执行权限: chmod u+x jdk-7u45-linux-i586.bin 解压缩: tar -zxvf jdk-7u79-linux-x64.gz -C /usr/java/ --解压后是文件夹直接是jdk1.7.0_45 添加环境变量 1、 vim /etc/profile 2、在/etc/profile文件最后添加 JAVA_HOME=/usr/java/jdk1.7.0_45 export PATH=$JAVA_HOME/bin:$PATH 3, 更新配置: source /etc/profile 4, 验证: java -version eclipse安装 解压缩:tar -zxvf eclipse-java-luna-SR2-linux-gtk-x86_64.tar.gz -C /usr 在linux桌面空白处,点击鼠标右键,弹出一个对话框,选择“create Launcher”: 设置name、command(eclipse安装目录)、图标(icon.xpm) reboot:重启 tomcat安装 apache-tomcat-7.0.47.tar.gz解压缩后文件夹是apache-tomcat-7.0.47 运行 ./startup.sh 查看日志: tail -500f apache-tomcat-7.0.47/logs/catalina.out mysql的安装 RPM安装mysql 1、 上传mysql所需的RPM软件包 2、 RPM文件安装顺序 rpm -ivh perl-DBI-1.609-4.el6.i686.rpm rpm -ivh perl-DBD-MySQL-4.013-3.el6.i686.rpm rpm -Uvh openssl-1.0.1e-16.el6_5.14.i686.rpm rpm -Uvh mysql-libs-5.1.73-3.el6_5.i686.rpm rpm -ivh mysql-5.1.73-3.el6_5.i686.rpm rpm -ivh mysql-server-5.1.73-3.el6_5.i686.rpm 3、 启动mysql服务 service mysqld start 设置mysql密码:mysqladmin -u root password 'root' 登录:mysql -u root -p 退出:quit 进入mysql数据库:show databases; use mysql; show tables; 等。 注意:(这里使用的是32位的mysql的RPM软件包,和本机没有关系! 因此该Linux) RPM是RPM package manager(RPM软件包管理器),是一种用于互联网下载包的打包及安装工具, 它包含在某些Linux发行版本中。它生成具有.RPM扩展名的文件。 它的主要功能:安装、卸载、升级和管理软件 RPM常用参数介绍 i :安装应用程序(install) e :卸载应用程序(erase) vh :显示安装进度;(verbose hash) U :升级软件包;(update) qa : 显示所有已安装软件包(query all) -ql :显示软件安装的目录 结合grep命令使用 例: rpm -ivh gcc-c++-4.4.7-3.el6.x86_64.rpm 查看安装rpm文件的位置: rpm -ql mysql 查看rpm已经安装过的文件: rpm -qa|grep mysql