Linux常用操作

2018-11-15  本文已影响0人  MagicalGuy

文件相关命令

man less:查看less的帮助手册 --help
sudo cat /etc/passwd:sudo用于获得ROOT权限而又不用知道ROOT密码
/etc/sudoers 配置sudo权限

换密码: sudo passwd root
logout后重新登录

SSH连接
下载openssh服务软件
apt-get install openssh-server
如果提示不行
需要对本机的开发更新检测
apt-get update

ps -ef | grep ssh
ssh配置root连接
vim /etc/ssh/sshd_config
配置打开root登录项
PermitRootLogin yes
杀死正在运行的ssh进程服务
ps -ef | grep sshd
kill 进程号
重启ssh
/etc/init.d/ssh start

本地使用crt连接
ifconfig | more

卸载防火墙
ufw disable
删除防火墙工具软件
apt-get remove iptables
下载ntp组件
apt-get install ntpdate
同步时间
ntpdate -u 202.120.2.101
不行就apt-get update

apt-get install gcc libpcre3 libpcrecpp* libpcre3-dev libssl-dev

安装ftp组件
apt-get install vsftpd
默认ftp用户名
修改密码
passwd ftp
ftp服务默认上传目录为/srv/ftp
设置完全控制权限
chmod 777 /srv/ftp
ftp服务配置
vim /etc/vsftpd.conf
进行以下设置
可写
write_enable=YES
用户列表显示设置在主目录
chroot_local_user=YES
用户可以查看所有的信息列表
chroot_list_enable=YES
启用用户列表的配置信息项
chroot_list_file=/etc/vsftpd.chroot_list
创建
vim /etc/vsftpd.chroot_list
将ftp用户名配置在此文件中
打开下面文件注释掉某授权操作
vim /etc/pam.d/vsftpd

auth required pam_shells.so

杀死已有的ftp服务进程
ps -ef | grep ftp
kill 进程号
重新启动vsftp服务
service vsftpd start
查看是否已经启动
ps -ef | grep ftp

ifconfig

ftp客户端连接
ftp://ip:21

cd:切换目录
cd ~:切换到/home/zyr/
cd:什么都不带,也是切换到自己的home目录。
cd -:切换到之前的目录

history:运行命令的历史
pwd:当前目录

ls:简要显示文件
ls -a:显示隐藏文件
ls -l:
ll:列表显示文件 在~/.bashrc中:alias ll='ls -l'
ll -a:列表显示文件,包含隐藏文件

zyr@ubuntu:~$ ll 1.txt

-:普通文件
d:目录
l:链接
b:块设备文件
c:字符设备
s:套接字文件

user:group:other的属性
r:读-4,w:写-2,x:执行-1

1:表示占用的i结点数

zyr:user
zyr:group

6:文件大小

创建或修改日期

名字

echo hello > 1.txt
echo world >>1.txt

mkdir test:创建test目录
rm -f 1.txt:删除一个文件,不用询问
rm -fr test:删除一个文件夹
cp a b:拷贝文件
mv a b:重命名文件a为b

chown [-R] zyr:zyr 1.txt:把1.txt文件改为用户zyr,组:zyr

chmod 777 1.txt:把1.txt设置为rwx rwx rwx
chmod 666 1.txt:把1.txt设置为rw- rw- rw-

chmod u=rwx,og=rx 1.txt:将user设置为rwx,group,other设置为rx
chmod a+x 1.txt:将所有的加上执行
chmod u-x 1.txt:将user取消执行权限
chmod u+s 1.txt:将1.txt设置强制位 u-s取消 set-uid

