Автоматически разрешать user1 в группу group1, чтобы редактировать файл с рук пользователь2 пользователь2 и группы

Я перепутал с группы в Linux. Учитывая, что пользователь user1 в обеих группах user1 и user2 (и наоборот):

пользователь1> идентификатор пользователя user1
Уид=1000(пользователь1) с gid=1000(пользователь1) groups=1000(user1),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),50(staff),113(lpadmin),130(sambashare),131(vboxusers),1001(user2)

пользователь1> идентификатор пользователя user2
номер uid=1001(пользователь2) с gid=1001(пользователь2) группы=1001(пользователь2),0(корень),1000(пользователь1)

Я не понимаю, почему пользователь user1 не может изменить -rwxrw-Р-- файл принадлежит пользователь2 пользователь2 и группы:

пользователь1>ЛС-л hey.xml
-rwxrw-Р-- 1 пользователь2 пользователь2 8385 24 мая 11:39 hey.xml
пользователь1>эха "не" >> hey.xml 
Баш: hey.xml: разрешение отклонено

но это работает, когда я изменить группу:

пользователь1> судо команда chgrp пользователь1 hey.xml 
пользователь1> Эхо "работает" >> hey.xml 

Когда-то этот вопрос, надеюсь, ответил, что я могу сделать, чтобы разрешить пользователю user1 читать-писать файлы в этой группе пользователь2? Спасибо

+76
Sample 14 сент. 2012 г., 20:26:42
32 ответов

Вы переименовали файл [email protected].Попробуйте переименовать его обратно:

МВ [email protected] sqlreport.php
+906
Alisdair Robertson 03 февр. '09 в 4:24

Я хочу увидеть длинный список в одном каталоге. Когда я тип ЛС-лха, я вижу это:

drwxrwxr-х 4 имя пользователя имя_группы 4.0 к 2010-08-05 09:55 файлов
drwxrwxr-х 7 имя пользователя имя_группы 4.0 к 2010-08-05 14:25 ствол
drwxrwxr-х 8 имя пользователя имя_группы 4.0 к 2010-08-05 16:phpincludes 02 
drwxrwxr-х 11 имя_группы имя_пользователя 4.0 к 2010-07-26 12:31 phpMyAdmin и 3.3.5-английский

Однако, когда я тип ЛС-лха phpMyAdmin и 3.3.5, я получаю список содержимого каталога. Как ввести команду так, что я вижу только

drwxrwxr-х 11 имя_группы имя_пользователя 4.0 к 2010-07-26 12:31 phpMyAdmin и 3.3.5-английский

? Я хочу сделать это с символические ссылки на них каталогов, так что я могу видеть, где они, а не их содержание.

+886
sboy375 24 мая 2017 г., 11:07:57
Другие ответы

Связанные вопросы


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

Если предположить, несколько требований в вашем случае, я бы использовать rsync на man-странице , чтобы найти подходящие варианты и написать shell-скрипт, похожее на следующее непроверенных скриптов.

Создайте новый файл с именем /opt/sync_docs.sh со следующим содержанием.

#/Бен/ОКР ш

# Использовать второй набор аргументов для отладки
ОПЦ="-avzn --игнорировать существующие"
#ОПЦ="-avzn --игнорировать существующие -ВВ"

по rsync $ОПЦ /носители информации/жесткий диск/документы/ протокол SMB://smbserver или/документов/ >в/var/журнал/по rsync/sync_docs.журнал 2>&1

Сообщение об ошибке=" "документы" синхронизация и общая ОС Windows не удалось, лучше проверить его"
если [ "$?" -нэ "0" ]; затем Эхо $сообщение об ошибке; интернет

Создание каталога журналов и смена права собственности на пользователей вы запустите скрипт как. Этот пользователь должен иметь разрешение на запись для ресурса Samba и разрешение на запись в каталог журналов. С этого момента я буду ссылаться на это пользователей как "properuser".

# команды mkdir /ВАР/журнал/по rsync
# Чаун properuser в /var/журнал/по rsync

Тестовый скрипт с нужным журнала комментарии. После того как скрипт проверен, отрегулирован и правильно работает, я бы хотел, чтобы запланировать скрипт для запуска через cron в 23:00 ежедневно.

Создать cron-задание в соответствующей папке, обычно в /etc/cron-а.д/ и введите свой адрес электронной почты.

Ссылку mailto="[email protected]"
0 23 * * * properuser /opt/sync_docs.sh

Если вы когда-либо получаете сообщение об ошибке, просто войдите в систему и проверьте файл журнала, который будет показывать только результаты последнего запуска.

# меньше в /var/журнал/по rsync/sync_docs.журнал
+867
user262072 15 июн. 2017 г., 08:24:40

У меня возникли некоторые странные проблемы, при использовании Dropbox на мой Debian установить:

  • Я запускаю Debian в репозиториях тестирование позволило
  • У меня установлен Dropbox с сайта
  • Мой Dropbox-расположение на общий раздел, отформатированный в NTFS

Я монтирую в Dropbox-место в моем файле fstab следующую строку:

Идентификатор UUID=662058B320588C45 /медиа/файлов NTFS-данных ntfs-3g и с uid=1000,gid=, что пользователи 0 0

Это дает мне чтение/запись на диске и как пока я использую файловый менеджер или консоль (или любую другую программу) в доступ к диску он работает.

После настройки мой Dropbox получить доступ к уже существующим расположением на этом диск он проиндексировал почти все файлы, а потом остановился с сообщением:

Скачивание 38 файлов ...

Я попытался проверить, что происходит путем присоединения трассированием на процесс, который приводит к следующим результатам (это отрывок только, как сообщение сохранить на появляясь):

