Linux 的目录结构
/ ,根目录,下面有很多一级目录 /bin ,存放最经常使用的命令 /sbin ,存放系统管理员使用的系统管理命令 /home ,存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般 该目录名是以用户的账号命名的。 /root ,该目录为系统管理员,也称作超级权限者的用户主目录。 /boot ,存放的是启动nou时使用的一 些核心文件,包括一些连接文件以及镜像文件 /media ,linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux 会把识别的设备挂载到这个目录下。 /mnt ,系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂载在/mnt/上,然后进入该目录就可以查看里的内容了。d:/myshare /opt ,这是给主机额外安装软件所摆放的目录。 /usr/local ,这是另一个给主机额外安装软件所安装的目录。-般是通过编译源码方式安装的程序。 /var ,这个目录中存放着在不断扩充着的东西,习惯将经常被修改的目录放在这个目录下包括各种日志文件。
开机关机,登录登出
syn :把内存的数据同步到磁盘 reboot :重启 shutdown :关机 logout :登出
用户管理
useradd 用户名 :添加用户 useradd -g 用户组 用户名 :增加用户时直接加上组
1)当创建用户成功后,会自动的创建和用户同名的家目录(在home目录下) 2)也可以通过 useradd -d 指定目录 新的用户名,给新创建的用户指定家目录(目录不需要自己创建)
passwd 用户名 :给用户指定或者修改密码
userdel 用户名 :删除用户 ,但是要保留家目录 userdel -r 用户名 :删除用户 以及用户主目录
id 用户名 :查询用户信息 su – 切换用户名 :切换用户
1)从权限高的用户切换到权限低的用户,不需要输入密码,反之需要。 2)当需要返回到原来用户时,使用 exit 指令 3) whoami 命令可以查看当前用户
groupadd 组名 :添加用户组 groupdel 组名 :删除用户组 usermod -g 用户组 用户名 :修改用户的组
/etc/passwd文件 :用户(user)的配置文件,记录用户的各种信息,每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录 Shell /etc/shadow 文件 :口令的配置文件 /etc/group文件 :组(group)的配置文件,记录 Linux 包含的组的信息,每行含义:组名:口令:组标识号:组内用户列表
常用命令
运行级别 :
0:关机 1:单用户[找回丢失密码] 2:多用户状态没有网络服务 3:多用户状态有网络服务 4:系统未使用保留给用户 5:图形界面 6:系统重启
init [012356] :切换运行级别
帮助命令
man,help,百度
文件目录类
pwd :显示当前工作目录的绝对路径 ls :列出该目录下的所有子目录与文件 ll :是ls -l的缩写 cd :切换到指定目录,cd ~ 回到家目录,cd .. 回到当前目录的上一级目录 mkdir :创建目录,-p :创建多级目录 rmdir :删除空目录 rm :删除文件或目录,-r :递归删除整个文件夹,-f : 强制删除不提示 touch :创建空文件 cp source dest :拷贝文件到指定目录,-r :递归复制整个文件夹
cp -r /home/packageA/* /home/cp/packageB/ :将一个文件夹下的所有内容复制到另一个文件夹下
mv : 移动文件与目录或重命名,mv oldNameFile newNameFile (功能描述:重命名) mv /temp/movefile /targetFolder (功能描述:移动文件) cat : 查看文件内容,是以只读的方式打开,-n :显示行号
cat 文件名 | more [分页浏览]
more :全屏查看文件内容,还有些快捷键。 less :分屏查看文件内容,适用于查看大文件,还有些快捷键+1。 > 指 令 和 >> 指 令 :> 输出重定向 : 会将原来的文件的内容覆盖,>> 追加: 不会覆盖原来文件的内容,而是追加到文件的尾部。 echo :输出内容到控制台。 head :用于显示文件的开头部分内容,默认情况下 head 指令显示文件的前 10 行内容,head -n 5 文件 (功能描述:查看文件头 5 行内容,5 可以是任意行数) tail : 用于输出文件中尾部的内容,默认情况下 tail 指令显示文件的后 10 行内容
tail -n 5(功能描述:查看文件后 5 行内容,5 可以是任意行数) tail -f(功能描述:实时追踪该文档的所有更新,工作经常使用)
ln -s [原文件或目录] [软链接名] :给原文件创建一个软链接 history :查看已经执行过历史命令
时间日期类
date :显示当前日期
- date :
(功能描述:显示当前时间) - date +%Y
(功能描述:显示当前年份) - date +%m
(功能描述:显示当前月份) - date +%d
(功能描述:显示当前是哪一天) - date “+%Y-%m-%d %H:%M:%S” (功能描述:显示年月日时分秒)
date :设置日期,date -s 字符串时间
搜索查找类
find :指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端,语法:find [搜索范围] [选项]
-name 按照指定的文件名查找模式查找文件,如find / *.txt -user 查找属于指定用户名所有文件 -size 按照指定的文件大小查找文件。
locaate : 可以快速定位文件路径。locate 指令利用事先建立的系统中所有文件名称及路径的locate 数据库实现快速定位给定的文件。Locate 指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新 locate 时刻。
由于 locate 指令基于数据库进行查询,所以第一次运行前,必须使用 updatedb 指令创建 locate 数据库。
| :表示将前一个命令的处理结果输出传递给后面的命令处理。-n 显示匹配行与行数,-i 忽略字母大小写。
压缩和解压类
gzip/gunzip :gzip 用于压缩文件,只能将文件压缩为*.gz 文件, gunzip 用于解压的,只能解压.gz文件
gzip 对文件进行压缩后,不会保留原来的文件。
zip/unzip :zip 用于压缩文件,只能将文件压缩为*.zip 文件, unzip 用于解压的,只能解压.zip文件。zip常用选项-r:递归压缩,即压缩目录,unzip常用选项-d<目录> :指定解压后文件的存放目录。
tar :用于打包,最后打包后的文件是 .tar.gz 的文件。常用:tar -zcvf a.tar.gz /home/a1.txt /home/a2.txt :压缩多个文件,将/home/a1.txt和/home/a2.txt压缩成a.tar.gz。用于解压,不带-C 参数就是当前目录,否则解压到的那个目录事先要存在才可以;否则会报错。tar -zxvf a.tar.gz -C /opt/
组管理和权限管理
在 linux 中的每个用户必须属于一个组,不能独立于组外。在 linux 中每个文件有所有者、所在组、其它组的概念。 ls -ahl :查看文件的所有者、所在组等信息 chown 用户名 文件名 :修改文件的所有者 groupadd 组名 :创建组 chgrp 组名 文件名 :修改文件所在组 usermod –g 组名 用户名 :修改用户所在组
权限 : ls -l 中显示的内容如下: -rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc 0-9 位说明 1)第 0 位确定文件类型(d, - , l , c , b) 2)第 1-3 位确定所有者(该文件的所有者)拥有该文件的权限。—User 3)第 4-6 位确定所属组(同用户组的)拥有该文件的权限,—Group 4)第 7-9 位确定其他用户拥有该文件的权限 —Other 实例 第一个字符代表文件类型: 文件 (-),目录(d),链接(l) 其余字符每 3 个一组(rwx) 读( r ) 写(w) 执行(x) 第一组 rwx : 文件拥有者的权限是读、写和执行 第二组 rw- : 与文件拥有者同一组的用户的权限是读、写但不能执行第三组 r-- : 不与文件拥有者同组的其他用户的权限是读不能写和执行
chmod :可以修改文件或者目录的权限
通过数字变更权限,r=4 w=2 x=1 ,rwx=4+2+1=7 ,如chmod u=rwx,g=rx,o=x 文件目录名 相当于 chmod 751 文件目录名 ; 修改文件所有者,chown newowner file 改变文件的所有者 chown newowner:newgroup file 改变用户的所有者和所有组 -R 如果是目录 则使其下所有子文件或目录递归生效
chgrp :修改文件所在组,chgrp newgroup file 改变文件的所有组
任务调度
crontab [选项] ,需要了再看吧
进程管理
ps -aux :显示系统执行的进程,ps –aux|grep xxx 看看有没有xxx进程 kill -9 :杀死进程 pstree [选项] ,可以更加直观的来看进程信息 service 服务名 [start | stop | restart | reload | status] :服务管理命令 chkconfig :可以给每个服务的各个运行级别设置自启动/关闭
查看服务 chkconfig --list|grep xxx chkconfig 服务名 --list chkconfig --level 5 服务名 on/off
netstat -anp :查看系统网络情况
RPM 和 YUM
rpm –qa|grep xx :查询已安装的 rpm 列表 rpm -qf 文件全路径名 : 查询文件所属的软件包 rpm -e RPM 包的名称 :卸载rpm包 rpm -ivh RPM 包全路径名称 :安装 rpm 包
yum 是一个基于RPM的包管理器 yum list|grep xx :查询 yum 服务器是否有需要安装的软件 yum install :安装yum包
搭建javaee环境
0)先将软件通过 xftp5 上传到 /opt 下 1)解压缩到 /opt 2)配置环境变量的配置文件 vim /etc/profile
JAVA_HOME=/opt/jdk1.7.0_79 PATH=/opt/jdk1.7.0_79/bin:$PATH export JAVA_HOME PATH
注:需要注销用户,环境变量才能生效,之后在任何目录下就可以使用 java 和 javac
常用
nvidia-smi :查看GPU使用情况 nohup python evaluate_pre.py >> evaluate.log & :将任务挂在后台并且将日志输出到log文件 taif -f evaluate.log :查看日志信息的实时更新情况 ls -lR|grep "^-"|wc -l :linux查看文件夹下的文件 个数(不包含子目录) ls -lR|grep "^d"|wc -l :linux查看文件夹下的文件夹 个数(不包含子目录)
包含子目录就是ls -lR
|