如何解决虚拟机正在被使用问题:将后缀为vmx.lck文件删除
当更改某项配置时,先查看脚本文件有无相关设置.(系统配置脚本文件在/etc,用户配置文件在~)
cat /etc/redhat-release
或
cat /etc/issue
查看正在运行的内核版本
cat /proc/version
help给出的是指令的参数和所具备的选项
man是详细说明(q结束)
man page数字的含义
注意所有的权限都是针对文件内容的权限(针对里面的东西)
r:文件的内容可视
w:文件的内容可控制
x:文件的内容可执行
chgrp 更改文件所在组
chgrp [-R] groupName file
chown 更改文件拥有者
chown [-R] userName file
chmod 更改文件权限
1)数字:r=4 w=2 x=1 可读可写可执行r+w+x=7
2) 字符:分三种身份u,g,o,a是所有身份 三种权限r,w,x 。设置=,添加+,除去-
chmod 770 fileName
chmod u=rwx,o=x fileName
cp file newFile
rmdir directory 删除目录
cp(复制文件或者目录)
cp [-adfilprsu] source destination
cp [options] source1 source2 source3..directory //多个源文件时最后的目标文件一定要是一个目录
复制时要了解:是否要完整复制信息,是否是连接文件,是否为目录
rm [-fir] 文件或目录
mv [-fiu] source destination
多个源文件时目标文件一定是目录,可用于变更文件名
cat [-AbEnTv]
从第一行开始显示文件所有内容,不适合长文本
tac(反向列示与cat相反)
tac
nl [-bnw] 文件
more(一页页翻动)
空白键:向下翻页
Enter:向下一行
/字串:从当前显示的内容中,向下搜索“字串” ,重复搜同一内容按n
:f:显示文件名以及当前行
q:退出
b:往回翻页
head [-n number] 文件
-n:后面接数字,代表显示几行
默认显示前十行
tail [-n number]文件
tail -n +100 /etc/man_db.conf 用来显示100行以后的所有内容
注意-f的用法和显示多少行后的内容的用法
示例:查看11到20行
head -n 20 /etc/man_ | tail -n 11
由于可执行文件通常是binary file,使用其他指令查看通常会出现乱码的数据,所以用od。
od [-t TYPE] 文件
参数:
-t:后面接各种类型的输出,例如:
a:利用默认的字符来输出
c:使用ASCII来输出
d[size]:利用十进制输出数据,每个整数占用size Bytes;
f[size]:利用浮点数来输出,每个浮点数占用size Bytes;
o[size]:利用八进制来输出,每个整数占用size Bytes;
x[size]:利用十六进制来输出数据,每个整数占用size Bytes;
注意:默认是十六进制类型输出!可以选择多种输出类型并进行比较
将/etc/issue这个文件的内容以8进位列出存储值与ASCII的对照表:
od -t oCc /etc/issue
date; ls -l /etc/man-db.conf ; ls -l --time=atime /etc/man-db.conf ;ls -l --time=ctime /etc/man-db.conf
默认情况下ls显示的是mtime
touch [acdmt] file
选项与参数:
-a:仅修订access time(atime)
-c:仅修改文件的时间,若文件不存在则不创建文件
-d:可以指定修改时间而不用当前的时间
-m:仅修改mtime
-t:可以指定修改时间而不用当前的时间
不论怎么更改时间,ctime总记录当前时间
touch testTouch
在默认状态下会将文件的三个时间刷新为当前时间,若文件不存在,则创建一个新的空文件
默认权限与隐藏权限
[admin@localhost Desktop]$ umask
0002
[admin@localhost Desktop]$ umask -S
u=rwx,g=rwx,o=rx
//在admin用户下默认权限是u=rwx,g=rwx,o=rx;使用数值显示就是0002(使用的减法,o-2的意思)如果是root则是0022
设置默认权限:
umask 002 //将当前用户的默认权限设置为o-w
[admin@localhost Desktop]$ which ifconfig
/sbin/ifconfig
[admin@localhost Desktop]$ type ifconfig
ifconfig is /sbin/ifconfig
which -a command 将所有由PATH目录中可以找到的指令均列出(不加-a的话查找到一个就结束了)
注意:which是从PATH目录中查找,如果是bash内置的指令将查找不到
根据文件名搜索文件所在目录有whereis、locate、find(不常用)。
whereis 从一些特定的目录中寻找文件(所以比较快)
whereis [ -sbmu ] name.....
-l:列出从哪些目录中搜索
-b:只找binary(二进制)格式的文件//可执行文件
-m:只找在说明文档manual路径下的文件
-s:只找source来源文件
-u:搜索不在上述三个项目当中的其他特殊文件
updatedb 根据/etc/updatedb.conf的设置去寻找系统盘内的文件名,并更新/var/lib/mlocat内的数据库文件
find是个很强大的搜索指令,但消耗硬盘资源较大。
find [PATH][option][action]
选项与参数:
与时间有关的选项:共有-atime,-ctime,-mtime,以-mtime说明
-mtime n:在n天之前的“一天之内”被更动过内容的文件;
-mtime +n:在n天之前(不含n天)被更动过的文件;
-mtime -n:在n天之内(含n天)被更动过的文件;
-newer file:列出比file还要新的文件
举例:
列出24小时内更动过的文件
find / -mtime 0
//0是重点,代表当前的时间,意思是当前一天内被更动过的文件
寻找/etc下比/etc/passwd新的文件
find /etc -newer /etc/passwd
- ifconfig已经过时了,查看ip地址或者ip连接使用ip
- ip -s addr 查看IP地址信息
service --status-all
service servcieName status
service serviceName start
chkconfig --list
chkconfig --list serviceName
chkconfig --add xxx
1启动一个服务:systemctl start firewalld.service
2关闭一个服务:systemctl stop firewalld.service
3重启一个服务:systemctl restart firewalld.service
4显示一个服务的状态:systemctl status firewalld.service
5在开机时启用一个服务:systemctl enable firewalld.service
6在开机时禁用一个服务:systemctl disable firewalld.service
7查看服务是否开机启动:systemctl is-enabled firewalld.service;echo $?
8查看已启动的服务列表:systemctl list-unit-files|grep enabled
chattr +a可以设置文件或者文件夹可以增改但无法删除,实际使用时要用管理员权限,有个问题:
sudo chattr +a 文件名
当设置某个文件时,会使文件无法删除的同时变得不可被更改,管理员权限也没用
sudo chattr +a 文件夹名称
设置某个文件时可以达到文件夹内的文件无法被删除而且还可以更改的效果
程序安装目录:/usr/local/program
数据安装目录:/data/mysql
sudo dpkg -i mysql-common_5.6.28-1ubuntu14.04_amd64.deb
sudo dpkg -i libmysqlclient18_5.6.28-1ubuntu14.04_amd64.deb
sudo dpkg -i libmysqlclient-dev_5.6.28-1ubuntu14.04_amd64.deb
sudo dpkg -i libmysqld-dev_5.6.28-1ubuntu14.04_amd64.deb
mysql-community-client_5.6.44-1debian9_amd64.deb
sudo dpkg -i mysql-community-server_5.6.44-1debian9_amd64.deb
/etc/sysconfig/net.../第一个
更改主机名称
hostnamectl set-hostname Name
将主机名与地址绑定
/etc/hosts
通过ssh连接其他Linux系统
ssh [email protected]
通过scp从其他Linux上传下载文件
1、从服务器上下载文件
scp username@servername:/path/filename /var/www/local_dir(本地目录)
例如scp [email protected]:/var/www/test.txt 把192.168.0.101上的/var/www/test.txt 的文件下载到/var/www/local_dir(本地目录)
2、上传本地文件到服务器
scp /path/filename username@servername:/path
例如scp /var/www/test.php [email protected]:/var/www/ 把本机/var/www/目录下的test.php文件上传到192.168.0.101这台服务器上的/var/www/目录中
3、从服务器下载整个目录
scp -r username@servername:/var/www/remote_dir/(远程目录) /var/www/local_dir(本地目录)
例如:scp -r [email protected]:/var/www/test /var/www/
4、上传目录到服务器
scp -r local_dir username@servername:remote_dir
例如:scp -r test [email protected]:/var/www/ 把当前目录下的test目录上传到服务器的/var/www/ 目录
firewall-cmd --reload #重启firewall
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
使用rpm查看已安装的程序
rpm -qa 查看所有已安装的程序
rpm -qa | grep java 通过管道“|”使用grep文本筛选查看安装的所有名字里有java的程序
结果如下:
java-1.7.0-openjdk-1.7.0.111-2.6.7.8.el7.x86_64
python-javapackages-3.4.1-11.el7.noarch
tzdata-java-2016g-2.el7.noarch
javapackages-tools-3.4.1-11.el7.noarch
java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64
java-1.8.0-openjdk-headless-1.8.0.102-4.b14.el7.x86_64
java-1.7.0-openjdk-headless-1.7.0.111-2.6.7.8.el7.x86_64
要删除“java-”开头的4个程序,更改筛选条件
rpm -qa | grep ^java-
java-1.7.0-openjdk-1.7.0.111-2.6.7.8.el7.x86_64
java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64
java-1.8.0-openjdk-headless-1.8.0.102-4.b14.el7.x86_64
java-1.7.0-openjdk-headless-1.7.0.111-2.6.7.8.el7.x86_64
rpm -qa | grep ^java- |xargs rpm -e --nodeps 将查询结果使用通道”|“交给过滤器”xargs“处理为为参数交给”rpm -e --nodeps“删除掉
rpm -qa | grep ^java- 再检查一遍是否真的删除了
vi /etc/profile
添加:
export JAVA_HOME=/usr/soft/jdk1.8.0_111
export PATH=$PATH:$JAVA_HOME/bin
source /etc/profile 使配置文件立即生效