mirror of
https://github.com/Linux4Yourself/book.git
synced 2025-02-03 15:27:17 +08:00
commit
6639ae5ac8
@ -50,6 +50,8 @@
|
||||
- [Binutils проход 2](build-temp-system/binutils-p2)
|
||||
- [GCC проход 2](build-temp-system/gcc-p2)
|
||||
- [Смена владельца для каталога $LIN](build-temp-system/change-owner)
|
||||
- [Вход в окружение chroot](build-temp-system/enter-in-chroot)
|
||||
- [Создание базовых файлов и ссылок](build-temp-system/create-files)
|
||||
|
||||
- [**Вспомогательные материалы**](additional/additional)
|
||||
- [Установка программ из исходных кодов в Linux](additional/src-compiling)
|
||||
|
32
docs/build-temp-system/cleanup.md
Normal file
32
docs/build-temp-system/cleanup.md
Normal file
@ -0,0 +1,32 @@
|
||||
# Очистка и сохранение временной системы
|
||||
|
||||
Файлы ``libtool`` с расширением `.la` могут мешать линковке с динамическими библиотеками. Удалите их:
|
||||
|
||||
```bash
|
||||
find /usr/{lib{,32},libexec} -name \*.la -delete
|
||||
```
|
||||
|
||||
Удалите документацию временных инструментов:
|
||||
|
||||
```bash
|
||||
rm -rf /usr/share/{info,man,doc}/*
|
||||
```
|
||||
|
||||
## Сохранение
|
||||
|
||||
При желании вы можете сохранить временную систему:
|
||||
|
||||
```bash
|
||||
cd $LIN &&
|
||||
tar -cJpf $HOME/lin-temp-tools.tar.xz .
|
||||
```
|
||||
|
||||
### Восстановление
|
||||
|
||||
Выполняется из под хост-системы:
|
||||
|
||||
```bash
|
||||
cd $LIN &&
|
||||
rm -rf ./* &&
|
||||
tar -xpf $HOME/lin-temp-tools.tar.xz
|
||||
```
|
86
docs/build-temp-system/create-files.md
Normal file
86
docs/build-temp-system/create-files.md
Normal file
@ -0,0 +1,86 @@
|
||||
# Создание основных файлов и символических ссылок
|
||||
|
||||
Исторически, в файле ``/etc/mtab`` записывалась информация о смонтированных разделах. Создайте символическую ссылку для совместимости:
|
||||
|
||||
```bash
|
||||
ln -sv /proc/self/mounts /etc/mtab
|
||||
```
|
||||
|
||||
Некоторым пакетам может понадобиться файл ``/etc/hosts``:
|
||||
|
||||
```bash
|
||||
cat > /etc/hosts << EOF
|
||||
"127.0.0.1 localhost $(hostname)"
|
||||
::1 localhost
|
||||
EOF
|
||||
```
|
||||
|
||||
Создайте файл списка пользовательских учётных записей /etc/passwd:
|
||||
|
||||
```bash
|
||||
cat > /etc/passwd << "EOF"
|
||||
root:x:0:0:root:/root:/bin/bash
|
||||
bin:x:1:1:bin:/dev/null:/bin/false
|
||||
daemon:x:6:6:Daemon User:/dev/null:/bin/false
|
||||
messagebus:x:18:18:D-Bus Message Daemon User:/run/dbus:/bin/false
|
||||
uuidd:x:80:80:UUID Generation Daemon User:/dev/null:/bin/false
|
||||
nobody:x:99:99:Unprivileged User:/dev/null:/bin/false
|
||||
EOF
|
||||
```
|
||||
|
||||
Создайте файл имён групп и членов каждой группы:
|
||||
|
||||
```bash
|
||||
cat > /etc/group << "EOF"
|
||||
root:x:0:
|
||||
bin:x:1:daemon
|
||||
sys:x:2:
|
||||
kmem:x:3:
|
||||
tape:x:4:
|
||||
tty:x:5:
|
||||
daemon:x:6:
|
||||
floppy:x:7:
|
||||
disk:x:8:
|
||||
lp:x:9:
|
||||
dialout:x:10:
|
||||
audio:x:11:
|
||||
video:x:12:
|
||||
utmp:x:13:
|
||||
usb:x:14:
|
||||
cdrom:x:15:
|
||||
adm:x:16:
|
||||
messagebus:x:18:
|
||||
input:x:24:
|
||||
mail:x:34:
|
||||
kvm:x:61:
|
||||
uuidd:x:80:
|
||||
wheel:x:97:
|
||||
nogroup:x:99:
|
||||
users:x:999:
|
||||
EOF
|
||||
```
|
||||
|
||||
Для проведения тестов некоторых пакетов вы можете добавить пользователя ``tester``:
|
||||
|
||||
```bash
|
||||
echo "tester:x:101:101::/home/tester:/bin/bash" >> /etc/passwd
|
||||
echo "tester:x:101:" >> /etc/group
|
||||
install -o tester -d /home/tester
|
||||
```
|
||||
|
||||
Чтобы убрать надпись `I have no name!` в приглашении ``bash`` выполните:
|
||||
|
||||
```bash
|
||||
bash --login +h
|
||||
```
|
||||
|
||||
Некоторые программы могут записывать информацию о входах в систему в журнал, но для этого требуется создать специальные файлы:
|
||||
|
||||
```bash
|
||||
touch /var/log/{btmp,lastlog,faillog,wtmp}
|
||||
chgrp -v utmp /var/log/lastlog
|
||||
chmod -v 664 /var/log/lastlog
|
||||
chmod -v 600 /var/log/btmp
|
||||
```
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Вход в chroot
|
||||
# Вход в оркружение chroot
|
||||
|
||||
Для того чтобы изолироваться от хост-системы необходимо войти в среду ``chroot``
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user