Автоматический запуск службы Systemd

Я недавно установил FreeFileSync на свой ПК и смог добиться, чтобы RealTimeSync работал отлично. Все, что осталось сделать, это автоматически вызвать скрипт при запуске. Первоначально я использовал Cron с параметром @reboot, но это не сработало. Поэтому я решил использовать systemd. Я создал файл службы пользователя с именем sync.service, который я включил и прекрасно работает при вызове вручную с помощью команды systemctl --user start sync_1. Тем не менее, он сталкивается с ошибками при запуске. Кто-нибудь может, пожалуйста? Я не уверен, где я иду не так.

[Unit]
After=network.service

[Service]
Environment="DISPLAY=:0"
ExecStart=/home/user/Desktop/sync.sh

[Install]
WantedBy=default.target

Ниже приведена ошибка, с которой я сталкиваюсь, когда проверяю состояние файла systemd после запуска.

sync_1.service Loaded: загружено (/ etc / xdg / systemd / user / sync_1.service; включено; предустановка поставщика: включено) Активно: не удалось (Результат: код выхода) с Sun 2020-06-14 21:19:19 BST; 47 с. Назад Процесс: 1859 ExecStart = / home / user / Desktop / sync.sh (код = выход, статус = 255 / ИСКЛЮЧЕНИЕ) Основной PID: 1859 (код = выход, статус = 255 / ИСКЛЮЧЕНИЕ)

---- -----121--------844526---- Пользователь root не может записывать в файл в / tmp, принадлежащий кому-то другому, в 20.04, но может в 18.04 В Ubuntu 18.04 Я могу создать файл как один пользователь в / tmp и записать в него как пользователь root (несмотря на то, что для / tmp установлен липкий бит). В Ubuntu 20.04 я получаю ошибку «Отказано в доступе» от имени пользователя root. Ubuntu ...

В Ubuntu 18.04 я могу создать файл как один пользователь в / tmp и записать в него как пользователь root (несмотря на то, что бит закрепления установлен на / tmp ).

В Ubuntu 20.04 я получаю ошибку Отказано в доступе как пользователь root .

Ubuntu 18.04:

# As user "ubuntu":
touch /tmp/tmplock

# As user "root":
echo "foo" > /tmp/tmplock

cat /tmp/tmplock
# Outputs "foo"

ls -lah /tmp
drwxrwxrwt 32 root   root    20K Jun 16 18:36 .
-rw-rw-r--  1 ubuntu ubuntu    4 Jun 16 18:36 tmplock

Ubuntu 20.04 :

# As user "ubuntu":
touch /tmp/tmplock

# As user "root":
echo "foo" > /tmp/tmplock
# Outputs: bash: /tmp/tmplock: Permission denied

ls -lah /tmp
drwxrwxrwt 12 root   root   4.0K Jun 16 18:15 .
-rw-rw-r--  1 ubuntu ubuntu    0 Jun 16 18:14 tmplock

Я не могу найти какую-либо информацию о том, связано ли это с залипшим битом, или с изменением ядра Linux, или с чем-либо еще.

Кто-нибудь знает, что может объяснить изменение в поведении?

- -------121--------844617---- У меня есть «домашний» раздел, теперь как мне заставить мою систему поместить туда мои файлы? При настройке В своей системе я создал раздел и смонтировал его как «/ home», поэтому я предположил, что мои документы будут там, но они этого не делают. Когда я открываю и выбираю свое имя пользователя Levde, я получаю ...

При настройке системы я создал раздел и смонтировал его как "/ home", поэтому я предполагал, что мои документы будут там, но они не. Когда я открываю и выбираю свое имя пользователя Levde, я получаю стандартную пользовательскую файловую систему.

enter image description here

Когда я выбираю «Документы», потому что я использовал его, я нахожу каталог, который я назвал «машина и программное обеспечение». Затем я перехожу в «home», который указан как устройство, и нахожу там файл «lost & found», но не мой каталог «machine & software». Итак, я знаю, что мои попытки определить это устройство в качестве местоположения для моего каталога / Home потерпели неудачу. Вот изображение Gparted, показывающее информацию о точке монтирования и сколько места я выделил для каждого раздела.

