linux系统的基本命令

1、vim == 复杂编辑器,一般编辑程序的时候使用,
创建一般文件时,就用VI
2、echo 'I am studying liunx' >oldboy.txt
echo ' I am studying liunx' >> oldboy.txt
注:一个> 就是覆盖;两个>就是尾部追加
echo 是一个打印内容的命令,后面跟什么,就会输出什么,如果配合 > 的话,就会覆盖
原有内容。
3、cat === 查看文件内容
特殊用法:增加内容
cat >>/data/oldboy.txt<I am studying Linux.
EOF
EOF要成对出现,EOF可以被任意成对内空替换
4、cp === 后面的参数的含义
-d:若源文件为链接文件(Link file),则复制链接文件属性而非档案本身;
-f:强制,若目标档案已经存在且无法开启,则移除后再尝试;
-i:若目标文件已经存在时,在覆盖时会先询问;
-p:连同档案的属性一起复制过去,而非使用默认属性;
-r:递归,用于复制目录;
-u:若上档文件存在,则目标文件比源文件旧时才复制;
-a:相当于-pdr
5、man == 命令的复杂帮助
help== 命令的帮助(bash内置命令)
6、find /root/data/ -type f -exec rm -f {} \;
find /root/date/ -type f |xargs rm -f
7、head ==== ,取文件的前N行,默认前10行
Head -n test.txt
8、grep 'oldboy' test.txt 查找oldboy
grep -v 'oldboy' test.txt 加参数V,就是屏蔽oldboy
-E过滤多个字符串;-i不区分大小写;-o输出精确匹配,而不是默认的整行
grep 30 -B 10 test.txt 就是显示30行之前的10行内容
-A 就是显示30行后的10行的内容
-C 30行前后各10行的内容,以上三个参数都包括30行
9、sed -n '/oldboy/p' test.txt 输出所有含oldboy的行
sed -n '2p' test.txt 输出第二行
-n 取消sed的默认输出;P print打印;D delete删除
sed -i s#oldboy#oldgirl#g a.txt s是常说的查找并替换,用一个字符串替换成另一个
g(global)与s联合使用时,表示对当前行全局匹配替换
参数-i 如果不加上的话,只是输出内容显示替换,文件未保存。
10、mkdir -p 递归创建目录,可以创建多个目录
11、alias 查看以及定义别名(外号、小名)
unalias 取消别名
12、seq=sequence序列 seq -s 指定序列的分隔符

13、awk '{print $1}' 文件
awk -F ';' '{print $1,$2}' 文件名 -F 指的是列的分隔符
14、快捷键:ctrl+l(清屏);ctrl+a(到命令的开关);ctrl+e(到命令的结尾)
ctrl+shift+c CRT里就是复制 +v就是粘贴
15、查看进程:ps -ef; 查看端口:netstat -lntup
16、/etc/init.d/iptables stop===service iptables stop
17、yum install telnet lrzsz nmap dos2unix -y 安装几个常用的包
18、往Liunx上传文件:rz -y; 从liunx上下载文件:sz -y 文件名

上传的只是文件(不是目录) 参数-y 是覆盖。
19、关机命令:halt==shutdown -h now
20、uname -r内核;uname -m 32位还是64位 uname -n 主机名;whoami 查看当前用户
21、useradd oldboy
22、su 用户角色切换 su - 用户名 —参数 切换用户环境变量
从普通用户至root,需要输入ROOT密码。
env|grep oldoy 用户Oldboy的变量环境
23、关闭selinux功能
sed -i 's#SELINUX=enforcing#SELINUX=disables#g' /etc/selinux/config(此永久更改方法,需要重启服务器,但是服务器不能轻意重启,只能再进行下一步,临时更改)
gentenforce 检查selinux状态;sentenforce 设置selinux状态,1启用 0警告、不启用
24、run level 运行级别 7种0-6,具体cat /etc/inittab
runlevel:查看当前系统运行级别。
25、根据老男孩多年的经验,企业环境新装LINUX系统后有必要保留的开机自启动服务有5个
sshd:远程连接linux服务器时需要用到主穿上服务程序,所以必须要开启,否则无法远程
连接Linux服务器。
rsyslog:是操作系统提供的一种机制,系统的守护程序通常会使用rsyslog将各种信息写到各
个系统日志文件中,cents6以前此服务的名字为syslog。
network:系统启动时,若想激活/关闭各个网络接口,则应考虑开启。
crond:该服务用于周期性地执行系统及用户配置的任务计划。有要周期性执行的任务时要开
启,此服务几乎是生产场景必须要用的一个软件。
sysstat是一种软件包,集成的主要工具为:
iostat工具提供CPU使用率及硬盘吞吐效率的数据;
mpstat工具提供与单个或多个处理器相关的数据;
sar工具负责收集、报告并存储系统活跃的信息。
26、设置开机自启动服务的常见方法

for name `chkconfig --list|awk '{print $1}'|grep -Ev "sshd|network|rsyslog|crond|sysstat"`;do chkconfig $name off;done

chkconfig --list|grep 3:on|awk '{print $1}'|sed -r 's#(.*)#chkconfig \1 off#g'|bash
以上两条命令皆是3模式下的 除了sshd network rsyslog crond sysstat 外的所有的服务进程。

27、关闭防火墙
/etc/init.d/iptables stop(只是暂时关闭防火墙,重启系统后,防火墙会随系统启动)
/etc/init.d/iptables status
28、chkconfig 设定开机自启动服务
chkconfig iptables off (只有重启系统才生效,永久关闭)

29、更改SSH服务端远程登陆的配置
/etc/ssh/sshd_config 这是SSH服务端的配置文件
其中还有一个ssh_config文件,这是客户端的配置文件,没什么用相当于CRT的配置
通常更改配置如下:
13 Port 22(52113)把默认端口改成自己设定的端口,增加安全性。
15 ListenAddress 0.0.0.0(改为内网ip 192.168.58.128)让人无法通过

外网用SSH服务来访问服务器。
像这种情况,一般都是采用PVN的方式,连接至服务器的内网。
80 GSSAPIAuthentication no(改为no)多台服务器相互登陆时,改成no可以更快的进行。
42 PermitRootLogin yes(改为no) 禁止通过root用户远程连接服务器。
122 UseDNS yes(改为NO)由于我们使用过程中都是使用IP地址,没必须解析,增加速度。
30、利用sudo控制用户对系统命令的使用权限
visudo===vi /etc/sudoers(找98行,只需要按98gg即可直接到98行)
98行:root ALL=(ALL) ALL 注:括号里的内容代表让用户以哪个用户的身份介入;
在加入 oldboy ALL=(ALL) ALL 这代表Oldboy这个用户将拥有和root一样的权限,不过在执行命令前,要加sudo
sudo su - root 可以不输入root的密码。

oldboy ALL=(ALL) /bin/touch,/usr/sbin/useradd 给用户指定权限,注:一定要写全路径。
31、 PATH 系统路径变量,执行ls,cp等非内置命令时,系统会查找PATH里对应的路径是否有,如果没有就报告找不到该命令。
当执行which cp来查看命令所在路径的时候,也是从PATCH变量去搜索
临时修改export PATCH="/tmp:$PACH",如果是永久修改,就把前面临时修改的命令放到/etc/profile下,使用source /etc/profile
使得修改立刻生效。

相关文档
最新文档