chattr [+-=][ASaci [文件或者目录名]
+-= :分别为增加、减少、设定
A:增加该属性后,文件或目录的atime将不可被修改;
S:增加该属性后,会将数据同步写入磁盘中;
a:增加该属性后,只能追加不能删除,非root用户不能设定该属性;
c:自动压缩该文件,读取时会自动解压;
i:增加后,使文件不能被删除、重命名、设定连接、写入、新增数据;

chattr +i 1.txt:该文件不能被删除等
lsattr 1.txt

ln -s /src/path/to/file lnfile:将/src/path/to/file 建立一个符号链接lnfile
unlink lnfile

find ~/ -name ".txt" -print
find ~/ -name "
.txt" -print | xargs grep hello
find /usr/src/linux/include/ -name "*.h" | xargs grep "daemonize"

which passwd:找到passwd的路径

cat:全部输出
more:按照比例逐一显示文本,会按照百分比告诉显示了多少内容了,ctrl b/ctrl f可以滚屏
less:不能显示剩余百分比,可用通过 【page down】 【page up】 上翻下翻页查看已经显示出的内容,而more不具备。可以通过"/" "?"来查找内容
head:显示头部的内容前10行
tail:显示尾部10行
tail -f:可以跟踪不断的显示最新数据

管道:
man less | less

用户管理:

/etc/passwd文件结构:
用户名:密码(x替代了,单独放在了/etc/shadow里):uid(0为root,1-499保留,500开始为普通):gid(/etc/group里对应):comment(name,phone,address):homepath:shell(/sbin/nologin为禁止该用户登录)

/etc/shadow文件结构:
用户名:密码:上次修改密码日期距离1970-1-1:过多少时间才能修改密码,默认0:密码到期时间,99999位不过期:密码到期前警告,如7天前:失效期限:生命周期

groupadd [-g gid] groupname
useradd [-u uid] [-g gid] [-d home] [-s /bin/bash] username
passwd username
passwd

userdel username

du -sh:列出文件夹大小总和
du -h:列出各项大小

df -h:列出各个磁盘使用情况

解压缩:

压缩打包:
tar zvcf xx.tar.gz xx
tar cvf xxx.tar xxx/ xz –z xxx.tarxxx.tar.xz
zip -r test.zip ./*

解压:
.tar.gz: tar zvxf xxx.tar.gz
.tar.Z: tar zvxf xxx.tar.Z
.tgz: tar zvxf xxx.tar.tgz
.bz2: bunzip2 xxx.bz2
.tar.bz2: tar jvxf xxx.tar.bz2
.tar.xz: xz–d xxx.tar.xz tar xvf xxx.tar 或tar xvJf ***.tar.xz
.zip: unzip xxx.zip
.tar: tar xf xxx.tar

软件安装:
1)ubuntu:
sudo apt-get install xxx
sudo apt-get remove xxx
sudo apt-get update xxx

换源:
sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup (表示备份列表)
sudo vim /etc/apt/sources.list

deb http://us.archive.ubuntu.com/ubuntu/ lucid multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ lucid multiverse

http://us.archive.ubuntu.com/ubuntu/dists/lucid/multiverse/

每一行的开头是deb或者deb-src,分别表示直接通过.deb文件进行安装和通过源文件的方式进行安装。

deb或者deb-src字段之后,是一段URL,之后是五个用空格隔开的字符串,分别对应相应的目录结构。在浏览器中输入http://archive.ubuntu.com/ubuntu/,并进入dists目录,可以发现有5个目录和前述sources.list文件中的第三列字段相对应。任选其中一个目录进入,可以看到和sources.list后四列相对应的目录结构。

mirrors.aliyun.com
http://mirrors.aliyun.com/ubuntu/

sudo yum install package -->federo/redhat安装软件

2)package安装:
1)下载一个deb格式的软件kismet

curl https://www.kismetwireless.net/code/dists/quantal/kismet/binary-i386/kismet-2011.03.2.i386.deb > kismet-2011.03.2.i386.deb

2)安装kismet

dpkg -i kismet-2011.03.2.i386.deb

3)源代码安装:

./configure --prefix=安装路径
make
sudo make install

正则式:按行操作 grep, sed, awk

grep hello x.txt:从x.txt中找hello的行
find ~/ -name ".txt" -print | xargs grep hello
find /usr/src/linux/include/ -name "
.h" | xargs grep "daemonize"

sed -n '3,10'p test.txt :打印test.txt中的3到10行
sed -n '/root/'p /etc/passwd :打印包含root的行

AWK可以操作每行中的每列
awk -F':' 'NR>20' test.txt 打印test.txt中大于20的行,-F指定':'为每行中的字段的分隔符。不指定默认为空格或者TAB。0为整行,1为第一个字段,$2为第二个字段
练习题:

  1. 用awk 打印整个test.txt (以下操作都是用awk工具实现,针对test.txt);
  2. awk '{print $0}' test.txt
  3. 查找所有包含’bash’的行;
  4. awk '/bash/' test.txt
  5. 用’:’作为分隔符,查找第三段等于0的行;
  6. awk -F':' '$3=="0"' test.txt
  7. 用’:’作为分隔符,查找第一段为’root’的行,并把该段的’root’换成’toor’(可以连同sed一起使用);
  8. awk -F':' '$1=="root"' test.txt |sed 's/root/toor/'
  9. 用’:’作为分隔符,打印最后一段;
  10. awk -F':' '{print $NF}' test.txt
  11. 打印行数大于20的所有行;
  12. awk -F':' 'NR>20' test.txt
  13. 用’:’作为分隔符,打印所有第三段小于第四段的行;
  14. awk -F':' '3<4' test.txt
  15. 用’:’作为分隔符,打印第一段以及最后一段,并且中间用’@’连接 (例如,第一行应该是这样的形式 “root@/bin/bash”;
  16. awk -F':' '{print 1"@"NF}' test.txt
  17. 用’:’作为分隔符,把整个文档的第四段相加,求和;
  18. awk -F':' '{(sum+=4)}; END {print sum}' test.txt 10.杀掉nginx进程: 10.sudo kill -KILL `ps aux | grep nginx| awk '{print2}'`

sudo kill -9 ps aux | grep firefox| awk '{print $2}'

sudo kill -9 pid
进程网络:
cat /proc/meminfo |grep Mem:查看内存
cat /proc/cpuinfo

top
free
ps aux |less
a:所有用户进程
u:用户为主的格式显示
x:所有程序

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

VSZ:該进程使用的虚拟內存量(KB)
RSS:該進程占用的固定內存量(KB)(驻留中页的数量)
STAT:STAT显示了进程当前的状态"S":进程处在睡眠状态

sudo kill -9 pid

netstat -anp:a,所有选项,N表示数字显示,P表示进程

ifconfig

iptables
sudo iptables -A OUTPUT -p tcp --dport 80 -j DROP
格式:iptables [-t table] COMMAND chain CRETIRIA -j ACTION
sudo iptables -A OUTPUT -p tcp --dport 80 -j DROP 禁止访问80端口
sudo iptables -L -n -v --line-numbers
sudo iptables -D OUTPUT 1

vim ~/.profile
EDITOR=vim;export EDITOR
source ~/.profile

crontab –e/l/r
-e:编辑
        *  command
分 时 日 月 周 命令

30 21 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每晚的21:30重启apache。
45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每月1、10、22日的4 : 45重启apache。

-l:列出
-r:删除

scp
scp /home/daisy/full.tar.gz zyr@172.19.2.75:/home/zyr a-->b
scp zyr@172.19.2.75:/home/zyr/full.tar.gz /home/daisy/full.tar.gz
ssh/xshell 客户端
wget http://www.mallocfree.com/data/pretalk.rar

nohup wget url & 该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。
nohup wget http://www.mallocfree.com/data/pretalk.rar &
关机并重启用:sudo shutdown -r now
关机 断电:sudo shutdown -h now

panic计算机 root下:echo "c" > /proc/sysrq-trigger

立即重启计算机 root下:echo "b" > /proc/sysrq-trigger

立即关闭计算机 root下:echo "o" > /proc/sysrq-trigger

终端:ALT+CTRL+F1 VM:ALT+CTRL+空格 ALT+CTRL+F1
UI:ALT+CTRL+F7 VM:ALT+CTRL+空格 ALT+CTRL+F7

换源:

sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup
sudo vim /etc/apt/sources.list

deb http://mirrors.aliyun.com/ubuntu trusty main restricted
deb-src http://mirrors.aliyun.com/ubuntu trusty main restricted

Major bug fix updates produced after the final release of the

distribution.

deb http://mirrors.aliyun.com/ubuntu trusty-updates main restricted
deb-src http://mirrors.aliyun.com/ubuntu trusty-updates main restricted

N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu

team. Also, please note that software in universe WILL NOT receive any

review or updates from the Ubuntu security team.

deb http://mirrors.aliyun.com/ubuntu trusty universe
deb-src http://mirrors.aliyun.com/ubuntu trusty universe
deb http://mirrors.aliyun.com/ubuntu trusty-updates universe
deb-src http://mirrors.aliyun.com/ubuntu trusty-updates universe

N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu

team, and may not be under a free licence. Please satisfy yourself as to

your rights to use the software. Also, please note that software in

multiverse WILL NOT receive any review or updates from the Ubuntu

security team.

deb http://mirrors.aliyun.com/ubuntu trusty multiverse
deb-src http://mirrors.aliyun.com/ubuntu trusty multiverse
deb http://mirrors.aliyun.com/ubuntu trusty-updates multiverse
deb-src http://mirrors.aliyun.com/ubuntu trusty-updates multiverse

N.B. software from this repository may not have been tested as

extensively as that contained in the main release, although it includes

newer versions of some applications which may provide useful features.

Also, please note that software in backports WILL NOT receive any review

or updates from the Ubuntu security team.

deb http://mirrors.aliyun.com/ubuntu trusty-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu trusty-backports main restricted universe multiverse

deb http://security.ubuntu.com/ubuntu trusty-security main restricted
deb-src http://security.ubuntu.com/ubuntu trusty-security main restricted
deb http://security.ubuntu.com/ubuntu trusty-security universe
deb-src http://security.ubuntu.com/ubuntu trusty-security universe
deb http://security.ubuntu.com/ubuntu trusty-security multiverse
deb-src http://security.ubuntu.com/ubuntu trusty-security multiverse

sudo apt-get clean
sudo apt-get update

上一篇下一篇

猜你喜欢

热点阅读