вызов recvfrom(12, 0x33b3ae4, 4096, 0, 0, 0) = -1 или (временно ресурс недоступен)
вызов recvfrom(12, 0x33b3ae4, 4096, 0, 0, 0) = -1 или (временно ресурс недоступен)
опрос([{ФД=10, события=Поллина}, {ФД=12, событий=Поллина}, {ФД=13, события=Поллина}], 3, 0) = 0 (тайм-аут)
вызов recvfrom(12, 0x33b3ae4, 4096, 0, 0, 0) = -1 или (временно ресурс недоступен)
опрос([{ФД=10, события=Поллина}, {ФД=12, событий=Поллина}, {ФД=13, события=Поллина}], 3, 496) = 0 (тайм-аут)
фьютекс(0x9ee784, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 49446674, {1372094398, 476504000}, ffffffff) = -1 и EAGAIN (ресурс временно недоступен)
фьютекс(0x9ee804, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x9ee800, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
фьютекс(0x9ee840, FUTEX_WAKE_PRIVATE, 1) = 1
фьютекс(0x9ee7c0, FUTEX_WAKE_PRIVATE, 1) = 1
фьютекс(0x9ee784, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x9ee780, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
фьютекс(0x9ee7c0, FUTEX_WAKE_PRIVATE, 1) = 1
фьютекс(0x9ee784, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 49446680, {1372094398, 476765000}, ffffffff) = -1 и EAGAIN (ресурс временно недоступен)
фьютекс(0x9ee804, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x9ee800, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
фьютекс(0x9ee840, FUTEX_WAKE_PRIVATE, 1) = 1
фьютекс(0x9ee7c0, FUTEX_WAKE_PRIVATE, 1) = 1
фьютекс(0x9ee784, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x9ee780, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
фьютекс(0x9ee7c0, FUTEX_WAKE_PRIVATE, 1) = 1
фьютекс(0x9ee784, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 49446687, {1372094398, 477169000}, ffffffff) = -1 и EAGAIN (ресурс временно недоступен)
фьютекс(0x9ee804, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x9ee800, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
фьютекс(0x9ee7c0, FUTEX_WAKE_PRIVATE, 1) = 0
фьютекс(0x9ee784, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x9ee780, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
фьютекс(0x9ee7c0, FUTEX_WAKE_PRIVATE, 1) = 1
вызов recvfrom(12, 0x33b3ae4, 4096, 0, 0, 0) = -1 или (временно ресурс недоступен)
опрос([{ФД=10, события=Поллина}, {ФД=12, событий=Поллина}, {ФД=13, события=Поллина}], 3, 0) = 0 (тайм-аут)
опрос([{ФД=12, событий=Поллина|POLLOUT}], 1, 4294967295) = 1 ([{ФД=12, revents=POLLOUT}])
используя(12, [{"5\30\4\0\26\[email protected]\1[\[email protected]\1\17\0\17\0=\0\4\0[\[email protected]\1\0\0\0\0\17\0\17\0"..., 96}, {нуль, 0}, {"", 0}], 3) = 96
вызов recvfrom(12, 0x33b3ae4, 4096, 0, 0, 0) = -1 или (временно ресурс недоступен)
вызов recvfrom(12, 0x33b3ae4, 4096, 0, 0, 0) = -1 или (временно ресурс недоступен)
опрос([{ФД=10, события=Поллина}, {ФД=12, событий=Поллина}, {ФД=13, события=Поллина}], 3, 0) = 0 (тайм-аут)
опрос([{ФД=12, событий=Поллина|POLLOUT}], 1, 4294967295) = 1 ([{ФД=12, revents=POLLOUT}])
используя(12, [{"$\30\1\0&\10\2\0\341\0\0\0", 12}, {нуль, 0}, {"", 0}], 3) = 12
опрос([{ФД=12, событий=Поллина}], 1, 4294967295) = 1 ([{ФД=12, revents=Поллина}])
вызов recvfrom(12, "\1\1;У\0\0\0\0\341\0\0\0\177\0\300\0\246\5С\1\246\5С\1\24\0\0\0\0\0\0\0", 4096, 0, нуль, нуль) = 32
вызов recvfrom(12, 0x33b3ae4, 4096, 0, 0, 0) = -1 или (временно ресурс недоступен)
вызов recvfrom(12, 0x33b3ae4, 4096, 0, 0, 0) = -1 или (временно ресурс недоступен)
опрос([{ФД=12, событий=Поллина|POLLOUT}], 1, 4294967295) = 1 ([{ФД=12, revents=POLLOUT}])
используя(12, [{"&\30\2\0\177\0\300\0", 8}, {нуль, 0}, {"", 0}], 3) = 8
опрос([{ФД=12, событий=Поллина}], 1, 4294967295) = 1 ([{ФД=12, revents=Поллина}])
вызов recvfrom(12, "\1\1<У\0\0\0\0\341\0\0\0г\0`\2\246\5С\1\246\0*\1\24\0\0\0\0\0\0\0", 4096, 0, нуль, нуль) = 32
вызов recvfrom(12, 0x33b3ae4, 4096, 0, 0, 0) = -1 или (временно ресурс недоступен)
вызов recvfrom(12, 0x33b3ae4, 4096, 0, 0, 0) = -1 или (временно ресурс недоступен)
опрос([{ФД=12, событий=Поллина|POLLOUT}], 1, 4294967295) = 1 ([{ФД=12, revents=POLLOUT}])
используя(12, [{"&\30\2\\0г 0`\2", 8}, {нуль, 0}, {"", 0}], 3) = 8
опрос([{ФД=12, событий=Поллина}], 1, 4294967295) = 1 ([{ФД=12, revents=Поллина}])
вызов recvfrom(12, "\1\1=У\0\0\0\0\341\0\0\0н\0`\2\246\5С\1\244\0*\1\24\0\0\0\0\0\0\0", 4096, 0, нуль, нуль) = 32
вызов recvfrom(12, 0x33b3ae4, 4096, 0, 0, 0) = -1 или (временно ресурс недоступен)
вызов recvfrom(12, 0x33b3ae4, 4096, 0, 0, 0) = -1 или (временно ресурс недоступен)
опрос([{ФД=12, событий=Поллина|POLLOUT}], 1, 4294967295) = 1 ([{ФД=12, revents=POLLOUT}])
используя(12, [{"&\30\2\\0н 0`\2", 8}, {нуль, 0}, {"", 0}], 3) = 8
опрос([{ФД=12, событий=Поллина}], 1, 4294967295) = 1 ([{ФД=12, revents=Поллина}])
вызов recvfrom(12, "\1\1>У\0\0\0\0\341\0\0\0\0\0\0\0\246\5С\1\244\0\25\1\24\0\0\0\0\0\0\0", 4096, 0, нуль, нуль) = 32
вызов recvfrom(12, 0x33b3ae4, 4096, 0, 0, 0) = -1 или (временно ресурс недоступен)
вызов recvfrom(12, 0x33b3ae4, 4096, 0, 0, 0) = -1 или (временно ресурс недоступен)
опрос([{ФД=12, событий=Поллина|POLLOUT}], 1, 4294967295) = 1 ([{ФД=12, revents=POLLOUT}])
используя(12, [{"%\30\1\0", 4}, {нуль, 0}, {"", 0}], 3) = 4
вызов recvfrom(12, 0x33b3ae4, 4096, 0, 0, 0) = -1 или (временно ресурс недоступен)
вызов recvfrom(12, 0x33b3ae4, 4096, 0, 0, 0) = -1 или (временно ресурс недоступен)
опрос([{ФД=10, события=Поллина}, {ФД=12, событий=Поллина}, {ФД=13, события=Поллина}], 3, 0) = 0 (тайм-аут)
вызов recvfrom(12, 0x33b3ae4, 4096, 0, 0, 0) = -1 или (временно ресурс недоступен)
опрос([{ФД=10, события=Поллина}, {ФД=12, событий=Поллина}, {ФД=13, события=Поллина}], 3, 496 С-С С-С^С <недоделанный ...>
Процесс 5687 отдельно стоящее

Я уже побежал ntfsck:

судо ntfsck на /dev/sdb1
Неподдерживаемые: replay_log()
Неподдерживаемые: check_volume()
Проверка 219648 MFT записи.
Неподдерживаемые случаях найдены.

Перезагрузка в Windows и запустив chkdsk не решить ошибку ни.

Кто-нибудь имеет представление, что это такое / как я могу это исправить?

+852
sankdev0 5 июл. 2012 г., 14:42:10

Например, на сервере syslog коллектор, где удаленный системный журнал в файл/var/syslog в/<хост>/*.журнала, может у меня что-то вроде следующего в моем logrotate, предназначенную конфиг:

в /var/syslog в/*/*.войти {
ежедневно
 держать 7
компресс
delaycompress
sharedscripts
postrotate
 /ОГРН/убить -хап `кот /ВАР/работа/и syslogd.пид 2> /Дев/нуль` 2> /dev/нуль || правда
endscript
}
+833
Susan Ruggiero Andruskiewicz 17 нояб. 2013 г., 00:55:36

У меня есть входной файл в

DPortal=RemoteFile номера eccn=4004_130122 0256 А02 141111 0940 29343414 11 110005
DPortal=RemoteFile номера eccn=4004_130122 0256 А02 141111 2336 29843714 11 110006
DPortal=RemoteFile номера eccn=4004_130122 0256 А02 141111 0940 29343214 11 110007
DPortal=RemoteFile номера eccn=4004_130122 0256 А02 141111 2336 29843914 11 110009
DPortal=RemoteFile номера eccn=4004_120306 1232 А03 141111 2336 7945414 11 110010
DPortal=RemoteFile номера eccn=4004_130122 0256 А02 141111 0940 29343314 11 110013
DPortal=RemoteFile номера eccn=4004_120306 1232 А03 141111 2336 7945614 11 110015
DPortal=RemoteFile номера eccn=4004_130122 0256 А02 141111 0941 29343514 11 110019
DPortal=RemoteFile номера eccn=4004_120306 1232 А03 141111 0941 7446214 11 110021
DPortal=RemoteFile номера eccn=4004_120306 1232 А03 141111 2336 7945814 11 110022
DPortal=RemoteFile номера eccn=4004_120306 1232 А03 141111 0941 7446414 11 110024

и мое требование-иметь выход следующим образом

DPortal=RemoteFile номера eccn=4004_130122 0256 А02 141111 0940 29343414 11 110005 0
DPortal=RemoteFile номера eccn=4004_130122 0256 А02 141111 2336 29843714 11 110006 0
DPortal=RemoteFile номера eccn=4004_130122 0256 А02 141111 0940 29343214 11 110007 0
DPortal=RemoteFile номера eccn=4004_130122 0256 А02 141111 2336 29843914 11 110009 1
DPortal=RemoteFile номера eccn=4004_120306 1232 А03 141111 2336 7945414 11 110010 0
DPortal=RemoteFile номера eccn=4004_130122 0256 А02 141111 0940 29343314 11 110013 2
DPortal=RemoteFile номера eccn=4004_120306 1232 А03 141111 2336 7945614 11 110015 1
DPortal=RemoteFile номера eccn=4004_130122 0256 А02 141111 0941 29343514 11 110019 3
DPortal=RemoteFile номера eccn=4004_120306 1232 А03 141111 0941 7446214 11 110021 1
DPortal=RemoteFile номера eccn=4004_120306 1232 А03 141111 2336 7945814 11 110022 0 
DPortal=RemoteFile номера eccn=4004_120306 1232 А03 141111 0941 7446414 11 110024 1

я.е в последнем столбце должна вывести значение следующей последней колонке по строке -1 я.е (N+1) -п -1 =следующий столбец.

+788
brandon giovanni 18 нояб. 2013 г., 21:08:37

Просто наберите: кнопки подсветки

Во-первых, установить xbacklight

$ судо АПТ установить xbacklight

Затем проверьте, есть ли у вас контроль над подсветкой.

$ xbacklight -1
$ xbacklight +5

Должны эти команды в итоге не выходы имеют подсветки собственность ошибка, затем выполните следующие шаги исправления , прежде чем продолжить.

Как только xbacklight -1 и xbacklight +1 работа из командной строки, выполните назначение этих команд соответственно XF86MonBrightnessDown и XF86MonBrightnessUp ключи. Это делается нажатием этих клавиш для просил Настройки → Приложения → горячие клавиши приложения.

Наконец, перезагрузка , чтобы изменения вступили в силу.

Keyboard settings

+766
Atampy26 11 февр. 2012 г., 11:09:56

Ответ на этот вопрос на переполнение стека ([https://stackoverflow.com/questions/14655717/grepping-from-a-text-file-list][1]).

команды xargs grep в "свой шаблон" < my-file-list.txt
+758
Venomen 14 мая 2015 г., 22:43:15

Я пытаюсь сбросить несколько переменных и экспорта другими, используя команду подстановки. Это работает:

$(Эхо "
 экспорт TEST_A=1
 экспорт TEST_B=2
")

И это тоже:

$(Эхо "
 сбросить TEST_A
 сбросить TEST_B
")

Однако, это не с Баша 4.3.30(1)-релиз на OSX и Debian Джесси:

$(Эхо "
 сбросить TEST_A
 экспорт TEST_B=1
")
# Баш: удаления: `TEST_B=1': не является допустимым идентификатором

Это ожидаемое поведение, и как можно сбросить и экспорта нескольких переменных, используя команду подстановки?

Чтобы обеспечить некоторый контекст: здесь есть обзоры проблемой в boot2docker.

+746
Aditya Chetan 31 янв. 2014 г., 05:08:47

Ваше регулярное выражение шаблон не соответствует ничего, потому что он пытается соответствовать двум /S, которая является каталог сепаратор для *Nix, и имя файла не может содержать это. Я предполагаю, что /.../г исходит от вашего JavaScript (или другие) регулярных выражений практика, нет?

Сделать:

ибо я в *.формат JPG; сделать [[ $я =~ ([0-9]+)\.формат JPG$ ]] && Эхо "${BASH_REMATCH[1]}"; сделано

в bash регулярных выражений не поддерживает сайта для символьного класса [0-9]. Так что лучше используйте [0-9], если вы хотите зависеть от вашей локали, используйте класс персонажа [:цифра:]:

ибо я в *.формат JPG; сделать [[ $я =~ ([[:цифра:]]+)\.формат JPG$ ]] && Эхо "${BASH_REMATCH[1]}"; сделано

Пример:

$ для меня в *.формат JPG; сделать [[ $я =~ ([0-9]+)\.формат JPG$ ]] && Эхо "${BASH_REMATCH[1]}"; сделано
123
12
1
+729
Raphael Mariano 29 апр. 2011 г., 10:19:35

Я отправлял большие комментарии, и подумала, что может быть лучше оставьте вещи в качестве ответа, потому что коробка больше, и я могу вафлю все, что я хочу. :) Я надеюсь, вы извините мои безумные бредни.

Кроме того, я предупреждаю тебя: я полный ублюдок, и я буду отсечения свои крылья немного.

Первое, что вы должны решиться на это: насколько хороши ваши навыки программирования? Вы можете написать свою ОС без хороших навыков программирования и хорошо разбираться в оборудовании.

Второе, что вам нужно решить, это:

  1. Вы делаете дистрибутив Linux? (например, Дебиан, Убунту, Ред Хат)
  2. Вы делаете на основе Linux операционная система, с другой во время выполнения? (например, Андроид, маемо)
  3. Вы пишете операционную систему с нуля? (например, ВМ, СР/М, РТ-11, амебы, План/9)

Прежде чем вы даже ответить на эти вопросы, вы должны дважды проверить, чтобы убедиться, что у вас есть ваши условия, так что вы знаете, что вы делаете.

1. Дистрибутив Linux (например, Debian)

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

Вот статьи, которые обсуждаются некоторые аспекты построения дистрибутивов Linux.

Почему это сложнее, чем вы могли подумать: больше функций, которые вы хотите добавить в ваш дистрибутив, тем сложнее это будет сделать, чтобы получить ваш дистрибутив, чтобы правильно построить. Вам придется выбрать, следует ли заново изобретать колесо (сделать свой собственный менеджер пакетов), или использовать существующие колеса (об / мин? АПТ? Порты?). В любом случае, вы будете делать месяцев надоедливой работы примирить взаимно несовместимых пакетов, составление, проверка вещей, работы с использованием разных компьютерах с разными процессорами (не только Intel или AMD), и так далее.

В зависимости от объема, вы можете в конечном итоге приходится переделывать работу тысяч людей по своему усмотрению. Вы бы многому научиться от него? Абсолютно! Но вы бы также узнать много нового, запустив существующий дистрибутив Linux, а иногда и компиляции некоторые пакеты по своему усмотрению, чтобы увидеть, как вещи работают. Почему надо строить libc и сотнях других библиотек, если все, что вы хотите увидеть, как построен сервер X?

Думайте о нем этот путь: если вы хотите узнать, как собрать персональный компьютер, вы бы начать с ведром транзисторов и паяльником, или вам компоненты ПК и какие-то документы?

2. Основанная на Linux ОС (например, Android)

Существует достаточно много операционных систем семейства Linux с выполнения достаточно, чтобы радикально отличается от стандарта POSIX. Приходят маемо, Миго, Андроид и другие (чаще всего встроенный) операционные системы на ум.

Преимущество этого заключается в том, что вам не надо писать свои собственные ядра. Недостатком этого является то, что вы не только должны создать свой собственный дистрибутив, но вы также будете иметь, чтобы сделать большую часть пакетов. Вы думали компиляции на GCC и библиотеки libc была боль? Попробуйте написать свой собственный стандарт ANSI-C-совместимый компилятор C и полный стек программного обеспечения с нуля. Мужчина лет пишу немного раздражает функций (возможно в сборе), которые обеспечивают крошечные, крошечные количества удовлетворению. Вы также должны узнать о внутреннее устройство ядра Linux, и как она говорит в пространство пользователя, потому что интерфейс-это то, что вы будете строить на. Вы должны знать большинство номеров системных вызовов наизусть к концу этого. :)

Вы узнаете много? Абсолютно! Больше, чем вы когда-либо считали возможным. Это будет неприятно и раздражает? Ах, да. Существует причина, почему планшет не был построен одинокий парень с ноутбуком в свободное время. Даже ССАГПЗ не так устроена.

3. Операционную систему с нуля

Это где вы начинаете с ассемблер и компилятор C и написать свои собственные ядра — если ваша ОС имеет даже ядра. Это не везде. Скачать все схемы вы можете найти для вашего оборудования, и от вас идут. Если у вас есть базовые ядро, вы можете увидеть, о времени выполнения. Вы могли бы написать свой собственный рантайм, или вы могли бы убедитесь, что ваши ядра частично или полностью совместимых с POSIX, и тогда вы будете иметь в вашем распоряжении полного выполнения ГНУ. Вам лишь нужно сделать первый слой библиотек и сделать ССЗ , работающих на новой ОС.

Это награждение? Удивительно так. Это будет сложно? Если имена Дональд Кнут, Эндрю Таненбаумом ничего не значат для вас, вы, вероятно, следует пересмотреть. Будет много изучает теоретические компьютерные науки. Есть невероятное количество теории о том, что входит в создание действительно операционной системы с нуля. К сожалению, есть также удивительное количество утомительность с современными системами.

Оно и раньше было, вы просто сожгли диск с инструкции jmp в нужном месте, с гнездами, с питанием, и Вы были сделаны. Современные системы нужны серьезные объемы работы только, чтобы получить ядра процессора и работает, Настройки Память, устройства ввода перечисленных, и выходное устройство начал. Есть целые книги по каждой из этих задач (у меня есть книга в оригинале на VGA-это более 1000 страниц с 8-разрядных машин, я бы предположил, Программирование 1987 ВГА были бы простыми, и я был всерьез раздражен, но я узнал много вещей в процессе!)

Итак, если вы?

Вы абсолютно должны попробовать. Пока нет заблуждения о ‘успех’, если ваши цели с самого начала. Ведение ОС/дистрибутива-это открытое задание, которое обычно делается для больших групп людей. Но даже попытка этого будет отточить свои навыки и научит вас новые.

Кстати, я говорю (часто болезненного) опыта по отношению к большинству из этих вещей. Я (со-)автор впечаталось на уровне среды выполнения для нескольких процессоров (учеба/работа/развлечения), и я пишу игрушечную ОС для игрушек процессор на данный момент (это все для начала).

+595
xZaphkiel ML 16 июл. 2013 г., 13:02:05

Я бы хотел, чтобы перенаправить весь трафик через VPN, но это не работает на всех.

сервер: РТ-N16, на [TomatoUSB В1.28.0000 MIPSR2-112 K26 USB на АИО]

клиент: в Ubuntu 14.04.1

настройки сервера:

# Автоматически создается конфигурация
демон
сервер 10.8.0.0 255.255.255.0
прото TCP-сервер
порт 9999
Дэв tun21
шифр AES-256-CBC с
комп-лзо нет
постоянных 15 60
глагол 3
нажимаем "маршрут 192.168.1.0 255.255.255.0"
нажимаем "DHCP опции ДНС 192.168.1.1"
нажимаем "редирект-шлюз def1"
ца-ца.ЭЛТ
Dн Dн.УГР
сертификата сервера.ЭЛТ
ключ сервера.ключ
статус-версия 2
статус статус 
# Пользовательские настройки (такие секции, как представляется, главный исправление):
клиент-клиент
нажимаем "комп-лзо"
нажимаем "редирект-шлюз"

сервер: iptables в -л-т физ. -Н (просто POSTROUTING цепь выходной)

Цепочка POSTROUTING (полис принимают)
целевой прот опт исходным пунктом 
Маскарадные все ... 0.0.0.0/0 0.0.0.0/0 
СНАТ все ... 192.168.1.0/24 192.168.1.0/24 к:192.168.1.1 

лог сервера:

4 фев 21:19:38 р демон.уведомление для OpenVPN[1072]: TCP-подключение установлено с [равен af_inet]192.168.1.4:58170
4 фев 21:19:39 р демон.уведомление для OpenVPN[1072]: 192.168.1.4:58170 ТЛС: первоначальный пакет от [равен af_inet]192.168.1.4:58170, Сид=00fe6a02 33820233
4 фев 21:19:39 р демон.уведомление для OpenVPN[1072]: 192.168.1.4:58170 проверяет OK: XXXXXXXXXXXXXXXX
4 фев 21:19:39 р демон.уведомление для OpenVPN[1072]: 192.168.1.4:58170 проверяет OK: XXXXXXXXXXXXXXXX
4 фев 21:19:40 р демон.уведомление для OpenVPN[1072]: 192.168.1.4:58170 канал данных шифрование: шифрование AES-256-CBC с шифром '' инициализируется с 256-битным ключом
4 фев 21:19:40 р демон.уведомление для OpenVPN[1072]: 192.168.1.4:58170 канал данных шифрование: с помощью SHA1-160-битное значение хэш-сообщение об HMAC для проверки подлинности
4 фев 21:19:40 р демон.уведомление для OpenVPN[1072]: 192.168.1.4:58170 канала данных расшифровки: шифрование AES-256-CBC с шифром '' инициализируется с 256-битным ключом
4 фев 21:19:40 р демон.уведомление для OpenVPN[1072]: 192.168.1.4:58170 канал передачи данных расшифровки: с помощью SHA1-160-битное значение хэш-сообщение об HMAC для проверки подлинности
4 фев 21:19:40 р демон.уведомление для OpenVPN[1072]: 192.168.1.4:58170 канал управления: протоколе TLSv1 шифрования в протоколе TLSv1/SSLv3 там она-ОГА-и AES256-SHA, в 2048 бит RSA
4 фев 21:19:40 р демон.уведомление для OpenVPN[1072]: 192.168.1.4:58170 [клиент] Одноранговое соединение инициируется с [равен af_inet]192.168.1.4:58170
4 фев 21:19:40 р демон.уведомление для OpenVPN[1072]: клиента/192.168.1.4:58170 MULTI_sva: бассейн возвращен протокол IPv4=10.8.0.6, протокол IPv6=(не включена)
4 фев 21:19:40 р демон.уведомление для OpenVPN[1072]: клиента/192.168.1.4:58170 мульти: ЖЖ: 10.8.0.6 -> клиент/192.168.1.4:58170
4 фев 21:19:40 р демон.уведомление для OpenVPN[1072]: клиента/192.168.1.4:58170 мульти: основной виртуальный IP для клиента/192.168.1.4:58170: 10.8.0.6
4 фев 21:19:43 р демон.уведомление для OpenVPN[1072] клиент/192.168.1.4:58170 толкать: получил сообщение системы: 'PUSH_REQUEST'
4 фев 21:19:43 р демон.уведомление для OpenVPN[1072]: клиента/192.168.1.4:58170 send_push_reply(): safe_cap=940
4 фев 21:19:43 р демон.уведомление для OpenVPN[1072] клиент/192.168.1.4:58170 отправили управления [клиент]: 'PUSH_REPLY,маршрут 192.168.1.0 255.255.255.0,DHCP опции ДНС 192.168.1.1,редирект-шлюз def1,маршрут 10.8.0.1,топологии net30,пинг 15,пинг-перезагрузите 60,команду ifconfig 10.8.0.5 10.8.0.6' (статус=1)

клиентский конфиг:

клиент
дистанционное 192.168.1.1 9999
ца-ца.ЭЛТ
клиентского сертификата.ЭЛТ
ключ клиента.ключ
шифр AES-256-CBC с
Дэв Тун
прото ПТС
nobind
двиг-nocache
сценарий-безопасность 2
сохраняться-ключ
сохраняться-Тун
пользователей никто не
группа nogroup

клиент: команды netstat -НР (с VPN вверх):

Таблица IP-маршрутизации ядра 
Пунктом Genmask шлюз флаги МСС окна irtt iface защитный 
0.0.0.0 128.0.0.0 10.8.0.5 в UG 0 0 0 tun0
0.0.0.0 192.168.1.1 0.0.0.0 UG с 0 0 0 как wlan0
10.8.0.1 10.8.0.5 тьфу 255.255.255.255 0 0 0 tun0
10.8.0.5 0.0.0.0 255.255.255.255 Э 0 0 0 tun0
10.8.0.5 128.0.0.0 128.0.0.0 в UG 0 0 0 tun0
192.168.1.0 255.255.255.0 10.8.0.5 в UG 0 0 0 tun0
192.168.1.0 0.0.0.0 255.255.255.0 u 0 не 0 0 как wlan0
192.168.1.1 192.168.1.1 255.255.255.255 тьфу 0 0 0 как wlan0

лог клиента:

СР 4 февраля 21:32:24 2015 для OpenVPN 2.3.2 архитектуру x86_64-ПК-Линукс-гну [протокол SSL (OpenSSL с)] [ЛЗО] [запрос] [PKCS11] [eurephia] [МГН] [протокол IPv6] построен на 1 декабря 2014
СР 4 Фев 21:32:24 2015 предупреждение: нет метод проверки сертификата сервера была включена. См http://openvpn.net/howto.html#mitm для получения дополнительной информации.
СР 4 Фев 21:32:24 2015 Примечание: понизить УИД/гид будет отложено из-за --клиент, --тянет, или --до задержки
СР 4 февраля 21:32:24 2015 пытается установить TCP-соединение с [равен af_inet]192.168.1.1:9999 [неблоковый]
СР 4 Фев 21:32:25 2015 TCP-соединение установлено с [равен af_inet]192.168.1.1:9999
СР 4 Фев 21:32:25 2015 TCPv4_CLIENT локальных ссылок: [фдоон]
СР 4 февраля 21:32:25 2015 TCPv4_CLIENT дистанционного ссылке: [равен af_inet]192.168.1.1:9999
СР 4 Фев 21:32:26 2015 [заис.dnsd.мне] Одноранговое соединение инициируется с [равен af_inet]192.168.1.1:9999
СР 4 Фев 21:32:29 2015 Тун/устройство tun0 кран открыт
СР 4 Фев 21:32:29 2015 do_ifconfig, ТТ->протокол IPv6=0, ТТ->did_ifconfig_ipv6_setup=0
СР 4 Фев 21:32:29 2015 файл /sbin/IP-связи комплект Дев tun0 до МТУ 1500
СР 4 Фев 21:32:29 2015 файл /sbin/IP АДР добавить в dev tun0 местных сверстников 10.8.0.5 10.8.0.6
СР 4 Фев 21:32:установить 29 2015 гид для nogroup
СР 4 Фев 21:32:29 2015 УИД значение никто
СР 4 Фев 21:32:29 2015 Последовательность Инициализации Завершен
СР 4 Фев 21:32:43 2015 напишите Тун/ТАП : недопустимый аргумент (код=22)
СР 4 Фев 21:32:58 2015 напишите Тун/ТАП : недопустимый аргумент (код=22)
СР 4 Фев 21:33:13 2015 напишите Тун/ТАП : недопустимый аргумент (код=22)
СР 4 Фев 21:33:28 2015 напишите Тун/ТАП : недопустимый аргумент (код=22)

Обновление: спасибо за помощь. VPN работает сейчас (не уверен, но мне нужно подождать около 5 минут после подключения, чтобы на самом деле получить его в работоспособном состоянии, может быть это границы моего роутера, как не хватает процессора/мем)

+590
Tyler Garcia 8 сент. 2011 г., 00:59:03

Удивительный поддерживает перетаскивание между окнами. Есть одна загвоздка: вы не можете изменить tags1 при перетаскивании, но вы можете показать двум тегам одновременно (со всеми своими окнами) и перетащите.

1something похож на рабочее место, но более гибкий

+567
Bradley Bartley 15 дек. 2011 г., 20:39:49

Он является общим, чтобы периодически вращать бревна, вращая их в полночь обычно. Многие приложения делают это автоматически.

Для тех, что не существуют такие средства, как у logrotate , который будет делать ротацию. Многие программы настроены, чтобы открыть свои журналы, когда послан сигнал HUP, и это один из методов, используемых у logrotate.

Что нужно проверить:

  • Делать все изменения Пидов. Если нет, то программ может быть вращая их собственный журнал, или должным образом реагировать на имеющие свои журналы поворачивается.
  • Для программ, которые меняют Пиды, были они снова в полночь? Если не проверять их родителей, чтобы увидеть, что он делает.
  • Проверить файл crontab для root, чтобы увидеть, какие процессы выполняются в конце дня.
  • Проверить файл crontab для процесса идентификатор пользователя, чтобы увидеть, какие процессы выполняются в конце дня.
  • Проверьте, если файлы журнала записываются или записываются в журнал-писатель, который вращается журналы.
+554
Agile Nerd 1 окт. 2019 г., 06:07:06

При правильной балансировке кронштейн, ваш код работает.

Но поскольку вы закрывающей '}' вместо ], В } является частью - тест и тестируемая строка не пустая. Выполнение с набора -х вы можете увидеть это выполняется:

+ '[' -Н '}'

ЗЫ: в коде могут быть проблемы, если найти возвращает более одного файла. Поставил кавычки вокруг "$(найти ...)".

+548
ponach 24 сент. 2014 г., 00:43:56

cronie (хрон в вопрос), делает проверку прав доступа к файлам на каждый файл crontab, в:

https://github.com/cronie-crond/cronie/blob/master/src/database.c#L96

Маску он использует 533 и полученный масках разрешения должны быть 400, что означает, что это позволит "читать" (4) или чтение/запись (4+2) бит для владельца файла, и не более чем прочитать (4) для группы и остальных.

Некоторые наглядные примеры:

пользователь-четкая
=====
р ж х - разрешения удобочитаемое 
4 2 1 - разрешение разрядных значений
1 0 0 - разрешений файла: доступен только
1 0 1 - маска из 5
=====
1 0 0 - ОК-в результате в масках с битами (4)

пользователь-чтение и запись
=====
р ж х - разрешения удобочитаемое 
4 2 1 - разрешение разрядных значений
1 1 0 - права доступа к файлам: для чтения и записи
1 0 1 - маска из 5
=====
1 0 0 - ОК-в результате в масках с битами (4)

пользователь-исполняемый
=====
р ж х - разрешения удобочитаемое 
4 2 1 - разрешение разрядных значений
0 0 1 - разрешение файла: исполняемый только
1 0 1 - маска из 5
=====
0 0 1 - неисправность-в результате масках с битами (1)

группа (или другие) - читаемый
р ж х - разрешения удобочитаемое 
4 2 1 - разрешение разрядных значений
1 0 0 - разрешений файла: доступен только
0 1 1 - маска 3
=====
0 0 0 - ОК-в результате в масках с битами (0)

группа (или другие) - для чтения и записи
р ж х - разрешения удобочитаемое 
4 2 1 - разрешение разрядных значений
1 1 0 - права доступа к файлам: для чтения и записи
0 1 1 - маска 3
=====
0 1 0 - плохо, что биты в маске (2)

группа (или другие) - нет разрешения
р ж х - разрешения удобочитаемое 
4 2 1 - разрешение разрядных значений
0 0 0 - файл разрешения: нет разрешения
0 1 1 - маска 3
=====
0 0 0 - ОК-в результате в масках с битами (0)

Вы, скорее всего, записываемый бит на файл куда-нибудь; некоторые возможные исправления:

команду chmod 400 /и т. д./cron.д/Юм-хрон
команду chmod 600 /и т. д./cron.д/Юм-хрон
команду chmod 644 /и т. д./cron.д/Юм-хрон

Ссылка:

+493
caseyWebb 23 июн. 2018 г., 17:41:14

Я сделал чистую установку операционной системы Ubuntu 18.04 LTS на мой ноутбук пару дней назад. Во время установки я выбрал часовой пояс, чтобы быть мой местный часовой пояс, т. е., Калькутта, Индия (индийское стандартное время). Однако, после загрузки моей системы, время и дата показывает неправильные значения.

Отображаемые значения:

дата: суббота 10 августа 2019 время: 22:16:ХХ

Фактические значения в то время:

дата: суббота 10 августа 2019 время: 11:16:ХХ

Точно, время отображается 11 часов больше, чем фактическое время.

Wrong date and time displayed

В Настройки - > дата и время дата и время, и автоматические переключатели временные зоны также включена.

enter image description here

Я нашел несколько статей в интернете, используя которую я попытался анализировать/исправлять проблему (скриншоты прилагаются).

  1. Запустить timedatectl enter image description here
  2. Установлено НТП enter image description here
  3. Выполните команду sudo ntpq -п enter image description here
  4. Выполните команду sudo Nmap по -p123 -Су -Р0 значение localhost. Я думаю, он проверяет статус UDP порт 123. enter image description here

Какие должны быть дальнейшие действия мне необходимо выполнить, чтобы исправить эту проблему?

+458
Shua 13 июл. 2018 г., 08:13:00

С GNU ЛС (версия на не-встраиваемых Linux и Cygwin, иногда он встречается и в других местах), вы можете исключить некоторые файлы в списке каталога.

Общ -я temp_log.*' -ЛРТ

(обратите внимание на длинную форму это - игнорировать='temp_log.*')

С ЗШ, вы можете позволить оболочки сделать фильтрацию. Проход -Д - в ЛС , дабы избежать перечисления содержание соответствующих каталогах.

setopt extended_glob # положить это в ваш .zshrc
ЛС-dltr ^temp_log.*

С KSH, bash или zsh по, Вы можете использовать синтаксис фильтрации КШ. В ЗШ, запуска setopt ksh_glob первый. В bash, запустите shopt -с extglob первый.

ЛС-dltr !(temp_log.*)
+372
Bas van der Hoek 4 мая 2013 г., 01:12:12

Уведомления не работают на менеджеров окно на Linux (Openbox и удивительным ВМ и тому подобное). Я попытался установить уведомление-демон и Данст, но отправлять с уведомление-отправить "что-то" не имеет никакого окна всплывающие.

Я попытался запустить с помощью polkit-гном-агент и запускать напрямую демоны уведомления, но это не поможет (время назад я решал подобную проблему таким способом, но теперь он ничего не делает).

Нет никакого указания на ошибки, если я посылаю тривиальных уведомление с Python, то я получаю только невнятные сообщения об ошибке: Файл "/usr/lib/python3.3/site-packages/gi/types.py", строка 113, в функции возвращение информация.вызовите(*параметр args, **kwargs) ги._glib.GError: не удалось подключиться: подключение отказался Нетривиальные программы на языке C выводит ничего (нет ошибки например).

Я использую Archlinux с systemd и D-автобус, я подозреваю, что это проблема с помощью polkit или какой-то демон не подножка на окне запустить диспетчер, но понятия не имею, что можно попробовать или как я могу получить больше смысл сообщения об ошибке.

Редактировать: я взял пример кода оттуда: https://wiki.archlinux.org/index.php/Libnotify#Python

ДГУ должна быть подножка, потому что systemd не имеет зависимость. У меня через libnotify установлена - это пакет, который предоставляет уведомления-отправить. Также уведомление демон должен начать по мере необходимости (только когда уведомление arives), по следующим Desktop файл в/usr/доли/ДГУ-1/услуги/орг.freedesktop.Уведомления.услуги :

[Д-автобус]
Имя=орг.freedesktop.Уведомления
В exec=/usr/Бен/Данст

Я даже пытался запустить демона напрямую (просто выполнить) и попытался отправка уведомления. Если за знает, как я мог сделать меня более подробную информацию, пожалуйста, не стесняйтесь предложить.

Правка 2: я пробовал работать с любым демоном с sudo: sudo так уведомления-daemon_name & (в моем случае судо Данст &) и судо уведомить-прислать что-то, то уведомление работает. Но когда я пытаюсь сделать любой из предыдущих действий в качестве непривилегированного пользователя (что важно большинство программ посылают уведомления, как непривилегированные пользователи), ничего не показывает.

уведомление-демон отказывается работать вообще без каких-либо ошибок или предупреждений.

Редактировать 3: очевидно, что разрешения проблема: я не могу отправлять уведомления без корневого доступа. После очистки перезагрузка: судо уведомить-прислать "что-то" работает даже без запуска Вручную любые демоны, однако, что я (и моя запущенных программ) должны сделать, чтобы иметь возможность отправлять уведомления без root мидлета, насколько это возможно в Gnome или любой другой полного окружения рабочего стола?

+367
user3049437 18 нояб. 2015 г., 13:30:27

Какие типы рейд поддерживает Linux?

+362
Shadowxiaoh 31 дек. 2010 г., 00:45:47

У меня есть сервер Unix, которая началась перезагрузка каждые несколько минут. Я пыталась отследить источник проблемы, войдя в дерево процессов, в то время перезагрузка вызывается, как описано на этот вопрос ответ.

Однако, я не понимаю, где искать следующий.

Журнал содержит этих строк (среди многих других):

корень 1 0 0 16:49 ? 00:00:00 /переключатель инициализации
корень 2894 1 0 16:53 ? 00:00:00 /бин/баш на /sbin/выключения -R теперь контрол-Альт-удалить нажал

Для меня, похоже, сервера запуска процесса вызывает перезагрузку с выключением -Р. В системном журнале, я вижу эту строку:

накопитель sshd[2433]: принимаемого сигнала 15, оконечный.

Кроме того, это инстанс веб-службы Unix, которая разрешает соединения с моего IP-адреса. Это также защищен закрытый ключ.

Какие дальнейшие шаги я могу предпринять, чтобы найти источник проблемы?

+361
greenteamer 30 янв. 2017 г., 07:55:09

Я делаю это много:

пользователь@машина: $ Общ'
>
# Я: Аааа! Я сделал это снова!
>'

: Нет такого файла или каталога

В принципе, я заканчиваю набирать команду и нажмите ' случайно при попытке нажать Enter, и в конечном итоге с ООН-закрытые одинарные кавычки. Я не могу вернуться к ранее линии, чтобы удалить его, так что в конечном итоге просто запустив команду с синтаксическую ошибку.

Есть ли способ, чтобы восстановить и исправить мою команду?

+314
19961809 1 февр. 2015 г., 22:16:23

После командной строки была расширена:

функция eval возвращает аргументы на первый этап "обработка командной строки".

Все ступени командной строки обработки представлены на этой странице.

+270
Brijesh Thakur 1 мар. 2013 г., 13:03:52

общ. не занимает отдельного каталога аргумент.

Для сопоставления файлов в определенном каталоге, вы можете просто добавить путь к папке с твоим шаблоном Глоб:

ЛС-д /и т. п/??.*
файл /etc/ЛД.так.кэш файл /etc/ЛД.так.Conf в файл /etc/ЛД.так.конф.д /и т. п/радиоуправляемый.местные
+248
Jargen89 2 июл. 2011 г., 02:19:44

Я с помощью USB Wifi адаптер для подключения к интернету. Когда беспроводное соединение умрет, я тоже потеряете некоторые правила iproute.

Как я могу восстановить эти правила, когда интерфейс подключен снова?

+194
Rog182 4 нояб. 2016 г., 09:24:13

Я хочу сегодня установить FreeBSD на запасной жесткий диск у меня валяется. Я хотел бы дать ему пробный запуск, узнать несколько вещей, и если он меня устраивает я заменить мою текущую Убунту 10.10 'сервер/NAS/кодировка' с ним. Любопытство-главная причина. Я тоже хочу увидеть большинство основных ошибок устранены в GNOME 3/Unity до Я прыгать на борту следующей итерации Убунту.

У меня нет опыта работы с ОС семейства BSD (за исключением ОС Х) но я установил и использовал довольно много дистрибутивов Linux на протяжении многих лет. У меня есть довольно хорошее представление о том, как достать Linux и работает, включая самокрутки дистрибутивы, такие как арки. Но я не эксперт по любым простиранием воображения. В принципе, я бы сказала, что я лучше, чем моя бабушка.

Так что я должен держать в голове при установке FreeBSD в первый раз? В частности, есть ли существенные различия между установка и настройка FreeBSD и Linux дистрибутив? Кроме того, я должен быть с i386, так? Я где-то читал в документации, что для i386 рекомендуется, но я не уверен, что это устаревшая информация.

+189
cmidi 23 апр. 2010 г., 15:33:29

Попробуйте использовать реального пути команд (часть из GNU coreutils; >=8.23), например:

реального пути --относительное-к=в/Foo/бар/что-то /фу/Привет/мир

Если вы используете Mac, то устанавливать GNU версии через: заварить установить coreutils и использовать grealpath.

Отметим, что оба пути должны существовать для команды, чтобы быть успешным. Если вам все равно нужен относительный путь, даже если один из них не существует, то добавьте параметр-M.

Дополнительные примеры см. В разделе преобразования абсолютного пути в относительный путь с учетом текущего каталога.

+153
Fienwk 30 авг. 2019 г., 17:03:25

Вы можете использовать тр

тр '\п' ,

Это будет меняться каждый экземпляр \п до запятой, так что вам нужно исправить до последнего. Вот пример

кошка >file.txt <<х
8600
22007
93509
9984
22146
х

тр '\п' , <file.txt
8600,22007,93509,9984,22146, # и командной строкой следует сразу же 

тр '\п' , <file.txt | Е С/,$/\Н/'
Линия 8600,22007,93509,9984,22146 # закончился с новой строки.

Отметьте, что это использование СЭД не определен POSIX, который ожидает, что все линии должны быть прекращены с новой строки. Вы можете исправить это, вставив на awk 1 в трубопровод, так как awk явно определены в POSIX, чтобы добавить пустую строку в последней строке, если одного не хватает:

тр '\п' , <file.txt | awk и 1 | е с/,$//'
Линия 8600,22007,93509,9984,22146 # закончился с новой строки.

Для быстрого решения, это будет приемлемо (хотя вставить решение предложили в другом месте выше). Однако, ТР | на awk | СЭД - ужасная комбинация, которая должна быть пересмотрена в производственном коде. Поэтому мы можем в конечном итоге с этим:

на awk 'НР>1 {е ","}; {функции printf "%ы", $0}; конец {функции printf "\п"}' file.txt
+121
Sam Rohn 10 апр. 2010 г., 08:25:09

Вы можете попробовать ZoneMinder кач...

+100
Alquimista Hannibal Astros 25 мар. 2011 г., 15:47:39

У меня есть путь,

Sample_Backend_Parameterized_Deployment

Я хочу установить этот путь в переменной и вызвать его позже. Как я могу сделать это?

Я попытался это и не работает

Переменную окружения cdpath="Sample_Backend_Parameterized_Deployment"

компакт-диск $переменную окружения cdpath

Получаю ошибку

/ВАР/Либ/Дженкинс/рабочее место/Sample_Backend_Parameterized_Deployment: нет такого файла или каталога

Есть ли способ, чтобы дать путь из {пространство}/Sample_Backend_Parameterized_Deployment

+58
Santhosh Ramanan R 18 янв. 2014 г., 20:00:31

У меня есть нетбук, точнее Асер хромбук КБ3-131.

Я создал загрузочный USB-диск, содержащий Ubtuntu рабочего стола на моем Mac. Я хочу загрузиться с этого USB-диска на моем Chromebook. Я не хочу установить Ubuntu рабочего стола на нетбуке постоянно, я просто хочу, чтобы "попробовать", пока компьютер выключен.

Как я могу это сделать?

+48
Gzzh 1 нояб. 2013 г., 12:57:52

Несколько возможностей. Мое первое предложение было просто зайти с версий установленных пакетов; замена установленной тех, - это и заставляет и MySQL. Но если вам действительно нужно - или не хочется - ехать с порта источника:

Во-первых, скачать дерево портов - portsnap принести выписку, или, если у вас уже есть это, принеси portsnap обновление обновить его до текущей.

Затем зайти в соответствующий каталог (папку/usr/портов/баз данных/mysql55-сервер), перестроить его, и переустановить: сделать чистым все удалите переустановите. Возможно, вы захотите повторить то же с /usr/портов/баз данных/mysql55-клиент. Это позволит связать его с библиотеками вы установили, в том числе libreadline.

+17
cdtnfbcfrjdf 18 нояб. 2010 г., 05:34:35

Показать вопросы с тегом

$200 cialis coupon 10 mg tadalafil generic 5 mg cialis over the counter at walmart best price for tadalafil 20 mg buy cialis buy cialis generic tadalafil buy cialis online buy cialis online without script buy tadalafil buy tadalafil online canadian cialis online pharmacy canadian pharmacy cialis cheap cialis cheap cialis generic cialis cialis 20 mg best price cialis 20mg cialis 30 day sample cialis 30 day trial coupon cialis and alcohol cialis before and after cialis canada cialis canada pharmacy online cialis cost cialis coupon cialis coupons cialis coupons printable cialis dosage cialis dosage information cialis for daily use cialis for sale cialis free trial cialis free trial voucher for cialis cialis generic cialis generic release date cialis generic tadalafil cialis lowest price cialis online cialis online pharmacy cialis over the counter cialis over the counter at walmart cialis patent expiration date extended cialis picture testimonials cialis pills cialis price cialis prices cialis reviews cialis side effects cialis tadalafil cialis tadalafil 20 mg cialis vs viagra cialis vs viagra which is better cialis without a doctor's prescription cialis without doctor prescription cost of cialis cost of tadalafil generic at walgreens coupon for cialis by manufacturer does cialis lower blood pressure generic cialis generic cialis at walmart generic cialis canada generic cialis canada pharmacy generic cialis from india generic cialis tadalafil generic tadalafil generic tadalafil 20 mg is there a generic for cialis online cialis purchasing cialis on the internet side effects for cialis side effects for tadalafil side effects of cialis tadalafil tadalafil 20 mg tadalafil 20 mg canadian drug stores tadalafil 20mg tadalafil 20mg lowest price tadalafil 5 mg tadalafil 5mg tadalafil cost at walmart tadalafil dosage tadalafil generic tadalafil generic at walgreens tadalafil generic best prices tadalafil online tadalafil price tadalafil side effects tadalafil tablets tadalafil without a doctor's prescription viagra vs cialis viagra vs cialis vs levitra warnings for tadalafil $200 cialis coupon 10 mg tadalafil generic 5 mg cialis over the counter at walmart best price for tadalafil 20 mg buy cialis buy cialis generic tadalafil buy cialis online buy cialis online without script buy tadalafil buy tadalafil online canadian cialis online pharmacy canadian pharmacy cialis cheap cialis cheap cialis generic cialis cialis 20 mg best price cialis 20mg cialis 30 day sample cialis 30 day trial coupon cialis and alcohol cialis before and after cialis canada cialis canada pharmacy online cialis cost cialis coupon cialis coupons cialis coupons printable cialis dosage cialis dosage information cialis for daily use cialis for sale cialis free trial cialis free trial voucher for cialis cialis generic cialis generic release date cialis generic tadalafil cialis lowest price cialis online cialis online pharmacy cialis over the counter cialis over the counter at walmart cialis patent expiration date extended cialis picture testimonials cialis pills cialis price cialis prices cialis reviews cialis side effects cialis tadalafil cialis tadalafil 20 mg cialis vs viagra cialis vs viagra which is better cialis without a doctor's prescription cialis without doctor prescription cost of cialis cost of tadalafil generic at walgreens coupon for cialis by manufacturer does cialis lower blood pressure generic cialis generic cialis at walmart generic cialis canada generic cialis canada pharmacy generic cialis from india generic cialis tadalafil generic tadalafil generic tadalafil 20 mg is there a generic for cialis online cialis purchasing cialis on the internet side effects for cialis side effects for tadalafil side effects of cialis tadalafil tadalafil 20 mg tadalafil 20 mg canadian drug stores tadalafil 20mg tadalafil 20mg lowest price tadalafil 5 mg tadalafil 5mg tadalafil cost at walmart tadalafil dosage tadalafil generic tadalafil generic at walgreens tadalafil generic best prices tadalafil online tadalafil price tadalafil side effects tadalafil tablets tadalafil without a doctor's prescription viagra vs cialis viagra vs cialis vs levitra warnings for tadalafil blue chew viagra scam buy viagra buy viagra online buy viagra online canada pharmacy buy viagra online without script canada pharmacy viagra generic canadian pharcharmy online viagra canadian viagra canadian viagra without a doctor prescription cheap viagra cialis vs viagra cost of viagra female viagra female viagra pills free viagra free viagra samples generic viagra generic viagra 100mg generic viagra available generic viagra canada price generic viagra online pharmacy generic viagra sildenafil citrate generic viagra without a doctor prescription herbal viagra how does viagra work how long does viagra last how much does viagra cost how to take viagra for maximum effect i took viagra mom levitra vs viagra mom gives son viagra natural viagra natural viagra alternatives that work natural viagra substitute nizagara 100 mg vs viagra online viagra online viagra without subscription over the counter viagra real life viagra demonstration revatio vs viagra side effects of viagra sildenafil sildenafil 100mg sildenafil 20 mg sildenafil 20 mg tablet sildenafil 20 mg tablet vs viagra sildenafil citrate sildenafil citrate 100mg sildenafil citrate 20 mg sildenafil coupons sildenafil dosage sildenafil dosage recommendations sildenafil generic sildenafil side effects sophia viagra sophia viagra bikini sophia viagra hot stendra vs viagra stepmom gives son viagra viagra viagra 100mg viagra before after photo actual viagra boner viagra canada online pharmacy viagra coupon viagra coupons viagra coupons from pfizer viagra dosage viagra dosage recommendations viagra erection viagra erection after ejaculation viagra for men viagra for sale viagra for sale on amazon viagra for women viagra generic viagra generic availability viagra generic release date viagra in action viagra on line viagra online viagra online canada pharmacy viagra online pharmacy viagra patent expiration viagra pill viagra pills viagra porn viagra prank viagra prices viagra samples viagra sex viagra side effects viagra substitute viagra vs cialis viagra without a doctor prescription viagra without doctor prescription what is viagra when will generic viagra be available blue chew viagra scam buy viagra buy viagra online buy viagra online canada pharmacy buy viagra online without script canada pharmacy viagra generic canadian pharcharmy online viagra canadian viagra canadian viagra without a doctor prescription cheap viagra cialis vs viagra cost of viagra female viagra female viagra pills free viagra free viagra samples generic viagra generic viagra 100mg generic viagra available generic viagra canada price generic viagra online pharmacy generic viagra sildenafil citrate generic viagra without a doctor prescription herbal viagra how does viagra work how long does viagra last how much does viagra cost how to take viagra for maximum effect i took viagra mom levitra vs viagra mom gives son viagra natural viagra natural viagra alternatives that work natural viagra substitute nizagara 100 mg vs viagra online viagra online viagra without subscription over the counter viagra real life viagra demonstration revatio vs viagra side effects of viagra sildenafil sildenafil 100mg sildenafil 20 mg sildenafil 20 mg tablet sildenafil 20 mg tablet vs viagra sildenafil citrate sildenafil citrate 100mg sildenafil citrate 20 mg sildenafil coupons sildenafil dosage sildenafil dosage recommendations sildenafil generic sildenafil side effects sophia viagra sophia viagra bikini sophia viagra hot stendra vs viagra stepmom gives son viagra viagra viagra 100mg viagra before after photo actual viagra boner viagra canada online pharmacy viagra coupon viagra coupons viagra coupons from pfizer viagra dosage viagra dosage recommendations viagra erection viagra erection after ejaculation viagra for men viagra for sale viagra for sale on amazon viagra for women viagra generic viagra generic availability viagra generic release date viagra in action viagra on line viagra online viagra online canada pharmacy viagra online pharmacy viagra patent expiration viagra pill viagra pills viagra porn viagra prank viagra prices viagra samples viagra sex viagra side effects viagra substitute viagra vs cialis viagra without a doctor prescription viagra without doctor prescription what is viagra when will generic viagra be available $200 cialis coupon 10 mg tadalafil generic 5 mg cialis over the counter at walmart best price for tadalafil 20 mg buy cialis buy cialis generic tadalafil buy cialis online buy cialis online without script buy tadalafil buy tadalafil online canadian cialis online pharmacy canadian pharmacy cialis cheap cialis cheap cialis generic cialis cialis 20 mg best price cialis 20mg cialis 30 day sample cialis 30 day trial coupon cialis and alcohol cialis before and after cialis canada cialis canada pharmacy online cialis cost cialis coupon cialis coupons cialis coupons printable cialis dosage cialis dosage information cialis for daily use cialis for sale cialis free trial cialis free trial voucher for cialis cialis generic cialis generic release date cialis generic tadalafil cialis lowest price cialis online cialis online pharmacy cialis over the counter cialis over the counter at walmart cialis patent expiration date extended cialis picture testimonials cialis pills cialis price cialis prices cialis reviews cialis side effects cialis tadalafil cialis tadalafil 20 mg cialis vs viagra cialis vs viagra which is better cialis without a doctor's prescription cialis without doctor prescription cost of cialis cost of tadalafil generic at walgreens coupon for cialis by manufacturer does cialis lower blood pressure generic cialis generic cialis at walmart generic cialis canada generic cialis canada pharmacy generic cialis from india generic cialis tadalafil generic tadalafil generic tadalafil 20 mg is there a generic for cialis online cialis purchasing cialis on the internet side effects for cialis side effects for tadalafil side effects of cialis tadalafil tadalafil 20 mg tadalafil 20 mg canadian drug stores tadalafil 20mg tadalafil 20mg lowest price tadalafil 5 mg tadalafil 5mg tadalafil cost at walmart tadalafil dosage tadalafil generic tadalafil generic at walgreens tadalafil generic best prices tadalafil online tadalafil price tadalafil side effects tadalafil tablets tadalafil without a doctor's prescription viagra vs cialis viagra vs cialis vs levitra warnings for tadalafil