enter image description here

Я не знаю, как назначить статус «/ home» моему разделу «/ home», и на данный момент, как переместить стандартный шаблон документа из корневого каталога в новую точку монтирования. На данный момент папка "Левде" находится в корневом каталоге в разделе "home", где и должно быть (root home levde). Вот изображение, которое показывает, где смонтирован мой раздел «/ home»:

enter image description here

Вверху вы увидите путь Ubuntu Studio, отображающий «[root icon] media levde Home». Очевидно, что когда я настроил разделение и дал указание установщику смонтировать этот раздел как «/ home», этого было недостаточно для BE / home. Я не думаю, что установил его как «root media levde home», но именно там он и оказался.

Учитывая эти мысли, я подумал: «Возможно, мне нужно изменить точку монтирования!» Я размонтировал его в gparted, но gparted не позволил мне смонтировать его снова, где угодно, чтобы стратегия не работала, на этот раз.

В комментариях меня попросили сообщить «cat / etc / fstab». Я сообщаю об этом в виде файла изображения:

enter image description here

1
задан 18 June 2020 в 23:08

1 ответ

Хорошо, поэтому, если я правильно понимаю вашу проблему, у вас есть отдельный раздел в / dev / sda4 , который вы хотите использовать в качестве Home и который теперь смонтирован на / media . Вам нужно будет указать системе смонтировать ее в нужном месте, но перед этим скопируйте все, что у вас есть сейчас в вашем текущем домашнем каталоге, в новый домашний раздел, чтобы впоследствии можно было беспрепятственно переключаться, не теряя конфигурации, которые вы уже сделали.

Шаг 1 - Скопируйте домашний каталог

Кажется, что ваш новый домашний раздел в / media / levde / Home сейчас пуст. Скопируйте все файлы, включая скрытые файлы и подкаталоги, из / home / levde в / media / levde / Home .

Шаг 2 - Добавить домашний раздел в fstab

Далее необходимо указать системе, какой раздел монтировать в / home . Для этого откройте / etc / fstab в редакторе по вашему выбору (gedit, nedit, kate ...) в качестве суперпользователя, например, через sudo gedit / etc / fstab .

В другом терминале введите lsblk -f / dev / sda4 , чтобы получить UUID вашего нового домашнего раздела.

В редактируемом fstab добавьте строку в конце, например:

UUID = $ UUID_you_just_found_out / home / levde ext4 по умолчанию 0 2

и замените $ UUID_you_just_found_out на UUID, который lsblk дал вам, чтобы сохранить файл [1264708] и сохранить [1264708]. редактор.

Шаг 3 - Перезагрузка

Теперь все, что вам нужно сделать, это перезагрузить компьютер, и новый раздел должен быть смонтирован в / home / levde. Проверять, выполните lsblk в терминале и проверьте, где смонтировано / dev / sda4 .

Примечания

Примечание 1: Стоит отметить, что содержимое в оригинальном [1164713 Каталог / home / levde не исчез, он просто «покрыт» подключенным новым разделом. Если раздел будет снова размонтирован, оригинальный домашний раздел появится снова.

Примечание 2: Эта процедура только копирует домашний каталог текущего пользователя в новый раздел. Любой дополнительный новый пользователь снова попадет в корневой раздел вашей системы.

оригинальный домашний раздел появится снова.

Примечание 2: Эта процедура только копирует домашний каталог текущего пользователя в новый раздел. Любой дополнительный новый пользователь снова попадет в корневой раздел вашей системы.

оригинальный домашний раздел появится снова.

Примечание 2: Эта процедура только копирует домашний каталог текущего пользователя в новый раздел. Любой дополнительный новый пользователь снова попадет в корневой раздел вашей системы.

2
ответ дан 19 June 2020 в 21:24

Другие вопросы по тегам:

Похожие вопросы: