Слишком широкая маска сети, попробуйте
ifconfig hn0 inet 192.168.0.200/24 alias
Обычно псевдоним должен находиться в одной сети.
-121--195011- Существует утилита, которая будет искать информацию о пользователе независимо от того, хранится ли эта информация в локальных файлах, таких как /etc/passwd
или в LDAP или другом методе. Называется getent
.
Чтобы получить информацию о пользователе, запустите getent passwd $ USER
. Вы получите строку назад, которая выглядит как:
[jenny@sameen ~]$ getent passwd jenny
jenny:*:1001:1001:Jenny Dybedahl:/home/jenny:/usr/local/bin/bash
Теперь вы можете просто вырезать из нее домашний каталог, например, используя вырезать, как:
[jenny@sameen ~]$ getent passwd jenny | cut -d: -f6
/home/jenny
-121--10940- Обычное место /home/$ USER
, но это не обязательно должно быть универсальным.
Окончательное место для поиска такой информации находится внутри файла /etc/passwd
.
Этот файл доступен для чтения (его мог прочитать любой), поэтому любой пользователь имеет доступ к его содержимому.
Если в файле существует $ USER, то предыдущей записью является каталог HOME пользователя.
При этом выбирается запись и печатается каталог HOME:
awk -v FS=':' -v user="$USER" '($1==user) {print $6}' "/etc/passwd"
Для более сложных (удаленных) систем getent является обычной командой для получения информации о пользователях из системы NSS (Name Service Switch libraries).
Команда
echo $(getent passwd $USER )| cut -d : -f 6
Предоставляет эквивалентную информацию (при ее наличии).
Я использую этот формат для доступа к своему планшету Android:
FTP-сервер (на Android )не имеет корневого доступа, поэтому не может использовать порт 22.