在FileZilla连接服务器时 # 1. 服务连不上 2. 文件无法上传,权限受限
一、服务连不上
状态: 正在连接 192.168.179.128...
响应: fzSftp started, protocol_version=10
命令: open "ubuntu@192.168.179.128" 22
错误: FATAL ERROR: Network error: Connection refused
错误: 无法连接到服务器
状态: 已从服务器断开
- 服务上得安装 ssh server,通过Sftp连接的。
图上、2选1方式连接
sudo apt-get install openssh-server
- 啪啪啪的安装
ubuntu@ubuntu:~$ sudo apt-get install openssh-server
[sudo] password for ubuntu:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
ncurses-term openssh-sftp-server ssh-import-id
Suggested packages:
molly-guard monkeysphere ssh-askpass
The following NEW packages will be installed:
....省略
- 查看进程 ps -e | grep sshd
ubuntu@ubuntu:~$ ps -e | grep sshd
4829 ? 00:00:00 sshd
ubuntu@ubuntu:~$ sudo /etc/init.d/ssh status
● ssh.service - OpenBSD Secure Shell server
Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2021-05-06 01:17:15 PDT; 1min 34s ago
Docs: man:sshd(8)
man:sshd_config(5)
Main PID: 4829 (sshd)
Tasks: 1 (limit: 4618)
Memory: 1.3M
CGroup: /system.slice/ssh.service
└─4829 sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups
May 06 01:17:15 ubuntu systemd[1]: Starting OpenBSD Secure Shell server...
May 06 01:17:15 ubuntu sshd[4829]: Server listening on 0.0.0.0 port 22.
May 06 01:17:15 ubuntu sshd[4829]: Server listening on :: port 22.
May 06 01:17:15 ubuntu systemd[1]: Started OpenBSD Secure Shell server.
- 如没有启动,用sudo /etc/init.d/ssh start启动
sudo /etc/init.d/ssh start
- 重新用FileZilla 连接Ubuntu ,就可以了。
二、文件无法上传,权限受限
- 给服务器文件夹/data,上传文件失败,权限拒绝
错误: /data/nginx/html/index.html: open for write: permission denied
错误: 文件传输失败
- 在服务中,对文件夹进行授权,这里对data下面的所有文件授权 - 每个人都有读和写以及执行的权限,慎重啊(文件路径别搞错)
sudo chmod -R 777 /data
-R 对目前目录下的所有档案与子目录进行相同的权限变更(逐个变更)
- 重新上传文件,成功!
状态: 文件传输成功,传输了 4,413 字节 (用时1 秒)
Ubuntu、Linux…中的权限
查看文件信息,第一列表示文件权限
ubuntu@ubuntu:/$ ll
total 945512
drwxr-xr-x 21 root root 4096 May 4 23:35 ./
drwxr-xr-x 21 root root 4096 May 4 23:35 ../
lrwxrwxrwx 1 root root 7 May 3 23:36 bin -> usr/bin/
drwxr-xr-x 4 root root 4096 May 3 23:54 boot/
drwxrwxr-x 2 root root 4096 May 3 23:39 cdrom/
drwxrwxrwx 3 root root 4096 May 4 23:35 data/
drwxr-xr-x 19 root root 4140 May 6 01:36 dev/
drwxr-xr-x 133 root root 12288 May 6 01:17 etc/
drwxr-xr-x 3 root root 4096 May 3 23:43 home/
例如 home/文件,drwxr-xr-x(“-”不具备紧跟后面字母代表的权限)
d | rwx | r-x | r-x |
---|---|---|---|
文件类型。如果是-,是非目录的文件。如果是d,是一个目录。 | 文件所有者的属性(当前rwx表示,可读可写可执行) | 文件组用户的属性(当前r-x表示,可读不可执行,没有w也当前没有可写的权限) | 对于其它用户的属性(与前者一致) |
d,r-w-x是什么意思?
d | r | w | x |
---|---|---|---|
文件类型,d就是目录 | 可读read,权重4 | 可写write,权重2 | 可执行,权重1 |
权限代号: 可以用数字来表示
r:读取权限,数字代号为 “4”
w:写入权限,数字代号为 “2”
x:执行权限,数字代号为 “1”
-:不具备任何权限,数字代号为 “0”
例如以下 600,644,700,666,777
sudo chmod 600 ××× (只有所有者有读和写的权限)
sudo chmod 644 ××× (所有者有读和写的权限,组用户只有读的权限)
sudo chmod 700 ××× (只有所有者有读和写以及执行的权限)
sudo chmod 666 ××× (每个人都有读和写的权限)
sudo chmod 777 ××× (每个人都有读和写以及执行的权限)
所以777 就 rwxrwxrwx(所有者7,组用户7,其他用户7),r+w+x=4+2+1=7
所以644 就 rwrr(所有者6,组用户4,其他用户4),r+w=4+2=6,r=4,r=4
以上其中三位数的每一位都表示一个用户类型的权限设置。取值是0~7,即二进制的[000]~[111]。
这个三位的二进制数的每一位分别表示读、写、执行权限。
如000表示三项权限均无,而100表示只读。这样,我们就有了下面的对应:
0 [000] 无任何权限
4 [100] 只读权限
6 [110] 读写权限
7 [111] 读写执行权限